# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies
#
# If you believe there's an error in this file please file an
# issue against the rust-lang/cargo repository. If you're
# editing this file be aware that the upstream Cargo.toml
# will likely look very different (and much more reasonable)

[package]
edition = "2018"
name = "futures"
version = "0.3.5"
authors = ["Alex Crichton <alex@alexcrichton.com>"]
description = "An implementation of futures and streams featuring zero allocations,\ncomposability, and iterator-like interfaces.\n"
homepage = "https://rust-lang.github.io/futures-rs"
documentation = "https://docs.rs/futures/0.3.5"
readme = "../README.md"
keywords = ["futures", "async", "future"]
categories = ["asynchronous"]
license = "MIT OR Apache-2.0"
repository = "https://github.com/rust-lang/futures-rs"
[package.metadata.docs.rs]
all-features = true

[package.metadata.playground]
features = ["std", "async-await", "compat", "io-compat", "executor", "thread-pool"]
[dependencies.futures-channel]
version = "0.3.5"
features = ["sink"]
default-features = false

[dependencies.futures-core]
version = "0.3.5"
default-features = false

[dependencies.futures-executor]
version = "0.3.5"
optional = true
default-features = false

[dependencies.futures-io]
version = "0.3.5"
default-features = false

[dependencies.futures-sink]
version = "0.3.5"
default-features = false

[dependencies.futures-task]
version = "0.3.5"
default-features = false

[dependencies.futures-util]
version = "0.3.5"
features = ["sink"]
default-features = false
[dev-dependencies.assert_matches]
version = "1.3.0"

[dev-dependencies.futures-executor]
version = "0.3.5"
features = ["thread-pool"]

[dev-dependencies.futures-test]
version = "0.3.5"

[dev-dependencies.pin-utils]
version = "0.1.0"

[dev-dependencies.tokio]
version = "0.1.11"

[features]
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"]
bilock = ["futures-util/bilock"]
cfg-target-has-atomic = ["futures-core/cfg-target-has-atomic", "futures-task/cfg-target-has-atomic", "futures-channel/cfg-target-has-atomic", "futures-util/cfg-target-has-atomic"]
compat = ["std", "futures-util/compat"]
default = ["std", "async-await", "executor"]
executor = ["std", "futures-executor/std"]
io-compat = ["compat", "futures-util/io-compat"]
read-initializer = ["futures-io/read-initializer", "futures-util/read-initializer"]
std = ["alloc", "futures-core/std", "futures-task/std", "futures-io/std", "futures-sink/std", "futures-util/std", "futures-util/io", "futures-util/channel"]
thread-pool = ["executor", "futures-executor/thread-pool"]
unstable = ["futures-core/unstable", "futures-task/unstable", "futures-channel/unstable", "futures-io/unstable", "futures-util/unstable"]
write-all-vectored = ["futures-util/write-all-vectored"]
[badges.travis-ci]
repository = "rust-lang/futures-rs"
