# 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 = "tracing-futures"
version = "0.2.0"
authors = ["Eliza Weisman <eliza@buoyant.io>", "Tokio Contributors <team@tokio.rs>"]
description = "Utilities for instrumenting `futures` with `tracing`.\n"
homepage = "https://tokio.rs"
readme = "README.md"
keywords = ["logging", "profiling", "tracing", "futures", "async"]
categories = ["development-tools::debugging", "development-tools::profiling", "asynchronous"]
license = "MIT"
repository = "https://github.com/tokio-rs/tracing"
[dependencies.futures]
version = "0.3.0"
optional = true

[dependencies.futures-task]
version = "0.3"
optional = true

[dependencies.futures_01]
version = "0.1"
optional = true
package = "futures"

[dependencies.pin-project]
version = "0.4"
optional = true

[dependencies.tokio]
version = "0.1"
optional = true

[dependencies.tokio-executor]
version = "0.1"
optional = true

[dependencies.tokio_02]
version = "0.2.0-alpha.6"
optional = true
package = "tokio"

[dependencies.tracing]
version = "0.1"
[dev-dependencies.tokio]
version = "0.1.22"

[features]
default = ["std-future"]
futures-01 = ["futures_01"]
futures-03 = ["std-future", "futures", "futures-task"]
std-future = ["pin-project"]
tokio-alpha = ["std-future", "tokio_02"]
[badges.azure-devops]
build = "1"
pipeline = "tokio-rs.tracing"
project = "tracing/tracing"

[badges.maintenance]
status = "actively-developed"
