Issue 30916: Pre-build OpenSSL and Tcl/Tk for Windows (original) (raw)

Created on 2017-07-12 22:37 by steve.dower, last changed 2022-04-11 14:58 by admin. This issue is now closed.

Pull Requests
URL Status Linked Edit
PR 2688 merged steve.dower,2017-07-12 22:39
PR 2492 merged Segev Finer,2017-07-26 22:17
Messages (7)
msg298249 - (view) Author: Steve Dower (steve.dower) * (Python committer) Date: 2017-07-12 22:37
To save time and improve reliability while building CPython, we should pre-build and sign OpenSSL and Tcl/Tk binaries and make it a binary dependency. Our slightly-patched sources will still be available, and it will be relatively easy for people to download and rebuild them, but for most cases (particularly CI/buildbots) we will be able to reuse prebuilt binaries. Since they need to be signed, this basically means it's my responsibility to update the GitHub repo whenever we update Tcl, Tk, Tix or OpenSSL versions. As is usual whenever I get a job, I promise to find a way to mostly automate it :)
msg298269 - (view) Author: Steve Dower (steve.dower) * (Python committer) Date: 2017-07-13 06:51
@Zach - FYI, this will make it unnecessary to run prepare_ssl.bat when checking in updated sources. Rather, this script now requires Perl to do the entire build, so we don't have to have any difference between our source bundle and the original OpenSSL one.
msg298378 - (view) Author: Steve Dower (steve.dower) * (Python committer) Date: 2017-07-14 23:19
Zach opted out of reviewing right now, so I went ahead and pushed my builds to the GitHub repos so that AppVeyor can run. It built and ran fine (which I'm not surprised about), but it was only 1-2 minutes faster on AppVeyor (which I _am_ surprised about). Tcl/tk/tix take longer than that to build on my dev machine, as does OpenSSL, so I'm not sure how AppVeyor was getting them to build so quickly. But in any case, it is definitely faster now, and I suspect more for our devs than our CI. OpenSSL can also be more easily upgraded, and the entire library is now available via ctypes, so all up I think it's a win (+ssl and hashlib experts in case they disagree). Anyone want to take a look at the change before I merge?
msg298467 - (view) Author: Steve Dower (steve.dower) * (Python committer) Date: 2017-07-17 09:15
New changeset 68d663cf85d1ac5eaf83482eed39c0a6f8093601 by Steve Dower in branch 'master': [bpo-30916] Pre-build OpenSSL and Tcl/Tk for Windows (#2688) https://github.com/python/cpython/commit/68d663cf85d1ac5eaf83482eed39c0a6f8093601
msg298468 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2017-07-17 09:22
Failure: http://buildbot.python.org/all/builders/AMD64%20Windows7%20SP1%203.x/builds/750
msg298470 - (view) Author: Steve Dower (steve.dower) * (Python committer) Date: 2017-07-17 09:26
The buildbot failure blamed on this issue is actually due to - it's the first time we've added a new external, and so the inability to download Python via Powershell on Windows 7 is the problem, not this.
msg299250 - (view) Author: Steve Dower (steve.dower) * (Python committer) Date: 2017-07-26 16:01
That buildbot has recovered with other changes, so I'm closing this.
History
Date User Action Args
2022-04-11 14:58:49 admin set github: 75099
2017-07-26 22:17:58 Segev Finer set pull_requests: + <pull%5Frequest2953>
2017-07-26 16:01:28 steve.dower set status: open -> closedresolution: fixedmessages: + stage: commit review -> resolved
2017-07-26 16:00:53 steve.dower set pull_requests: - <pull%5Frequest2894>
2017-07-24 17:15:33 Segev Finer set pull_requests: + <pull%5Frequest2894>
2017-07-17 09:26:35 steve.dower set stage: commit review
2017-07-17 09:26:20 steve.dower set messages: +
2017-07-17 09:22:06 vstinner set nosy: + vstinnermessages: +
2017-07-17 09:15:52 steve.dower set messages: +
2017-07-14 23:19:14 steve.dower set nosy: + gregory.p.smith, janssen, christian.heimes, alex, dstufftmessages: +
2017-07-13 06:51:10 steve.dower set messages: +
2017-07-12 22:39:45 steve.dower set pull_requests: + <pull%5Frequest2753>
2017-07-12 22:37:45 steve.dower create