[package] # --- Bumpversion match - do not reorder name = "veilid-server" version = "0.4.1" # --- description = "Veilid Headless Node" repository = "https://gitlab.com/veilid/veilid" authors = ["Veilid Team "] license = "MPL-2.0" edition = "2021" resolver = "2" rust-version = "1.81.0" [[bin]] name = "veilid-server" path = "src/main.rs" [features] default = ["rt-tokio", "veilid-core/default", "otlp-tonic"] default-async-std = ["rt-async-std", "veilid-core/default-async-std"] crypto-test = ["rt-tokio", "veilid-core/crypto-test"] crypto-test-none = ["rt-tokio", "veilid-core/crypto-test-none"] otlp-tonic = ["opentelemetry-otlp/grpc-tonic", "opentelemetry-otlp/trace"] # otlp-grpc = ["opentelemetry-otlp/grpc-sys", "opentelemetry-otlp/trace"] rt-async-std = [ "veilid-core/rt-async-std", "async-std", "opentelemetry_sdk/rt-async-std", ] rt-tokio = [ "veilid-core/rt-tokio", "tokio", "tokio-stream", "tokio-util", "opentelemetry_sdk/rt-tokio", "console-subscriber", ] tracking = ["veilid-core/tracking"] debug-json-api = [] debug-locks = ["veilid-core/debug-locks"] [dependencies] veilid-core = { path = "../veilid-core", default-features = false } tracing = { version = "^0.1.40", features = ["log", "attributes"] } tracing-subscriber = { version = "^0.3.18", features = ["env-filter", "time"] } tracing-appender = "^0.2.3" tracing-opentelemetry = "^0.24.0" # Buggy: tracing-error = "^0" opentelemetry = { version = "^0.23" } opentelemetry-otlp = { version = "^0.16.0", default-features = false, optional = true } opentelemetry_sdk = "0.23.0" opentelemetry-semantic-conventions = "^0.16.0" async-std = { version = "^1.12.0", features = ["unstable"], optional = true } tokio = { version = "^1.38.1", features = ["full", "tracing"], optional = true } tokio-stream = { version = "^0.1.15", features = ["net"], optional = true } tokio-util = { version = "^0.7.11", features = ["compat"], optional = true } console-subscriber = { version = "^0.3.0", optional = true } async-tungstenite = { version = "^0.27.0", features = ["async-tls"] } color-eyre = { version = "^0.6.3", default-features = false } backtrace = "^0.3.71" clap = { version = "^4.5.9", features = ["derive", "string", "wrap_help"] } directories = "^5.0.1" parking_lot = "^0.12.3" config = { version = "^0.14.0", default-features = false, features = ["yaml"] } cfg-if = "^1.0.0" serde = "^1.0.204" serde_derive = "^1.0.204" serde_yaml = { package = "serde_yaml_ng", version = "^0.10.0" } json = "^0" futures-util = { version = "^0", default-features = false, features = [ "alloc", ] } url = "^2" ctrlc = "^3" lazy_static = "^1" bugsalot = { package = "veilid-bugsalot", version = "0.2.0" } flume = { version = "^0", features = ["async"] } rpassword = "^7" hostname = "^0" stop-token = { version = "^0", default-features = false } sysinfo = { version = "^0.30.13", default-features = false } wg = { version = "^0.9.1", features = ["future"] } tracing-flame = "0.2.0" time = { version = "0.3.36", features = ["local-offset"] } chrono = "0.4.38" [target.'cfg(windows)'.dependencies] windows-service = "^0" ansi_term = "^0" [target.'cfg(unix)'.dependencies] daemonize = "^0.5.0" signal-hook = "^0.3.17" signal-hook-async-std = "^0.2.2" nix = "^0.29.0" tracing-perfetto = "0.1.1" [target.'cfg(target_os = "linux")'.dependencies] tracing-journald = "^0.3.0" [dev-dependencies] serial_test = "^3.1.1"