[package] description = "Parity Ethereum (EthCore) Library" homepage = "http://parity.io" license = "GPL-3.0" name = "ethcore" version = "1.12.0" authors = ["Parity Technologies "] [dependencies] account-state = { path = "account-state" } ansi_term = "0.11" basic-authority = { path = "./engines/basic-authority", optional = true} # used by test-helpers feature blooms-db = { path = "../util/blooms-db", optional = true } client-traits = { path = "./client-traits" } common-types = { path = "./types" } engine = { path = "./engine" } env_logger = { version = "0.5", optional = true } ethash = { path = "../ethash", optional = true } ethjson = { path = "../json", optional = true } ethcore-blockchain = { path = "./blockchain" } ethcore-call-contract = { path = "./call-contract" } ethcore-db = { path = "./db" } ethcore-io = { path = "../util/io" } ethcore-miner = { path = "../miner" } ethcore-stratum = { path = "../miner/stratum", optional = true } ethereum-types = "0.8.0" evm = { path = "evm" } executive-state = { path = "executive-state" } futures = "0.1" hash-db = "0.15.0" itertools = "0.5" journaldb = { path = "../util/journaldb" } keccak-hash = "0.4.0" kvdb = "0.1" kvdb-memorydb = { version = "0.1.2", optional = true } kvdb-rocksdb = { version = "0.2.0", optional = true } lazy_static = { version = "1.3", optional = true } log = "0.4" macros = { path = "../util/macros", optional = true } machine = { path = "./machine" } memory-cache = { path = "../util/memory-cache" } parity-bytes = "0.1" parking_lot = "0.9" pod = { path = "pod", optional = true } trie-db = "0.16.0" parity-crypto = { version = "0.4.2", features = ["publickey"], optional = true } patricia-trie-ethereum = { path = "../util/patricia-trie-ethereum" } rand = "0.7" rand_xorshift = "0.2" rayon = "1.1" registrar = { path = "../util/registrar" } rlp = "0.4.0" rustc-hex = "2" scopeguard = "1.0.0" serde = "1.0" serde_derive = "1.0" snapshot = { path = "snapshot" } spec = { path = "spec" } state-db = { path = "state-db" } tempdir = { version = "0.3", optional = true } trace = { path = "trace" } trace-time = "0.1" trie-vm-factories = { path = "trie-vm-factories" } triehash-ethereum = { version = "0.2", path = "../util/triehash-ethereum" } unexpected = { path = "../util/unexpected" } using_queue = { path = "../miner/using-queue" } verification = { path = "./verification" } vm = { path = "vm" } [dev-dependencies] account-db = { path = "account-db" } blooms-db = { path = "../util/blooms-db" } criterion = "0.3" engine = { path = "./engine", features = ["test-helpers"] } env_logger = "0.5" ethash = { path = "../ethash" } ethcore-accounts = { path = "../accounts" } ethcore-builtin = { path = "./builtin" } ethjson = { path = "../json", features = ["test-helpers"] } parity-crypto = { version = "0.4.2", features = ["publickey"] } fetch = { path = "../util/fetch" } kvdb-memorydb = "0.1.2" kvdb-rocksdb = "0.2.0" lazy_static = "1.3" machine = { path = "./machine", features = ["test-helpers"] } macros = { path = "../util/macros" } parity-runtime = { path = "../util/runtime" } serde_json = "1.0" stats = { path = "../util/stats" } pod = { path = "pod" } tempdir = "0.3" trie-standardmap = "0.15.0" [features] parity = ["work-notify", "price-info", "stratum", "macros"] # Large optional features that are enabled by default for Parity, # but might be omitted for other dependent crates. work-notify = ["ethcore-miner/work-notify"] price-info = ["ethcore-miner/price-info"] stratum = [ "ethash", "ethcore-stratum" ] # Disables seal verification for mined blocks. # This allows you to submit any seal via RPC to test and benchmark # how fast pending block get's created while running on the mainnet. miner-debug = [] # Display EVM debug traces. evm-debug = ["evm/evm-debug"] # Display EVM debug traces when running tests. evm-debug-tests = ["evm-debug", "evm/evm-debug-tests"] # Measure time of transaction execution. # Whenever the transaction execution time (in millis) exceeds the value of # SLOW_TX_DURATION env variable (provided compile time!) # EVM debug traces are printed. slow-blocks = [] # Run JSON consensus tests. json-tests = ["env_logger", "test-helpers", "lazy_static", "machine/test-helpers"] # Run memory/cpu heavy tests. test-heavy = [] # Compile test helpers # note[dvdplm]: "basic-authority/test-helpers" is needed so that `generate_dummy_client_with_spec` works test-helpers = [ "blooms-db", "ethjson/test-helpers", "parity-crypto", "kvdb-memorydb", "kvdb-rocksdb", "macros", "pod", "tempdir", "basic-authority/test-helpers" ] [[bench]] name = "builtin" harness = false