[package]
edition = "2024"
rust-version = "1.89"
name = "tor-netdoc"
version = "0.40.0"
authors = [
"The Tor Project, Inc.",
"Nick Mathewson <nickm@torproject.org>",
]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Network document formats used with the Tor protocols."
homepage = "https://gitlab.torproject.org/tpo/core/arti/-/wikis/home"
readme = "README.md"
keywords = [
"tor",
"arti",
]
categories = ["parser-implementations"]
license = "MIT OR Apache-2.0"
repository = "https://gitlab.torproject.org/tpo/core/arti.git/"
[package.metadata.docs.rs]
all-features = true
[features]
__is_experimental = []
build_docs = [
"rand",
"__is_experimental",
]
dangerous-expose-struct-fields = ["__is_experimental"]
default = []
encode = []
experimental = [
"build_docs",
"dangerous-expose-struct-fields",
"experimental-api",
"hsdesc-inner-docs",
"hs-dir",
"hs-pow-full",
"ns-vote",
"parse2",
"retain-unknown",
]
experimental-api = [
"testing",
"__is_experimental",
]
full = [
"encode",
"hs-client",
"hs-service",
"routerdesc",
"ns_consensus",
"plain-consensus",
"tor-basic-utils/full",
"tor-bytes/full",
"tor-cert/full",
"tor-checkable/full",
"tor-error/full",
"tor-hscrypto?/full",
"tor-linkspec?/full",
"tor-llcrypto/full",
"tor-protover/full",
"tor-units?/full",
"tor-cell/full",
]
hs-client = ["hs-common"]
hs-common = [
"rand",
"tor-hscrypto",
"tor-linkspec",
"tor-units",
]
hs-dir = [
"hs-common",
"__is_experimental",
]
hs-pow-full = [
"tor-hscrypto/hs-pow-full",
"__is_experimental",
]
hs-service = [
"hs-common",
"encode",
"tor-cert/encode",
]
hsdesc-inner-docs = [
"visibility",
"__is_experimental",
]
ns-vote = ["__is_experimental"]
ns_consensus = ["plain-consensus"]
parse2 = ["__is_experimental"]
plain-consensus = []
retain-unknown = ["__is_experimental"]
routerdesc = []
testing = [
"hex-literal",
"hsdesc-inner-docs",
"visibility",
]
[lib]
name = "tor_netdoc"
path = "src/lib.rs"
[dependencies.amplify]
version = "4"
features = ["derive"]
default-features = false
[dependencies.base64ct]
version = "1.5.1"
features = ["alloc"]
[dependencies.cipher]
version = "0.4.1"
features = ["zeroize"]
[dependencies.derive-deftly]
version = "~1.6.0"
features = [
"full",
"beta",
]
[dependencies.derive_builder]
version = "0.11.2"
package = "derive_builder_fork_arti"
[dependencies.derive_more]
version = "2.0.1"
features = ["full"]
[dependencies.digest]
version = "0.10.0"
[dependencies.educe]
version = "0.4.22"
[dependencies.enumset]
version = "1.1.10"
[dependencies.hex]
version = "0.4"
[dependencies.hex-literal]
version = "1.0"
optional = true
[dependencies.humantime]
version = "2"
[dependencies.itertools]
version = "0.14.0"
[dependencies.memchr]
version = "2.5"
[dependencies.paste]
version = "1.0.3"
[dependencies.phf]
version = "0.13.1"
features = ["macros"]
[dependencies.rand]
version = "0.9.1"
optional = true
[dependencies.saturating-time]
version = "0.3.0"
[dependencies.serde]
version = "1.0.103"
features = ["derive"]
[dependencies.serde_with]
version = "3.0.0"
[dependencies.signature]
version = "2"
[dependencies.smallvec]
version = "1.10"
[dependencies.strum]
version = "0.27.1"
features = ["derive"]
[dependencies.subtle]
version = "2"
[dependencies.thiserror]
version = "2"
[dependencies.time]
version = "0.3.47"
features = [
"std",
"parsing",
"macros",
"formatting",
]
[dependencies.tinystr]
version = "0.8.0"
[dependencies.tor-basic-utils]
version = "0.40.0"
[dependencies.tor-bytes]
version = "0.40.0"
[dependencies.tor-cell]
version = "0.40.0"
[dependencies.tor-cert]
version = "0.40.0"
[dependencies.tor-checkable]
version = "0.40.0"
[dependencies.tor-error]
version = "0.40.0"
[dependencies.tor-hscrypto]
version = "0.40.0"
optional = true
[dependencies.tor-linkspec]
version = "0.40.0"
optional = true
[dependencies.tor-llcrypto]
version = "0.40.0"
[dependencies.tor-protover]
version = "0.40.0"
features = ["serde"]
[dependencies.tor-units]
version = "0.40.0"
optional = true
[dependencies.visibility]
version = "0.1.0"
optional = true
[dependencies.visible]
version = "0.0.1"
optional = true
[dependencies.void]
version = "1"
[dependencies.zeroize]
version = "1"
[dev-dependencies.anyhow]
version = "1.0.23"
[dev-dependencies.hex-literal]
version = "1.0"
[dev-dependencies.itertools]
version = "0.14.0"
[dev-dependencies.serde_json]
version = "1.0.50"
[dev-dependencies.testresult]
version = "0.4.1"
[dev-dependencies.tor-basic-utils]
version = "0.40.0"