summaryrefslogtreecommitdiffstats
path: root/Mac
diff options
context:
space:
mode:
authorNed Deily <nad@python.org>2018-05-02 05:30:33 (GMT)
committerGitHub <noreply@github.com>2018-05-02 05:30:33 (GMT)
commit0dd80709b5dc03756e7f4510761ae60236bb9f6d (patch)
tree5b2d8705387d4f10c3de873d168428c274244707 /Mac
parent69a013ec189f93a0dea97cfdbb3adc348648a666 (diff)
downloadcpython-0dd80709b5dc03756e7f4510761ae60236bb9f6d.zip
cpython-0dd80709b5dc03756e7f4510761ae60236bb9f6d.tar.gz
cpython-0dd80709b5dc03756e7f4510761ae60236bb9f6d.tar.bz2
bpo-33290: Have macOS installer remove "pip" alias (GH-6683)
Currently, "pip3 install --upgrade pip" unconditionally installs a "pip" alias even for Python 3. If a user has an existing Python 3.x installed from a python.org macOS installer and then subsequently manually updates to a new version of pip, there may now be a stray "pip" alias in the Python 3.x framework bin directory which can cause confusion if the user has both a Python 2.7 and 3.x installed; if the Python 3.x fw bin directory appears early on $PATH, "pip" might invoke the pip3 for the Python 3.x rather than the pip for Python 2.7. To try to mitigate this, the macOS installer script for the ensurepip option will unconditionally remove "pip" from the 3.x framework bin directory being updated / installed. (The ambiguity can be avoided by using "pythonx.y -m pip".)
Diffstat (limited to 'Mac')
-rwxr-xr-xMac/BuildScript/scripts/postflight.ensurepip5
1 files changed, 5 insertions, 0 deletions
diff --git a/Mac/BuildScript/scripts/postflight.ensurepip b/Mac/BuildScript/scripts/postflight.ensurepip
index 3074fa3..36d0594 100755
--- a/Mac/BuildScript/scripts/postflight.ensurepip
+++ b/Mac/BuildScript/scripts/postflight.ensurepip
@@ -12,6 +12,11 @@ umask 022
"${FWK}/bin/python${PYVER}" -E -s -m ensurepip --upgrade
+# bpo-33290: An earlier "pip3 install --upgrade pip" may have installed
+# a "pip" in the fw bin directory. For a py3 install, remove it.
+
+rm -f "${FWK}/bin/pip"
+
"${FWK}/bin/python${PYVER}" -E -s -Wi \
"${FWK}/lib/python${PYVER}/compileall.py" -q -j0 \
-f -x badsyntax \