# 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 are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2018"
rust-version = "1.56"
name = "futures"
version = "0.3.30"
description = """
An implementation of futures and streams featuring zero allocations,
composability, and iterator-like interfaces.
"""
homepage = "https://rust-lang.github.io/futures-rs"
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
rustdoc-args = [
    "--cfg",
    "docsrs",
]

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

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

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

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

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

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

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

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

[dev-dependencies.assert_matches]
version = "1.3.0"

[dev-dependencies.pin-project]
version = "1.0.11"

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

[dev-dependencies.static_assertions]
version = "1"

[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 = []
compat = [
    "std",
    "futures-util/compat",
]
default = [
    "std",
    "async-await",
    "executor",
]
executor = [
    "std",
    "futures-executor/std",
]
io-compat = [
    "compat",
    "futures-util/io-compat",
]
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"]
