1ef9d5b52f
* WIP move errors, pod_account and state account to own crates * Sort out dependencies, fix broken code and tests Remove botched ethcore-error crate * remove template line * fix review feedback * Remove test-only AccountDBMut::new * Extract AccountDB to account-db * Move Substate to state-account – wip * Add lib.rs * cleanup * test failure * test failure 2 * third time's the charm * Add factories crate * Use new factories crate * Use factories crate * Extract trace * Fix tests * Sort out parity-util-mem and parking_lot * cleanup * WIP port over the rest of state from ethcore * Collect all impls for Machine * some notes * Rename pod-account to pod * Move PodState to pod crate * Use PodState from pod crate * Fix use clause for json tests * Sort out evmbin * Add missing code and use PodState * Move code that depends on Machine and Executive to own module * Sort out cloning errors, fix ethcore to use new state crate * Do without funky From impls * Fix ethcore tests * Fixes around the project to use new state crate * Add back the more specific impls of StateOrBlock From conversions * Move execute to freestanding function and remove it from trait Sort out the error handling in executive_state by moving the result types from state to ethcore Undo the verbose code added to work around the StateOrBlock From conversions * cleanup * Fix "error: enum variants on type aliases are experimental" * Bring back the state tests Fix whitespace * remove ethcore/state/mod.rs * cleanup * cleanup * Cleanup state-account errors * Fix more todos Add module docs * Add error.rs * Fixup Cargo.lock * Smaller ethcore API is fine * Add `to-pod-full` feature to state-account Fix evmbin * Fix a few more test failures * Fix RPC test build * Baptize the new trait * Remove resolved TODOs * Rename state-account to account-state * Do not re-export the trace crate * Don't export state_db from ethcore * Let private-tx use StateDB. :( * Remove ethcore/src/pod_state.rs * Inner type does not need to be pub/pub(crate) * optimise imports * Revert "Inner type does not need to be pub/pub(crate)" This reverts commit 2f839f8a0f72f71334da64620f57e6dd6039f06b. * Move DatabaseExtras to ethcore-blockchain * Add database_extra module to ethcore-blockchain * Remove to-pod-full feature * cosmetics * New crate: state-db * Add new crate * Move PreverifiedBlock and BlockError to types * Sort out the merge * Add missing `license` meta data keys * wip * wip client-traits * merge conflict * verification crate type checks * Move impls for CommonParams to common_types Fix misc stuff in ethcore * Fix tests * Implement VerifyingEngine for all engines except Ethash Temporarily sort out error handling Move more types to common_types * Split Engine in two and move code around * cleanup * verification: don't rexport common_types * Use error from common_types * Consolidate error types * VerifyingEngine use Errors from common_types * verification: Use error type from common_types * SnapshotError moved to common_types * Move more code from Engne to VerifyingEngine Add a VerifyingClient trait: BlockInfo + CallContract Whitespace * Add MAX_UNCLE_AGE const * Port over remaining code from ethcore/verification * Use errors from common_types * Fix the confusing "io" naming * Move more types into common_types * Add todos * Experiment with Engine trait outside ethcore * Hook up types from common_types in ethcore Don't use verification crate Don't use client-traits crate * Revert to impl Engine for Arc<Ethash> and add note to explain why Revert moving ClientIoMessage to common_types Fix build * Remove ClientIoMessage from common_types * Cleanup * More cleanup * Sort error handling changes in the rest of parity * Remove unused code * Remove WIP types * Cleanup todos not tackled here * remove cruft * Fix some whitespace and a merge error * ethcore tests * test failures * Restore Engine impls to master to make review a bit easier * cleanup * whitespace * applied review suggestions * types does not depend on rustc-hex * ethash engine moved to engine module * applied review suggestion
122 lines
3.8 KiB
TOML
122 lines
3.8 KiB
TOML
[package]
|
|
description = "Parity Ethereum (EthCore) Library"
|
|
homepage = "http://parity.io"
|
|
license = "GPL-3.0"
|
|
name = "ethcore"
|
|
version = "1.12.0"
|
|
authors = ["Parity Technologies <admin@parity.io>"]
|
|
|
|
[dependencies]
|
|
account-db = { path = "account-db" }
|
|
ansi_term = "0.11"
|
|
blooms-db = { path = "../util/blooms-db", optional = true }
|
|
common-types = { path = "types" }
|
|
crossbeam-utils = "0.6"
|
|
env_logger = { version = "0.5", optional = true }
|
|
ethabi = "8.0"
|
|
ethabi-contract = "8.0"
|
|
ethabi-derive = "8.0"
|
|
ethash = { path = "../ethash" }
|
|
ethcore-blockchain = { path = "./blockchain" }
|
|
ethcore-bloom-journal = { path = "../util/bloom" }
|
|
ethcore-builtin = { path = "./builtin" }
|
|
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.6.0"
|
|
ethjson = { path = "../json" }
|
|
ethkey = { path = "../accounts/ethkey" }
|
|
evm = { path = "evm" }
|
|
trie-vm-factories = { path = "trie-vm-factories" }
|
|
futures = "0.1"
|
|
hash-db = "0.12.4"
|
|
parity-util-mem = "0.1"
|
|
itertools = "0.5"
|
|
journaldb = { path = "../util/journaldb" }
|
|
keccak-hash = "0.2.0"
|
|
keccak-hasher = { path = "../util/keccak-hasher" }
|
|
kvdb = "0.1"
|
|
kvdb-memorydb = "0.1"
|
|
kvdb-rocksdb = { version = "0.1.3", optional = true }
|
|
lazy_static = "1.2.0"
|
|
len-caching-lock = { path = "../util/len-caching-lock" }
|
|
log = "0.4"
|
|
lru-cache = "0.1"
|
|
macros = { path = "../util/macros" }
|
|
memory-cache = { path = "../util/memory-cache" }
|
|
num_cpus = "1.2"
|
|
parity-bytes = "0.1"
|
|
parity-snappy = "0.1"
|
|
parking_lot = "0.8"
|
|
pod = { path = "pod" }
|
|
trie-db = "0.12.4"
|
|
patricia-trie-ethereum = { path = "../util/patricia-trie-ethereum" }
|
|
rand = "0.6"
|
|
rayon = "1.1"
|
|
rlp = "0.4.0"
|
|
rlp_derive = { path = "../util/rlp-derive" }
|
|
rustc-hex = "1.0"
|
|
serde = "1.0"
|
|
serde_derive = "1.0"
|
|
account-state = { path = "account-state" }
|
|
stats = { path = "../util/stats" }
|
|
state-db = { path = "state-db" }
|
|
tempdir = { version = "0.3", optional = true }
|
|
time-utils = { path = "../util/time-utils" }
|
|
trace = { path = "trace" }
|
|
trace-time = "0.1"
|
|
triehash-ethereum = { version = "0.2", path = "../util/triehash-ethereum" }
|
|
unexpected = { path = "../util/unexpected" }
|
|
using_queue = { path = "../miner/using-queue" }
|
|
vm = { path = "vm" }
|
|
rand_xorshift = "0.1.1"
|
|
|
|
[dev-dependencies]
|
|
blooms-db = { path = "../util/blooms-db" }
|
|
criterion = "0.2"
|
|
env_logger = "0.5"
|
|
ethcore-accounts = { path = "../accounts" }
|
|
fetch = { path = "../util/fetch" }
|
|
kvdb-rocksdb = "0.1.3"
|
|
parity-runtime = { path = "../util/runtime" }
|
|
rlp_compress = { path = "../util/rlp-compress" }
|
|
serde_json = "1.0"
|
|
tempdir = "0.3"
|
|
trie-standardmap = "0.12.4"
|
|
|
|
[features]
|
|
parity = ["work-notify", "price-info", "stratum"]
|
|
# 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 = ["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"]
|
|
# Skip JSON consensus tests with pending issues.
|
|
ci-skip-tests = []
|
|
# Run memory/cpu heavy tests.
|
|
test-heavy = []
|
|
# Compile test helpers
|
|
test-helpers = ["tempdir", "kvdb-rocksdb", "blooms-db"]
|
|
|
|
[[bench]]
|
|
name = "builtin"
|
|
harness = false
|