[package]
name = "transact"
version = "0.3.6"
authors = ["Bitwise IO, Inc.", "Cargill Incorporated"]
edition = "2018"
license = "Apache-2.0"
readme = "../README.md"
description = """\
Transact is a transaction execution platform designed to be used as \
a library or component when implementing distributed ledgers, including \
blockchains.
"""
repository = "http://github.com/hyperledger/transact"
[dependencies]
bzip2 = { version = "0.3", optional = true }
cbor-codec = { version = "0.7", optional = true }
cylinder = "0.2"
glob = { version = "0.3", optional = true }
hex = "0.3"
libc = ">=0.2.35"
lmdb-zero = ">=0.4.1"
log = { version = "0.4", features = ["std"] }
openssl = "0.10"
protobuf = "2"
r2d2 = { version = "0.8", optional = true }
r2d2_sqlite = { version = "0.15", optional = true }
rand = "0.6"
rand_hc = { version = "0.1", optional = true }
redis = { version = "0.13.0", default-features = false, optional = true }
rusqlite = { version = "0.22", optional = true }
sawtooth-sdk = { version = "0.5", optional = true }
semver = { version = "0.9", optional = true }
serde = { version = "1.0", optional = true }
serde_derive = { version = "1.0", optional = true }
serde_yaml = { version = "0.8", optional = true }
sha2 = "0.8"
tar = { version = "0.4", optional = true }
uuid = { version = "0.7", features = ["v4"] }
[dev-dependencies]
rusty-fork = "0.3"
sawtooth-xo = "0.5"
serial_test = "0.3"
tempdir = "0.3"
[build-dependencies]
protoc-rust = "2.14"
[features]
default = [
"state-merkle",
]
stable = [
"default",
"contract-archive",
]
experimental = [
"stable",
"contract",
"contract-address",
"contract-address-double-key-hash",
"contract-address-key-hash",
"contract-address-triple-key-hash",
"contract-context",
"contract-context-key-value",
"family-command",
"family-xo",
"key-value-state",
"redis-db",
"sqlite-db",
"workload",
]
nightly = []
contract = []
contract-address = ["contract"]
contract-address-key-hash = ["contract-address"]
contract-address-double-key-hash = ["contract-address"]
contract-address-triple-key-hash = ["contract-address"]
contract-archive = ["bzip2", "contract", "glob", "semver", "serde", "serde_derive", "serde_yaml", "tar"]
contract-context = ["contract", "contract-address"]
contract-context-key-value = ["contract-context", "key-value-state"]
family-command = []
family-xo = ["rand_hc", "workload"]
key-value-state = []
redis-db = ["redis"]
sawtooth-compat = ["sawtooth-sdk"]
sqlite-db = ["rusqlite", "r2d2", "r2d2_sqlite"]
state-merkle = ["cbor-codec"]
state-merkle-redis-db-tests = ["redis-db", "state-merkle"]
workload = []
[package.metadata.docs.rs]
features = [
"default",
"nightly",
"experimental",
"sawtooth-compat",
"stable",
]