[package] name = "linera-client" description = "A library for writing Linera client applications." readme = "README.md" documentation = "https://docs.rs/linera-client/latest/linera_client/" authors.workspace = true edition.workspace = true homepage.workspace = true license.workspace = true repository.workspace = true version.workspace = true [features] default = ["fs"] test = ["linera-views/test", "linera-execution/test"] benchmark = ["linera-base/test", "dep:linera-sdk"] wasmer = [ "linera-core/wasmer", "linera-execution/wasmer", "linera-storage/wasmer", ] wasmtime = ["linera-execution/wasmtime", "linera-storage/wasmtime"] rocksdb = ["linera-views/rocksdb"] dynamodb = ["linera-views/dynamodb"] scylladb = ["linera-views/scylladb"] storage-service = ["linera-storage-service"] kubernetes = [] fs = ["fs-err", "fs4", "linera-execution/fs"] metrics = [ "linera-base/metrics", "linera-chain/metrics", "linera-core/metrics", "linera-execution/metrics", "linera-rpc/metrics", "linera-views/metrics", ] web = [ "dep:web-sys", "dep:wasm-bindgen-futures", "linera-base/web", "linera-storage/web", "linera-chain/web", "linera-client/web", "linera-core/web", "linera-views/web", "linera-execution/web", "linera-rpc/web", ] indexed-db = ["web", "indexed_db_futures", "serde-wasm-bindgen", "gloo-utils"] web-default = ["web", "wasmer", "indexed-db"] [dependencies] async-trait.workspace = true bcs.workspace = true cfg-if.workspace = true chrono = { workspace = true, features = ["clock"] } clap.workspace = true derive_more = { workspace = true, features = ["deref", "deref_mut"] } dirs.workspace = true futures.workspace = true linera-base.workspace = true linera-chain.workspace = true linera-core.workspace = true linera-execution.workspace = true linera-rpc.workspace = true linera-sdk = { workspace = true, optional = true } linera-storage.workspace = true linera-storage-service = { workspace = true, optional = true } linera-version.workspace = true linera-views.workspace = true rand.workspace = true serde.workspace = true serde_json.workspace = true thiserror.workspace = true thiserror-context.workspace = true tokio.workspace = true tokio-stream.workspace = true tracing.workspace = true trait-variant.workspace = true [target.wasm32-unknown-unknown.dependencies] flarch = { workspace = true, optional = true } gloo-utils = { workspace = true, optional = true } indexed_db_futures = { workspace = true, optional = true } serde-wasm-bindgen = { workspace = true, optional = true } wasm-bindgen-futures = { workspace = true, optional = true } web-sys = { workspace = true, optional = true } [target.'cfg(not(target_arch = "wasm32"))'.dependencies] fs-err = { workspace = true, optional = true } fs4 = { workspace = true, optional = true } tokio = { workspace = true, features = ["full"] } linera-rpc = { workspace = true, features = ["server", "simple-network"] } [build-dependencies] cfg_aliases.workspace = true [dev-dependencies] amm.workspace = true anyhow.workspace = true base64.workspace = true counter.workspace = true crowd-funding.workspace = true ethereum-tracker.workspace = true fungible.workspace = true linera-alloy = { workspace = true, default-features = false, features = [ "rpc-types-eth" ] } linera-base = { workspace = true, features = ["test"] } linera-chain = { workspace = true, features = ["test"] } linera-client = { path = ".", default-features = false, features = ["test"] } linera-core = { workspace = true, features = ["test"] } linera-ethereum.workspace = true linera-execution = { workspace = true, features = ["test"] } linera-rpc = { workspace = true, features = ["test"] } linera-storage = { workspace = true, features = ["test"] } linera-views = { workspace = true, features = ["test"] } matching-engine.workspace = true native-fungible.workspace = true non-fungible.workspace = true proptest.workspace = true reqwest = { workspace = true, features = ["json"] } social.workspace = true test-case.workspace = true test-log = { workspace = true, features = ["trace"] } test-strategy.workspace = true [target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies] tokio = { workspace = true, features = ["full", "test-util"] }