You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently, Zenoh Python API is built using the PyO3 abi37 features, which means it uses the stable ABI of Python 3.7.
It allows supporting all Python versions with only one wheel. On the other hand, it restrains a lot the set of features available – a lot of features are already available in CPython several versions before the stabilization in the ABI.
For example, it's not possible for now to read a &str from a PyString using ABI. Also, Python buffer protocol is not available, and we cannot built custom exception, enclosing the Rust exception instead of converting it to a string.
Describe the feature
Currently, Zenoh Python API is built using the PyO3
abi37
features, which means it uses the stable ABI of Python 3.7.It allows supporting all Python versions with only one wheel. On the other hand, it restrains a lot the set of features available – a lot of features are already available in CPython several versions before the stabilization in the ABI.
For example, it's not possible for now to read a
&str
from aPyString
using ABI. Also, Python buffer protocol is not available, and we cannot built custom exception, enclosing the Rust exception instead of converting it to a string.Not using stable would allow using these features. It's possible to build one wheel for each Python version, there are many examples available https://github.com/PyO3/maturin-action?tab=readme-ov-file#examples.
The text was updated successfully, but these errors were encountered: