[package]
edition = "2021"
name = "linera-core"
version = "0.15.13"
authors = ["Linera <contact@linera.io>"]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "The core Linera protocol, including client and server logic, node synchronization, etc."
homepage = "https://linera.dev"
documentation = "https://docs.rs/linera-core/latest/linera_core/"
readme = "README.md"
license = "Apache-2.0"
repository = "https://github.com/linera-io/linera-protocol"
[package.metadata.cargo-machete]
ignored = [
"proptest",
"wasm-bindgen",
]
[features]
dynamodb = ["linera-views/dynamodb"]
metrics = [
"prometheus",
"linera-base/metrics",
"linera-chain/metrics",
"linera-execution/metrics",
"linera-storage/metrics",
"linera-views/metrics",
]
rocksdb = ["linera-views/rocksdb"]
scylladb = ["linera-views/scylladb"]
storage-service = ["linera-storage-service"]
test = [
"anyhow",
"linera-base/test",
"linera-chain/test",
"linera-execution/test",
"linera-storage/test",
"linera-storage-service/test",
"linera-views/test",
"proptest",
"test-log",
"test-strategy",
"tokio/parking_lot",
]
wasmer = [
"linera-execution/wasmer",
"linera-storage/wasmer",
]
wasmtime = [
"linera-execution/wasmtime",
"linera-storage/wasmtime",
]
web = [
"linera-base/web",
"linera-chain/web",
"linera-execution/web",
"linera-storage/web",
"linera-views/web",
"wasm-bindgen-futures",
]
[lib]
name = "linera_core"
path = "src/lib.rs"
[[bench]]
name = "client_benchmarks"
path = "benches/client_benchmarks.rs"
harness = false
required-features = ["test"]
[[bench]]
name = "hashing_benchmarks"
path = "benches/hashing_benchmarks.rs"
harness = false
[[bench]]
name = "recorder"
path = "benches/recorder.rs"
[dependencies.anyhow]
version = "1.0.80"
optional = true
[dependencies.async-graphql]
version = "=7.0.17"
[dependencies.async-trait]
version = "0.1.77"
[dependencies.bcs]
version = "0.1.6"
[dependencies.cfg-if]
version = "1.0.0"
[dependencies.custom_debug_derive]
version = "0.6.1"
[dependencies.futures]
version = "0.3.30"
[dependencies.linera-base]
version = "0.15.13"
[dependencies.linera-chain]
version = "0.15.13"
[dependencies.linera-execution]
version = "0.15.13"
default-features = false
[dependencies.linera-storage]
version = "0.15.13"
default-features = false
[dependencies.linera-version]
version = "0.15.13"
[dependencies.linera-views]
version = "0.15.13"
default-features = false
[dependencies.lru]
version = "0.15.0"
[dependencies.papaya]
version = "0.1.5"
features = ["serde"]
[dependencies.prometheus]
version = "0.13.3"
optional = true
[dependencies.proptest]
version = "1.6.0"
features = ["alloc"]
optional = true
default-features = false
[dependencies.rand]
version = "0.8.5"
features = [
"std_rng",
"std_rng",
]
default-features = false
[dependencies.serde]
version = "1.0.197"
features = ["derive"]
[dependencies.serde_json]
version = "1.0.114"
[dependencies.test-log]
version = "0.2.15"
features = ["trace"]
optional = true
default-features = false
[dependencies.test-strategy]
version = "0.3.1"
optional = true
[dependencies.thiserror]
version = "1.0.65"
[dependencies.tokio]
version = "1.36.0"
[dependencies.tokio-stream]
version = "0.1.14"
[dependencies.tokio-util]
version = "0.7.10"
[dependencies.tonic]
version = "0.14.2"
default-features = false
[dependencies.tracing]
version = "0.1.40"
features = ["release_max_level_trace"]
[dependencies.trait-set]
version = "0.3.0"
[dependencies.trait-variant]
version = "0.1.1"
[dependencies.wasm-bindgen]
version = "0.2.100"
[dependencies.wasm-bindgen-futures]
version = "=0.4.50"
optional = true
[dependencies.web-thread-pool]
version = "0.1.0"
[dev-dependencies.alloy-primitives]
version = "1.1.0"
features = [
"serde",
"k256",
]
default-features = false
[dev-dependencies.assert_matches]
version = "1.5.0"
[dev-dependencies.criterion]
version = "0.5.1"
default-features = false
[dev-dependencies.linera-views]
version = "0.15.13"
default-features = false
[dev-dependencies.serde_json]
version = "1.0.114"
[dev-dependencies.sha3]
version = "0.10.8"
[dev-dependencies.test-case]
version = "3.3.1"
[dev-dependencies.tracing-subscriber]
version = "0.3.18"
features = [
"env-filter",
"fmt",
]
default-features = false
[build-dependencies.cfg_aliases]
version = "0.2.1"
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.linera-storage-service]
version = "0.15.13"
optional = true
default-features = false
[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.criterion]
version = "0.5.1"
features = ["async_tokio"]
default-features = true
[lints.clippy]
doc_link_with_quotes = "deny"
filter_map_next = "deny"
iter_filter_is_some = "deny"
large_futures = "deny"
large_stack_arrays = "deny"
large_types_passed_by_value = "deny"
macro_use_imports = "deny"
manual_instant_elapsed = "deny"
manual_is_power_of_two = "deny"
manual_is_variant_and = "deny"
map_unwrap_or = "deny"
mismatching_type_param_order = "deny"
naive_bytecount = "deny"
non_std_lazy_statics = "deny"
range_minus_one = "deny"
range_plus_one = "deny"
ref_option_ref = "deny"
str_split_at_newline = "deny"