Commit Graph

87 Commits

Author SHA1 Message Date
Chris Jerdonek 6ac468e4fd
Merge pull request #6613 from cjerdonek/requirements-file-error
Improve the error message for invalid requirements files in certain situations
2019-06-16 20:09:24 -07:00
Chris Jerdonek e5a730a89f Improve the error message when reading a bad requirements file. 2019-06-15 10:47:24 -07:00
Chris Jerdonek c0bda1b906 Log when adding a trusted host from a file. 2019-06-14 01:14:36 -07:00
Chris Jerdonek d72758394d Fully support --trusted-host inside requirements files. 2019-06-13 01:21:05 -07:00
Chris Jerdonek 4c1ccaec73 Store PackageFinder.trusted_hosts instead of secure_origins. 2019-06-12 02:18:23 -07:00
Chris Jerdonek 210dab7470 Add make_test_finder() helper function. 2019-06-11 19:18:56 -07:00
Chris Jerdonek cad71a7117 Add PackageFinder.create(), and simplify PackageFinder(). 2019-05-17 11:55:21 -07:00
Pradyun Gedam 7222cb8fdb
Remove --process-dependency-links and related support code 2019-01-02 17:27:06 +05:30
Nitesh Sharma 82b25ffe6c sort imports properly 2018-09-02 23:25:14 +05:30
Nitesh Sharma a90c641868 Use equality operator for format_control instances 2018-09-02 23:14:47 +05:30
Nitesh Sharma fd692f32ba move format control to models and write parametrized test 2018-09-02 23:08:07 +05:30
Nitesh Sharma e10a613212 Refactoring: Move FormatControl to separate class
This moves FormatControl named tuple and it's all related
methods to separate class.

