forked from compio-rs/compio
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Cargo.toml
118 lines (104 loc) · 3.14 KB
/
Cargo.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
[package]
name = "completeio"
version = "0.1.0"
edition = "2021"
authors = [
"Rinat Shigapov <rinatshigapov@gmail.com>",
"Berrysoft <Strawberry_Str@hotmail.com>",
]
readme = "README.md"
license = "MIT"
description = "Completion based IO drivers and async runtime"
categories = ["asynchronous", "filesystem", "network-programming"]
keywords = ["io-uring", "kqueue", "iocp", "net", "async"]
repository = "https://github.com/DXist/completeio"
[package.metadata.docs.rs]
all-features = true
default-target = "x86_64-unknown-linux-gnu"
targets = [
"aarch64-apple-ios",
"aarch64-linux-android",
"x86_64-apple-darwin",
"x86_64-pc-windows-msvc",
"x86_64-unknown-dragonfly",
"x86_64-unknown-freebsd",
"x86_64-unknown-linux-gnu",
"x86_64-unknown-netbsd",
"x86_64-unknown-openbsd",
]
# Shared dependencies for all platforms
[dependencies]
arrayvec = { version = "0.7", optional = true }
async-task = { version = "4", optional = true }
boot-time = { version = "0.1", optional = true }
bytes = { version = "1", optional = true }
cfg-if = "1"
futures-util = { version = "0.3", optional = true }
# may be excluded from linking if the unstable equivalent is used
once_cell = "1"
slab = { version = "0.4", optional = true }
socket2 = { version = ">=0.5.4", features = ["all"] }
# Shared dev dependencies for all platforms
[dev-dependencies]
arrayvec = "0.7"
bumpalo = "3"
criterion = { version = "0.5", features = ["async_tokio"] }
futures-channel = "0.3"
tempfile = "3"
tokio = { version = "1", features = ["fs", "io-util", "macros", "net", "rt"] }
# Windows specific dependencies
[target.'cfg(target_os = "windows")'.dependencies]
boot-time = "0.1"
widestring = "1"
windows-sys = { version = "0.48", features = [
"Win32_Foundation",
"Win32_Networking_WinSock",
"Win32_Security",
"Win32_Storage_FileSystem",
"Win32_System_Console",
"Win32_System_IO",
"Win32_System_Pipes",
"Win32_System_SystemServices",
"Win32_System_Threading",
] }
# Windows specific dev dependencies
[target.'cfg(target_os = "windows")'.dev-dependencies]
windows-sys = { version = "0.48", features = ["Win32_Security_Authorization"] }
# Linux specific dependencies
[target.'cfg(target_os = "linux")'.dependencies]
io-uring = "0.6.2"
libc = "0.2"
# BSD-like platform dependencies
[target.'cfg(any(target_vendor= "apple", target_os = "freebsd", target_os = "dragonfly", target_os = "openbsd", target_os = "netbsd"))'.dependencies]
rustix = { version = "0.38", features = ["event"] }
libc = "0.2"
boot-time = "0.1"
bit-set = "0.5"
[features]
default = ["time"]
time = []
runtime = ["dep:async-task", "dep:futures-util", "dep:slab"]
runtime-time = ["runtime", "time", "dep:boot-time"]
event = ["runtime", "arrayvec"]
signal = ["event"]
all = ["runtime-time", "signal"]
allocator_api = ["bumpalo/allocator_api"]
lazy_cell = []
once_cell_try = []
read_buf = []
nightly = ["allocator_api", "lazy_cell", "once_cell_try", "read_buf"]
[[example]]
name = "tick"
required-features = ["time", "signal"]
[[bench]]
name = "fs"
harness = false
[[bench]]
name = "net"
harness = false
[[bench]]
name = "named_pipe"
harness = false
[[test]]
name = "event"
required-features = ["event"]