-
Notifications
You must be signed in to change notification settings - Fork 47
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 AnyIO instead of AsyncIO #148
Comments
I'm not going to work on this until we have a consensus on what needs to be done. |
Thanks @thedrow! Though I know we're using |
Of course it does. Trio also supports running tasks in threads. Is there any chance you'll refactor this on your own? |
Thanks @thedrow - yes it is likely we will refactor this imminently. I will do my best to scope out the needed work within the next few days. |
@annatisch Any updates? |
Hi @thedrow - I've taken a look and I don't think there's too much work involved. We are also cautious about taking a direct dependency on the lib - so we we're working through what the implementation look like if it were both fully-compatible with AnyIO as well as standalone. Will keep this thread updated :) |
@annatisch Pinging you once more, with feeling ;) |
Hi @annatisch, did you land on anything? 😊 |
Hi @JonasKs! Given that we are currently rebuilding from scratch - we will not be making these changes to the C-based implementation of uamqp. |
Awesome! Thanks for the quick reply. Good luck with the release 🚀 |
Is your feature request related to a problem? Please describe.
I'd like to use uamqp with trio.
trio
is another event loop implementation for Python which uses structured concurrency concepts.Describe the solution you'd like
Instead of implementing asynchronous operations using
asyncio
theasync_ops
module should instead be implemented withAnyIO
.AnyIO abstracts the underlying event loop and allows you to choose which one you want to use.
Furthermore, it will save you from maintaining the asyncio implementation itself.
For example, currently the implementation uses the keyword argument
loop
when callingasyncio.shield
. This will be deprecated in Python 3.10.By using AnyIO, you will offload this maintenance burden.
Describe alternatives you've considered
I can already use this library with
trio-asyncio
but native support would be nicer.Additional context
None.
The text was updated successfully, but these errors were encountered: