[package]
name = "ruma-state-res"
categories = ["api-bindings", "web-programming"]
keywords = ["matrix", "chat", "ruma"]
description = "An abstraction for Matrix state resolution."
homepage = "https://ruma.dev/"
repository = "https://github.com/ruma/ruma"
readme = "README.md"
license = "MIT"
version = "0.11.0"
edition = "2021"
rust-version = { workspace = true }

[package.metadata.docs.rs]
all-features = true

[features]
unstable-exhaustive-types = []

[dependencies]
futures-util = "0.3"
js_int = { workspace = true }
ruma-common = { workspace = true, features = ["api"] }
ruma-events = { workspace = true }
serde = { workspace = true }
serde_json = { workspace = true }
thiserror = { workspace = true }
tracing = { workspace = true }

# dev-dependencies can't be optional, so this is a regular dependency
criterion = { workspace = true, optional = true }

[dev-dependencies]
maplit = { workspace = true }
rand = { workspace = true }
ruma-events = { workspace = true, features = ["unstable-pdu"] }
tokio = { version = "1", features = ["rt", "macros"] }
tracing-subscriber = "0.3.16"

[[bench]]
name = "state_res_bench"
harness = false
required-features = ["criterion"]

[lints]
workspace = true
