1[package] 2name = "tokio" 3# When releasing to crates.io: 4# - Remove path dependencies 5# - Update doc url 6# - Cargo.toml 7# - README.md 8# - Update CHANGELOG.md. 9# - Create "v1.0.x" git tag. 10version = "1.5.0" 11edition = "2018" 12authors = ["Tokio Contributors <team@tokio.rs>"] 13license = "MIT" 14readme = "README.md" 15documentation = "https://docs.rs/tokio/1.5.0/tokio/" 16repository = "https://github.com/tokio-rs/tokio" 17homepage = "https://tokio.rs" 18description = """ 19An event-driven, non-blocking I/O platform for writing asynchronous I/O 20backed applications. 21""" 22categories = ["asynchronous", "network-programming"] 23keywords = ["io", "async", "non-blocking", "futures"] 24 25[features] 26# Include nothing by default 27default = [] 28 29# enable everything 30full = [ 31 "fs", 32 "io-util", 33 "io-std", 34 "macros", 35 "net", 36 "parking_lot", 37 "process", 38 "rt", 39 "rt-multi-thread", 40 "signal", 41 "sync", 42 "time", 43] 44 45fs = [] 46io-util = ["memchr", "bytes"] 47# stdin, stdout, stderr 48io-std = [] 49macros = ["tokio-macros"] 50net = [ 51 "libc", 52 "mio/os-poll", 53 "mio/os-util", 54 "mio/tcp", 55 "mio/udp", 56 "mio/uds", 57] 58process = [ 59 "bytes", 60 "once_cell", 61 "libc", 62 "mio/os-poll", 63 "mio/os-util", 64 "mio/uds", 65 "signal-hook-registry", 66 "winapi/threadpoollegacyapiset", 67] 68# Includes basic task execution capabilities 69rt = [] 70rt-multi-thread = [ 71 "num_cpus", 72 "rt", 73] 74signal = [ 75 "once_cell", 76 "libc", 77 "mio/os-poll", 78 "mio/uds", 79 "mio/os-util", 80 "signal-hook-registry", 81 "winapi/consoleapi", 82] 83sync = [] 84test-util = [] 85time = [] 86 87[dependencies] 88tokio-macros = { version = "1.1.0", path = "../tokio-macros", optional = true } 89 90pin-project-lite = "0.2.0" 91 92# Everything else is optional... 93bytes = { version = "1.0.0", optional = true } 94once_cell = { version = "1.5.2", optional = true } 95memchr = { version = "2.2", optional = true } 96mio = { version = "0.7.6", optional = true } 97num_cpus = { version = "1.8.0", optional = true } 98parking_lot = { version = "0.11.0", optional = true } 99 100# Currently unstable. The API exposed by these features may be broken at any time. 101# Requires `--cfg tokio_unstable` to enable. 102[target.'cfg(tokio_unstable)'.dependencies] 103tracing = { version = "0.1.21", default-features = false, features = ["std"], optional = true } # Not in full 104 105[target.'cfg(unix)'.dependencies] 106libc = { version = "0.2.42", optional = true } 107signal-hook-registry = { version = "1.1.1", optional = true } 108 109[target.'cfg(unix)'.dev-dependencies] 110libc = { version = "0.2.42" } 111nix = { version = "0.19.0" } 112 113[target.'cfg(windows)'.dependencies.winapi] 114version = "0.3.8" 115default-features = false 116optional = true 117 118[dev-dependencies] 119tokio-test = { version = "0.4.0", path = "../tokio-test" } 120tokio-stream = { version = "0.1", path = "../tokio-stream" } 121futures = { version = "0.3.0", features = ["async-await"] } 122proptest = "1" 123rand = "0.8.0" 124tempfile = "3.1.0" 125async-stream = "0.3" 126 127[target.'cfg(loom)'.dev-dependencies] 128loom = { version = "0.5", features = ["futures", "checkpoint"] } 129 130[build-dependencies] 131autocfg = "1" # Needed for conditionally enabling `track-caller` 132 133[package.metadata.docs.rs] 134all-features = true 135rustdoc-args = ["--cfg", "docsrs"] 136 137[package.metadata.playground] 138features = ["full", "test-util"] 139