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.14.0" 11edition = "2018" 12authors = ["Tokio Contributors <team@tokio.rs>"] 13license = "MIT" 14readme = "README.md" 15documentation = "https://docs.rs/tokio/1.14.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"] 50stats = [] 51net = [ 52 "libc", 53 "mio/os-poll", 54 "mio/os-util", 55 "mio/tcp", 56 "mio/udp", 57 "mio/uds", 58 "winapi/namedpipeapi", 59] 60process = [ 61 "bytes", 62 "once_cell", 63 "libc", 64 "mio/os-poll", 65 "mio/os-util", 66 "mio/uds", 67 "signal-hook-registry", 68 "winapi/threadpoollegacyapiset", 69] 70# Includes basic task execution capabilities 71rt = [] 72rt-multi-thread = [ 73 "num_cpus", 74 "rt", 75] 76signal = [ 77 "once_cell", 78 "libc", 79 "mio/os-poll", 80 "mio/uds", 81 "mio/os-util", 82 "signal-hook-registry", 83 "winapi/consoleapi", 84] 85sync = [] 86test-util = ["rt", "sync", "time"] 87time = [] 88 89[dependencies] 90tokio-macros = { version = "1.6.0", path = "../tokio-macros", optional = true } 91 92pin-project-lite = "0.2.0" 93 94# Everything else is optional... 95bytes = { version = "1.0.0", optional = true } 96once_cell = { version = "1.5.2", optional = true } 97memchr = { version = "2.2", optional = true } 98mio = { version = "0.7.6", optional = true } 99num_cpus = { version = "1.8.0", optional = true } 100parking_lot = { version = "0.11.0", optional = true } 101 102# Currently unstable. The API exposed by these features may be broken at any time. 103# Requires `--cfg tokio_unstable` to enable. 104[target.'cfg(tokio_unstable)'.dependencies] 105tracing = { version = "0.1.25", default-features = false, features = ["std"], optional = true } # Not in full 106 107[target.'cfg(unix)'.dependencies] 108libc = { version = "0.2.42", optional = true } 109signal-hook-registry = { version = "1.1.1", optional = true } 110 111[target.'cfg(unix)'.dev-dependencies] 112libc = { version = "0.2.42" } 113nix = { version = "0.22.0" } 114 115[target.'cfg(windows)'.dependencies.winapi] 116version = "0.3.8" 117default-features = false 118optional = true 119 120[target.'cfg(windows)'.dev-dependencies.ntapi] 121version = "0.3.6" 122 123[dev-dependencies] 124tokio-test = { version = "0.4.0", path = "../tokio-test" } 125tokio-stream = { version = "0.1", path = "../tokio-stream" } 126futures = { version = "0.3.0", features = ["async-await"] } 127mockall = "0.10.2" 128proptest = "1" 129rand = "0.8.0" 130tempfile = "3.1.0" 131async-stream = "0.3" 132socket2 = "0.4" 133 134[target.'cfg(target_os = "freebsd")'.dev-dependencies] 135mio-aio = { version = "0.6.0", features = ["tokio"] } 136 137[target.'cfg(loom)'.dev-dependencies] 138loom = { version = "0.5", features = ["futures", "checkpoint"] } 139 140[build-dependencies] 141autocfg = "1" # Needed for conditionally enabling `track-caller` 142 143[package.metadata.docs.rs] 144all-features = true 145rustdoc-args = ["--cfg", "docsrs"] 146 147[package.metadata.playground] 148features = ["full", "test-util"] 149