[package]
description = "A collection of data structures for fearless canister upgrades."
documentation = "https://docs.rs/ic-stable-structures"
edition = "2021"
homepage = "https://docs.rs/ic-stable-structures"
include = ["Cargo.toml", "LICENSE", "README.md", "src"]
keywords = ["dfinity", "internet-computer", "stable-structures"]
license = "Apache-2.0"
name = "ic-stable-structures"
readme = "README.md"
repository = "https://github.com/dfinity/stable-structures"
version = "0.7.1"

[package.metadata.docs.rs]
# Build docs for wasm32-unknown-unknown target
targets = ["wasm32-unknown-unknown"]

[dependencies]
canbench-rs = { workspace = true, optional = true } # Optional to benchmark parts of the code.
ic_principal.workspace = true

[dev-dependencies]
candid.workspace = true
hex.workspace = true
ic-cdk-macros.workspace = true
ic-cdk.workspace = true
maplit.workspace = true
proptest.workspace = true
tempfile.workspace = true
test-strategy.workspace = true

[features]
bench_scope = ["dep:canbench-rs"] # May add significant overhead.

[lints.rustdoc]
# Make rustdoc warnings into errors
all = "deny"

[workspace]
members = ["benchmarks"]

[workspace.dependencies]
canbench-rs = "0.2.0"
candid = "0.10.14"
hex = "0.4.3"
ic_principal = { version = "0.1.1", default-features = false }
ic-cdk = "0.17.2"
ic-cdk-macros = "0.17.2"
maplit = "1.0.2"
proptest = "1.7.0"
serde = "1.0.219"
tempfile = "3.20.0"
test-strategy = "0.4.1"
tiny-rng = "0.3.0"
