# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
rust-version = "1.91"
name = "hugr-persistent"
version = "0.7.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Persistent IR structure for Quantinuum's HUGR"
homepage = "https://github.com/quantinuum/hugr"
documentation = "https://docs.rs/hugr-persistent/"
readme = "README.md"
keywords = [
    "Quantum",
    "Quantinuum",
]
categories = [
    "compilers",
    "science::quantum-computing",
]
license = "Apache-2.0"
repository = "https://github.com/quantinuum/hugr"
resolver = "2"

[lib]
name = "hugr_persistent"
path = "src/lib.rs"
bench = false

[[test]]
name = "persistent_walker_example"
path = "tests/persistent_walker_example.rs"

[dependencies.delegate]
version = "0.13.5"

[dependencies.derive_more]
version = "2.1.1"
features = [
    "display",
    "error",
    "from",
    "debug",
]

[dependencies.hugr-core]
version = "0.28.0"

[dependencies.itertools]
version = "0.14.0"

[dependencies.petgraph]
version = ">= 0.8.3, < 0.9"
default-features = false

[dependencies.portgraph]
version = "0.16.1"

[dependencies.relrc]
version = "0.5.0"
features = [
    "petgraph",
    "serde",
]

[dependencies.serde]
version = "1.0.228"

[dependencies.serde_json]
version = "1.0.150"

[dependencies.thiserror]
version = "2.0.18"

[dependencies.wyhash]
version = "0.6.0"

[dev-dependencies.insta]
version = "1.47.2"
features = ["yaml"]

[dev-dependencies.rstest]
version = "0.26.1"

[dev-dependencies.semver]
version = "1.0.28"

[dev-dependencies.serde_with]
version = "3.20.0"

[lints.clippy]
debug_assert_with_mut_call = "warn"
too_long_first_doc_paragraph = "warn"

[lints.rust]
missing_docs = "warn"

[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = [
    "cfg(ci_run)",
    "cfg(coverage,coverage_nightly)",
]
