1[package] 2name = "futures-util" 3version = "0.3.21" 4edition = "2018" 5rust-version = "1.45" 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"] 24 25# Unstable features 26# These features are outside of the normal semver guarantees and require the 27# `unstable` feature as an explicit opt-in to unstable API. 28unstable = ["futures-core/unstable", "futures-task/unstable"] 29bilock = [] 30write-all-vectored = ["io"] 31 32# These features are no longer used. 33# TODO: remove in the next major version. 34cfg-target-has-atomic = [] 35 36[dependencies] 37futures-core = { path = "../futures-core", version = "0.3.21", default-features = false } 38futures-task = { path = "../futures-task", version = "0.3.21", default-features = false } 39futures-channel = { path = "../futures-channel", version = "0.3.21", default-features = false, features = ["std"], optional = true } 40futures-io = { path = "../futures-io", version = "0.3.21", default-features = false, features = ["std"], optional = true } 41futures-sink = { path = "../futures-sink", version = "0.3.21", default-features = false, optional = true } 42futures-macro = { path = "../futures-macro", version = "=0.3.21", default-features = false, optional = true } 43slab = { version = "0.4.2", optional = true } 44memchr = { version = "2.2", optional = true } 45futures_01 = { version = "0.1.25", optional = true, package = "futures" } 46tokio-io = { version = "0.1.9", optional = true } 47pin-utils = "0.1.0" 48pin-project-lite = "0.2.4" 49 50[dev-dependencies] 51futures = { path = "../futures", features = ["async-await", "thread-pool"] } 52futures-test = { path = "../futures-test" } 53tokio = "0.1.11" 54 55[package.metadata.docs.rs] 56all-features = true 57rustdoc-args = ["--cfg", "docsrs"] 58