-
Notifications
You must be signed in to change notification settings - Fork 18
/
Cargo.toml
127 lines (110 loc) · 3.92 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
119
120
121
122
123
124
125
126
127
[package]
name = "edge-net"
version = "0.8.1"
authors = ["Ivan Markov <[email protected]>"]
edition = "2021"
categories = ["embedded", "hardware-support", "network-programming", "asynchronous"]
keywords = ["embedded", "network"]
description = "no_std and no-alloc async implementations of various network protocols."
repository = "https://github.com/ivmarkov/edge-net"
license = "MIT OR Apache-2.0"
readme = "README.md"
rust-version = "1.78"
[features]
default = ["io"]
async-io-mini = ["std", "edge-nal-std/async-io-mini"]
std = ["io", "edge-captive/std", "edge-dhcp/std", "edge-http/std", "edge-mdns/std", "edge-raw/std", "edge-mqtt", "edge-ws/std", "edge-nal-std"]
embassy = ["io", "edge-nal-embassy"]
io = ["edge-captive/io", "edge-dhcp/io", "edge-http/io", "edge-mdns/io", "edge-raw/io", "edge-ws/io", "edge-nal"]
embedded-svc = ["edge-http/embedded-svc", "edge-mqtt/embedded-svc", "edge-ws/embedded-svc"]
nightly = []
[dependencies]
edge-captive = { workspace = true }
edge-dhcp = { workspace = true }
edge-http = { workspace = true }
edge-mdns = { workspace = true }
edge-mqtt = { workspace = true, optional = true }
edge-nal = { workspace = true, optional = true }
edge-raw = { workspace = true }
edge-ws = { workspace = true }
edge-nal-std = { workspace = true, optional = true }
edge-nal-embassy = { workspace = true, optional = true }
[dev-dependencies]
log = "0.4"
anyhow = "1"
env_logger = "0.10"
embedded-io-async = "0.6"
embassy-time = { version = "0.3", features = ["std", "generic-queue"] }
embassy-sync = "0.6"
embassy-futures = "0.1"
embedded-svc = { version = "0.28", features = ["std"] }
futures-lite = "2"
rand = "0.8"
tokio = "1" # For the `mqtt_client` example
async-compat = "0.2" # For the `mqtt_client` example
[[example]]
name = "captive_portal"
required-features = ["std"]
[[example]]
name = "dhcp_client"
required-features = ["std"]
[[example]]
name = "dhcp_server"
required-features = ["std"]
[[example]]
name = "http_client"
required-features = ["std"]
[[example]]
name = "http_server"
required-features = ["std"]
[[example]]
name = "mdns_responder"
required-features = ["std"]
[[example]]
name = "mdns_service_responder"
required-features = ["std"]
[[example]]
name = "ws_client"
required-features = ["std"]
[[example]]
name = "ws_server"
required-features = ["std"]
[[example]]
name = "nal_std"
required-features = ["std"]
[[example]]
name = "mqtt_client"
required-features = ["std", "embedded-svc"]
[workspace]
members = [
".",
"edge-captive",
"edge-dhcp",
"edge-http",
"edge-mdns",
"edge-mqtt",
"edge-nal",
"edge-raw",
"edge-ws",
"edge-nal-std",
"edge-nal-embassy"
]
[workspace.dependencies]
embassy-futures = { version = "0.1", default-features = false }
embassy-sync = { version = "0.6", default-features = false }
embassy-time = { version = "0.3", default-features = false }
embedded-io-async = { version = "0.6", default-features = false }
embedded-svc = { version = "0.28", default-features = false }
log = { version = "0.4", default-features = false }
heapless = { version = "0.8", default-features = false }
domain = { version = "0.10", default-features = false, features = ["heapless"] }
edge-captive = { version = "0.3.0", path = "edge-captive", default-features = false }
edge-dhcp = { version = "0.3.0", path = "edge-dhcp", default-features = false }
edge-http = { version = "0.3.0", path = "edge-http", default-features = false }
edge-mdns = { version = "0.3.1", path = "edge-mdns", default-features = false }
edge-mqtt = { version = "0.3.0", path = "edge-mqtt", default-features = false }
edge-nal = { version = "0.3.0", path = "edge-nal", default-features = false }
edge-raw = { version = "0.3.0", path = "edge-raw", default-features = false }
edge-ws = { version = "0.3.0", path = "edge-ws", default-features = false }
edge-nal-std = { version = "0.3.0", path = "edge-nal-std", default-features = false }
edge-nal-embassy = { version = "0.3.0", path = "edge-nal-embassy", default-features = false }