Where's the equivalent of `tokio-util` in smol/async-std community?

The tokio-util crate provides a number of utils that are useful and handy in web applications, based on tokio's AsyncRead/AsyncWrite primitives. Many of these utils I have not found alternatives in async-std crate and elsewhere.

1 Like

tokio-uti has a bunch of unrelated features, which are probably in separate crates for smol/async-std. I suggest asking about the specific features you need, so the right crates can be suggested.

1 Like

For this time it's ReaderStream, which is useful if you want to serve files or other streaming stuff with hyper.
Also the whole tokio_util::codec module, which is used in the h2 crate for protocol parsing. If there is an implementation that is runtime-agnostic and uses traits from futures, it may be helpful to make h2 runtime-agnostic, not to mention being useful itself.

1 Like

Thanks. I don't use async, so I'm just reading doc, but have you looked at smol::stream module?

It is actually futures_lite::stream, and only has extensions related to futures_core::Stream itself, and has no interop features with AsyncRead (for smol/async-std it's futures_io::AsyncRead).

It seems that no one familiar with smol/async_std ecosystem is answering questions here, so you may want to file a github issue asking your question. I don't know whether an issue in the smol or async_std would be best. I don't see any community chats/forums for smol/async_std. I assume you've already looked at the async_std stream package.

This topic was automatically closed 90 days after the last reply. We invite you to open a new topic if you have further questions or comments.