Bug 2014269 - Bump mach minimum Python version to 3.10 r=firefox-build-system-reviewers,mach-reviewers,sergesanspaille,ahal

Differential Revision: https://phabricator.services.mozilla.com/D322845
This commit is contained in:
Alex Hochheiden
2026-09-05 01:00:18 +00:00
committed by ahochheiden@mozilla.com
parent f1709d5ed1
commit 07d0250f77
34 changed files with 36 additions and 36 deletions
+1 -1
View File
@@ -8,7 +8,7 @@ related to the build system, Python is typically the first choice.
## Python Requirements
The tree requires Python 3.9 or greater to build.
The tree requires Python 3.10 or greater to build.
All Python packages not in the Python distribution are included in the
source tree. So all you should need is a vanilla Python install and you
should be good to go.
+1 -1
View File
@@ -20,7 +20,7 @@ they are running in the JS shell environment.
* REQUIREMENTS
Python 3.9. This is already a standard requirement for building our tree.
Python 3.10. This is already a standard requirement for building our tree.
* RUNNING THE TESTS
+3 -3
View File
@@ -10,8 +10,8 @@ import subprocess
import traceback
from textwrap import dedent, fill
MIN_PYTHON_VERSION = (3, 9)
MAX_PYTHON_VERSION_TO_CONSIDER = (3, 12)
MIN_PYTHON_VERSION = (3, 10)
MAX_PYTHON_VERSION_TO_CONSIDER = (3, 14)
def load_mach(dir_path, mach_path, args):
@@ -80,7 +80,7 @@ def try_alternate_python3_executables(args):
def main(args):
# Ensure we are running Python 3.9+. We run this check as soon as
# Ensure we are running Python 3.10+. We run this check as soon as
# possible to avoid a cryptic import/usage error.
if sys.version_info < MIN_PYTHON_VERSION:
print(
@@ -48,7 +48,7 @@ Download Python from the [the official website](https://www.python.org/downloads
:::{note}
To avoid Mach compatibility issues with recent Python releases, it's recommended to install
the 2nd-most recent "major version". For example, at time of writing, the current modern Python
version is 3.10.1, so a safe version to install would be the most recent 3.9 release.
version is 3.14.0, so a safe version to install would be the most recent 3.13 release.
:::
You'll want to download the "Windows installer (64-bit)" associated with the release you've chosen.
+1 -1
View File
@@ -13,7 +13,7 @@
import sys
MINIMUM_MINOR_VERSION = 9
MINIMUM_MINOR_VERSION = 10
major, minor = sys.version_info[:2]
if (major < 3) or (major == 3 and minor < MINIMUM_MINOR_VERSION):
+1 -1
View File
@@ -1,2 +1,2 @@
requires-python:>=3.9
requires-python:>=3.10
pypi:google-cloud-bigquery==3.41.0
+1 -1
View File
@@ -1,4 +1,4 @@
requires-python:>=3.9
requires-python:>=3.10
pth:third_party/python/vsdownload
pypi-optional:taskcluster-taskgraph==24.1.1:toolchain artifacts will not be bootstrapped
vendored:testing/web-platform/tests/tools/third_party/h2/src
+1 -1
View File
@@ -1,2 +1,2 @@
requires-python:>=3.9
requires-python:>=3.10
vendored:third_party/python/pyyaml/lib/
+1 -1
View File
@@ -1,4 +1,4 @@
requires-python:>=3.9
requires-python:>=3.10
vendored:testing/web-platform/tests/tools/third_party/h2/src
vendored:testing/web-platform/tests/tools/third_party/hpack/src
vendored:testing/web-platform/tests/tools/third_party/html5lib
+1 -1
View File
@@ -1,2 +1,2 @@
requires-python:>=3.9
requires-python:>=3.10
pth:devtools/client/aboutdebugging/test
+1 -1
View File
@@ -1,4 +1,4 @@
requires-python:>=3.9
requires-python:>=3.10
# The following are only required by autodoc
pth:python/mozpack/test
pth:tools/lint/eslint/
+1 -1
View File
@@ -1,4 +1,4 @@
requires-python:>=3.9.2
requires-python:>=3.10
pypi:cryptography==50.0.1
vendored:third_party/python/ecdsa
vendored:third_party/python/pyasn1
+1 -1
View File
@@ -1,4 +1,4 @@
requires-python:>=3.9
requires-python:>=3.10
# Required by mach ide vscode
pypi-optional:json5==0.10.0:extended json syntax support disabled
pypi-optional:taskcluster-taskgraph==24.1.1:toolchain artifacts will not be bootstrapped
+1 -1
View File
@@ -1,2 +1,2 @@
requires-python:>=3.9
requires-python:>=3.10
pypi:ipython==7.34.0
+1 -1
View File
@@ -1,4 +1,4 @@
requires-python:>=3.9
requires-python:>=3.10
pypi:Sphinx==7.1.2
pypi:alabaster==0.7.13
pypi:codespell==2.4.3
+1 -1
View File
@@ -1,4 +1,4 @@
requires-python:>=3.9
requires-python:>=3.10
pth:build
pth:config
pth:config/mozunit
+1 -1
View File
@@ -1,4 +1,4 @@
requires-python:>=3.9
requires-python:>=3.10
pth:testing/manifest
pypi:mozci==2.4.0
pypi:python-bugzilla==3.2.0
+1 -1
View File
@@ -1,4 +1,4 @@
requires-python:>=3.9
requires-python:>=3.10
vendored:third_party/python/fluent.syntax
vendored:third_party/python/gitignorant
vendored:third_party/python/iniparse
+1 -1
View File
@@ -1,3 +1,3 @@
requires-python:>=3.9
requires-python:>=3.10
pypi:coverage==5.1
pypi:pytest==8.4.2
+1 -1
View File
@@ -1,4 +1,4 @@
requires-python:>=3.9
requires-python:>=3.10
pypi:coverage==5.1
pypi:pytest-asyncio==1.2.0
pypi:pytest==8.4.2
+1 -1
View File
@@ -1,4 +1,4 @@
requires-python:>=3.9
requires-python:>=3.10
pth:testing/manifest
pypi:Flask==2.1.3
pypi:Sphinx==7.1.2
+1 -1
View File
@@ -1,3 +1,3 @@
requires-python:>=3.9
requires-python:>=3.10
pypi:fluent.runtime==0.4.0
vendored:third_party/python/redo
+1 -1
View File
@@ -1,3 +1,3 @@
requires-python:>=3.9
requires-python:>=3.10
pypi:fluent.runtime==0.4.0
vendored:third_party/python/redo
+1 -1
View File
@@ -1,3 +1,3 @@
requires-python:>=3.9
requires-python:>=3.10
pypi:fluent.runtime==0.4.0
vendored:third_party/python/redo
+1 -1
View File
@@ -1,3 +1,3 @@
requires-python:>=3.9
requires-python:>=3.10
pypi:fluent.runtime==0.4.0
vendored:third_party/python/redo
+1 -1
View File
@@ -1,4 +1,4 @@
requires-python:>=3.9
requires-python:>=3.10
requirements-txt:taskcluster/requirements.txt
vendored:testing/web-platform/tests/tools/third_party/h2/src
vendored:testing/web-platform/tests/tools/third_party/hpack/src
+1 -1
View File
@@ -1,4 +1,4 @@
requires-python:>=3.9
requires-python:>=3.10
pypi:Flask==2.1.3
pypi:auth0-python==4.4.1
pypi:werkzeug==2.3.8
+1 -1
View File
@@ -1,4 +1,4 @@
requires-python:>=3.9
requires-python:>=3.10
pth:taskcluster/gecko_taskgraph
pypi:psutil==5.9.4
requirements-txt:taskcluster/requirements.txt
+1 -1
View File
@@ -1,3 +1,3 @@
requires-python:>=3.9
requires-python:>=3.10
pypi:uv==0.8.15
vendored:third_party/python/voluptuous
+1 -1
View File
@@ -1,2 +1,2 @@
requires-python:>=3.9
requires-python:>=3.10
pypi:pywatchman==2.0
+1 -1
View File
@@ -1,4 +1,4 @@
requires-python:>=3.9
requires-python:>=3.10
pth:testing/webcompat
pypi:pytest==4.6.6
pypi:selenium==3.141.0
+1 -1
View File
@@ -1,4 +1,4 @@
requires-python:>=3.9
requires-python:>=3.10
pypi:tcfetch==0.5.1
pypi:wpt-interop==0.2.3
vendored:testing/web-platform/tests/tools/third_party/h2/src
+1 -1
View File
@@ -1,4 +1,4 @@
requires-python:>=3.9
requires-python:>=3.10
pypi-optional:PyGObject==3.48.2; sys_platform == 'linux' and python_version < '3.12':aamtests will not be runnable
pypi-optional:PyGObject==3.56.3; sys_platform == 'linux' and python_version >= '3.12':aamtests will not be runnable
pypi:aioquic==1.2.0
+1 -1
View File
@@ -2,7 +2,7 @@
name = "mozilla-third-party-python-vendor-dir"
version = "0.1.0"
description = "This file is used to resolve the full list of dependencies that will be vendored."
requires-python = ">=3.9"
requires-python = ">=3.10"
dependencies = [
# Pin `aiohttp` here so the version is modern enough for `auth0-python` in `try.txt`.
# Needs >=3.13 for Python 3.14 wheels.