pyenv/pyenv

pip 8.x breaks python 3.2 compatibility [$30 awarded]

ThomasWaldmann opened this issue · 16 comments

From our travis ci logs:

+pyenv install 3.2.6
Downloading Python-3.2.6.tgz...
-> https://www.python.org/ftp/python/3.2.6/Python-3.2.6.tgz
Installing Python-3.2.6...
patching file ./Modules/readline.c
Hunk #1 succeeded at 225 (offset -6 lines).
Hunk #2 succeeded at 760 (offset -13 lines).
Hunk #3 succeeded at 813 (offset -13 lines).
Hunk #4 succeeded at 871 (offset -13 lines).
Hunk #5 succeeded at 919 with fuzz 2 (offset -24 lines).
patching file ./Lib/ssl.py
patching file ./Modules/_ssl.c
Installing pip from https://bootstrap.pypa.io/get-pip.py...
error: failed to install pip via get-pip.py
BUILD FAILED (OS X 10.10.3 using python-build 20151028)

Inspect or clean up the working tree at /var/folders/vy/rcv48w3j4w79llzf_x6qnvw40000gn/T/python-build.20160123101310.1990

Results logged to /var/folders/vy/rcv48w3j4w79llzf_x6qnvw40000gn/T/python-build.20160123101310.1990.log

Last 10 log lines:

  File "/var/folders/vy/rcv48w3j4w79llzf_x6qnvw40000gn/T/python-build.20160123101310.1990/get-pip.py", line 82, in bootstrap
    import pip
  File "/var/folders/vy/rcv48w3j4w79llzf_x6qnvw40000gn/T/tmph4tbve/pip.zip/pip/__init__.py", line 15, in <module>
  File "/var/folders/vy/rcv48w3j4w79llzf_x6qnvw40000gn/T/tmph4tbve/pip.zip/pip/vcs/mercurial.py", line 9, in <module>
  File "/var/folders/vy/rcv48w3j4w79llzf_x6qnvw40000gn/T/tmph4tbve/pip.zip/pip/download.py", line 35, in <module>
  File "/var/folders/vy/rcv48w3j4w79llzf_x6qnvw40000gn/T/tmph4tbve/pip.zip/pip/utils/ui.py", line 15, in <module>
  File "/var/folders/vy/rcv48w3j4w79llzf_x6qnvw40000gn/T/tmph4tbve/pip.zip/pip/_vendor/progress/bar.py", line 48
    empty_fill = u'∙'
                      ^
SyntaxError: invalid syntax

--- The **[$30 bounty](https://www.bountysource.com/issues/30139745-pip-8-x-breaks-python-3-2-compatibility?utm_campaign=plugin&utm_content=tracker%2F282009&utm_medium=issues&utm_source=github)** on this issue has been claimed at [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F282009&utm_medium=issues&utm_source=github).

Seeing the same issue. Is there a way to force installation of a particular version of pip and friends when installing Python 3.2?

seems like it must be pip < 8.0 and virtualenv < 14.0 to work with python 3.2.

yyuu commented

Hmm. I will work for this in this weekend to modify the definitions of 3.2.x to use specific version of pip....

cool, thanks!

yyuu commented

@ThomasWaldmann I pushed 1dc9ef2 and I confirmed that the installation of pip succeeded with CPython 3.2.x and Stackless 3.2.x. Could you check if it's working for you?

yup, it works for me. \o/

my above comment related to a local test with linux and python 3.2.

just wanted to leave a note here that it is still broken for everybody who gets pyenv via brew on mac os x, because it gets the not-yet-fixed pyenv version from december 2015 from there.

https://travis-ci.org/borgbackup/borg/jobs/106235185

Thanks for fixing the issue so fast! Since I'm sitting on the broken version of homebrew I repeated the fix manually, i.e. adjusted /usr/local/Cellar/pyenv/20151006/default-plugins/python-build/share/python-build/3.2.6 according to 1dc9ef2 (replace ensurepip with ez_setup)

yyuu commented

Okay, I'll release a new version of pyenv / pyenv-virtualenv soon.

yyuu commented

I released v20160202 and sent PRs to Homebrew.

thanks much! :)

Thank you.

Why was this closed? This is still broken.

@chrisspen Well, I think it was really fixed back then. Back then, we ran our tests using pyenv and travis-ci on ubuntu 12.04, so we noticed it working again (and also not breaking for a while).

Can't say anything about the current state though, because we moved on and run on ubuntu 14.04 now, so no py 3.2 there any more - also we raised our project's minimum requirements to 3.4.

@chrisspen It is still fixed. As I commented on #738, part of your test configuration is trying to install a version of pip which is too new.