d02d7aa312
Users are upgrading pip9 to pip10 by various manners, one of them is `pip install --user --upgrade pip`. If they do that and they run `pip` or `pip3`, the one from /usr/bin is used. However that's the one from this RPM package (pip9) and the import in there fails (it tries to import from ~/.local, but pip10 is there with a bit different API). We add a patch as a dirty workaround to make /usr/bin/pip* work with both pip9 (from this RPM) and pip10 (from whatever). A proper fix is to put ~/.local/bin in front of /usr/bin in the PATH, however others are against that and we cannot change it for existing installs/user homes anyway. This is a workaround for: * https://bugzilla.redhat.com/show_bug.cgi?id=1569488 * https://bugzilla.redhat.com/show_bug.cgi?id=1571650 Patch is applied in %install, because /usr/bin/pip* are entrypoints.
17 lines
492 B
Diff
17 lines
492 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,12 @@
|
|
import re
|
|
import sys
|
|
|
|
-from pip import main
|
|
+try:
|
|
+ from pip import main
|
|
+except ImportError:
|
|
+ # user has most probably upgraded pip in their home
|
|
+ # so let them run it anyway until ~/.local/bin makes it in front of the PATH
|
|
+ from pip._internal import main
|
|
|
|
if __name__ == '__main__':
|
|
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
|