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 3.7 will require OpenSSL 1.0.2+; 3.7-dev, 3.8-dev (nightly) do not work on Trusty #9069

Closed
tiran opened this issue Jan 15, 2018 · 41 comments

Comments

@tiran
Copy link

tiran commented Jan 15, 2018

PSA,

Python 3.7's ssl module will not work on Ubuntu 14.04 any more. I'm going to push several patches soon that depend on OpenSSL 1.0.2 or 1.1.0 APIs. See https://mail.python.org/pipermail/python-dev/2018-January/151718.html

@BanzaiMan
Copy link
Contributor

Related: #9119

@yan12125
Copy link

I got the following error when trying to install CPython git-master via pyenv:

The Python ssl extension was not compiled. Missing the OpenSSL lib?

(https://travis-ci.org/yan12125/python3-android/jobs/335168981)

I guess it's related to this issue? The CPython commit that requires OpenSSL 1.0.2+ is merged 3 days ago: python/cpython@61d478c

@tiran
Copy link
Author

tiran commented Jan 30, 2018

It's very likely. The ssl module in 3.7 no longer compiles with OpenSSL from Ubuntu 14.04.

Check your configure output. On a system with compatible libssl, it looks like this:

checking whether compiling and linking against OpenSSL works... yes
checking for X509_VERIFY_PARAM_set1_host in libssl... yes
checking for --with-ssl-default-suites... python

If the second line ends with no, then either OpenSSL is too old or you have LibreSSL.

@BanzaiMan
Copy link
Contributor

@yan12125 You are using pyenv, so I believe the fix will come from that tool, not Travis.

jamadden added a commit to gevent/gevent that referenced this issue Feb 5, 2018
The build cache was the only thing keeping 3.7.0a4 around; it can no
longer be installed from pyenv. And I accidentaly deleted the master
build cache, so we have no choice.

It may be difficult to get 3.7b1 installed due to
travis-ci/travis-ci#9069
jamadden added a commit to gevent/gevent that referenced this issue Feb 6, 2018
jamadden added a commit to gevent/gevent that referenced this issue Feb 6, 2018
jamadden added a commit to gevent/gevent that referenced this issue Feb 6, 2018
@BanzaiMan
Copy link
Contributor

travis-ci/docs-travis-ci-com#1710 adds a note to inform users that recent *-dev and nightly do not work.

@BanzaiMan BanzaiMan changed the title Python 3.7 will require OpenSSL 1.0.2+ Python 3.7 will require OpenSSL 1.0.2+; 3.7-dev, 3.8-dev (nightly) do not work on Trusty Feb 16, 2018
shikhir-arora added a commit to gieseladev/giesela that referenced this issue Mar 2, 2018
Because they don't support OpenSSL's 1.0.2 or newer API.
See: travis-ci/travis-ci#9069

But, this will work locally with 3.7 - at least Python 3.7.0a2 (default, Oct 18 2017, 18:58:26)
The requirements.txt fix in the last update fixes a compatibility issue that websockets handled 3 months ago but didn't update in versioning.
hugovk added a commit to pylast/pylast that referenced this issue Mar 27, 2018
@jab jab mentioned this issue Apr 9, 2018
@dcrosta
Copy link

dcrosta commented Apr 13, 2018

Is there a timeline for resolution here?

@pfreixes
Copy link

I would like to have some visibility of the future plans for this issue.

@ambv
Copy link

ambv commented Apr 19, 2018

As the simplest workaround, change the following in your .travis.yml:

This solved the issue for me.
See my example .travis.yml.

Note: switching to Xenial is important. While deadsnakes also include a python3.7 build for Trusty, that version doesn't include SSL support and we're back on Square 1.

dcrosta added a commit to tox-dev/tox-docker that referenced this issue Apr 19, 2018
dcrosta added a commit to tox-dev/tox-docker that referenced this issue Apr 19, 2018
@ambv
Copy link

ambv commented Apr 21, 2018

Unfortunately I find "xenial" quite flaky. They relatively often fail to boot or find /var/lib/dpkg/lock locked by something else (but what?). Restarting build jobs helps.

cclauss pushed a commit to cclauss/monkey that referenced this issue Sep 8, 2018
cclauss pushed a commit to cclauss/jupytext that referenced this issue Sep 10, 2018
cclauss pushed a commit to cclauss/python-future that referenced this issue Sep 10, 2018
aqw added a commit to pigskin/pigskin that referenced this issue Sep 11, 2018
jantman added a commit to jantman/biweeklybudget that referenced this issue Sep 14, 2018
cclauss pushed a commit to cclauss/petastorm that referenced this issue Sep 23, 2018
Fixes uber#175
* Add Python 3.7 in alignment with travis-ci/travis-ci#9069
* Add [flake8](http://flake8.pycqa.org) tests as discussed at uber#174 (comment)
selitvin pushed a commit to uber/petastorm that referenced this issue Sep 23, 2018
Fixes #175
* Add Python 3.7 in alignment with travis-ci/travis-ci#9069
* Add [flake8](http://flake8.pycqa.org) tests as discussed at #174 (comment)
jantman added a commit to jantman/awslimitchecker that referenced this issue Sep 23, 2018
cclauss pushed a commit to cclauss/pika that referenced this issue Sep 24, 2018
Upgrade to the production version of Python 3.7 in alignment with travis-ci/travis-ci#9069
cclauss pushed a commit to cclauss/pyyaml that referenced this issue Sep 24, 2018
Upgrade to the production version of Python 3.7 in alignment with travis-ci/travis-ci#9069

Also see the note about outdated Python versions on Trusty at:
* https://docs.travis-ci.com/user/languages/python/#development-releases-support
cclauss pushed a commit to cclauss/nose2 that referenced this issue Sep 25, 2018
cclauss pushed a commit to cclauss/python-chess that referenced this issue Sep 28, 2018
Upgrade to the production version of Python 3.7 in alignment with travis-ci/travis-ci#9069

Also see the note about outdated Python versions on Trusty at:

https://docs.travis-ci.com/user/languages/python/#development-releases-support
@BanzaiMan
Copy link
Contributor

The configuration to get Python 3.7 is:

language: python
sudo: required
dist: xenial
python: "3.7"

Adjust accordingly if your build requires multiple jobs.

@travis-ci travis-ci locked as resolved and limited conversation to collaborators Sep 30, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests