-
Notifications
You must be signed in to change notification settings - Fork 530
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
libyaml extension build fails on Python 3.11.0a7 #630
Comments
This is a known Cython codegen issue due to some C API changes made in 3.11- Cython already has a fix merged and backported to 0.29.x (cython/cython@afc00fc), but they haven't released it yet- I suspect they're waiting for the imminent 3.11 beta 1 to drop before releasing an update. I've verified that things build and work correctly on 3.11.0a7 if you install Cython from https://github.com/cython/cython/tree/0.29.x manually and do a non-isolated build with |
Still there is no pre-build wheel for 3.11 uploaded to https://pypi.org/project/PyYAML/#files and that is a problem as py311 release is just around the corner. I observed that GHA pipelines are ~3x slower on py311 on ansible-lint and I suspect that the reason for that is because pyyaml is installed without the compiled extension. Yep, instead of running for ~11min, it takes ~35min on average. As py311 already reached rc1, the big question is when we can have a new release that includes compiled extension for py311? |
It's still a while away, 3.11.0 is slated for October 3rd (PEP 664). |
If pyyaml would have being a python application that is not listed as a dependency by any other package from pypi, we could easily argue that there is plenty of time. But given that in reality is one of the critical packages, I would say that this should make priority because otherwise those that depend on it will not have any chance of meeting the deadlines for the release. Imagine what will happen if we discover that the compiled version crashes in some cases with py311 after python release? Without building it early enough in the process, we lose the ability to have one working (tested) version when new python is released. |
What work is left to build the 3.11 wheel? It looks like cython had had several releases, so that shouldn't be the issue anymore. What else is blocking this? |
3.11 wheels for PyYAML 6.0 are up. For future reference- we'll probably never publish release wheels targeting a new major Python version before it hits rc1- we've gotten burned too many times by unstable ABI issues during the betas, and there's no way to re-publish those on PyPI without doing a new release that bumps the version number. The RC windows are usually several months long, which is a good enough balance IMO between catching potential real-world issues not caught by the test suite and exposing ourselves to late-breaking ABI changes in RCs (which Python core team says should never happen). |
Trouble building in 3.11 (gcc 11.2.0 on Linux):
The text was updated successfully, but these errors were encountered: