Skip to content

Deprecate async_std support #5935

@elenaf9

Description

@elenaf9

Description

Moving this into a separate issue to increase awareness.

We are planning to deprecate support for async_std throughout all of rust-libp2p.
See prior discussion in #4449 (comment) and #3515 (comment).

If anyone still depends on it, please comment in this issue.

Depends on #4449.

Motivation

async-std has officially be discontinued and tokio has become the de-factor standard async runtime in the ecosystem.

Current Implementation

We currently support two runtimes, tokio and async_std. tokio is already the default in most examples/ tests.

Implementation-wise, this concerns the swarm, mDNS, and the transports TCP, QUIC and DNS.

Open Question

Copying from #3515 (comment):

We then have to make a decision on whether we will in the future only support tokio, or still want to be open to support other runtimes, e.g. smol that is recommended by async_std as alternative.
Right now we have in many transports, like tcp, a Provider abstraction for the different runtimes. If we'll only support tokio we could get rid of this abstraction, but under the risk of having to re-add it once there is a demand to an alternative to executor.

Are you planning to do it yourself in a pull request?

Maybe

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions