[package]
edition = "2021"
name = "sp-state-machine"
version = "0.53.0"
authors = ["Parity Technologies <admin@parity.io>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Substrate State Machine"
homepage = "https://paritytech.github.io/polkadot-sdk/"
documentation = "https://docs.rs/sp-state-machine"
readme = "README.md"
license = "Apache-2.0"
repository = "https://github.com/paritytech/polkadot-sdk.git"
[package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"]
[features]
default = ["std"]
fuzzing = ["arbitrary"]
std = [
"codec/std",
"hash-db/std",
"log/std",
"parking_lot",
"rand",
"sp-core/std",
"sp-externalities/std",
"sp-panic-handler",
"sp-trie/std",
"thiserror",
"tracing",
"trie-db/std",
]
[lib]
name = "sp_state_machine"
path = "src/lib.rs"
[dependencies.arbitrary]
version = "1.3.2"
features = ["derive"]
optional = true
[dependencies.codec]
version = "3.7.5"
default-features = false
package = "parity-scale-codec"
[dependencies.hash-db]
version = "0.16.0"
default-features = false
[dependencies.log]
version = "0.4.22"
default-features = false
[dependencies.parking_lot]
version = "0.12.1"
optional = true
default-features = true
[dependencies.rand]
version = "0.8.5"
optional = true
default-features = true
[dependencies.smallvec]
version = "1.11.0"
default-features = true
[dependencies.sp-core]
version = "43.0.0"
default-features = false
[dependencies.sp-externalities]
version = "0.34.0"
default-features = false
[dependencies.sp-panic-handler]
version = "13.0.2"
optional = true
default-features = true
[dependencies.sp-trie]
version = "46.0.0"
default-features = false
[dependencies.thiserror]
version = "1.0.64"
optional = true
[dependencies.tracing]
version = "0.1.37"
optional = true
default-features = true
[dependencies.trie-db]
version = "0.31.0"
default-features = false
[dev-dependencies.arbitrary]
version = "1.3.2"
features = ["derive"]
[dev-dependencies.array-bytes]
version = "6.2.2"
default-features = true
[dev-dependencies.assert_matches]
version = "1.5.0"
[dev-dependencies.pretty_assertions]
version = "1.3.0"
[dev-dependencies.rand]
version = "0.8.5"
default-features = true
[lints.clippy.all]
level = "allow"
priority = 0
[lints.clippy.bind_instead_of_map]
level = "allow"
priority = 2
[lints.clippy.borrowed-box]
level = "allow"
priority = 2
[lints.clippy.complexity]
level = "warn"
priority = 1
[lints.clippy.correctness]
level = "warn"
priority = 1
[lints.clippy.default_constructed_unit_structs]
level = "allow"
priority = 2
[lints.clippy.derivable_impls]
level = "allow"
priority = 2
[lints.clippy.eq_op]
level = "allow"
priority = 2
[lints.clippy.erasing_op]
level = "allow"
priority = 2
[lints.clippy.extra-unused-type-parameters]
level = "allow"
priority = 2
[lints.clippy.identity-op]
level = "allow"
priority = 2
[lints.clippy.if-same-then-else]
level = "allow"
priority = 2
[lints.clippy.needless-lifetimes]
level = "allow"
priority = 2
[lints.clippy.needless_option_as_deref]
level = "allow"
priority = 2
[lints.clippy.nonminimal-bool]
level = "allow"
priority = 2
[lints.clippy.option-map-unit-fn]
level = "allow"
priority = 2
[lints.clippy.stable_sort_primitive]
level = "allow"
priority = 2
[lints.clippy.too-many-arguments]
level = "allow"
priority = 2
[lints.clippy.type_complexity]
level = "allow"
priority = 2
[lints.clippy.unit_arg]
level = "allow"
priority = 2
[lints.clippy.unnecessary_cast]
level = "allow"
priority = 2
[lints.clippy.useless_conversion]
level = "allow"
priority = 2
[lints.clippy.while_immutable_condition]
level = "allow"
priority = 2
[lints.clippy.zero-prefixed-literal]
level = "allow"
priority = 2
[lints.rust.suspicious_double_ref_op]
level = "allow"
priority = 2
[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = [
'cfg(build_opt_level, values("3"))',
'cfg(build_profile, values("debug", "release"))',
"cfg(enable_alloc_error_handler)",
"cfg(fuzzing)",
"cfg(ignore_flaky_test)",
"cfg(revive_debug)",
"cfg(substrate_runtime)",
]