Closes https://github.com/pypa/pip/issues/5592
2018-08-28 21:12:42 +05:30
Pradyun Gedam a5a07fe61c
Move InstallRequirement.from_line to constructors module 2018-08-21 20:37:40 +05:30
Pradyun Gedam 69b494aa29
Move InstallRequirement.from_editable to a constructors module 2018-08-21 20:27:22 +05:30
Pradyun Gedam c92d13e9d3
Fix new lint errors from newer flake8 2018-06-27 12:53:31 +05:30
BrownTruck 72f219c410 Add expansion of environment variables in requirement files (#3728) 2018-02-05 16:50:50 +05:30
Anthony Sottile e21e2d3f8f Upgrade syntax in ./tests
Changes were automated via https://github.com/asottile/pyupgrade

See #4921
2017-12-14 21:59:41 -08:00
Pradyun Gedam 353a13ddff
isort: Include trailing commas 2017-11-21 13:23:59 +05:30
Donald Stufft 95bcf8c5f6 Move all internal APIs to pip._internal 2017-08-31 14:53:00 -04:00
Filip Kokosiński 6ebec4a87e Added offending line from requirements file (#4227) (#4635) 2017-08-31 13:07:42 -04:00
Pradyun S. Gedam 9923c1ad7e Sort imports and minor Flake8 changes (#4520)
* Run isort on the codebase

Command: isort --recursive --skip __main__.py --skip _vendor -o pip._vendor -sd THIRDPARTY -m 5 -p pip -p tests ./pip ./tests

* 📰
2017-06-13 14:17:00 +02:00
Pradyun S. Gedam 1832569530 Sort all imports 2017-05-16 15:47:47 +05:30
Donald Stufft ffac1c2180 Removed the deprecated --default-vcs option 2017-03-20 10:49:57 -04:00
Donald Stufft 95b9541ed4 Remove the deprecated --(no-)use-wheel flags 2017-03-20 10:49:56 -04:00
Donald Stufft bb41490225 Removed the deprecated --allow-* commands from PEP 438 2017-03-19 20:51:54 -04:00
Jason R. Coombs dd3defe509 Import setuptools in a subprocess. (#4294) 2017-03-05 11:29:50 -05:00
Donald Stufft 8e236dd6a0 Update to use the Requirement class from packaging 2016-03-07 11:40:39 +11:00
Xavier Fernandez 9162869adc Fix test_relative_local_find_links 2016-01-17 22:40:46 +01:00
Xavier Fernandez c9b48feea6 Fix test_relative_local_nested_req_files 2016-01-17 22:40:46 +01:00
Xavier Fernandez e42e822f2c Provide more helpful message on invalid requirement
closes #540, #1000, #1426
2015-11-13 11:05:02 +01:00
Donald Stufft f39bc756e5 Merge branch 'develop' into hashes2 2015-11-06 18:46:09 -05:00
Marcus Smith b58d2c9f34 process line continuations first (but with some special handling for comments) 2015-10-08 15:25:51 -07:00
Erik Rose 7a0a97c081 Merge 'develop' into 'hashing' to bring the latter up to date. 2015-10-08 13:37:19 -04:00
Marcus Smith 91e3c13926 migrate over some missing test cases from PR #3030 2015-10-03 21:08:35 -07:00
Erik Rose f3f73f1c07 Remove the -H spelling for --hashes.
dstufft is nervous about blowing a single-char option on something that will usually be copied and pasted anyway. We can always put it back later if it proves to be a pain.
2015-09-25 15:32:33 -04:00
Erik Rose 0c17248998 Pass PEP 8 checks. 2015-09-24 22:16:00 -04:00
Erik Rose 11dbb92440 Switch from --sha256 etc. to a single option: --hash.
Everybody seems to favor this. Spelled -H, it's still pretty short. And it is less unusual programmatically.
2015-09-24 22:16:00 -04:00
Erik Rose 1e41f01823 Add checks against requirements-file-dwelling hashes for most kinds of packages. Close #1175.
* Add --require-hashes option. This is handy in deployment scripts to force application authors to hash their requirements. It is also a convenient way to get pip to show computed hashes for a virgin, unhashed requirements file. Eventually, additions to `pip freeze` should fill a superset of this use case.
  * In --require-hashes mode, at least one hash is required to match for each requirement.
  * Option-based requirements (--sha256=...) turn on --require-hashes mode implicitly.
  * Internet-derived URL-based hashes are "necessary but not sufficient": they do not satisfy --require-hashes mode when they match, but they are still used to guard against transmission errors.
  * Other URL-based requirements (#md5=...) are treated just like flag-based ones, except they don't turn on --require-hashes.
* Complain informatively, with the most devastating errors first so you don't chase your tail all day only to run up against a brick wall at the end. This also means we don't complain that a hash is missing, only for the user to find, after fixing it, that we have no idea how to even compute a hash for that type of requirement.
  * Complain about unpinned requirements when hash-checking mode is on, lest they cause the user surprise later.
  * Complain about missing hashes.
  * Complain about requirement types we don't know how to hash (like VCS ones and local dirs).
* Have InstallRequirement keep its original Link around (original_link) so we can differentiate between URL hashes from requirements files and ones downloaded from the (untrustworthy) internet.
* Remove test_download_hashes, which is obsolete. Similar coverage is provided in test_utils.TestHashes and the various hash cases in test_req.py.
2015-09-24 22:16:00 -04:00
Erik Rose 3303be0c4e Teach requirements parser how to parser hash options, like --sha256.
We purposely keep it off the CLI for now. optparse isn't really geared to expose interspersed args and options, so a more heavy-handed approach will be necessary to support things like `pip install SomePackage --sha256=abcdef... OtherPackage --sha256=012345...`.
2015-09-23 17:39:32 -04:00
Marcus Smith 2b0a722191 - add a preprocess function so that interactions between filtering and
joining can easily be tested
- add some test cases mentioned by @pgervais
- deal with case of last line ending with \
2015-09-22 16:53:26 -07:00
Marcus Smith 6fe27deb36 pep8 fixes 2015-09-21 14:22:45 -07:00
Marcus Smith 67b0050ac4 correct use of enumerate in skip_regex tests 2015-09-21 14:21:05 -07:00
Marcus Smith ecdb8584f8 refactor to preserve reporting of original line numbers in requirement files 2015-09-21 14:10:31 -07:00
Xavier Fernandez b290e13cfa Allow --pre option in requirement files
closes #1273
2015-09-05 23:13:03 +02:00
Xavier Fernandez a9325b0727 Allow --process-dependency-links in req files
closes #1274
2015-09-05 20:19:30 +02:00
Xavier Fernandez e168b845a4 Allow --trusted-host option in requirement files
closes #2822
2015-09-03 22:33:31 +02:00
Donald Stufft 0f5d4286a5 Deprecate and Noop the PEP 438 functionality due to PEP 470 2015-09-02 23:47:05 -04:00
Robert Collins bb0b429a49 Issue #2731: Constraints files.
This adds constraints files. Like requirements files constraints files
control what version of a package is installed, but unlike
requirements files this doesn't itself choose to install the package.
This allows things that aren't explicitly desired to be constrained if
and only if they are installed.
2015-06-03 06:38:33 +12:00
Donald Stufft f25aef0720 Remove a screwy merge 2015-06-01 20:32:29 -04:00
Donald Stufft 165cf7a228 Merge branch 'master' into develop 2015-06-01 19:57:26 -04:00