Resolves https://bugzilla.redhat.com/show_bug.cgi?id=1767212 == Before: $ rpm -q python3-pip python3-pip-18.1-1.fc29.noarch $ rpm -q python2-pip python2-pip-18.1-1.fc29.noarch $ /usr/bin/pip --version pip 18.1 from /usr/lib/python2.7/site-packages/pip (python 2.7) $ /usr/bin/pip2 --version pip 18.1 from /usr/lib/python2.7/site-packages/pip (python 2.7) $ /usr/bin/pip3 --version pip 18.1 from /usr/lib/python3.7/site-packages/pip (python 3.7) $ pip{2,3} install --user --upgrade pip ... Successfully installed pip-19.3.1 $ /usr/bin/pip{,2,3} --version Traceback (most recent call last): File "/usr/bin/pip{,2,3}", line 16, in <module> sys.exit(main()) TypeError: 'module' object is not callable $ rm .local/ -rf $ pip{2,3} install --user --upgrade 'pip<10' ... Successfully installed pip-9.0.3 $ /usr/bin/pip --version pip 9.0.3 from /home/pythonista/.local/lib/python2.7/site-packages (python 2.7) $ /usr/bin/pip2 --version pip 9.0.3 from /home/pythonista/.local/lib/python2.7/site-packages (python 2.7) $ /usr/bin/pip3 --version pip 9.0.3 from /home/pythonista/.local/lib/python3.7/site-packages (python 3.7) $ pip{2,3} install --user --upgrade 'pip<9' ... Successfully installed pip-8.1.2 $ /usr/bin/pip --version pip 8.1.2 from /home/pythonista/.local/lib/python2.7/site-packages (python 2.7) $ /usr/bin/pip2 --version pip 8.1.2 from /home/pythonista/.local/lib/python2.7/site-packages (python 2.7) $ /usr/bin/pip3 --version pip 8.1.2 from /home/pythonista/.local/lib/python3.7/site-packages (python 3.7) == After $ rpm -q python3-pip python3-pip-18.1-2.fc29.noarch $ rpm -q python2-pip python2-pip-18.1-2.fc29.noarch $ /usr/bin/pip --version pip 18.1 from /usr/lib/python2.7/site-packages/pip (python 2.7) $ /usr/bin/pip2 --version pip 18.1 from /usr/lib/python2.7/site-packages/pip (python 2.7) $ /usr/bin/pip3 --version pip 18.1 from /usr/lib/python3.7/site-packages/pip (python 3.7) $ pip{2,3} install --user --upgrade pip ... Successfully installed pip-19.3.1 $ /usr/bin/pip --version pip 19.3.1 from /home/pythonista/.local/lib/python2.7/site-packages/pip (python 2.7) $ /usr/bin/pip2 --version pip 19.3.1 from /home/pythonista/.local/lib/python2.7/site-packages/pip (python 2.7) $ /usr/bin/pip3 --version pip 19.3.1 from /home/pythonista/.local/lib/python3.7/site-packages/pip (python 3.7) $ pip{2,3} install --user --upgrade 'pip<10' ... Successfully installed pip-9.0.3 $ /usr/bin/pip --version pip 9.0.3 from /home/pythonista/.local/lib/python2.7/site-packages (python 2.7) $ /usr/bin/pip2 --version pip 9.0.3 from /home/pythonista/.local/lib/python2.7/site-packages (python 2.7) $ /usr/bin/pip3 --version pip 9.0.3 from /home/pythonista/.local/lib/python3.7/site-packages (python 3.7) $ pip{2,3} install --user --upgrade 'pip<9' ... Successfully installed pip-8.1.2 $ /usr/bin/pip --version pip 8.1.2 from /home/pythonista/.local/lib/python2.7/site-packages (python 2.7) $ /usr/bin/pip2 --version pip 8.1.2 from /home/pythonista/.local/lib/python2.7/site-packages (python 2.7) $ /usr/bin/pip3 --version pip 8.1.2 from /home/pythonista/.local/lib/python3.7/site-packages (python 3.7)
20 lines
607 B
Diff
20 lines
607 B
Diff
--- /usr/bin/pip3 2018-03-29 15:22:13.000000000 +0200
|
|
+++ pip3 2018-05-04 11:49:08.098821010 +0200
|
|
@@ -4,7 +4,16 @@
|
|
import re
|
|
import sys
|
|
|
|
-from pip._internal import main
|
|
+try:
|
|
+ from pip._internal import main
|
|
+except ImportError:
|
|
+ # user has most probably downgraded pip in their home
|
|
+ # so let them run it anyway until ~/.local/bin makes it in front of the PATH
|
|
+ from pip import main
|
|
+else:
|
|
+ # user might also upgraded pip...
|
|
+ if hasattr(main, 'main'):
|
|
+ main = main.main
|
|
|
|
if __name__ == '__main__':
|
|
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
|