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

Bring back asyncio examples #187

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

jonglezb
Copy link

The examples were added in #48 and subsequently deleted in 2803859

It's not clear why these asyncio examples were removed: they appear to work fine and are important to show that zenoh is compatible with asyncio.

Tested with eclipse-zenoh==0.10.1rc0 and Python 3.11 on Debian.

The examples were added in eclipse-zenoh#48 and subsequently deleted in 2803859

It's not clear why these asyncio examples were removed: they appear to
work fine and are important to show that zenoh is compatible with asyncio.

Tested with eclipse-zenoh==0.10.1rc0 and Python 3.11 on Debian.
@Mallets
Copy link
Member

Mallets commented Apr 22, 2024

Hello @jonglezb , the reason asyncio were removed in the past is because it provided an asyncio API but not real async was happening under the hood because of some limitation of PyO3 bindings generator. So, it gave the impression to be using async while in reality it was not. To avoid any misconception we decided to remove them.

It seems now there are some activity on bridging the gaps between async-Python and async-Rust (e.g.: https://github.com/awestlake87/pyo3-asyncio) but still need to be considered and eventually integrated within Zenoh. Until that moment I believe it's not wise to reintegrate the examples for the above reasons.

@keenanjohnson
Copy link

Just wanted to throw my hat in the ring and say that I think bringing in async support is absolutely critical if we hope for this library to gain wide adoption in the python community.

I'm evaluating zenoh for streaming data into a GUI built with python. GUIs are some of the strongest use cases for zenoh in my mind and almost always require some sort of async thing.

@keenanjohnson
Copy link

I know that #95 is still open, but listed as won't fix which is a bit confusing to someone like me coming into the project and trying to learn / figure out what the state of things are.

@Mallets
Copy link
Member

Mallets commented May 7, 2024

I know that #95 is still open, but listed as won't fix which is a bit confusing to someone like me coming into the project and trying to learn / figure out what the state of things are.

Thanks for pointing out the won't fix label, this is not actually the intention. async is still in the project radar for being reintroduced but it needs to be reintroduced properly. One doesn't simply reintroduce async (or walk into Mordor)... Some preparatory work needs to happen before reintroducing it. As said before, having an async keyword in the API doesn't necessarily means the API is async. But we will get there... :)

@keenanjohnson
Copy link

Thanks! Yeah based on the discussion it didn't seem like the won't fix label made sense :) @Mallets

@keenanjohnson keenanjohnson mentioned this pull request May 7, 2024
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

Successfully merging this pull request may close these issues.

3 participants