-
Notifications
You must be signed in to change notification settings - Fork 24
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 PyO3 to version 0.18.0 #811
Conversation
This is not the newest pyo3 version, but the latest supported by the latest pyo3-asyncio. We also need to bump the abi3 version, let's go with abi3-py39 since Python 3.8 is already end-of-life.
Otherwise there is a conflict between the `hyperqueue` crate and the module defined by the `#[pymodule]` attribute.
Since [pyo3 0.16.0](https://pyo3.rs/main/changelog): PyType::is_subclass, PyErr::is_instance and PyAny::is_instance now operate run-time type object instead of a type known at compile-time. The old behavior is still available as PyType::is_subclass_of, PyErr::is_instance_of and PyAny::is_instance_of. PyO3/pyo3#1985
Since [pyo3 0.16.0](https://pyo3.rs/main/changelog): Rename some methods on PyErr (the old names are just marked deprecated for now): - pytype -> get_type - pvalue -> value (and deprecate equivalent instance) - ptraceback -> traceback - from_instance -> from_value - into_instance -> into_value PyO3/pyo3#2026
Ok so I have some failed tests with Python 3.13 on Arch Linux:
None of the |
Actually, the test failures were caused by me not activating the venv where I installed the pyhq bindings, so the server used a different Python environment than the client. When I did it correctly, all tests passed 🎉 |
Thanks! I wanted to keep Python 3.8 for as long as possible, because HPC clusters quite often have ancient Python versions. But 3.8 is old enough now that I think that we can just let it go. I pushed one more commit that updated docs & the changelog. Before, we claimed compatibility with Python 3.6, but I think that 3.8 was more realistic. |
I could actually compile this on Arch Linux with Python 3.13 😄 Now going to test it...