-
-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Drop support for python < 3.10 #15408
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
eli-schwartz
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, oops, looks like we missed the boat on adding a deprecation warning in the last cycle....
9c69d9a to
c599fe2
Compare
|
Oops, I missed updating the docs about supported versions |
18159aa to
02f1ff5
Compare
|
FTR at the time of writing Debian oldstable has 3.11 and Ubuntu 22/04 has 3.10. The number of people still depending on 3.8 is likely to be vanishingly small. |
See #14326 (comment) :) RHEL has 3.9 by default, for example. |
You don't need to care about it. RHEL users can use whatever they want, only RHEL developers/packagers might need to use the 3.9 interpreter in. But RHEL 9 packages are not going to need Meson 1.11 or 1.12 (out in summer 2026). |
|
Updated to target 1.11 instead of 1.10.1 |
One RHEL developer/packager I know said "Solving issues like this is why the pay me the (not so) big bucks" |
|
Actually, Xcode on macOS ships with Python 3.9, which is why that's the minimum Python version required by GStreamer. It would be good if we could still support that. The process of installing Meson on macOS is just |
|
And presumably Apple will not give any information if or when they update their Python version? |
This is an excellent point which highlights why we don't want to unnecessarily raise versions (and avoided it for 3.8 / 3.9), and also why we need to genuinely, correctly, offer a proper release cycle deprecation. Added to the list in #14326 Unfortunately there is no way we can use e.g. Structural Pattern Matching1 but also support 3.9, that's exactly why we are having a conversation about bumping minimums now that this particular new python version offers genuinely compelling new language features. Our choices are:
Footnotes
|
Apple never communicates this stuff, yes. Python 3.9 being EOL might push them to update it, though. Of course this means at some point we have to give up.
There's another option. We could keep Meson 1.10 as an "LTS" version that is supported and has releases for the next year or two. I did this after the Meson release that started requiring Python 3.7. I am happy to do this, as long as the other maintainers keep labeling (Not milestoning! A PR can only have one milestone.) non-feature MRs for the 1.10 LTS release. |
|
That is not "another" option, that was the current plan already. :D Sounds like we are in agreement. Of course, xcode users will need to make sure neither they nor any of their source dependencies start using features introduced in meson 1.12, but that's "hopefully" not such a problem as by and large people tend to be conservative about bumping their |
|
E.g. the FAQ explicitly calls this scenario out: https://mesonbuild.com/FAQ.html#do-you-at-least-support-my-ancient-python-install |
It needs updating, it claims that Meson supports Python 3.7... |
It's time, there are nice features added by 3.8, 3.9, and 3.10. We're also forced to pin mypy, meaning we don't get access to mypy and typeshed fixes.
02f1ff5 to
a8ce7f8
Compare
|
|
||
| Python older than 3.10 is now EOL, and Meson will drop support for these | ||
| versions in the next major release, and will freely use features from 3.8, 3.9 | ||
| and 3.10. Support for these versions will remain for the 1.10.x series. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This contradicts the README which suggestst hat Python 3.9 support will remain for the 1.11.x series
|
Apple's macOS 12.3, released in March 14 2022, shipped with Python 3.9. In previous versions of macOS the default pre-installed Python version was Python 2.7. Python 2.7 reached its EOL in January 1, 2020. Python 3.9.0 was released in October 5 and the 3.9 series reached its EOL in October 31, 2025. |
It's time, there are nice features added by 3.8, 3.9, and 3.10. We're also forced to pin mypy, meaning we don't get access to mypy and typeshed fixes.
Closes: #14326