[package]
name = "stratum-server"
version = "2.2.18"
authors = ["Urkel Labs Engineering <engineering@urkellabs.com>"]
edition = "2018"
license = "MIT"
description = "The server code for the Rust Stratum (v1) implementation"

[features]
default = ["tcp"]
tcp = []
websockets = ["async-tungstenite"]

[dependencies]

##### Known External #####
extended-primitives = {version = "0.3.4"}
encodings = "0.1.0"

##### Unknown Externals #####

# Futures
async-std = {version = "1.6.0", features = ["attributes"] }
async-trait = "0.1.38"
futures = "0.3.5"
smol = "1.2.4"
stop-token = "0.1.2"
tide = "0.14"

# Serialization
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"

# Metrics
# metrics = { version="0.13.0-alpha.8" }
# metrics-exporter-prometheus = "0.1.0-alpha.5"


# Misc
uuid = { version = "0.8", features = ["serde", "v4"] }
log = "0.4.8"
chrono = "0.4.10"
rand = "0.7.3"
signal-hook = "0.1.16"

# Optional
async-tungstenite = { version="0.8.0", features=["async-std-runtime", "async-native-tls"], optional=true}

[dev-dependencies]
criterion = "0.3"
async-std = {version = "1.6.0", features = ["attributes", "unstable"] }
portpicker = "0.1.0"
nix = "0.18"
#maybe switch this w/ Test_logger.
env_logger = "0.8.1"
serial_test = "0.5.0"

[[bench]]
name = "bench_main"
harness = false

[package.metadata.release]
disable-tag = true
