[package] name = "p2panda-rs" version = "0.8.1" authors = [ "adz ", "cafca ", "pietgeursen ", "sandreae ", "sophiiistika ", ] edition = "2018" description = "All the things a panda needs" repository = "https://github.com/p2panda/p2panda" license = "AGPL-3.0-or-later" readme = "README.md" exclude = [".gitignore"] categories = ["web-programming", "wasm", "cryptography"] [package.metadata.docs.rs] features = ["secret-group", "storage-provider"] [lib] crate-type = ["cdylib", "rlib"] [features] test-utils = ["storage-provider", "dep:rstest", "dep:rstest_reuse", "dep:varu64", "dep:tokio", "dep:async-trait"] secret-group = ["dep:openmls", "dep:openmls_memory_keystore", "dep:openmls_rust_crypto", "dep:openmls_traits", "dep:tls_codec"] storage-provider = ["dep:async-trait"] [dependencies] arrayvec = "0.5.2" async-trait = { version = "0.1.64", optional = true } bamboo-rs-core-ed25519-yasmf = "0.1.1" ciborium = "0.2.0" ed25519-dalek = "1.0.1" hex = { version = "0.4.3", features = ["serde"] } lipmaa-link = "0.2.2" log = "0.4.17" once_cell = "1.17.0" openmls = { version = "0.4.1", features = ["crypto-subtle"], optional = true } openmls_memory_keystore = { version = "0.1.0", optional = true } openmls_rust_crypto = { version = "0.1.0", optional = true } openmls_traits = { version = "0.1.0", optional = true } rand = "0.7.3" regex = "1.7.1" rstest = { version = "0.16.0", optional = true } rstest_reuse = { version = "0.5.0", optional = true } serde = { version = "1.0.152", features = ["derive"] } serde_bytes = "0.11.12" thiserror = "1.0.39" tls_codec = { version = "0.2.0", features = ["derive", "serde_serialize"], optional = true } tokio = { version = "1.25.0", features = ["rt", "macros", "rt-multi-thread"], optional = true } varu64 = { version = "0.7.0", default-features = false, optional = true } yasmf-hash = "0.1.1" [target.'cfg(target_arch = "wasm32")'.dependencies] console_error_panic_hook = "0.1.7" js-sys = "0.3.61" rand = { version = "0.7.3", features = ["wasm-bindgen"] } serde-wasm-bindgen = "0.5.0" wasm-bindgen = "0.2.87" [dev-dependencies] async-trait = "0.1.64" rstest = "0.16.0" rstest_reuse = "0.5.0" serde_json = "1.0.108" tokio = { version = "1.25.0", features = ["rt", "macros"] } varu64 = { version = "0.7.0", default-features = false } [target.'cfg(unix)'.dev-dependencies] criterion = "0.4.0" ctor = "0.1.26" incremental-topo = "0.2.1" openmls = { version = "0.4.1", features = ["crypto-subtle", "test-utils"] } pretty_env_logger = "0.4.0" [target.'cfg(target_arch = "wasm32")'.dev-dependencies] wasm-bindgen-test = "0.3.37" [[bench]] name = "graph" harness = false path = "benchmarks/graph.rs" [[bench]] name = "encode_decode" harness = false path = "benchmarks/encode_decode.rs"