-
Notifications
You must be signed in to change notification settings - Fork 6.7k
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
[python3] Upgrade to 3.9.0 #14510
[python3] Upgrade to 3.9.0 #14510
Conversation
07f9de9
to
aa7419d
Compare
As I know, the compatibility of different versions of python is very poor, so will the upgrade be risky? |
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.
Please bump the port version of itk and pybind11. See documentation.
Reverting to draft status due to excessive CI failures by ports depending on |
3066624
to
8132a19
Compare
Compatibility between Python versions is generally very good. The different library names (python38 vs python39) are because the ABI does not remain stable between versions. This update should be relatively pain-free. However, 3.10 may be a different story because some deprecated APIs will be removed. That version won't come out for another year though. Re: CI failures -- this is my fault. I initially pushed a flawed commit for the update to I think I have fixed all the issues. I'll keep an eye out for the CI re-run after the tool issue gets fixed. And, of course, please let me know if you see any more problems! |
Wow, more regressions. Such as:
|
@JackBoosY Those regressions are due to the poisoned |
@BillyONeal can you please take a look? |
Sorry for the inconvenience 😢 |
Unfortunately in the general case we don't have the ability to, like, "run some command on all the build nodes" -- nobody, not even we, can log in to those boxes. They are heavily firewalled because they run arbitrary code submitted in these github PRs and we didn't want someone to be able to write a PR that turns our build lab into a spam fleet, for example. On the plus side though, the machines are regularly "nuked from orbit" and the VMs are automatically deleted when we don't get lots of incoming build load. I observe that the failures above occurred on |
Great, so a rebase and push should get us going. Thanks for the clarification! |
8132a19
to
8011083
Compare
CI failures will be fixed by #14571. |
Depends on #14579. |
The remaining CI failures appear to be false-negatives related to downloads. |
/azp run |
Azure Pipelines successfully started running 1 pipeline(s). |
The failure on arm64_windows is unrelated to this port, which does not function on arm, nor does it consume the |
Thanks @Hoikas :) |
However, python 3.9 does not support win 7, causing some packages fail to build |
Hmm... I missed that in the release notes, but sure enough, Python 3.9 dropped support for Windows 7. Windows 7 reached end-of-life on January 14, 2020, so to me, that's a non-issue, especially when the Python release notes are explicitly guaranteeing Big Sur (recent, supported OS) support in 3.9.0. I personally have a dim view of supporting in any way an OS that receives no security patches. Tangentially related, but it is important for the |
If Windows 7 is no longer supported by vcpkg, then the Readme needs an update because it still states "Windows 7 or newer" which is evidently no longer true. I just tried build skia and ran into some issues with Python (even after installing Python 3.8 hoping it would use that instead of the one from the downloads folder). I was confused since it was working months ago the last time I used it and Win 7 still seemed supported (see Readme). Had to dig through the cmake file to realize it explicitly requests 3.9. This machine is on it's last legs so I amended the file locally to point back to 3.8.3, hopefully I'll be able to keep going with this until my new PC comes along. |
@Borgleader vcpkg supports Windows 7. Not every library in vcpkg supports Windows 7. If Python dropped support for it that's largely outside of our control. |
@BillyONeal I undid the Python upgrade locally and I was able to build Skia without issues (I have been able to draw some text and some shapes based on their SDL2 demo code). So while some libraries may not support Win7 due to Python 3.9 requirement, it doesn't seem to be the case for this one. (the file i modified to get it to work is: vcpkg_find_acquire_program.cmake) |
For those Win 7 users, edit |
Be aware that if you do this without reverting the python3 port itself, you may introduce non-determinant behavior to ports that consume python3. |
we need a versioning design in vcpkg badly !!! |
This upgrades the python3 port to 3.9.0. Per #13741, configuring python failed on macOS Big Sur beta. According to the python release notes, that particular bug was fixed in 3.8.4 rc1. However, complete support for Big Sur was not promised until 3.9.0. Therefore we skip the bugfix updates to the 3.8 series and go directly to 3.9.0.
What does your PR fix? Fixes [python3] build failure #13741
Which triplets are supported/not supported? Have you updated the CI baseline? No change.
Does your PR follow the maintainer guide? Yes