Skip to content

Zero-cost asynchronous programming in Rust

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT
Notifications You must be signed in to change notification settings

rust-lang/futures-rs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

660f76f · Apr 16, 2025
Apr 7, 2025
Oct 5, 2024
Apr 16, 2025
Feb 17, 2025
Apr 7, 2025
Oct 5, 2024
Apr 7, 2025
Feb 26, 2024
Apr 7, 2025
Apr 7, 2025
Apr 16, 2025
Apr 16, 2025
Mar 1, 2021
Apr 10, 2021
Oct 2, 2019
May 7, 2021
Oct 7, 2024
Jan 25, 2025
Aug 24, 2018
Feb 21, 2018
Apr 7, 2025
Jan 25, 2025

futures-rs

Zero-cost asynchronous programming in Rust

Build Status crates.io

Documentation | Website

futures-rs is a library providing the foundations for asynchronous programming in Rust. It includes key trait definitions like Stream, as well as utilities like join!, select!, and various futures combinator methods which enable expressive asynchronous control flow.

Usage

Add this to your Cargo.toml:

[dependencies]
futures = "0.3"

The current futures requires Rust 1.68 or later.

Feature std

Futures-rs works without the standard library, such as in bare metal environments. However, it has a significantly reduced API surface. To use futures-rs in a #[no_std] environment, use:

[dependencies]
futures = { version = "0.3", default-features = false }

License

Licensed under either of Apache License, Version 2.0 or MIT license at your option.

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.