[package]
name = "sp-api"
version = "4.0.0-dev"
authors = ["Parity Technologies <admin@parity.io>"]
edition = "2021"
license = "Apache-2.0"
homepage = "https://substrate.io"
repository = "https://github.com/paritytech/substrate/"
description = "Substrate runtime api primitives"
readme = "README.md"

[package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"]

[dependencies]
codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false }
sp-api-proc-macro = { version = "4.0.0-dev", path = "proc-macro" }
sp-core = { version = "5.0.0", default-features = false, path = "../core" }
sp-std = { version = "4.0.0", default-features = false, path = "../std" }
sp-runtime = { version = "5.0.0", default-features = false, path = "../runtime" }
sp-version = { version = "4.0.0-dev", default-features = false, path = "../version" }
sp-state-machine = { version = "0.11.0", optional = true, path = "../state-machine" }
hash-db = { version = "0.15.2", optional = true }
thiserror = { version = "1.0.30", optional = true }

log = { version = "0.4.14", default-features = false }

[dev-dependencies]
sp-test-primitives = { version = "2.0.0", path = "../test-primitives" }

[features]
default = ["std"]
std = [
	"codec/std",
	"sp-core/std",
	"sp-std/std",
	"sp-runtime/std",
	"sp-state-machine",
	"sp-version/std",
	"hash-db",
	"thiserror",
	"log/std",
]
# Special feature to disable logging completly.
#
# By default `sp-api` initializes the `RuntimeLogger` for each runtime api function. However,
# logging functionality increases the code size. It is recommended to enable this feature when
# building a runtime for registering it on chain.
#
# This sets the max logging level to `off` for `log`.
disable-logging = ["log/max_level_off"]
