Skip to content

how to shoot yourself in the foot on python3.2 #3390

Closed
@wm75

Description

@wm75

Perhaps unavoidably pip on python3.2 asks you to upgrade to pip version 8.0.0:

You are using pip version 7.1.2, however version 8.0.0 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.

What's really stupid is what happens if you follow that advice:

python3.2 -m pip install pip --upgrade
Collecting pip
Downloading pip-8.0.0-py2.py3-none-any.whl (1.2MB)
100% |████████████████████████████████| 1.2MB 663kB/s
Installing collected packages: pip
Found existing installation: pip 7.1.2
Uninstalling pip-7.1.2:
Successfully uninstalled pip-7.1.2
Successfully installed pip-8.0.0

So, ok, nobody cared to check the python version in setup.py and do something to inform the user of the foreseeable problems, but even worse, your way back is barred:

python3.2 -m pip install pip==7.1.2 --upgrade
/usr/local/lib/python3.2/site-packages/pip/_vendor/pkg_resources/init.py:87: UserWarning: Support for Python 3.0-3.2 has been dropped. Future versions will fail here.
warnings.warn(msg)
Traceback (most recent call last):
File "/usr/local/lib/python3.2/runpy.py", line 141, in _run_module_as_main
mod_name, loader, code, fname = _get_module_details(mod_name)
File "/usr/local/lib/python3.2/runpy.py", line 111, in _get_module_details
return _get_module_details(pkg_main_name)
File "/usr/local/lib/python3.2/runpy.py", line 103, in _get_module_details
loader = get_loader(mod_name)
File "/usr/local/lib/python3.2/pkgutil.py", line 461, in get_loader
return find_loader(fullname)
File "/usr/local/lib/python3.2/pkgutil.py", line 471, in find_loader
for importer in iter_importers(fullname):
File "/usr/local/lib/python3.2/pkgutil.py", line 427, in iter_importers
import(pkg)
File "/usr/local/lib/python3.2/site-packages/pip/init.py", line 15, in
from pip.vcs import git, mercurial, subversion, bazaar # noqa
File "/usr/local/lib/python3.2/site-packages/pip/vcs/mercurial.py", line 9, in
from pip.download import path_to_url
File "/usr/local/lib/python3.2/site-packages/pip/download.py", line 35, in
from pip.utils.ui import DownloadProgressBar, DownloadProgressSpinner
File "/usr/local/lib/python3.2/site-packages/pip/utils/ui.py", line 15, in
from pip._vendor.progress.bar import Bar, IncrementalBar
File "/usr/local/lib/python3.2/site-packages/pip/_vendor/progress/bar.py", line 48
empty_fill = u'∙'
^
SyntaxError: invalid syntax

So what good is this user warning if the tool fails anyway?
Dropping support for Python3.2 is one thing, but doing so in such an ill-planned way another.

Metadata

Metadata

Assignees

No one assigned

    Labels

    auto-lockedOutdated issues that have been locked by automation

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions