Cargo Features

futures = { version = "0.3.29", default-features = false, features = ["std", "alloc", "async-await", "compat", "io-compat", "executor", "thread-pool", "unstable", "bilock", "write-all-vectored", "cfg-target-has-atomic", "futures-executor"] }
default = async-await, executor, std

These default features are set whenever futures is added without default-features = false somewhere in the dependency tree.

std default compat? executor = alloc

Enables std, io and channel of futures-util, std of futures-core, futures-io, futures-sink, and futures-task

alloc std

Enables alloc of futures-channel, futures-core, futures-sink, futures-task, and futures-util

async-await default

Enables async-await and async-await-macro of futures-util

compat io-compat? = std

Enables compat of futures-util

Affects futures::compat

io-compat = compat

Enables io-compat of futures-util

executor default thread-pool? = std

Enables std of futures-executor

Affects futures::executor

thread-pool = executor

Enables thread-pool of futures-executor


Unstable features These features are outside of the normal semver guarantees and require the unstable feature as an explicit opt-in to unstable API.

Enables unstable of futures-channel, futures-core, futures-io, futures-task, and futures-util


Enables bilock of futures-util


Enables write-all-vectored of futures-util


These features are no longer used.
TODO: remove in the next major version.

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features.

futures-executor implicit feature