[package] name = "edge-net" version = "0.8.1" authors = ["Ivan Markov "] 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 }