summaryrefslogtreecommitdiffstats
path: root/Lib/ensurepip
diff options
context:
space:
mode:
authorNick Coghlan <ncoghlan@gmail.com>2013-12-23 06:16:07 (GMT)
committerNick Coghlan <ncoghlan@gmail.com>2013-12-23 06:16:07 (GMT)
commit6256fcbc97e0b1a1e0df1972221232b3a78dff18 (patch)
treee901b7ff5795dfb5fbaffb2483d99fbaea91f851 /Lib/ensurepip
parent3f122d6f44d2cdf0a806fa8019d58ea24cfdf070 (diff)
downloadcpython-6256fcbc97e0b1a1e0df1972221232b3a78dff18.zip
cpython-6256fcbc97e0b1a1e0df1972221232b3a78dff18.tar.gz
cpython-6256fcbc97e0b1a1e0df1972221232b3a78dff18.tar.bz2
Close #19734: ignore pip env vars in ensurepip
Diffstat (limited to 'Lib/ensurepip')
-rw-r--r--Lib/ensurepip/__init__.py8
1 files changed, 8 insertions, 0 deletions
diff --git a/Lib/ensurepip/__init__.py b/Lib/ensurepip/__init__.py
index b6bc4b6..5ceda51 100644
--- a/Lib/ensurepip/__init__.py
+++ b/Lib/ensurepip/__init__.py
@@ -43,10 +43,18 @@ def bootstrap(*, root=None, upgrade=False, user=False,
"""
Bootstrap pip into the current Python installation (or the given root
directory).
+
+ Note that calling this function will alter both sys.path and os.environ.
"""
if altinstall and default_pip:
raise ValueError("Cannot use altinstall and default_pip together")
+ # We deliberately ignore all pip environment variables
+ # See http://bugs.python.org/issue19734 for details
+ keys_to_remove = [k for k in os.environ if k.startswith("PIP_")]
+ for k in keys_to_remove:
+ del os.environ[k]
+
# By default, installing pip and setuptools installs all of the
# following scripts (X.Y == running Python version):
#