Commit Graph

366 Commits

Author SHA1 Message Date
Oz N Tiram 4370a5a37b Add a global option to disable colors (#4739)
* Add a global option to disable colors

 This is a fix for issue #2449

 All it does is simply add a global option --no-color

 Internally it switches ColorizedStreamHandler to StreamHandler if
 this flag is detected.

* Fix lint errors

 * not sure it makes the code more readable though ...

* Fix typo

* Choose logging class before assigning

 * As requested per review
 * Make the code shorter and easier to follow

* Be polite to followers, add commas

* Add functional test for the --no-color output

* Better detection of windows

* Fix fragile tests - can't trust script --quiet

 * The version found in Travis-CI does not respect this flag
   It added a prefix line and suffix line found if one does not
   add the flag --quiet (script from util-linux 2.26.2).

   As such the out  put is:

     Script started on Fri 27 Oct 2017 07:17:30 AM CEST
     \x1b[31mCannot uninstall requirement noSuchPackage, not installed\x1b[0m\n

     Script done on Fri 27 Oct 2017 07:17:31 AM CEST

  With this change, the test should pass, and is hopefully more stable.

* Simplify testing for color or no-color
2017-11-05 15:23:57 +05:30
Pradyun Gedam 88924a4006
Fix a mistake in merge 2017-11-04 13:15:24 +05:30
Pradyun Gedam 032009380f
Merge branch 'master' into pr/4612 2017-11-04 12:45:15 +05:30
Pradyun S. Gedam 8222d788f6
Switch pip uninstall behaviour to be idempotent
pip uninstall no longer aborts if a package is not installed; instead
it prints a warning that the package is not installed and it is
skipping the uninstallation of it for this reason.
2017-11-03 22:28:24 +05:30
Pradyun S. Gedam e8bdaa76e5
Use return values instead of attributes 2017-11-03 22:28:24 +05:30
Pradyun Gedam 87d2735487
Merge pull request #4819 from pradyunsg/vendoring/late-oct-2017
* Update distlib to 0.2.6
* Update six to 1.11.0
* Update pkg_resources (via setuptools) to 36.6.0.
2017-11-03 20:08:43 +05:30
Calvin Smith 4e97d3d5f9 Freeze not installed (#4292, #4293) 2017-10-31 11:13:46 +05:30
Pradyun Gedam 058f3b695f
Update pkg_resources (via setuptools) to 36.6.0. 2017-10-28 18:46:21 +05:30
Pradyun Gedam bb2c490ca1
Update six to 1.11.0 2017-10-28 18:45:31 +05:30
Pradyun Gedam f2cf472d91
Update distlib to 0.2.6 2017-10-28 18:44:48 +05:30
Mathieu Bridon 62875be050 Record installed files in a deterministic order
Installed files are recorded by Pip in the order the underlying tool
(Distutils, Setuptools, ...) recorded them.

Unfortunately, at least Setuptools doesn't record them in a
deterministic order in the case of a directory being installed, as it
uses os.walk to find the list of files.

We could fix all those underlying tools to record their files in a
deterministic order in all situations. But fixing it once here in Pip
for all tools is certainly simpler and more future-proof.

This makes the installation more reproducible, and therefore more
verifiable.
2017-10-26 22:29:19 +02:00
Pradyun Gedam a39f36aba1
🎨 2017-10-25 16:07:21 +05:30
Pradyun Gedam e36bb6d5c3 Merge branch 'master' into cache/ephem-wheel-cache 2017-10-24 15:44:43 +05:30
Bartek Ogryczak 62a695c4b9 More HTTP status codes to retry on (#4473)
* Add `--retry-status <HTTP code>` to allow specifying custom HTTP staus codes to retry on.
This is useful for AWS S3 or Cloudflare, which at times return codes other than 503 for
itermitent failures.

* stripping option related code, hardcoding the statuses

* Reword the news file

* changing ndash to regular ascii dash
2017-10-24 10:55:42 +02:00
Chris Jerdonek b112292068 Address issue #1139: make --force-reinstall not require --upgrade (#4432)
* Add failing tests for issue #1139 re: --force-reinstall.

* Address issue #1139: make --force-reinstall not require --upgrade.

* Address review comments.

* Address @xavfernandez's review comments.

This makes the new tests not require network access.
2017-10-24 00:03:20 +02:00
Pradyun Gedam d4e2d7ec2a
Merge branch 'master' into cache/ephem-wheel-cache 2017-10-22 22:43:03 +05:30
Pradyun Gedam 8f68f387f0 Remove Circular dependency between Resolver and Preparer (#4636)
RequirementPreparer no longer takes Resolver as argument in any of its methods and directly takes the reference of the values it actually needs.
2017-10-22 22:34:14 +05:30
Pradyun Gedam 3ec643caf8
Fix message printing for local directories 2017-10-20 15:03:23 +05:30
Pradyun Gedam 1c6a450643
Merge branch 'master' of github.com:pypa/pip into cache/ephem-wheel-cache 2017-10-20 13:51:22 +05:30
Michael Williamson 2d97891497 Allow downloading of sdists for specific platform with --no-deps 2017-10-12 09:30:28 +01:00
Dustin Ingram ff5b2013a0 Use correct executable name for completion command (#4755) 2017-10-12 10:59:53 +05:30
Benoit Pierre 2243562b0e Fix install warning message about mismatched versions 2017-10-08 00:18:52 +02:00
Pradyun Gedam c81e8ac105 Normalize case before comparing (#4770) 2017-10-07 13:15:06 +01:00
Benoit Pierre d8e6654f8d fix un-vendored support; add missing entries (#4661) 2017-10-07 09:58:33 +05:30
Benoit Pierre 961737ab98 Fix integration tests on Windows (#4769) 2017-10-06 20:51:42 +01:00
Pradyun Gedam 02c219e2c4 Merge pull request #4728 from scop/escseq
Python 3.6 invalid escape sequence deprecation fixes
2017-10-06 17:11:45 +05:30
Chris Jerdonek 28061a71c5 Fix test after rebasing another time. 2017-10-05 13:35:14 -07:00
Chris Jerdonek 2a30db5994 Use guard clause. 2017-10-05 10:42:04 -07:00
Chris Jerdonek 4ed70c03d9 Address review comments. 2017-10-05 10:42:04 -07:00
Chris Jerdonek f22c9b265f Change the default revision from origin/master to master. 2017-10-05 10:42:04 -07:00
Chris Jerdonek 15d058edf0 Start using Git.get_revision_sha(). 2017-10-05 10:42:04 -07:00
Chris Jerdonek 85dc157147 Add Git.get_revision_sha() with tests. 2017-10-05 10:40:55 -07:00
Chris Jerdonek 6cbc134ba1 Remove the unused is_ref_commit(). 2017-10-05 10:40:55 -07:00
Chris Jerdonek b8ba25c79f Remove the unused get_refs(). 2017-10-05 10:40:55 -07:00
Chris Jerdonek da30b7007d Address @pradyunsg's review comment. 2017-10-05 02:32:54 -07:00
Chris Jerdonek d646aaca72 Choose a better name, and other clean-ups. 2017-10-05 02:32:54 -07:00
Chris Jerdonek d1b9441595 Change check_version() to accept a commit hash / id. 2017-10-05 02:32:54 -07:00
Chris Jerdonek 3e4f8089d1 Fix check_version() (the tests now pass). 2017-10-05 02:32:54 -07:00
Chris Jerdonek c66ecc73ab Address issue #4507: don't warn when installing from a commit hash (#4674)
* Add failing test for issue #4507.

* Add looks_like_hash() with tests.

* Add news file.

* Address issue #4507 by using looks_like_hash().

* Tweak warning text.

* Fix test after rebasing.

* Remove extra line.
2017-10-05 00:16:10 +02:00
Donald Stufft ae7bbee3f6 Merge pull request #4765 from pradyunsg/misc/remove-platform-glibc
Stop depending on platform.libc_ver()
2017-10-04 13:49:01 -04:00
Pradyun S. Gedam 9ac0220ceb Stop depending on platform.libc_ver() 2017-10-04 21:01:22 +05:30
Pradyun S. Gedam 165b10b9db Rework Wheel Caching 2017-10-04 18:53:55 +05:30
Pradyun S. Gedam b96618bedc Revert unrelated change 2017-10-04 18:53:55 +05:30
Pradyun S. Gedam ebf06ceb9d Merge master 2017-10-04 16:58:31 +05:30
Chris Jerdonek 6a0d3aa66e Update for mypy. 2017-10-02 15:37:03 -07:00
Chris Jerdonek 3498b19a8b Address issue #1130: make pip ignore GIT_DIR and GIT_WORK_TREE. 2017-10-02 15:35:30 -07:00
Antony Lee d339351a41 Autocomplete installed dists in `pip show ...`. (#4749)
* Autocomplete installed dists in `pip show ...`.

* 🎨 Assign to a variable to satisfy linters
2017-10-02 22:56:17 +02:00
Pradyun Gedam fc7ca26489 Warn user when installing scripts outside PATH (#4553) 2017-10-02 17:54:37 +01:00
Chris Jerdonek 3e56733df4 Add a RevOptions class (#4707)
* Add the RevOptions class, and test.

* Start using the RevOptions class.

* Add news file.

* Update for mypy.

* Fix test after rebasing.

* Address @xavfernandez's review comments.
2017-10-02 00:21:11 +02:00
Dustin Ingram 8d96363882 Don't assume master branch exists when reinstalling editable package from Git (#4450)
* Add failing test

* Don't assume master branch is default

* Don't expect output to stderr

* Use the 'short ref' instead of the 'full ref'
2017-09-30 00:30:30 +02:00
Ville Skyttä 8fb2b6318f Python 3.6 invalid escape sequence deprecation fixes
https://docs.python.org/3/whatsnew/3.6.html#deprecated-python-behavior
2017-09-15 23:35:45 +03:00
Donald Stufft 6e2391a92c Merge pull request #4712 from dstufft/upgrade
Upgrade our Vendored Dependencies
2017-09-07 16:19:47 -04:00
Donald Stufft 13a3f1d52a Upgrade requests 2017-09-07 15:54:22 -04:00
Donald Stufft d1379fa336 Merge pull request #4684 from pradyunsg/misc/remove-redundant-import
Remove a redundant import
2017-09-07 12:55:03 -04:00
Donald Stufft b14a62f36e Upgrade cachecontrol, setuptools, and pytoml 2017-09-07 12:47:05 -04:00
Pradyun S. Gedam c6cce8509d Remove a redundant import
The linters missed it. Funny.
2017-09-07 16:50:13 +05:30
Pradyun S. Gedam 1240a81b50 Get rid of successfully_installed attr 2017-09-07 00:06:26 +05:30
Pradyun S. Gedam e2b2f70ebb isort all imports 2017-09-02 17:02:48 +05:30
Pradyun S. Gedam 93d9f20df8 Remove a useless section 2017-09-02 16:59:37 +05:30
Pradyun S. Gedam da57810742 type: Any partials in cmdoptions 2017-09-02 16:52:19 +05:30
Pradyun S. Gedam ec26f0a024 Import from inner packages
mypy doesn't seem to recognize the imports from pip._internal.req for some reason. This is a quick hacky patch for that. If someone is reading this, you probably want to look into why that's happening.

Also, Hi to you, a person from the future!
2017-09-02 16:52:00 +05:30
Pradyun S. Gedam d9a44310f7 Move mypy stubs as well 2017-09-02 16:18:28 +05:30
Pradyun S. Gedam d40881894e Add imports I'd missed 2017-09-02 16:10:48 +05:30
Pradyun S. Gedam d37868ff04 Move the typing file 2017-09-02 16:07:39 +05:30
Pradyun S. Gedam 11451c54ec Merge branch 'master' into mypy/infrastructure 2017-09-02 16:06:48 +05:30
Donald Stufft 95bcf8c5f6 Move all internal APIs to pip._internal 2017-08-31 14:53:00 -04:00