[package]
name = "codas"
description = "Compact and streamable data format that works anywhere--from web apps to robots."
categories = [
"data-structures",
"embedded",
"encoding",
"network-programming",
"no-std",
]
keywords = [
"codas",
"encoding",
"protocol",
"serialization",
]
readme = "README.md"
version.workspace = true
edition.workspace = true
homepage.workspace = true
repository.workspace = true
license.workspace = true
authors.workspace = true
[package.metadata.release]
release = true
[package.metadata.docs.rs]
all-features = true
[features]
langs = ["dep:indoc"]
langs-open-api = ["langs"]
langs-typescript = ["langs"]
langs-python = ["langs"]
langs-rust = ["langs"]
parse = ["dep:logos"]
serde = ["dep:serde"]
std = []
[dependencies]
snafu.workspace = true
serde = { workspace = true, optional = true }
logos = { version = "0.13.0", optional = true, default-features = false, features = ["export_derive"] }
indoc = { version = "2.0.5", optional = true }
blake3 = { version = "1.3.3" }
ed25519-dalek = { version = "2.1.1", features = ["rand_core"]}
chacha20poly1305 = { version = "0.10.1", default-features = false, features = ["rand_core", "alloc"] }
argon2 = { version = "0.5.3", default-features = false, features = ["alloc"] }
rand_core = { version = "0.6.4", features = ["getrandom"] }
[dev-dependencies]
codas = { path = ".", features = ["std", "parse", "langs", "serde"] }
codas-macros = { path = "../codas-macros" }
pretty_assertions.workspace = true
snafu = { workspace = true, features = ["backtrace", "backtraces-impl-backtrace-crate"] }
criterion.workspace = true
prost = "0.13.4"
[[bench]]
name = "codecs"
harness = false