[package]
name = "ntex-net"
version = "3.10.0"
authors = ["ntex contributors <team@ntex.rs>"]
description = "ntexwork utils for ntex framework"
keywords = ["network", "framework", "async", "futures"]
homepage = "https://ntex.rs"
repository = "https://github.com/ntex-rs/ntex.git"
documentation = "https://docs.rs/ntex-net/"
categories = ["network-programming", "asynchronous"]
license = "MIT OR Apache-2.0"
edition = "2024"
rust-version = "1.88"

[lib]
name = "ntex_net"
path = "src/lib.rs"

[lints]
workspace = true

[features]
default = []

# tokio runtime
tokio = ["ntex-rt/tokio", "tok-io"]

# compio runtime
compio = ["ntex-rt/compio", "compio-net", "compio-driver", "compio-runtime", "compio-buf", "compio-io"]

# neon runtime (deprecated)
neon = []

# io-uring only
neon-uring = []

# polling only
neon-polling = []

trace = []

[dependencies]
ntex-service = { workspace = true }
ntex-bytes = { workspace = true }
ntex-error = { workspace = true }
ntex-http = { workspace = true }
ntex-io = { workspace = true }
ntex-rt = { workspace = true }
ntex-util = { workspace = true }
ntex-polling = { workspace = true }

bitflags = { workspace = true }
cfg-if = { workspace = true }
log = { workspace = true }
libc = { workspace = true }
slab = { workspace = true }
socket2 = { workspace = true, features = ["all"] }
thiserror = { workspace = true }
scoped-tls = { workspace = true }

compio-buf = { workspace = true, optional = true }
compio-io = { workspace = true, optional = true }
compio-net = { workspace = true, optional = true }
compio-driver = { workspace = true, optional = true }
compio-runtime = { workspace = true, optional = true }
tok-io = { workspace = true, features = ["rt", "net"], optional = true }

# Linux specific dependencies
[target.'cfg(target_os = "linux")'.dependencies]
ntex-io-uring = { workspace = true, features = ["direct-syscall"] }

[dev-dependencies]
ntex = { workspace = true }
oneshot = { workspace = true }
