comemo 0.5.1

Incremental computation through constrained memoization.
Documentation
[workspace]
members = ["macros"]
resolver = "2"

[workspace.package]
version = "0.5.1"
rust-version = "1.88" # also change in ci.yml
authors = ["Laurenz <laurmaedje@gmail.com>"]
edition = "2024"
repository = "https://github.com/typst/comemo"
readme = "README.md"
license = "MIT OR Apache-2.0"
categories = ["caching"]
keywords = ["incremental", "memoization", "tracked", "constraints"]

[workspace.dependencies]
comemo-macros = { version = "0.5.1", path = "macros" }
once_cell = "1.18"
parking_lot = "0.12"
proc-macro2 = "1"
quickcheck = "1"
quickcheck_macros = "1"
quote = "1"
rustc-hash = "2.1"
serial_test = "3"
siphasher = "1"
slab = "0.4"
syn = { version = "2", features = ["full"] }

[package]
name = "comemo"
description = "Incremental computation through constrained memoization."
version = { workspace = true }
rust-version = { workspace = true }
authors = { workspace = true }
edition = { workspace = true }
repository = { workspace = true }
license = { workspace = true }
readme = { workspace = true }
categories = { workspace = true }
keywords = { workspace = true }

[features]
default = ["macros"]
macros = ["dep:comemo-macros"]
testing = []

[dependencies]
comemo-macros = { workspace = true, optional = true }
parking_lot = { workspace = true }
rustc-hash = { workspace = true }
siphasher = { workspace = true }
slab = { workspace = true }

[dev-dependencies]
quickcheck = { workspace = true }
quickcheck_macros = { workspace = true }
serial_test = { workspace = true }

[[test]]
name = "tests"
path = "tests/tests.rs"
required-features = ["macros", "testing"]