futures 0.3.31

An implementation of futures and streams featuring zero allocations, composability, and iterator-like interfaces.
Documentation
[package]
name = "futures"
version = "0.3.31"
edition = "2018"
rust-version = "1.56"
license = "MIT OR Apache-2.0"
readme = "../README.md"
keywords = ["futures", "async", "future"]
repository = "https://github.com/rust-lang/futures-rs"
homepage = "https://rust-lang.github.io/futures-rs"
description = """
An implementation of futures and streams featuring zero allocations,
composability, and iterator-like interfaces.
"""
categories = ["asynchronous"]

[dependencies]
futures-core = { path = "../futures-core", version = "0.3.31", default-features = false }
futures-task = { path = "../futures-task", version = "0.3.31", default-features = false }
futures-channel = { path = "../futures-channel", version = "0.3.31", default-features = false, features = ["sink"] }
futures-executor = { path = "../futures-executor", version = "0.3.31", default-features = false, optional = true }
futures-io = { path = "../futures-io", version = "0.3.31", default-features = false }
futures-sink = { path = "../futures-sink", version = "0.3.31", default-features = false }
futures-util = { path = "../futures-util", version = "0.3.31", default-features = false, features = ["sink"] }

[dev-dependencies]
futures-executor = { path = "../futures-executor", features = ["thread-pool"] }
futures-test = { path = "../futures-test" }
assert_matches = "1.3.0"
pin-project = "1.0.11"
static_assertions = "1"
tokio = "0.1.11"

[features]
default = ["std", "async-await", "executor"]
std = ["alloc", "futures-core/std", "futures-task/std", "futures-io/std", "futures-sink/std", "futures-util/std", "futures-util/io", "futures-util/channel"]
alloc = ["futures-core/alloc", "futures-task/alloc", "futures-sink/alloc", "futures-channel/alloc", "futures-util/alloc"]
async-await = ["futures-util/async-await", "futures-util/async-await-macro"]
compat = ["std", "futures-util/compat"]
io-compat = ["compat", "futures-util/io-compat"]
executor = ["std", "futures-executor/std"]
thread-pool = ["executor", "futures-executor/thread-pool"]

# Unstable features
# These features are outside of the normal semver guarantees and require the
# `unstable` feature as an explicit opt-in to unstable API.
unstable = ["futures-core/unstable", "futures-task/unstable", "futures-channel/unstable", "futures-io/unstable", "futures-util/unstable"]
bilock = ["futures-util/bilock"]
write-all-vectored = ["futures-util/write-all-vectored"]

# These features are no longer used.
# TODO: remove in the next major version.
cfg-target-has-atomic = []

[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]

[package.metadata.playground]
features = ["std", "async-await", "compat", "io-compat", "executor", "thread-pool"]

[lints]
workspace = true