mirror of
https://gitlab.com/veloren/veloren.git
synced 2024-08-30 18:12:32 +00:00
dcfde616d0
for that we need to create a socket2 socket and set_only_v6 to true. We need to privude set_nonblocking for tokio to work and we need to set reuseaddr for it to work on linux systems
78 lines
2.3 KiB
TOML
78 lines
2.3 KiB
TOML
[package]
|
|
name = "veloren-network"
|
|
version = "0.3.0"
|
|
authors = ["Marcel Märtens <marcel.cochem@googlemail.com>"]
|
|
edition = "2021"
|
|
|
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
|
|
|
[features]
|
|
metrics = ["prometheus", "network-protocol/metrics"]
|
|
compression = ["lz-fear"]
|
|
quic = ["quinn"]
|
|
|
|
default = ["metrics","compression","quic"]
|
|
|
|
[dependencies]
|
|
|
|
network-protocol = { package = "veloren-network-protocol", path = "protocol" }
|
|
|
|
#serialisation
|
|
bincode = "1.3.2"
|
|
serde = { version = "1.0" }
|
|
#ipv4/ipv6 behavior
|
|
socket2 = "0.4.4"
|
|
#sending
|
|
crossbeam-channel = "0.5"
|
|
tokio = { version = "1.14", default-features = false, features = ["io-util", "macros", "rt", "net", "time"] }
|
|
tokio-stream = { version = "0.1.2", default-features = false }
|
|
#tracing and metrics
|
|
tracing = { version = "0.1", default-features = false, features = ["attributes"]}
|
|
prometheus = { version = "0.12", default-features = false, optional = true }
|
|
#async
|
|
futures-core = { version = "0.3", default-features = false }
|
|
futures-util = { version = "0.3.7", default-features = false, features = ["std"] }
|
|
async-channel = "1.5.1" #use for .close() channels
|
|
#mpsc channel registry
|
|
lazy_static = { version = "1.4", default-features = false }
|
|
rand = { version = "0.8" }
|
|
#quic support
|
|
quinn = { version = "0.8", optional = true }
|
|
rustls = "0.20.1"
|
|
#stream flags
|
|
bitflags = "1.2.1"
|
|
lz-fear = { version = "0.1.1", optional = true }
|
|
# async traits
|
|
async-trait = "0.1.42"
|
|
bytes = "^1"
|
|
# faster HashMaps
|
|
hashbrown = { version = ">=0.9, <0.12" }
|
|
|
|
[dev-dependencies]
|
|
tracing-subscriber = { version = "0.3.7", default-features = false, features = ["env-filter", "fmt", "time", "ansi", "smallvec"] }
|
|
tokio = { version = "1.14", default-features = false, features = ["io-std", "fs", "rt-multi-thread"] }
|
|
futures-util = { version = "0.3.7", default-features = false, features = ["sink", "std"] }
|
|
clap = { version = "2.33", default-features = false }
|
|
shellexpand = "2.0.0"
|
|
serde = { version = "1.0", features = ["derive"] }
|
|
prometheus-hyper = "0.1.2"
|
|
criterion = { version = "0.3.4", features = ["default", "async_tokio"] }
|
|
#quic
|
|
rcgen = { version = "0.8.10"}
|
|
|
|
[[bench]]
|
|
name = "speed"
|
|
harness = false
|
|
|
|
[[example]]
|
|
name = "fileshare"
|
|
|
|
[[example]]
|
|
name = "network-speed"
|
|
|
|
[[example]]
|
|
name = "chat"
|
|
|
|
[[example]]
|
|
name = "tcp_loadtest"
|