-
Notifications
You must be signed in to change notification settings - Fork 802
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Preparation for Python 3.10 release #1781
Comments
We also need to add an |
I skimmed it and I think these are the ones we care about?
We can use this at https://pyo3.rs/main/doc/pyo3/types/struct.PyString.html#method.to_str
It needs that field added.
Should we care about this in e.g. Other than that a few functions need implementing in the ffi module, I think. |
👍 thanks, I'll put together a PR for the ffi changes shortly.
I think it's already there: pyo3/src/ffi/cpython/initconfig.rs Lines 104 to 105 in 4a34cc6
Good question. I wouldn't be suprised if in the future the singletons might be hidden in the limited API (and need to be fetched by functions)? For now I think we should continue with the pointer comparisons ourselves for performance. |
Python 3.10 RC1 has just been released, so I think we should be looking at testing full compatibility with it. We already run it in CI, however I think there's potentially missing FFI definitions and other interesting changes.
This is a great opportunity for us to ensure everything works before upstream commits to a final release.
There's two sections in the Python 3.10 changelog which are of note to us:
https://docs.python.org/3.10/whatsnew/3.10.html#changes-in-the-c-api
https://docs.python.org/3.10/whatsnew/3.10.html#c-api-changes
I would also propose we adopt PEP 604 union syntax
X | Y
in the guide and any error messages where we currently mentionUnion
.Finally, I'd love to find some time to experiment with PEP 634 match syntax (#1714), however this is probably a bigger feature that we might want to take some time to explore.
Anyone interested in helping out with this is welcome. Just ping here what you're working on so that we don't end up duplicating work.
The text was updated successfully, but these errors were encountered: