Skip to content

Drop Python 3.10 and add Python 3.15 support - #93

Merged
tefra merged 2 commits into
mainfrom
python-3.11-3.15
Oct 16, 2026
Merged

tefra merged 2 commits into
mainfrom
python-3.11-3.15

Conversation

@tefra

@tefra tefra commented Oct 16, 2026 •

Copy link
Copy Markdown
Owner

Follows tefra/xsdata#1241, which raises the minimum to Python 3.11 and adds 3.15.

Changes

  • CI tests Python 3.11 to 3.15.
  • ruff.toml targets py311.
  • mise.toml pins Python 3.11 and creates the venv with uv. A new install task runs uv pip install -r requirements.txt.

Testing

  • invoke all on Python 3.11 against xsdata main: 20 passed, 0 failed, and no output files changed.

Dev dependencies

  • actions/checkout and actions/setup-python are now v7.
  • pre-commit hooks updated: ruff v0.17.1, mypy v2.4.0, prettier v3.9.10.
  • Fixed everything the new ruff flags in our own files. That includes the larger default rule set in ruff 0.17.
  • mypy.ini now ignores errors in generali.models and sdmx_ml.models. They had 5 errors before these bumps too, and CI already skips mypy for both collections.
  • Dropped types-dataclasses, the stubs for the old dataclasses backport.
  • Rerun on Python 3.11: 20/20 passed, with no output changes. tpdb hit the usual parallel-run sdmx_ml.models import flake and passed when run alone.

tefra added 2 commits October 16, 2026 14:47
- Test 3.11 to 3.15 in CI
- Target py311 in ruff
- mise pins Python 3.11, creates the venv with uv and adds an install task
- Bump actions/checkout to v7 and actions/setup-python to v7
- Bump pre-commit hooks: ruff v0.17.1, mypy v2.4.0, prettier v3.9.10
- Fix the issues the new ruff flags (import merges, py311 upgrades,
  dict literals, subprocess check, simpler return)
- Skip mypy errors in the generali and sdmx_ml models, which CI
  already skips
- Drop types-dataclasses, a stub for the old dataclasses backport
@tefra
tefra merged commit c9ff851 into main Oct 16, 2026
100 checks passed
@tefra
tefra deleted the python-3.11-3.15 branch October 16, 2026 12:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant