Skip to content

Commit 28e2897

Browse files
Jammy2211claude
authored andcommitted
feat(python-version): support Python 3.9-3.14, first-class 3.12/3.13
Wide-support / narrow-first-class model for Python versions across the PyAuto family. Python 3.12 and 3.13 remain the recommended versions. 3.9, 3.10, 3.11, 3.14 install cleanly but emit a loud bypassable warning at import time. JAX moved to optional [jax] extra gated on python_version >= '3.11' (so 3.9/3.10 users get numpy-only mode without install failures). Coordinated change across PyAutoConf, PyAutoArray, PyAutoFit, PyAutoGalaxy, PyAutoLens, PyAutoBuild, and the 6 workspace repos. See sibling PRs on the feature/python-version-policy branch in each repo. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent cb9c88c commit 28e2897

2 files changed

Lines changed: 10 additions & 4 deletions

File tree

.github/workflows/main.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ jobs:
88
strategy:
99
fail-fast: false
1010
matrix:
11-
python-version: ['3.12', '3.13']
11+
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13', '3.14']
1212
steps:
1313
- name: Checkout PyAutoConf
1414
uses: actions/checkout@v2

pyproject.toml

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ dynamic = ["version"]
88
description="Open-Source Strong Lensing"
99
readme = { file = "README.rst", content-type = "text/x-rst" }
1010
license = { text = "MIT" }
11-
requires-python = ">=3.12"
11+
requires-python = ">=3.9"
1212
authors = [
1313
{ name = "James Nightingale", email = "James.Nightingale@newcastle.ac.uk" },
1414
{ name = "Richard Hayes", email = "richard@rghsoftware.co.uk" },
@@ -18,8 +18,12 @@ classifiers = [
1818
"Topic :: Scientific/Engineering :: Physics",
1919
"Natural Language :: English",
2020
"Operating System :: OS Independent",
21+
"Programming Language :: Python :: 3.9",
22+
"Programming Language :: Python :: 3.10",
23+
"Programming Language :: Python :: 3.11",
2124
"Programming Language :: Python :: 3.12",
22-
"Programming Language :: Python :: 3.13"
25+
"Programming Language :: Python :: 3.13",
26+
"Programming Language :: Python :: 3.14"
2327
]
2428
keywords = ["cli"]
2529
dependencies = [
@@ -42,7 +46,9 @@ local_scheme = "no-local-version"
4246

4347

4448
[project.optional-dependencies]
45-
optional=[
49+
jax = ["autogalaxy[jax]"]
50+
optional = [
51+
"autolens[jax]",
4652
"numba",
4753
"pynufft",
4854
"ultranest==3.6.2",

0 commit comments

Comments
 (0)