Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Python-2.7.18-GCCcore-10.2.0.eb wont build anymore - end of life #12016

Closed
Mormacill opened this issue Jan 17, 2021 · 10 comments
Closed

Python-2.7.18-GCCcore-10.2.0.eb wont build anymore - end of life #12016

Mormacill opened this issue Jan 17, 2021 · 10 comments
Milestone

Comments

@Mormacill
Copy link
Contributor

Python-2.7.18-GCCcore-10.2.0.eb build ends with message:

processing EasyBuild easyconfig /home/easybuilder/.local/EasyBuildInst/software/EasyBuild/4.3.2/easybuild/easyconfigs/p/Python/Python-2.7.18-GCCcore-10.2.0.eb
== building and installing Python/2.7.18-GCCcore-10.2.0...
== fetching files...
== creating build dir, resetting environment...
== unpacking...
== patching...
== preparing...
== configuring...
== building...
== testing...
== installing...
== taking care of extensions...
== installing extension setuptools 44.1.1 (1/117)...
== installing extension pip 20.2.3 (2/117)...
== installing extension wheel 0.35.1 (3/117)...
== FAILED: Installation ended unsuccessfully (build directory: /home/easybuilder/.local/easybuild/build/Python/2.7.18/GCCcore-10.2.0): build failed (first 300 chars): cmd " pip install --prefix=/opt/apps/software/Python/2.7.18-GCCcore-10.2.0  --no-deps  --ignore-installed  --no-build-isolation  ." exited with exit code 1 and output:
DEPRECATION: Python 2.7 reached the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 is no longer main (took 2 min 42 sec)
== Results of the build can be found in the log file(s) /tmp/eb-5bx3fi0z/easybuild-Python-2.7.18-20210118.000255.mcdnR.log
ERROR: Build of /home/easybuilder/.local/EasyBuildInst/software/EasyBuild/4.3.2/easybuild/easyconfigs/p/Python/Python-2.7.18-GCCcore-10.2.0.eb failed (err: 'build failed (first 300 chars): cmd " pip install --prefix=/opt/apps/software/Python/2.7.18-GCCcore-10.2.0  --no-deps  --ignore-installed  --no-build-isolation  ." exited with exit code 1 and output:\nDEPRECATION: Python 2.7 reached the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 is no longer main')

In fact I wanted to build Qt5 5.14.2, but it depends on Python 2.7.18. Just in November it was changed back from Python 3 to Python 2: b840380

@Mormacill
Copy link
Contributor Author

Mormacill commented Jan 26, 2021

Well, same as Issue #12017 this is again an ubuntu based problem. Building with CentOS succeedes.

edit:
The problem consists in the pip version used in Python-2.7.18-GCCcore-10.2.0.eb. Using pip 20.0.2 from Python-2.7.18-GCCcore-9.3.0.eb also succeedes at Ubuntu.
Who knows why it works with new pip at Centos but not at Ubuntu...

@boegel
Copy link
Member

boegel commented Feb 2, 2021

@Mormacill Sorry for the delay in picking up on this...

The message you're seeing is only a warning, the actual problem must be something different.

Please check the log file for the specific error?

@boegel boegel added this to the 4.x milestone Feb 2, 2021
@Mormacill
Copy link
Contributor Author

@boegel no problem!

Here is a full build log, it's hard for me to figure out on this:
https://gist.github.com/Mormacill/99354b81714340042458a8775d73f7fc

@algiar
Copy link

algiar commented Feb 25, 2021

I also think that the problem is with the pip version. I have tested from 20.0.2 up, and the last working version is 20.1.1. From this version on, easybuild fails just after installing wheel-0.35.1 extension with:

build_log.py:169 ERROR EasyBuild crashed with an error (at easybuild/software/EasyBuild/4.3.3/lib/python3.6/site-packages/easybuild/base/exceptions.py:124 in __init__): cmd " pip install --prefix=/cm/easybuild/software/Python/2.7.18-GCCcore-10.2.0  --no-deps  --ignore-installed  --no-build-isolation  ." exited with exit code 1 and output:
DEPRECATION: Python 2.7 reached the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 is no longer maintained. pip 21.0 will drop support for Python 2.7 in January 2021. More details about Python 2 support in pip can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support pip 21.0 will remove support for this functionality.

I have created PR #12293 to switch back to pip-20.1.1 in the easyconfig.

@Mormacill
Copy link
Contributor Author

Mormacill commented Feb 26, 2021

@algiar thanks for your testing!
There is just the question left why it works on other operating systems like CentOS with pip 20.2.3 without any errors.
Did you test with ubuntu?

@algiar
Copy link

algiar commented Feb 26, 2021

Oh, sorry, I forgot to mention. I reproduced the error and did the testing on Centos 7.9. Well, it was a docker container actually.

@Mormacill
Copy link
Contributor Author

Mormacill commented Feb 26, 2021

Well, same as Issue #12017 this is again an ubuntu based problem. Building with CentOS succeedes.

edit:
The problem consists in the pip version used in Python-2.7.18-GCCcore-10.2.0.eb. Using pip 20.0.2 from Python-2.7.18-GCCcore-9.3.0.eb also succeedes at Ubuntu.
Who knows why it works with new pip at Centos but not at Ubuntu...

I also tried it again with CentOS 7.9 after your test and indeed it now also occurs at CentOS. A month ago when I opened this issue I experienced this error with ubuntu, test with CentOS still succeded there.
An appearing of this error now in CentOS makes it more urgend to have an eye on that.

@boegel
Copy link
Member

boegel commented Feb 27, 2021

I'm not seeing this problem on CentOS 7.9.

The warning about pip and Python 2 is just a warning, not an error, so not the actual problem.
pip dropped support for Python 2 in version 21.0 (see https://pip.pypa.io/en/stable/news/), older version (like 20.2.3) should still work fine with Python 2.

In the log that @Mormacill shared, this is the real problem:

UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 1: ordinal not in range(128)

That points to a bug in pip 20.2, see pypa/pip#8658, which was fixed in pypa/pip#8666, which is included with pip 20.3.

@algiar So rather than downgrading pip in #12293, we should bump it to the latest pip that's still supported with Python 2, i.e. 20.3.4?

@algiar
Copy link

algiar commented Feb 27, 2021

That's fair enough. Better going forward than going backwards :-;

@Mormacill
Copy link
Contributor Author

Solved by pr #12293

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants