This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: Document Debian 8 / Ubuntu 14.04 OpenSSL compatibility issues
Type: enhancement Stage: resolved
Components: Versions: Python 3.8, Python 3.7
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: Nosy List: David MacIver, christian.heimes, lukasz.langa, miss-islington, ncoghlan, ned.deily, pitrou
Priority: normal Keywords: patch

Created on 2018-06-30 09:26 by ncoghlan, last changed 2022-04-11 14:59 by admin. This issue is now closed.

Pull Requests
URL Status Linked Edit
PR 8022 merged ncoghlan, 2018-06-30 10:17
PR 8227 merged miss-islington, 2018-07-10 13:05
Messages (11)
msg320762 - (view) Author: Nick Coghlan (ncoghlan) * (Python committer) Date: 2018-06-30 09:26
As noted in https://github.com/travis-ci/travis-ci/issues/9069, Travis CI's Ubuntu 14.04 environment includes an OpenSSL that's too old to meet Python 3.7's security requirements.

According to https://github.com/travis-ci/travis-ci/issues/9069#issuecomment-395471575, setting "dist: xenial" instead (giving Ubuntu 16.04) provides a testing environment with a new enough OpenSSL for 3.7 to work.

I'm thinking it would make the most sense as a subsection under https://docs.python.org/dev/whatsnew/3.7.html#platform-support-removals

(https://docs.python.org/dev/whatsnew/3.7.html#ssl does mention this information in a note, but that uses the OpenSSL version numbers directly, which folks aren't necessarily going to know to go to distrowatch to check which Travis environment they need to select: https://distrowatch.com/table.php?distribution=Ubuntu )
msg320764 - (view) Author: David MacIver (David MacIver) * Date: 2018-06-30 09:40
> According to https://github.com/travis-ci/travis-ci/issues/9069#issuecomment-395471575, setting "dist: xenial" instead (giving Ubuntu 16.04) provides a testing environment with a new enough OpenSSL for 3.7 to work.

No, this doesn't work either. The xenial environment is an experimental feature and doesn't work at all reliably. At the time of this writing setting "dist: xenial" actually puts you into Trusty.

Currently the viable ways of making it work on Travis are to either run a custom docker image (which requires you to opt out of their containerized builds and thus makes everything slower), or to build OpenSSL yourself (and making the latter work correctly is a far from straightforward process).
msg320767 - (view) Author: Nick Coghlan (ncoghlan) * (Python committer) Date: 2018-06-30 10:19
OK, given the above feedback, the PR I've created isn't right yet, but it at least shows where any information that we can provide on this point will end up.
msg320770 - (view) Author: Nick Coghlan (ncoghlan) * (Python committer) Date: 2018-06-30 10:40
Also adding Łukasz to the nosy list, since it was his comment from a few weeks ago on the Travis CI ticket that prompted my "dist: xenial" suggestion.
msg320822 - (view) Author: Nick Coghlan (ncoghlan) * (Python committer) Date: 2018-07-01 03:51
I've updated the PR to match my current understanding of the situation with Debian 8 and Ubuntu 14.04.
msg320862 - (view) Author: David MacIver (David MacIver) * Date: 2018-07-02 09:50
Anthony Sottile has pointed out to me that I'm wrong about the xenial thing, and that actually it does work it's just that you need to get multiple things right in order for it to do so. https://github.com/deadsnakes/travis-ci-python3.7-example is a good example of making it work.
msg320871 - (view) Author: Antoine Pitrou (pitrou) * (Python committer) Date: 2018-07-02 11:24
Why should we mention Travis-CI at all? It's Travis-CI's job to document the binaries and runtimes they provide on each of their build environments.
msg321035 - (view) Author: Nick Coghlan (ncoghlan) * (Python committer) Date: 2018-07-04 11:01
Given the update in https://github.com/deadsnakes/travis-ci-python3.7-example#update-2018-07-03, I've simplified the PR to remove any references to Travis CI, and instead just mention the code names for the relevant Debian and Ubuntu releases.

I've also kept the pointer to our CI config for building your own Python against OpenSSL 1.1.0, regardless of the host OS state.
msg321385 - (view) Author: Nick Coghlan (ncoghlan) * (Python committer) Date: 2018-07-10 13:04
New changeset 5fe7c98a54d127759cfce323fab831008c945964 by Nick Coghlan in branch 'master':
bpo-34009: Expand on platform support changes (GH-8022)
https://github.com/python/cpython/commit/5fe7c98a54d127759cfce323fab831008c945964
msg321387 - (view) Author: miss-islington (miss-islington) Date: 2018-07-10 13:24
New changeset 5cca6f9fbead1fae27c37204f345a9465cc88959 by Miss Islington (bot) in branch '3.7':
bpo-34009: Expand on platform support changes (GH-8022)
https://github.com/python/cpython/commit/5cca6f9fbead1fae27c37204f345a9465cc88959
msg321388 - (view) Author: Nick Coghlan (ncoghlan) * (Python committer) Date: 2018-07-10 13:31
Merged to master and 3.7 - any further wording tweaks can be handled as a trivial docs-only PR, without needing additional tracker issues.
History
Date User Action Args
2022-04-11 14:59:02adminsetgithub: 78190
2018-07-10 13:31:02ncoghlansetstatus: open -> closed
title: Document Travis CI / Ubuntu 14.04 OpenSSL compatibility issues -> Document Debian 8 / Ubuntu 14.04 OpenSSL compatibility issues
messages: + msg321388

resolution: fixed
stage: patch review -> resolved
2018-07-10 13:24:09miss-islingtonsetnosy: + miss-islington
messages: + msg321387
2018-07-10 13:05:49miss-islingtonsetstage: commit review -> patch review
pull_requests: + pull_request7765
2018-07-10 13:04:38ncoghlansetmessages: + msg321385
2018-07-04 11:01:48ncoghlansetmessages: + msg321035
2018-07-02 11:24:44pitrousetnosy: + pitrou
messages: + msg320871
2018-07-02 09:50:29David MacIversetmessages: + msg320862
2018-07-01 03:51:04ncoghlansetmessages: + msg320822
stage: needs patch -> commit review
2018-06-30 10:40:07ncoghlansetnosy: + lukasz.langa
messages: + msg320770
2018-06-30 10:19:26ncoghlansetmessages: + msg320767
stage: patch review -> needs patch
2018-06-30 10:17:40ncoghlansetkeywords: + patch
stage: needs patch -> patch review
pull_requests: + pull_request7631
2018-06-30 09:40:18David MacIversetnosy: + David MacIver
messages: + msg320764
2018-06-30 09:26:42ncoghlancreate