pqc-binary-format 1.0.13

Standardized binary format for post-quantum cryptography encrypted data interchange
Documentation
[package]
name = "pqc-binary-format"
version = "1.0.13"
edition = "2021"
rust-version = "1.75"
authors = ["Allan <allan@pqcrypta.com>"]
license = "MIT OR Apache-2.0"
description = "Standardized binary format for post-quantum cryptography encrypted data interchange"
repository = "https://github.com/PQCrypta/pqcrypta-community"
homepage = "https://pqcrypta.com"
documentation = "https://docs.rs/pqc-binary-format"
readme = "README.md"
keywords = ["cryptography", "post-quantum", "pqc", "encryption", "binary-format"]
categories = ["cryptography", "encoding", "no-std"]
exclude = [".github/", "target/"]

[lib]
crate-type = ["cdylib", "rlib"]

[dependencies]
# Serialization
serde = { version = "1.0", features = ["derive"] }
bincode = "1.3"

# Hashing for checksums
sha2 = "0.10"

# Error handling
thiserror = "1.0"

# Python bindings (optional)
pyo3 = { version = "0.20", features = ["extension-module"], optional = true }

# WebAssembly bindings (optional)
wasm-bindgen = { version = "0.2", optional = true }
serde-wasm-bindgen = { version = "0.6", optional = true }
js-sys = { version = "0.3", optional = true }

[features]
default = []
python = ["pyo3"]
wasm = ["wasm-bindgen", "serde-wasm-bindgen", "js-sys"]

[dev-dependencies]
# Testing
criterion = "0.5"
proptest = "1.4"
hex = "0.4"

[[bench]]
name = "format_benchmarks"
harness = false

[profile.release]
opt-level = 3
lto = true
codegen-units = 1

[profile.bench]
opt-level = 3
lto = true

[package.metadata.docs.rs]
# Ensure docs.rs builds with all features and proper targets
all-features = true
rustdoc-args = ["--cfg", "docsrs"]
targets = ["x86_64-unknown-linux-gnu"]