element-hq / element-hq/synapse
Drop support for Python 3.10 (action on 2026-11-01)
- Dominant language
- Python
- Stars
- 4.6k
- Forks
- 600
- Avg merge
- 5d 22h
- Merged PRs (30d)
- 51
Description
Drop support for Python 3.10 which is end-of-life (EOL) on 2026-10-31 ("Security Support" column on https://endoflife.date/python) - which means we can action on 2026-11-01.
### Dev notes
Previous times we had to drop Python versions:
Python 3.9
- https://github.com/element-hq/synapse/pull/19099
- https://github.com/element-hq/synapse/pull/19119
- https://github.com/element-hq/synapse/pull/19154
Python 3.8:
- https://github.com/element-hq/synapse/pull/17908
- https://github.com/element-hq/synapse/pull/17909
Python 3.7:
- https://github.com/matrix-org/synapse/pull/15851
- https://github.com/matrix-org/synapse/pull/15892
- https://github.com/matrix-org/synapse/pull/15893
- https://github.com/matrix-org/synapse/pull/15917
### Todo
- [ ] Drop Python 3.10 support from the codebase after [2026-10-31 (EOL)](https://endoflife.date/python)
- [ ] Drop `ubuntu:jammy` support because it [uses Python 3.10](https://packages.ubuntu.com/jammy/python3), see [`scripts-dev/build_debian_packages.py#L32`](https://github.com/element-hq/synapse/blob/2c8bf9a3ab0132b430c7e0f859257b79b8b6cb40/scripts-dev/build_debian_packages.py#L32)
Contributor guide
Research direction
Start after 2026-10-31 by reviewing the linked Python 3.9, 3.8, and 3.7 support-drop pull requests for the expected scope. Inspect scripts-dev/build_debian_packages.py around line 32 and identify the remaining Python 3.10 and ubuntu:jammy references. Done means Python 3.10 and ubuntu:jammy support are removed from the codebase.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- build-system, devops
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 58/100