Skip to content
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

Use non-abi3 wheels #199

Open
wyfo opened this issue Apr 30, 2024 · 1 comment
Open

Use non-abi3 wheels #199

wyfo opened this issue Apr 30, 2024 · 1 comment

Comments

@wyfo
Copy link
Contributor

wyfo commented Apr 30, 2024

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 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.

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.

@wyfo wyfo changed the title Use non-abi3 wheel Use non-abi3 wheels Apr 30, 2024
@wyfo
Copy link
Contributor Author

wyfo commented Apr 30, 2024

@milyin @Mallets

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant