[package]
name = "candid"
version = "0.10.10"
edition = "2021"
rust-version.workspace = true
authors = ["DFINITY Team"]
description = "Candid is an interface description language (IDL) for interacting with canisters running on the Internet Computer."
homepage = "https://internetcomputer.org/docs/current/developer-docs/build/candid/candid-concepts"
documentation = "https://docs.rs/candid"
repository = "https://github.com/dfinity/candid"
license = "Apache-2.0"
readme = "README.md"
categories = ["encoding", "wasm"]
keywords = ["internet-computer", "idl", "candid", "dfinity"]
include = ["src", "Cargo.toml", "LICENSE", "README.md"]
[dependencies]
candid_derive = { path = "../candid_derive", version = "=0.6.6" }
ic_principal = { path = "../ic_principal", version = "0.1.0" }
binread = { version = "2.2", features = ["debug_template"] }
byteorder = "1.5.0"
leb128 = "0.2.5"
paste = "1.0"
hex.workspace = true
serde.workspace = true
thiserror.workspace = true
anyhow.workspace = true
serde_bytes = { version = "0.11", optional = true }
pretty = { workspace = true, optional = true }
num-bigint = { workspace = true, optional = true }
num-traits = { workspace = true, optional = true }
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
stacker = "0.1"
[dev-dependencies]
rand.workspace = true
serde_cbor = "0.11.2"
serde_json = "1.0.74"
bincode = "1.3.3"
candid_parser = { path = "../candid_parser" }
[features]
bignum = ["dep:num-bigint", "dep:num-traits"]
printer = ["dep:pretty"]
value = ["bignum", "printer"]
default = ["serde_bytes", "printer", "bignum"]
all = ["default", "value", "ic_principal/arbitrary"]
[[test]]
name = "types"
path = "tests/types.rs"
required-features = ["value"]
[[test]]
name = "serde"
path = "tests/serde.rs"
required-features = ["bignum"]
[[test]]
name = "number"
path = "tests/number.rs"
required-features = ["bignum"]
[package.metadata.docs.rs]
features = ["all"]
rustdoc-args = ["--cfg", "docsrs"]