Commit Graph

9429 Commits

Author SHA1 Message Date
Paul Moore 0b1306bbf0 I must remember to run lint locally before pushing :-( 2020-03-20 11:12:38 +00:00
Paul Moore 89f4f16e3e Add some functional tests for the new resolver 2020-03-20 11:00:07 +00:00
Miro Hrončok eb070d2372 Avoid a test dependency on a C compiler, skip the test on Windows 2020-03-19 23:50:41 +01:00
Miro Hrončok 98aa09cf88 Prevent infinite recursion with pip wheel with $TMPDIR in $PWD
During a build of extension module within `pip wheel` the source directory is
recursively copied in a temporary directory.

See https://github.com/pypa/pip/issues/7555

When the temporary directory is inside the source directory
(for example by setting `TMPDIR=$PWD/tmp`) this caused an infinite recursion
that ended in:

    [Errno 36] File name too long

We prevent that buy never copying the target to the target in _copy_source_tree.

Fixes https://github.com/pypa/pip/issues/7872
2020-03-19 18:07:56 +01:00
Paul Moore 104b6650c8
Merge pull request #7851 from pfmoore/resolvelib_provider
Implement PipProvider
2020-03-19 14:48:02 +00:00
Paul Moore ffe553638c Address review requirements 2020-03-19 10:55:33 +00:00
Paul Moore cec27c747c Added an end-to-end install test of the new resolver 2020-03-18 14:54:29 +00:00
Paul Moore a23e936bc7 Ensure candidate name is canonicalised 2020-03-18 14:54:15 +00:00
Paul Moore f1b4be892a Fix bug in get_dependencies() passing Requirement object rather than string 2020-03-18 14:53:04 +00:00
Paul Moore 1ebe1e0935 Integrate the new provider with --unstable-feature=resolver 2020-03-18 14:49:49 +00:00
Paul Moore 098d00d8c3 Add a test that runs the full resolver 2020-03-18 14:42:20 +00:00
Paul Moore 7d2eb544b5 Implement PipProvider 2020-03-18 14:42:16 +00:00
Pradyun Gedam 9e15cd49f2
Merge pull request #7767 from RDIL/copyright-docs
Added copyright doc
2020-03-18 16:31:24 +05:30
Pradyun Gedam 06a3406a22
Merge pull request #7861 from uranusjr/resolver-implement
Implement resolver methods on provider interface
2020-03-18 03:20:38 +05:30
Tzu-ping Chung dad77a9e4d Better handle root vetices in graph
ResolveLib *should* always produce a graph with only one root vertice,
which is None. But we don't really need to rely on that implementation
detail. Vertices without any parents can be assigned 0 in all cases.
2020-03-15 23:01:58 +08:00
Tzu-ping Chung ffb3692e00 Add simple tests for get_installation_order()
The implementation is improved a bit to make the sorting result more
predictable for easier testing.
2020-03-15 23:01:57 +08:00
Tzu-ping Chung 53775279c4 Fix graph-walking terminal condition
The weight mapping should have size `len(packages) + 1` because it needs
to contain a "sentinel" node (None).
2020-03-15 22:25:26 +08:00
Tzu-ping Chung a3f6c17d36 Implement resolver methods on provider interface
This is using a temporary PipProvider class, which should be replaced by
the actual implementation after it is merged.
2020-03-15 15:25:38 +08:00
Pradyun Gedam e5375afffd
Merge pull request #7857 from pradyunsg/docs/misc-changes
Miscellanous Documentation-related changes
2020-03-14 04:05:05 +05:30
Pradyun Gedam bbd439898b
Better indentation for `pip config` description 2020-03-14 00:29:41 +05:30
Pradyun Gedam 9351c61b82
Fix typo in package-finding.rst 2020-03-14 00:29:19 +05:30
Pradyun Gedam a8058fe9e9
Speed up `nox -s docs` 2020-03-14 00:29:04 +05:30
Paul Moore 98b3221fd4
Merge pull request #7850 from uranusjr/resolvelib-vendor
Vendor ResolveLib from Git
2020-03-13 13:44:21 +00:00
Tzu-ping Chung 36065cf2e0 Vendor ResolveLib from Git
We are vendoring from the Git source for now, so the bug fix turnover
can be quicker if there's anything wrong in the resolution logic.

HEAD up-to-date as of 2020-03-12.
2020-03-12 22:37:30 +08:00
Pradyun Gedam 4f6bef6eb4
Merge pull request #7792 from pradyunsg/misc/utils-tags
Rename pep425tags -> utils.compatibility_tags
2020-03-12 14:46:52 +05:30
Paul Moore 10f41571b1
Merge pull request #7843 from pfmoore/resolvelib_requirement
Implement the new resolver's Requirement class
2020-03-11 13:18:21 +00:00
Paul Moore 9b10b93503 Implement the resolvelib Requirement class 2020-03-11 11:37:56 +00:00
Paul Moore f981facb70
Merge pull request #7845 from uranusjr/resolver-flag
Add --unstable-feature=resolver
2020-03-11 11:34:07 +00:00
Tzu-ping Chung fc810d7353 Add --unstable-feature=resolver
This introduces a new general option --unstable-feature that can be used
to opt into "preview" features in pip not enabled by default. Currently
the only available feature is "resolver".

A stub resolver interface (which would fail on invocation) is provided
to respond to the flag.

The --unstable-feature option is hidden from --help since the resolver
does not yet work. This suppression should be removed when we release
the resolver for general/public testing.
2020-03-11 18:51:01 +08:00
Pradyun Gedam e15ef595dd
Merge pull request #7840 from xavfernandez/revert_progress_bar_format_change
cli: revert format() related changes
2020-03-11 01:36:31 +05:30
Xavier Fernandez a096d4cd76 cli: revert format() related changes
Since the progress bar API is % related, it seems simpler to stick with
it.
2020-03-10 13:21:53 +01:00
Pradyun Gedam 4d1932fcdd
Merge pull request #7826 from jaraco/bugfix/6973-format-method
Convert the remaining '%' formatters to '.format'.
2020-03-10 14:58:25 +05:30
Christopher Hunt 4653cde977
Merge pull request #7834 from chrahunt/refactor/simplify-download-copy
Remove pip._internal.operations.prepare._copy_file
2020-03-09 22:50:09 -04:00
Prashant Sharma 115a83698f
fix(tests/lib/path): Remove duplicate resolve method (#7837) 2020-03-09 23:29:27 +01:00
Xavier Fernandez dfd6a163bd
GitHub Actions: update cache key to include interpreter path (#7835)
And make it more portable by using python
2020-03-09 15:17:17 +01:00
Jason R. Coombs 047e249767
Update src/pip/_internal/cli/progress_bars.py
Co-Authored-By: Xavier Fernandez <xav.fernandez@gmail.com>
2020-03-08 18:36:01 -04:00
Jason R. Coombs 9669c0b312
Update src/pip/_internal/cli/progress_bars.py
Co-Authored-By: Xavier Fernandez <xav.fernandez@gmail.com>
2020-03-08 18:35:53 -04:00
Chris Hunt fad99dce4a Inline _copy_file 2020-03-08 18:10:17 -04:00
Chris Hunt cd5d8b7865 Inline unconditional block 2020-03-08 18:10:17 -04:00
Chris Hunt 36d52edeb4 Inline variable 2020-03-08 18:10:17 -04:00
Chris Hunt e1d1b1c192 Remove dead code
Since download_location doesn't exist, this block could've never been
executed.
2020-03-08 18:10:16 -04:00
Chris Hunt b0cd7a7a0b Assert that download_location doesn't exist in _copy_file 2020-03-08 18:04:43 -04:00
Chris Hunt 420a6d26de Pass combined download_location to _copy_file
This makes the function arguments look more like `src` and `dest`,
which makes more sense for a file copying function.
2020-03-08 18:01:49 -04:00
Jason R. Coombs fd288ab0e5 Merge remote-tracking branch 'origin/master' into bugfix/6973-format-method 2020-03-06 18:17:10 -05:00
Jason R. Coombs def75dc691 Fix issue where format_map isn't available on Python 2 2020-03-06 12:53:54 -05:00
Jason R. Coombs 6282a307dc 👹 Feed the hobgoblins (delint). 2020-03-06 12:43:10 -05:00
Jason R. Coombs 816efa1805 Update changelog 2020-03-06 12:43:10 -05:00
Jason R. Coombs 3511d3d493 Convert the remaining '%' formatters to '.format'. Fixes #6973. 2020-03-06 12:43:03 -05:00
Pradyun Gedam 3487df553f
Merge pull request #7824 from jaraco/bugfix/7823-need-svnadmin
Skip svn tests if svnadmin is not available.
2020-03-06 23:04:28 +05:30
Jason R. Coombs 2c0d691893 Skip svn tests if svnadmin is not available. Fixes #7823. 2020-03-06 04:09:48 -05:00