[package]
name = "tor-cell"
version = "0.8.0"
authors = ["The Tor Project, Inc.", "Nick Mathewson <nickm@torproject.org>"]
edition = "2021"
rust-version = "1.60"
license = "MIT OR Apache-2.0"
homepage = "https://gitlab.torproject.org/tpo/core/arti/-/wikis/home"
description = "Encode and decode Tor cells and messages"
keywords = ["tor", "arti", "protocol"]
categories = ["parser-implementations", "network-programming"]
repository = "https://gitlab.torproject.org/tpo/core/arti.git/"

[features]
default = []

experimental = ["experimental-udp", "onion-service"]
# Enable experimental UDP support.
experimental-udp = []
onion-service = ["tor-hscrypto"] #TODO hs: rename this feature, it is not service-specific.

# Enable testing only API
testing = ["experimental-udp"]

[dependencies]
arrayref = "0.3"
bitflags = "1"
bytes = "1"
caret = { path = "../caret", version = "0.3.0" }
educe = "0.4.6"
rand = "0.8"
thiserror = "1"
tor-basic-utils = { path = "../tor-basic-utils", version = "0.5.0" }
tor-bytes = { path = "../tor-bytes", version = "0.6.1" }
tor-cert = { path = "../tor-cert", version = "0.6.1" }
tor-error = { path = "../tor-error", version = "0.4.1" }
tor-hscrypto = { path = "../tor-hscrypto", version = "0.1.0", optional = true }
tor-linkspec = { path = "../tor-linkspec", version = "0.6.0" }
tor-llcrypto = { path = "../tor-llcrypto", version = "0.4.1" }
tor-units = { path = "../tor-units", version = "0.4.1" }

[dev-dependencies]
hex = "0.4"
hex-literal = "0.3"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]
