Major version update to drop Python 3.10 support
- Dominant language
- Python
- Stars
- 41
- Forks
- 5
- Avg merge
- 2m
- Merged PRs (30d)
- 1
Description
Python 3.10 [reaches end of life soon](https://devguide.python.org/versions/), in 2026-10, and that will be a timely opportunity for LLMeter to drop support for it.
The main opportunity we expect from [what's new in Python 3.11](https://docs.python.org/3/whatsnew/3.11.html) would be to finally use `Self` as a type, closing some ugly typing workarounds - as mentioned by @acere in [#54](https://github.com/awslabs/llmeter/pull/54/changes#r3595372085).
Conversely we [should probably try to get away from](https://docs.python.org/3/whatsnew/3.11.html#pep-563-may-not-be-the-future) `from __future__ import annotations`.
Dropping support for a Python version should probably constitute a major version update (at least to `0.2`), so a good opportunity for us to review removing any other legacy compatability stubs floating around too. We should really try to prioritize proper multi-Python-version CI testing also - as proposed in #95
Contributor guide
Research direction
Start by reviewing the package's Python-version constraints, typing workarounds, future-annotations usage, and current CI configuration. Read #95 for the proposed multi-version testing approach. Done means Python 3.10 support and legacy compatibility stubs are removed, the Python 3.11 typing direction is addressed, and a major version update is prepared with CI coverage.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- ci-cd, release
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100