mirror of
https://github.com/tokio-rs/tokio.git
synced 2026-09-02 00:00:11 +02:00
JoinHandle of threads created by the pool are now tracked and properly joined at shutdown. If the thread does not return within the timeout, then it's not joined and left to the OS for cleanup. Also, break a cycle between wakers held by the timer and the runtime. Fixes #2641, #2535
140 lines
3.3 KiB
TOML
140 lines
3.3 KiB
TOML
[package]
|
|
name = "tokio"
|
|
# When releasing to crates.io:
|
|
# - Remove path dependencies
|
|
# - Update html_root_url.
|
|
# - Update doc url
|
|
# - Cargo.toml
|
|
# - README.md
|
|
# - Update CHANGELOG.md.
|
|
# - Create "v0.2.x" git tag.
|
|
version = "0.2.22"
|
|
edition = "2018"
|
|
authors = ["Tokio Contributors <[email protected]>"]
|
|
license = "MIT"
|
|
readme = "README.md"
|
|
documentation = "https://docs.rs/tokio/0.2.22/tokio/"
|
|
repository = "https://github.com/tokio-rs/tokio"
|
|
homepage = "https://tokio.rs"
|
|
description = """
|
|
An event-driven, non-blocking I/O platform for writing asynchronous I/O
|
|
backed applications.
|
|
"""
|
|
categories = ["asynchronous", "network-programming"]
|
|
keywords = ["io", "async", "non-blocking", "futures"]
|
|
|
|
[features]
|
|
# Include nothing by default
|
|
default = []
|
|
|
|
# enable everything
|
|
full = [
|
|
"blocking",
|
|
"dns",
|
|
"fs",
|
|
"io-driver",
|
|
"io-util",
|
|
"io-std",
|
|
"macros",
|
|
"net",
|
|
"process",
|
|
"rt-core",
|
|
"rt-util",
|
|
"rt-threaded",
|
|
"signal",
|
|
"stream",
|
|
"sync",
|
|
"time",
|
|
]
|
|
|
|
blocking = ["rt-core"]
|
|
dns = ["rt-core"]
|
|
fs = ["rt-core", "io-util"]
|
|
io-driver = ["mio", "lazy_static"]
|
|
io-util = ["memchr"]
|
|
# stdin, stdout, stderr
|
|
io-std = ["rt-core"]
|
|
macros = ["tokio-macros"]
|
|
net = ["dns", "tcp", "udp", "uds"]
|
|
process = [
|
|
"io-driver",
|
|
"libc",
|
|
"mio-named-pipes",
|
|
"signal",
|
|
"winapi/consoleapi",
|
|
"winapi/minwindef",
|
|
"winapi/threadpoollegacyapiset",
|
|
"winapi/winerror",
|
|
]
|
|
# Includes basic task execution capabilities
|
|
rt-core = ["slab"]
|
|
rt-util = []
|
|
rt-threaded = [
|
|
"num_cpus",
|
|
"rt-core",
|
|
]
|
|
signal = [
|
|
"io-driver",
|
|
"lazy_static",
|
|
"libc",
|
|
"mio-uds",
|
|
"signal-hook-registry",
|
|
"winapi/consoleapi",
|
|
"winapi/minwindef",
|
|
]
|
|
stream = ["futures-core"]
|
|
sync = ["fnv"]
|
|
test-util = []
|
|
tcp = ["io-driver", "iovec"]
|
|
time = ["slab"]
|
|
udp = ["io-driver"]
|
|
uds = ["io-driver", "mio-uds", "libc"]
|
|
|
|
[dependencies]
|
|
tokio-macros = { version = "0.2.4", path = "../tokio-macros", optional = true }
|
|
|
|
bytes = "0.5.0"
|
|
pin-project-lite = "0.1.1"
|
|
|
|
# Everything else is optional...
|
|
fnv = { version = "1.0.6", optional = true }
|
|
futures-core = { version = "0.3.0", optional = true }
|
|
lazy_static = { version = "1.0.2", optional = true }
|
|
memchr = { version = "2.2", optional = true }
|
|
mio = { version = "0.6.20", optional = true }
|
|
iovec = { version = "0.1.4", optional = true }
|
|
num_cpus = { version = "1.8.0", optional = true }
|
|
parking_lot = { version = "0.11.0", optional = true } # Not in full
|
|
slab = { version = "0.4.1", optional = true } # Backs `DelayQueue`
|
|
tracing = { version = "0.1.16", default-features = false, features = ["std"], optional = true } # Not in full
|
|
|
|
[target.'cfg(unix)'.dependencies]
|
|
mio-uds = { version = "0.6.5", optional = true }
|
|
libc = { version = "0.2.42", optional = true }
|
|
signal-hook-registry = { version = "1.1.1", optional = true }
|
|
|
|
[target.'cfg(windows)'.dependencies]
|
|
mio-named-pipes = { version = "0.1.6", optional = true }
|
|
|
|
[target.'cfg(windows)'.dependencies.winapi]
|
|
version = "0.3.8"
|
|
default-features = false
|
|
optional = true
|
|
|
|
[dev-dependencies]
|
|
tokio-test = { version = "0.2.0", path = "../tokio-test" }
|
|
futures = { version = "0.3.0", features = ["async-await"] }
|
|
futures-test = "0.3.0"
|
|
proptest = "0.9.4"
|
|
tempfile = "3.1.0"
|
|
|
|
[target.'cfg(loom)'.dev-dependencies]
|
|
loom = { version = "0.3.5", features = ["futures", "checkpoint"] }
|
|
|
|
[package.metadata.docs.rs]
|
|
all-features = true
|
|
rustdoc-args = ["--cfg", "docsrs"]
|
|
|
|
[package.metadata.playground]
|
|
features = ["full"]
|