Drop support for Python 3.9
- Dominant language
- Python
- Stars
- 2.5k
- Forks
- 195
- Avg merge
- 6d 10h
- Merged PRs (30d)
- 17
Description
Came up during 0.43.0 RC1 release vote:
In a clean Python 3.9 container, installing the RC1 wheel with the [cli] extra
succeeds, but both `burr --help` and `import burr.cli.__main__` fail with:
TypeError: unsupported operand type(s) for |: 'type' and 'NoneType'
The failure comes from `dict | None` in burr/cli/__main__.py, which requires
Python 3.10+. The release-validation workflow explicitly skips Python 3.9 because of this known incompatibility.
Python 3.9 is EOL so I suggest we just drop the official support for this.
Contributor guide
Research direction
Start with burr/cli/__main__.py and reproduce the failure in a clean Python 3.9 container using the [cli] extra, then inspect the release-validation workflow that skips Python 3.9. Done means official support is removed consistently and the supported-version validation no longer treats Python 3.9 as supported.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- cli, release
- Issue type
- Refactor
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 68/100