[package] name = "linera-views" description = "A library mapping complex data structures onto a key-value store, used by the Linera protocol" documentation = "https://docs.rs/linera-views/latest/linera_views/" readme = "README.md" authors.workspace = true edition.workspace = true homepage.workspace = true license.workspace = true repository.workspace = true version.workspace = true # Not used, but here to provide the `js` feature to `rand` metadata.cargo-machete.ignored = ["getrandom"] [package.metadata.docs.rs] features = ["scylladb", "rocksdb", "dynamodb", "test"] targets = ["x86_64-unknown-linux-gnu", "wasm32-unknown-unknown"] [features] metrics = ["dep:hex", "linera-base/metrics", "linera-views-derive/metrics"] test = ["tokio/macros"] web = ["linera-base/web"] indexeddb = ["indexed_db_futures", "wasm-bindgen"] web-default = ["web", "indexeddb"] dynamodb = ["aws-config", "aws-sdk-dynamodb", "aws-smithy-types"] scylladb = ["scylla"] [dependencies] anyhow.workspace = true async-graphql.workspace = true async-lock.workspace = true async-trait.workspace = true aws-config = { workspace = true, optional = true } aws-sdk-dynamodb = { workspace = true, optional = true } aws-smithy-types = { workspace = true, optional = true } bcs.workspace = true convert_case.workspace = true futures.workspace = true generic-array.workspace = true hex = { workspace = true, optional = true } linera-base.workspace = true linera-views-derive.workspace = true linera-witty.workspace = true linked-hash-map.workspace = true prometheus.workspace = true rand = { workspace = true, features = ["small_rng"] } rocksdb = { workspace = true, optional = true } scylla = { workspace = true, optional = true } serde.workspace = true sha3.workspace = true static_assertions.workspace = true tempfile.workspace = true thiserror.workspace = true tokio = { workspace = true, features = ["rt", "sync"] } tracing.workspace = true trait-variant.workspace = true [target.wasm32-unknown-unknown.dependencies] indexed_db_futures = { workspace = true, optional = true } wasm-bindgen = { workspace = true, optional = true } web-sys = { workspace = true, features = ["console"] } [target.wasm32-unknown-unknown.dev-dependencies] wasm-bindgen-test.workspace = true [dev-dependencies] criterion = { workspace = true, features = ["async_tokio"] } linera-views = { path = ".", default-features = false, features = ["test"] } rand.workspace = true test-case.workspace = true tokio-test.workspace = true [build-dependencies] cfg_aliases.workspace = true [[bench]] name = "reentrant_collection_view" harness = false [[bench]] name = "stores" harness = false [[bench]] name = "queue_view" harness = false