Cargo Features

[dependencies]
transact = { version = "0.4.7", default-features = false, features = ["stable", "experimental", "wasm", "wasm-experimental", "nightly", "context", "contract", "contract-address", "contract-address-key-hash", "contract-address-double-key-hash", "contract-address-triple-key-hash", "contract-archive", "contract-context", "contract-context-key-value", "database-lmdb", "execution", "family-command", "family-command-transaction-builder", "family-command-workload", "family-smallbank", "family-smallbank-workload", "family-xo", "handler", "key-value-state", "postgres", "protocol-batch", "protocol-batch-builder", "protocol-transaction", "protocol-transaction-builder", "protocol-sabre", "sabre-compat", "sawtooth-compat", "scheduler", "sqlite", "state-in-transaction", "state-merkle", "state-merkle-sql", "state-merkle-sql-in-transaction", "state-merkle-sql-postgres-tests", "workload", "workload-batch-gen", "workload-runner"] }
default stable? = context, database-lmdb, execution, handler, protocol-batch, protocol-batch-builder, protocol-transaction, protocol-transaction-builder, scheduler, state-merkle

These default features are set whenever transact is added without default-features = false somewhere in the dependency tree.

stable experimental? = contract-archive, default, family-command, family-command-transaction-builder, family-command-workload, family-smallbank, postgres, protocol-sabre, sqlite, state-in-transaction, state-merkle-sql, state-merkle-sql-in-transaction, workload, workload-batch-gen, workload-runner
experimental = contract, contract-address, contract-address-double-key-hash, contract-address-key-hash, contract-address-triple-key-hash, contract-context, contract-context-key-value, family-smallbank-workload, family-xo, key-value-state, stable
wasm wasm-experimental? = sabre-compat

stable features in support of wasm

wasm-experimental = wasm
nightly
context default execution scheduler = uuid

Affects transact::context

contract contract-address? contract-archive? contract-context? experimental?

Affects transact::contract

contract-address contract-address-double-key-hash? contract-address-key-hash? contract-address-triple-key-hash? contract-context? experimental? = contract

Affects contract::address

contract-address-key-hash experimental? = contract-address

Affects address::key_hash

contract-address-double-key-hash experimental? = contract-address

Affects address::double_key_hash

contract-address-triple-key-hash experimental? = contract-address

Affects address::triple_key_hash

contract-archive stable? = bzip2, contract, glob, semver, serde, serde_derive, serde_yaml, tar

Affects contract::archive

contract-context contract-context-key-value? experimental? = contract, contract-address

Affects contract::context

contract-context-key-value experimental? = contract-context, key-value-state

Affects context::key_value

database-lmdb default = lmdb-zero

Affects database::lmdb

execution default = context, handler, log, protocol-transaction, scheduler

Affects transact::execution

family-command family-command-transaction-builder? family-command-workload? stable? = handler

Affects families::command

family-command-transaction-builder stable? = cylinder, family-command, protocol-transaction-builder

Affects workload::CommandTransactionBuilder

family-command-workload stable? = family-command, protocol-sabre, workload

Affects command::workload

family-smallbank family-smallbank-workload? stable? = handler

Affects families::smallbank

family-smallbank-workload experimental? = family-smallbank, protocol-sabre, rand, workload, workload-runner, yaml-rust

Affects smallbank::workload

family-xo experimental? = handler, workload

Affects families::xo

handler default execution family-command? family-smallbank? family-xo? = protocol-transaction

Affects transact::handler

key-value-state contract-context-key-value? experimental?

Affects protocol::key_value_state

postgres stable? state-merkle-sql-postgres-tests?

Enables postgres of diesel ~1.4.7

protocol-batch default protocol-batch-builder scheduler = protocol-transaction

Affects protocol::batch

protocol-batch-builder default protocol-transaction-builder = cylinder, protocol-batch

Affects batch::BatchBuilder

protocol-transaction default execution handler protocol-batch protocol-transaction-builder

Affects protocol::transaction

protocol-transaction-builder default family-command-transaction-builder? = cylinder, protocol-batch-builder, protocol-transaction, rand

Affects transaction::TransactionBuilder

protocol-sabre family-command-workload? family-smallbank-workload? stable?

Affects protocol::sabre

sabre-compat wasm? = sabre-sdk

Affects handler::sabre

sawtooth-compat = sawtooth-sdk

Affects transact::sawtooth

scheduler default execution = context, log, protocol-batch

Affects transact::scheduler

sqlite stable? = serde, serde_derive, serde_json

Enables sqlite of diesel ~1.4.7

state-in-transaction stable? state-merkle-sql-in-transaction?

Affects error::StateError

state-merkle default = cbor-codec, log

Affects state::merkle

state-merkle-sql stable? = diesel, diesel_migrations, lru

Affects merkle::sql

state-merkle-sql-in-transaction stable? = state-in-transaction

Affects backend::Backend, postgres::BorrowedPostgresConnection, postgres::InTransactionPostgresBackend, sqlite::BorrowedSqliteConnection, sqlite::InTransactionSqliteBackend

state-merkle-sql-postgres-tests = lazy_static, postgres

This feature must be enabled to run tests using a postgres db it is not enabled by default, due to its requirement of an external postgres db instance.

Affects postgres::test

workload family-command-workload? family-smallbank-workload? family-xo? stable? workload-batch-gen?

Affects transact::workload

workload-batch-gen stable? = workload

Affects error::BatchingError, workload::batch_gen

workload-runner family-smallbank-workload? stable? = chrono, reqwest, serde, serde_derive

Affects error::WorkloadRunnerError

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.

bzip2 contract-archive?

Enables bzip2 ^0.4

cbor-codec state-merkle
chrono workload-runner?
cylinder family-command-transaction-builder? protocol-batch-builder protocol-transaction-builder

Enables cylinder ^0.2

diesel postgres? sqlite? state-merkle-sql?

Enables diesel ~1.4.7

diesel_migrations state-merkle-sql?

Enables diesel_migrations ^1.4

glob contract-archive?
lazy_static state-merkle-sql-postgres-tests?
lmdb-zero database-lmdb
log execution scheduler state-merkle
lru state-merkle-sql?

Enables lru ^0.7

rand family-smallbank-workload? protocol-transaction-builder
reqwest workload-runner?

Enables reqwest ^0.11

sabre-sdk sabre-compat?

Enables sabre-sdk ^0.7.1

sawtooth-sdk sawtooth-compat?
semver contract-archive?
serde contract-archive? sqlite? workload-runner?
serde_derive contract-archive? sqlite? workload-runner?
serde_json sqlite?
serde_yaml contract-archive?

Enables serde_yaml ^0.8

tar contract-archive?
uuid context

Enables uuid ^0.8

yaml-rust family-smallbank-workload?