Overview
Adopt Python 3.12 as PyAutoNerves' minimum supported version, beginning the
dependency-ordered PyAuto ecosystem migration. Remove obsolete dependency
markers while preserving behavior-driven caps, and retain a clear warning for
experimental Python 3.14 use.
Plan
- Require Python 3.12 and advertise support for 3.12/3.13.
- Simplify JAX requirements without changing their version constraints.
- Retarget the import-time warning for unsupported/experimental versions.
- Add focused warning tests and update the contributor contract.
- Validate tests and built package metadata on Python 3.12 and 3.13.
Detailed implementation plan
Affected Repositories
Branch Survey
| Repository |
Current Branch |
Dirty? |
| PyAutoNerves |
main |
clean |
Suggested branch: feature/python-312-floor
Implementation Steps
-
Update pyproject.toml:
- Set
requires-python = ">=3.12".
- Remove Python 3.9-3.11 classifiers.
- Remove the now-tautological Python markers from
jax, jaxlib, and
jaxnnls.
- Preserve
jax>=0.7.0,<0.11.0, jaxlib>=0.7.0,<0.11.0, and
jaxnnls==1.0.1.
-
Update autonerves/__init__.py:
- Keep the version-warning mechanism and configuration bypass.
- Remove the unreachable Python
<3.11 JAX guidance.
- Distinguish unsupported Python
<3.12 from experimental Python >3.13.
- Keep
version.python_version_check and the containing version: block.
-
Add test_autonerves/test_python_version.py:
- Verify 3.12/3.13 produce no warning.
- Verify 3.11 reports the unsupported floor.
- Verify 3.14 reports experimental status.
- Verify the YAML bypass remains effective.
-
Update AGENTS.md to state requires-python >=3.12.
-
Validate:
- Full PyAutoNerves suite on Python 3.12 and 3.13.
- Built metadata contains
Requires-Python: >=3.12.
- JAX requirements are unmarked but retain their existing caps.
Key Files
pyproject.toml
autonerves/__init__.py
test_autonerves/test_python_version.py
AGENTS.md
Out of Scope
JAX 0.11, Python 3.14 support, downstream manifests, Hands/Heart matrices,
release execution, workspaces, and archival documentation.
Original Prompt
Click to expand starting prompt
Ok, lets remove support for anything below python3.12, do a census to make sure
we simplify requriements, build server, testing, etc. Also make sure all docs
are updated.
Overview
Adopt Python 3.12 as PyAutoNerves' minimum supported version, beginning the
dependency-ordered PyAuto ecosystem migration. Remove obsolete dependency
markers while preserving behavior-driven caps, and retain a clear warning for
experimental Python 3.14 use.
Plan
Detailed implementation plan
Affected Repositories
Branch Survey
mainSuggested branch:
feature/python-312-floorImplementation Steps
Update
pyproject.toml:requires-python = ">=3.12".jax,jaxlib, andjaxnnls.jax>=0.7.0,<0.11.0,jaxlib>=0.7.0,<0.11.0, andjaxnnls==1.0.1.Update
autonerves/__init__.py:<3.11JAX guidance.<3.12from experimental Python>3.13.version.python_version_checkand the containingversion:block.Add
test_autonerves/test_python_version.py:Update
AGENTS.mdto staterequires-python >=3.12.Validate:
Requires-Python: >=3.12.Key Files
pyproject.tomlautonerves/__init__.pytest_autonerves/test_python_version.pyAGENTS.mdOut of Scope
JAX 0.11, Python 3.14 support, downstream manifests, Hands/Heart matrices,
release execution, workspaces, and archival documentation.
Original Prompt
Click to expand starting prompt
Ok, lets remove support for anything below python3.12, do a census to make sure
we simplify requriements, build server, testing, etc. Also make sure all docs
are updated.