# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
name = "iroh-dns-server"
version = "0.98.0"
authors = [
    "Frando <franz@n0.computer>",
    "n0 team",
]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A pkarr relay and DNS server"
readme = "README.md"
keywords = [
    "networking",
    "pkarr",
    "dns",
    "dns-server",
    "iroh",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/n0-computer/iroh"
resolver = "2"

[package.metadata.docs.rs]
all-features = true

[features]
default = ["ring"]
ring = [
    "rustls/ring",
    "tokio-rustls/ring",
]

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

[[bin]]
name = "iroh-dns-server"
path = "src/main.rs"

[[example]]
name = "convert"
path = "examples/convert.rs"

[[example]]
name = "publish"
path = "examples/publish.rs"
required-features = ["ring"]

[[example]]
name = "resolve"
path = "examples/resolve.rs"

[[bench]]
name = "write"
path = "benches/write.rs"
harness = false

[dependencies.async-trait]
version = "0.1.77"

[dependencies.axum]
version = "0.8"
features = ["macros"]

[dependencies.axum-server]
version = "0.8"
features = ["tls-rustls-no-provider"]

[dependencies.base64-url]
version = "3.0"

[dependencies.bytes]
version = "1.11"

[dependencies.clap]
version = "4.5.1"
features = ["derive"]

[dependencies.derive_more]
version = "2.0.1"
features = [
    "debug",
    "display",
    "into",
    "from",
]

[dependencies.dirs-next]
version = "2.0.0"

[dependencies.governor]
version = "0.10"

[dependencies.hickory-server]
version = "0.25.1"
features = ["https-ring"]

[dependencies.http]
version = "1.0.0"

[dependencies.humantime]
version = "2.2.0"

[dependencies.humantime-serde]
version = "1.1.1"

[dependencies.iroh-base]
version = "0.98"
features = ["key"]

[dependencies.iroh-dns]
version = "0.98"

[dependencies.iroh-metrics]
version = "0.38"
features = ["service"]

[dependencies.lru]
version = "0.16.3"

[dependencies.mainline]
version = "6"

[dependencies.n0-error]
version = "0.1.3"

[dependencies.n0-future]
version = "0.3"

[dependencies.rcgen]
version = "0.14"

[dependencies.redb]
version = "3.1.0"

[dependencies.regex]
version = "1.10.3"

[dependencies.rustls]
version = "0.23.33"
default-features = false

[dependencies.serde]
version = "1"
features = ["derive"]

[dependencies.serde_json]
version = "1"

[dependencies.struct_iterable]
version = "0.1.1"

[dependencies.strum]
version = "0.28"
features = ["derive"]

[dependencies.tokio]
version = "1"
features = ["full"]

[dependencies.tokio-rustls]
version = "0.26"
features = ["logging"]
default-features = false

[dependencies.tokio-rustls-acme]
version = "0.9"
features = ["axum"]

[dependencies.tokio-stream]
version = "0.1.14"

[dependencies.tokio-util]
version = "0.7"

[dependencies.toml]
version = "1.0.6"

[dependencies.tower-http]
version = "0.6.1"
features = [
    "cors",
    "trace",
]

[dependencies.tower_governor]
version = "0.8"
features = ["axum"]
default-features = false

[dependencies.tracing]
version = "0.1"

[dependencies.tracing-subscriber]
version = "0.3.18"

[dependencies.ttl_cache]
version = "0.5.1"

[dependencies.url]
version = "2.5.3"

[dev-dependencies.criterion]
version = "0.7.0"

[dev-dependencies.data-encoding]
version = "2.3.3"

[dev-dependencies.hickory-resolver]
version = "0.25.0"
features = [
    "tls-ring",
    "https-ring",
]

[dev-dependencies.n0-tracing-test]
version = "0.3"

[dev-dependencies.rand]
version = "0.10"

[dev-dependencies.rand_chacha]
version = "0.10"

[dev-dependencies.reqwest]
version = "0.13"
features = [
    "rustls-no-provider",
    "http2",
    "json",
]
default-features = false

[dev-dependencies.serde_json]
version = "1.0.145"

[dev-dependencies.simple-dns]
version = "0.9"

[dev-dependencies.tempfile]
version = "3.23.0"

[build-dependencies.vergen-gitcl]
version = "1.0.8"
