Skip to content

chore!: drop Python 3.10, which reached end of life - #270

Merged
lesnik512 merged 1 commit into
mainfrom
chore/drop-python-3.10
Oct 3, 2026
Merged

lesnik512 merged 1 commit into
mainfrom
chore/drop-python-3.10

Conversation

@lesnik512

Copy link
Copy Markdown
Member

Closes #174.

Python 3.10 reached end of life on 2026-10-01 (PEP 619). The floor is now 3.11.

Changes

  • pyproject.toml: requires-python = ">=3.11,<4", and the 3.10 trove classifier is gone. ruff has no target-version of its own; it takes the target from requires-python, so it moves to py311 with no separate edit.
  • CI (_checks.yml): 3.10 is out of the pytest and floors matrices. The lint and install-isolation jobs, which ran on the lowest supported interpreter, now run on 3.11. The same goes for security-audit.yml.
  • instruments/base.py: typing_extensions.Self becomes typing.Self, which is in the stdlib from 3.11.
  • The comments on the core dependency and the sentry markers now say 3.11 where they said 3.10.

Not changed

Verification

Run locally:

  • 3.11: just lint-ci passes (ruff and ty), and just test-ci passes 336 tests at 100% coverage.
  • 3.14: the full suite passes 336 tests.

The floors job (lowest-direct resolution) and the install-isolation job on 3.11 run only in CI.

@lesnik512
lesnik512 merged commit 0e7383b into main Oct 3, 2026
31 checks passed
@lesnik512
lesnik512 deleted the chore/drop-python-3.10 branch October 3, 2026 20:32
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.

Drop Python 3.10 once it reaches end of life

1 participant