android build: bump python version (3.10.18->3.11.14)
What changed, and why it matters
This commit simply updates the version of Python used to build the Electrum Android app from 3.10.18 to 3.11.14. It changes version numbers and cryptographic checksums in build files, and switches to a newer version of the python-for-android build tool. There is no indication of a security vulnerability being fixed or introduced.
No security action required. Treat as routine build maintenance; verify the new Python and python-for-android checksums match upstream published values before merging.
Security signals we found
No strong security signals were identified.
Evidence from the diff
The patch bumps pinned Python versions for the Android build environment: hostpython3 and python3 recipes are updated from 3.10.18 to 3.11.14 with matching SHA-512 checksums. The Dockerfile’s P4A_CHECKOUT_COMMIT is updated to a newer python-for-android commit that backports 3.11 support. The commit message frames this as a routine version bump and notes reproducible builds still pass. No code-level security fix, vulnerability reference, or behavioral change to the application is present in the diff.
Changed components
contrib/android/Dockerfilecontrib/android/p4a_recipes/hostpython3/__init__.pycontrib/android/p4a_recipes/python3/__init__.pyInspect captured patch +7 / −5
diff --git a/contrib/android/Dockerfile b/contrib/android/Dockerfile
index b0efecc..57419a4 100644
--- a/contrib/android/Dockerfile
+++ b/contrib/android/Dockerfile
@@ -207,7 +207,7 @@ RUN cd /opt \
&& /opt/venv/bin/python3 -m pip install --no-build-isolation --no-dependencies -e .
# install python-for-android
-ENV P4A_CHECKOUT_COMMIT="e91310fbf88857b2fbd9f9a5f591300ae5da90b5"
+ENV P4A_CHECKOUT_COMMIT="a01269f7799587ad74ee40e0b642d917b8db7d4e"
# ^ from branch electrum_20251211 (note: careful with force-pushing! see #8162)
RUN cd /opt \
&& git clone https://github.com/spesmilo/python-for-android \
diff --git a/contrib/android/p4a_recipes/hostpython3/__init__.py b/contrib/android/p4a_recipes/hostpython3/__init__.py
index 28bc508..a9a1be3 100644
--- a/contrib/android/p4a_recipes/hostpython3/__init__.py
+++ b/contrib/android/p4a_recipes/hostpython3/__init__.py
@@ -11,8 +11,9 @@ assert HostPython3Recipe.python_depends == []
class HostPython3RecipePinned(util.InheritedRecipeMixin, HostPython3Recipe):
- version = "3.10.18"
- sha512sum = "494a76de4e92122b9722240d6c33a3e2345072240e0b60938010bc6da34ec7ff7961f329585c140cb6ea0a254d987f1e4b1a678ba9ec7d8feeb8bb262be65a06"
+ # PYTHON_VERSION= # < line here so that I can grep the codebase and teleport here
+ version = "3.11.14"
+ sha512sum = "41fb3ae22ce4ac0e8bb6b9ae8db88a810af1001d944e3f1abc9e86824ae4be31347e3e3a70425ab12271c6b7eeef552f00164ef23cfffa2551c3c9d1fe5ab91f"
recipe = HostPython3RecipePinned()
diff --git a/contrib/android/p4a_recipes/python3/__init__.py b/contrib/android/p4a_recipes/python3/__init__.py
index 0b4b6c2..6fc9d51 100644
--- a/contrib/android/p4a_recipes/python3/__init__.py
+++ b/contrib/android/p4a_recipes/python3/__init__.py
@@ -11,8 +11,9 @@ assert Python3Recipe.python_depends == []
class Python3RecipePinned(util.InheritedRecipeMixin, Python3Recipe):
- version = "3.10.18"
- sha512sum = "494a76de4e92122b9722240d6c33a3e2345072240e0b60938010bc6da34ec7ff7961f329585c140cb6ea0a254d987f1e4b1a678ba9ec7d8feeb8bb262be65a06"
+ # PYTHON_VERSION= # < line here so that I can grep the codebase and teleport here
+ version = "3.11.14"
+ sha512sum = "41fb3ae22ce4ac0e8bb6b9ae8db88a810af1001d944e3f1abc9e86824ae4be31347e3e3a70425ab12271c6b7eeef552f00164ef23cfffa2551c3c9d1fe5ab91f"
recipe = Python3RecipePinned()
Why this scored 15/100
Community notes
Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.
The AI analysis stands alone for now. Submit a note if you can add evidence or important context.