HomePhabricator

[electrum] build: Update to Python 3.11.8

Description

[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.

Reviewers: #bitcoin_abc, Fabien

Reviewed By: #bitcoin_abc, Fabien

Subscribers: Fabien

Differential Revision: https://reviews.bitcoinabc.org/D15527

Details

Provenance
EchterAgoAuthored on Feb 18 2024, 10:22
PiRKCommitted on Mar 4 2024, 13:40
PiRKPushed on Mar 4 2024, 13:40
Reviewer
Restricted Project
Differential Revision
D15527: [electrum] build: Update to Python 3.11.8
Parents
rABCfb3a2e94d51c: [chronik-client] Sub and unsub to and from addresses for websocket
Branches
Unknown
Tags
Unknown