Page MenuHomePhabricator

[electrum] build: Update to Python 3.11.8
ClosedPublic

Authored by PiRK on Feb 23 2024, 15:59.

Details

Reviewers
Fabien
Group Reviewers
Restricted Project
Commits
rABC0f09b199b3b7: [electrum] build: Update to Python 3.11.8
Summary

Bump the python version used to produce the release binaries. This is a wise move because python 3.9 security support will stop soon (2025), because python 3.11 added a significant performance improvement, and because staying in sync with Electron Cash makes the maintenance of the build toolchain easier.

Adjacent required changes:

  • bump pyinstaller to a version that works with python 3.11
  • bump all python libraries to recent enough versions to support python 3.11
  • bump python libraries that are not pure-python (include C/C++ code) to versions that provide wheels (pre-compiled release binaries) for python 3.11, as the build script for Windows does not have the tools or headers to compile the libraries
  • update xvfb in the wine Dockerfile to the latest security patche (previous version of the lib is no longer available so the docker image creation would fail without this)

This is a backport of electroncash#2755

Depends on D15522

Notable differences between this diff and the source material:

Test Plan
contrib/build-wine/build.sh
contrib/build-linux/appimage/build.sh

Build the MacOS release on a MacOS machine, as per contrib/osx/README/md

Test the various release binaries.

Diff Detail

Repository
rABC Bitcoin ABC
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

PiRK edited the summary of this revision. (Show Details)
PiRK edited the test plan for this revision. (Show Details)

fix the windows build (update xvfb)

PiRK published this revision for review.Mar 4 2024, 09:54

I successfully tested the build on MacOS

electrum/contrib/build-wine/_build.sh
132 ↗(On Diff #45878)

this line is not tested yet, the 64-bit windows build still does not work

Fabien added a subscriber: Fabien.
Fabien added inline comments.
electrum/contrib/build-linux/appimage/patches/python-3.11.6-reproducible-buildinfo.diff
18 ↗(On Diff #45878)

newline

electrum/contrib/build-wine/docker/Dockerfile
95 ↗(On Diff #45878)

While you're at it

This revision is now accepted and ready to land.Mar 4 2024, 12:45
PiRK retitled this revision from build: Update to Python 3.11.8 to [electrum] build: Update to Python 3.11.8.Mar 4 2024, 13:13
This revision was automatically updated to reflect the committed changes.