diff --git a/Cargo.lock b/Cargo.lock index e08b8af5727..00ec61d8ee2 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1167,6 +1167,10 @@ dependencies = [ "triehash-ethereum 0.2.0", ] +[[package]] +name = "ethdb" +version = "0.1.0" + [[package]] name = "ethereum-types" version = "0.4.2" @@ -2548,6 +2552,7 @@ dependencies = [ "ethcore-secretstore 1.0.0", "ethcore-service 0.1.0", "ethcore-sync 1.12.0", + "ethdb 0.1.0", "ethereum-types 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "ethkey 0.3.0", "ethstore 0.2.1", diff --git a/Cargo.toml b/Cargo.toml index 2851bc97c99..1ecc127ab52 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -45,6 +45,7 @@ ethcore-network = { path = "util/network" } ethcore-private-tx = { path = "ethcore/private-tx" } ethcore-service = { path = "ethcore/service" } ethcore-sync = { path = "ethcore/sync" } +ethdb = { path = "ethdb" } ethereum-types = "0.4" ethkey = { path = "accounts/ethkey" } ethstore = { path = "accounts/ethstore" } diff --git a/README.md b/README.md index 1c0302535f2..f6b747c5e8c 100644 --- a/README.md +++ b/README.md @@ -134,6 +134,7 @@ In addition to the Parity Ethereum client, there are additional tools in this re - [evmbin](https://github.com/paritytech/parity-ethereum/blob/master/evmbin/) - EVM implementation for Parity Ethereum. - [ethabi](https://github.com/paritytech/ethabi) - Parity Ethereum function calls encoding. +- [ethdb](https://github.com/paritytech/ethdb) - Parity Ethereum interaction with the DB on-demand. - [ethstore](https://github.com/paritytech/parity-ethereum/blob/master/accounts/ethstore) - Parity Ethereum key management. - [ethkey](https://github.com/paritytech/parity-ethereum/blob/master/accounts/ethkey) - Parity Ethereum keys generator. - [whisper](https://github.com/paritytech/parity-ethereum/blob/master/whisper/) - Implementation of Whisper-v2 PoC. diff --git a/accounts/ethkey/README.md b/accounts/ethkey/README.md index 6fc98b020d6..63772261d36 100644 --- a/accounts/ethkey/README.md +++ b/accounts/ethkey/README.md @@ -216,6 +216,7 @@ _This project is a part of the Parity Ethereum toolchain._ - [evmbin](https://github.com/paritytech/parity-ethereum/blob/master/evmbin/) - EVM implementation for Parity Ethereum. - [ethabi](https://github.com/paritytech/ethabi) - Parity Ethereum function calls encoding. +- [ethdb](https://github.com/paritytech/ethdb) - Parity Ethereum interaction with the DB on-demand. - [ethstore](https://github.com/paritytech/parity-ethereum/blob/master/accounts/ethstore) - Parity Ethereum key management. - [ethkey](https://github.com/paritytech/parity-ethereum/blob/master/accounts/ethkey) - Parity Ethereum keys generator. - [whisper](https://github.com/paritytech/parity-ethereum/blob/master/whisper/) - Implementation of Whisper-v2 PoC. diff --git a/accounts/ethstore/README.md b/accounts/ethstore/README.md index 77c37bd2462..4c65dbef4da 100644 --- a/accounts/ethstore/README.md +++ b/accounts/ethstore/README.md @@ -335,6 +335,7 @@ _This project is a part of the Parity Ethereum toolchain._ - [evmbin](https://github.com/paritytech/parity-ethereum/blob/master/evmbin/) - EVM implementation for Parity Ethereum. - [ethabi](https://github.com/paritytech/ethabi) - Parity Ethereum function calls encoding. +- [ethdb](https://github.com/paritytech/ethdb) - Parity Ethereum interaction with the DB on-demand. - [ethstore](https://github.com/paritytech/parity-ethereum/blob/master/accounts/ethstore) - Parity Ethereum key management. - [ethkey](https://github.com/paritytech/parity-ethereum/blob/master/accounts/ethkey) - Parity Ethereum keys generator. - [whisper](https://github.com/paritytech/parity-ethereum/blob/master/whisper/) - Implementation of Whisper-v2 PoC. diff --git a/ethdb/Cargo.toml b/ethdb/Cargo.toml new file mode 100644 index 00000000000..cd5e12b76f4 --- /dev/null +++ b/ethdb/Cargo.toml @@ -0,0 +1,15 @@ +[package] +name = "ethdb" +description = "Parity Ethereum command-line tool for database interaction" +version = "0.1.0" +authors = ["Parity Technologies "] + +[[bin]] +name = "ethdb" +path = "./src/main.rs" + +[dependencies] + +[dev-dependencies] + +[features] diff --git a/ethdb/README.md b/ethdb/README.md new file mode 100644 index 00000000000..ceea69d35ab --- /dev/null +++ b/ethdb/README.md @@ -0,0 +1,42 @@ +## ethdb + +Parity Ethereum interaction with the DB on-demand. + +### Usage + +``` +Parity Ethereum interaction with the DB on-demand. + Copyright 2015-2019 Parity Technologies (UK) Ltd. + +Usage: + ethdb build-trace-db + ethdb [options] + ethdb [-h | --help] + +Commands: + build-trace-db Build TraceDB on-demand and output to json file. + +Tracing options: + --chain CHAIN Build only from specific chain. + --from BLOCK Build only from a specific block. + --to BLOCK Build only to a specific block. + +General options: + --json Display verbose results in JSON. + --std-json Display results in standardized JSON format. + --std-err-only With --std-json redirect to err output only. + --std-out-only With --std-json redirect to out output only. + --std-dump-json Display results in standardized JSON format + with additional state dump. + -h, --help Display this message and exit. +``` + +## Parity Ethereum toolchain +_This project is a part of the Parity Ethereum toolchain._ + +- [evmbin](https://github.com/paritytech/parity-ethereum/blob/master/evmbin/) - EVM implementation for Parity Ethereum. +- [ethabi](https://github.com/paritytech/ethabi) - Parity Ethereum function calls encoding. +- [ethdb](https://github.com/paritytech/ethdb) - Parity Ethereum interaction with the DB on-demand. +- [ethstore](https://github.com/paritytech/parity-ethereum/blob/master/accounts/ethstore) - Parity Ethereum key management. +- [ethkey](https://github.com/paritytech/parity-ethereum/blob/master/accounts/ethkey) - Parity Ethereum keys generator. +- [whisper](https://github.com/paritytech/parity-ethereum/blob/master/whisper/) - Implementation of Whisper-v2 PoC. diff --git a/ethdb/src/main.rs b/ethdb/src/main.rs new file mode 100644 index 00000000000..aa41c6b80a0 --- /dev/null +++ b/ethdb/src/main.rs @@ -0,0 +1,23 @@ +// Copyright 2015-2019 Parity Technologies (UK) Ltd. +// This file is part of Parity Ethereum. + +// Parity Ethereum is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Parity Ethereum is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Parity Ethereum. If not, see . + +//! Parity Ethereum command-line tool for database interaction. + +#![warn(missing_docs)] + +fn main() { + // TODO +} \ No newline at end of file diff --git a/evmbin/README.md b/evmbin/README.md index e0a8c9d9669..029507edc03 100644 --- a/evmbin/README.md +++ b/evmbin/README.md @@ -50,6 +50,7 @@ _This project is a part of the Parity Ethereum toolchain._ - [evmbin](https://github.com/paritytech/parity-ethereum/blob/master/evmbin/) - EVM implementation for Parity Ethereum. - [ethabi](https://github.com/paritytech/ethabi) - Parity Ethereum function calls encoding. +- [ethdb](https://github.com/paritytech/ethdb) - Parity Ethereum interaction with the DB on-demand. - [ethstore](https://github.com/paritytech/parity-ethereum/blob/master/accounts/ethstore) - Parity Ethereum key management. - [ethkey](https://github.com/paritytech/parity-ethereum/blob/master/accounts/ethkey) - Parity Ethereum keys generator. - [whisper](https://github.com/paritytech/parity-ethereum/blob/master/whisper/) - Implementation of Whisper-v2 PoC. diff --git a/whisper/README.md b/whisper/README.md index b64c0244f96..be1a3490425 100644 --- a/whisper/README.md +++ b/whisper/README.md @@ -17,8 +17,8 @@ Options: -p, --port PORT Specify which P2P port to use [default: random]. -a, --address ADDRESS Specify which P2P address to use [default: 127.0.0.1]. -s, --secret KEYFILE Specify which file contains the key to generate the enode. - -P, --rpc-port PORT Specify which RPC port to use [default: 8545]. - -A, --rpc-address ADDRESS Specify which RPC address to use [default: 127.0.0.1]. + -P, --rpc-port PORT Specify which RPC port to use [default: 8545]. + -A, --rpc-address ADDRESS Specify which RPC address to use [default: 127.0.0.1]. -l, --log LEVEL Specify the logging level. Must conform to the same format as RUST_LOG [default: Error]. -h, --help Display this message and exit. ``` @@ -28,6 +28,7 @@ _This project is a part of the Parity Ethereum toolchain._ - [evmbin](https://github.com/paritytech/parity-ethereum/blob/master/evmbin/) - EVM implementation for Parity Ethereum. - [ethabi](https://github.com/paritytech/ethabi) - Parity Ethereum function calls encoding. +- [ethdb](https://github.com/paritytech/ethdb) - Parity Ethereum interaction with the DB on-demand. - [ethstore](https://github.com/paritytech/parity-ethereum/blob/master/accounts/ethstore) - Parity Ethereum key management. - [ethkey](https://github.com/paritytech/parity-ethereum/blob/master/accounts/ethkey) - Parity Ethereum keys generator. - [whisper](https://github.com/paritytech/parity-ethereum/blob/master/whisper/) - Implementation of Whisper-v2 PoC.