-
Notifications
You must be signed in to change notification settings - Fork 70
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
Update minimum supported Python to 3.9 #200
Comments
Both the macOS Ventura and Sonoma aligned Xcode releases, Xcode 14 & 15, ship with Python 3.9 — and WebKit needs to be buildable and testable with them until support for both OSes is dropped. |
Apparently we need to support 3.8 for as long as Ubuntu does, which is expected to be some time in 2025. |
To extend on what James wrote the Ubuntu 20.04 LTS release is using Python 3.8.2 and will reach its end of life in April 2025. |
@past can you give feedback about this for Chromium? |
As far as I can tell Chromium CI is using Python 3.11. @WeizhongX can you confirm? |
Unfortunately Chromium CI is using python 3.8. |
Update: we are starting to migrate to python 3.11. So this will be fine for us once that is done. |
Note we have actually already partially broken Python 3.8: web-platform-tests/wpt@bbf5d49 (from #44005) bumped Sphinx in |
@sadym-chromium given that you landed that related PR would you mind taking a look? |
It's surprising that we just noticed breakage introduced 10 months ago. Which job is currently broken and in which CI? |
web-platform-tests/wpt@274f7b8 has a fix for this (albeit on a much larger PR); I hadn't bothered pulling it out because it is kinda niche, but I probably should when I have a moment.
We basically only run the documentation build on Linux on Python 3.12, then whatever people run it on locally, so it's not super surprising that it went unnoticed. |
@gsnedders Couldn't webkit install a newer python version on their build boxes? Is there some reason why they need to run using system Python? Python 3.8 is 5 years old at this point! And trying to get keep old Python versions to work on newer versions of macOS is pretty painful (in particular when using 3rd-party modules which will only support newer OS versions in versions that have dropped support for older Python versions), and is a significant hurdle to onboarding new contributors to Servo. More generally, I wonder whether WPT would consider (gradually) moving it's tooling away from Python entirely? Python's backwards compatibility guarantees and dependency management are awful and the only reason why we're having this conversation. |
As of now the minimum supported version of Python for web-platform tests is Python 3.8. Given that this release is supported until October 2024 we should start planning to get rid of it and use at least version 3.9 which gets security updates until October 2025.
Right now such a bump would be blocked at least from Mozilla side because the wpt tests are still running on workers which have Python 3.8 installed. But over the last months newer images have been created with Python 3.10 installed and those are getting slowly rolled out. There is specifically bug 1865353 for web-platform tests.
I'm filing this as issue for now to get feedback from other vendors regarding their requirements and possible blockers. I assume that we want to keep support for all available Python versions or should we even consider bumping the minimum version to 3.10? Feedback is welcome.
CC @jgraham, @foolip, @jcscottiii, @gsnedders, @Ms2ger
The text was updated successfully, but these errors were encountered: