Documentation
[package]
name = "hdk"
version = "0.1.0"
description = "The Holochain HDK"
license = "CAL-1.0"
homepage = "https://github.com/holochain/holochain/tree/develop/crates/hdk"
documentation = "https://docs.rs/hdk"
authors = [ "Holochain Core Dev Team <devcore@holochain.org>" ]
keywords = [ "holochain", "holo", "hdk" ]
categories = [ "cryptography" ]
edition = "2021"

[features]
default = []
mock = ["hdk_derive/mock", "mockall"]
encoding = ["holo_hash/encoding"]
fixturators = ["holochain_zome_types/fixturators", "holo_hash/fixturators"]
test_utils = [
    "fixturators",
    "holochain_zome_types/test_utils",
    "holo_hash/test_utils",
]
properties = ["holochain_zome_types/properties"]

[dependencies]
hdi = { version = "=0.2.0", path = "../hdi", features = ["trace"] }
hdk_derive = { version = "^0.1.0", path = "../hdk_derive" }
holo_hash = { version = "^0.1.0", path = "../holo_hash" }
holochain_wasmer_guest = "=0.0.83"
# it's important that we depend on holochain_zome_types with no default
# features, both here AND in hdk_derive, to reduce code bloat
holochain_zome_types = { version = "^0.1.0", path = "../holochain_zome_types", default-features = false }
paste = "=1.0.5"
serde = "1.0"
serde_bytes = "0.11"
thiserror = "1.0.22"
tracing = "0.1"
tracing-core = "0.1"
mockall = { version = "0.11.0", optional = true }

# When building for the WASM target, we need to configure getrandom
# to use the host system for the source of crypto-secure randomness.
[target.'cfg(all(target_arch = "wasm32", target_os = "unknown"))'.dependencies]
getrandom = { version = "0.2.7", features = ["custom"] }

[dev-dependencies]
fixt = { path = "../fixt" }
trybuild = "1.0"