1[package] 2name = "futures-util" 3version = "0.3.30" 4edition = "2018" 5rust-version = "1.56" 6license = "MIT OR Apache-2.0" 7repository = "https://github.com/rust-lang/futures-rs" 8homepage = "https://rust-lang.github.io/futures-rs" 9description = """ 10Common utilities and extension traits for the futures-rs library. 11""" 12 13[features] 14default = ["std", "async-await", "async-await-macro"] 15std = ["alloc", "futures-core/std", "futures-task/std", "slab"] 16alloc = ["futures-core/alloc", "futures-task/alloc"] 17async-await = [] 18async-await-macro = ["async-await", "futures-macro"] 19compat = ["std", "futures_01"] 20io-compat = ["io", "compat", "tokio-io"] 21sink = ["futures-sink"] 22io = ["std", "futures-io", "memchr"] 23channel = ["std", "futures-channel"] 24portable-atomic = ["futures-core/portable-atomic"] 25 26# Unstable features 27# These features are outside of the normal semver guarantees and require the 28# `unstable` feature as an explicit opt-in to unstable API. 29unstable = ["futures-core/unstable", "futures-task/unstable"] 30bilock = [] 31write-all-vectored = ["io"] 32 33# These features are no longer used. 34# TODO: remove in the next major version. 35cfg-target-has-atomic = [] 36 37[dependencies] 38futures-core = { path = "../futures-core", version = "0.3.30", default-features = false } 39futures-task = { path = "../futures-task", version = "0.3.30", default-features = false } 40futures-channel = { path = "../futures-channel", version = "0.3.30", default-features = false, features = ["std"], optional = true } 41futures-io = { path = "../futures-io", version = "0.3.30", default-features = false, features = ["std"], optional = true } 42futures-sink = { path = "../futures-sink", version = "0.3.30", default-features = false, optional = true } 43futures-macro = { path = "../futures-macro", version = "=0.3.30", default-features = false, optional = true } 44slab = { version = "0.4.2", optional = true } 45memchr = { version = "2.2", optional = true } 46futures_01 = { version = "0.1.25", optional = true, package = "futures" } 47tokio-io = { version = "0.1.9", optional = true } 48pin-utils = "0.1.0" 49pin-project-lite = "0.2.6" 50 51[dev-dependencies] 52futures = { path = "../futures", features = ["async-await", "thread-pool"] } 53futures-test = { path = "../futures-test" } 54tokio = "0.1.11" 55 56[package.metadata.docs.rs] 57all-features = true 58rustdoc-args = ["--cfg", "docsrs"] 59