From c658b46fe17901748a95bfaf50a72b7d81da0966 Mon Sep 17 00:00:00 2001 From: Afri Schoedon <5chdn@users.noreply.github.com> Date: Thu, 30 Aug 2018 19:57:27 +0200 Subject: [PATCH] Random small cleanups (#9423) * clean up toml files * update the parity ethereum toolchain docs * update contribution guide and issue templates * update desktop and service files * build clib examples with 8 threads * update header templates * replace parity technologies with parity ethereum logo --- .github/CONTRIBUTING.md | 8 +++--- .github/ISSUE_TEMPLATE.md | 14 +++++----- README.md | 10 ++++++++ chainspec/Cargo.toml | 2 +- docker/README.md | 2 -- ethash/Cargo.toml | 2 -- ethkey/README.md | 44 ++++++++++++++----------------- ethkey/cli/src/main.rs | 20 +++++++-------- ethstore/README.md | 37 +++++++++++--------------- ethstore/cli/src/main.rs | 6 ++--- evmbin/README.md | 50 ++++++++++++++++++++++++++++++++++++ evmbin/src/main.rs | 8 +++--- license_header | 8 +++--- parity/cli/usage_header.txt | 4 +-- parity/cli/version.txt | 4 +-- scripts/parity.service | 2 +- snap/gui/icon.png | Bin 10671 -> 5044 bytes snap/gui/parity.desktop | 4 +-- test.sh | 3 +-- util/macros/Cargo.toml | 2 -- util/mem/Cargo.toml | 2 -- util/stop-guard/Cargo.toml | 2 -- util/unexpected/Cargo.toml | 2 -- util/using_queue/Cargo.toml | 2 -- util/version/Cargo.toml | 2 +- whisper/README.md | 29 ++++++++++++++++++++- whisper/cli/src/main.rs | 4 +-- 27 files changed, 165 insertions(+), 108 deletions(-) create mode 100644 evmbin/README.md diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index fc187a534fd..b51cca8821e 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -12,9 +12,9 @@ Do **not** open an issue on Github if you think your discovered bug could be a * Otherwise, just create a [new issue](https://github.com/paritytech/parity-ethereum/issues/new) in our repository and state: -- What's your Parity version? +- What's your Parity Ethereum version? - What's your operating system and version? -- How did you install parity? +- How did you install Parity Ethereum? - Is your node fully synchronized? - Did you try turning it off and on again? @@ -22,12 +22,12 @@ Also, try to include **steps to reproduce** the issue and expand on the **actual ## Contribute! -If you would like to contribute to Parity, please **fork it**, fix bugs or implement features, and [propose a pull request](https://github.com/paritytech/parity-ethereum/compare). +If you would like to contribute to Parity Ethereum, please **fork it**, fix bugs or implement features, and [propose a pull request](https://github.com/paritytech/parity-ethereum/compare). Please, refer to the [Coding Guide](https://wiki.parity.io/Coding-guide) in our wiki for more details about hacking on Parity. ## License. -By contributing to Parity, you agree that your contributions will be licensed under the [GPLv3 License](../LICENSE). +By contributing to Parity Ethereum, you agree that your contributions will be licensed under the [GPLv3 License](../LICENSE). Each contributor has to sign our Contributor License Agreement. The purpose of the CLA is to ensure that the guardian of a project's outputs has the necessary ownership or grants of rights over all contributions to allow them to distribute under the chosen license. You can read and sign our full Contributor License Agreement at [cla.parity.io](https://cla.parity.io) before submitting a pull request. diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md index 15dc3fa1a23..fb059d428d6 100644 --- a/.github/ISSUE_TEMPLATE.md +++ b/.github/ISSUE_TEMPLATE.md @@ -1,13 +1,11 @@ _Before filing a new issue, please **provide the following information**._ -> I'm running: -> -> - **Which Parity version?**: 0.0.0 -> - **Which operating system?**: Windows / MacOS / Linux -> - **How installed?**: via installer / homebrew / binaries / from source -> - **Are you fully synchronized?**: no / yes -> - **Which network are you connected to?**: ethereum / ropsten / kovan / ... -> - **Did you try to restart the node?**: no / yes +- **Parity Ethereum version**: 0.0.0 +- **Operating system**: Windows / MacOS / Linux +- **Installation**: homebrew / one-line installer / built from source +- **Fully synchronized**: no / yes +- **Network**: ethereum / ropsten / kovan / ... +- **Restarted**: no / yes _Your issue description goes here below. Try to include **actual** vs. **expected behavior** and **steps to reproduce** the issue._ diff --git a/README.md b/README.md index 88138b78cb5..291b4b3746d 100644 --- a/README.md +++ b/README.md @@ -149,6 +149,16 @@ To start Parity Ethereum as a regular user using `systemd` init: `systemd` user directory (usually `~/.config/systemd/user`). 2. To configure Parity Ethereum, write a `/etc/parity/config.toml` config file, see [Configuring Parity Ethereum](https://paritytech.github.io/wiki/Configuring-Parity) for details. +## Parity Ethereum toolchain + +In addition to the Parity Ethereum client, there are additional tools in this repository available: + +- [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. +- [ethstore](https://github.com/paritytech/parity-ethereum/blob/master/ethstore/) - Parity Ethereum key management. +- [ethkey](https://github.com/paritytech/parity-ethereum/blob/master/ethkey/) - Parity Ethereum keys generator. +- [whisper](https://github.com/paritytech/parity-ethereum/blob/master/whisper/) - Implementation of Whisper-v2 PoC. + ## Join the chat! Questions? Get in touch with us on Gitter: diff --git a/chainspec/Cargo.toml b/chainspec/Cargo.toml index 73daf795a9f..780fcdff446 100644 --- a/chainspec/Cargo.toml +++ b/chainspec/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "chainspec" version = "0.1.0" -authors = ["debris "] +authors = ["Marek Kotewicz "] [dependencies] ethjson = { path = "../json" } diff --git a/docker/README.md b/docker/README.md index b2f8374b59e..86b2fcb6aad 100644 --- a/docker/README.md +++ b/docker/README.md @@ -5,7 +5,6 @@ ## Usage - CentOS Builds a lightweight non-root Parity docker image: - ``` git clone https://github.com/paritytech/parity-ethereum.git cd parity-ethereum @@ -20,7 +19,6 @@ PARITY_RUNNER_IMAGE_TAG=centos-parity-experimental \ ./docker/centos/build.sh ``` - Default values: ``` # The image name diff --git a/ethash/Cargo.toml b/ethash/Cargo.toml index 772f12d4bb3..a494ef38e3a 100644 --- a/ethash/Cargo.toml +++ b/ethash/Cargo.toml @@ -3,8 +3,6 @@ name = "ethash" version = "1.12.0" authors = ["Parity Technologies "] -[lib] - [dependencies] crunchy = "0.1.0" either = "1.0.0" diff --git a/ethkey/README.md b/ethkey/README.md index 12161b3770d..a82da0a9cf7 100644 --- a/ethkey/README.md +++ b/ethkey/README.md @@ -1,19 +1,12 @@ -# ethkey +## ethkey-cli -[![Build Status][travis-image]][travis-url] - -[travis-image]: https://travis-ci.org/paritytech/ethkey.svg?branch=master -[travis-url]: https://travis-ci.org/paritytech/ethkey - -Ethereum keys generator. - -[Documentation](http://paritytech.github.io/ethkey/ethkey/index.html) +Parity Ethereum keys generator. ### Usage ``` -Ethereum keys generator. - Copyright 2016, 2017 Parity Technologies (UK) Ltd +Parity Ethereum keys generator. + Copyright 2015-2018 Parity Technologies (UK) Ltd. Usage: ethkey info [options] @@ -27,17 +20,17 @@ Usage: Options: -h, --help Display this message and exit. - -s, --secret Display only the secret. - -p, --public Display only the public. + -s, --secret Display only the secret key. + -p, --public Display only the public key. -a, --address Display only the address. - -b, --brain Use parity brain wallet algorithm. + -b, --brain Use parity brain wallet algorithm. Not recommended. Commands: - info Display public and address of the secret. - generate random Generates new random ethereum key. - generate prefix Random generation, but address must start with a prefix. - sign Sign message using secret. - verify Verify signer of the signature. + info Display public key and address of the secret. + generate random Generates new random Ethereum key. + generate prefix Random generation, but address must start with a prefix ("vanity address"). + sign Sign message using a secret key. + verify Verify signer of the signature by public key or address. recover Try to find brain phrase matching given address from partial phrase. ``` @@ -218,10 +211,11 @@ public: 4e19a5fdae82596e1485c69b687c9cc52b5078e5b0668ef3ce8543cd90e712cb00df822 address: 00cf3711cbd3a1512570639280758118ba0b2bcb ``` +## Parity Ethereum toolchain +_This project is a part of the Parity Ethereum toolchain._ -# Parity toolchain -*this project is a part of the parity toolchain* - -- [**ethkey**](https://github.com/paritytech/ethkey) - Ethereum keys generator and signer. -- [**ethstore**](https://github.com/paritytech/ethstore) - Ethereum key management. -- [**ethabi**](https://github.com/paritytech/ethabi) - Ethereum function calls encoding. +- [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. +- [ethstore](https://github.com/paritytech/parity-ethereum/blob/master/ethstore/) - Parity Ethereum key management. +- [ethkey](https://github.com/paritytech/parity-ethereum/blob/master/ethkey/) - Parity Ethereum keys generator. +- [whisper](https://github.com/paritytech/parity-ethereum/blob/master/whisper/) - Implementation of Whisper-v2 PoC. diff --git a/ethkey/cli/src/main.rs b/ethkey/cli/src/main.rs index 73273250444..e908baec32b 100644 --- a/ethkey/cli/src/main.rs +++ b/ethkey/cli/src/main.rs @@ -34,8 +34,8 @@ use ethkey::{KeyPair, Random, Brain, BrainPrefix, Prefix, Error as EthkeyError, use rustc_hex::{FromHex, FromHexError}; const USAGE: &'static str = r#" -Ethereum keys generator. - Copyright 2016, 2017 Parity Technologies (UK) Ltd +Parity Ethereum keys generator. + Copyright 2015-2018 Parity Technologies (UK) Ltd. Usage: ethkey info [options] @@ -49,17 +49,17 @@ Usage: Options: -h, --help Display this message and exit. - -s, --secret Display only the secret. - -p, --public Display only the public. + -s, --secret Display only the secret key. + -p, --public Display only the public key. -a, --address Display only the address. - -b, --brain Use parity brain wallet algorithm. + -b, --brain Use parity brain wallet algorithm. Not recommended. Commands: - info Display public and address of the secret. - generate random Generates new random ethereum key. - generate prefix Random generation, but address must start with a prefix. - sign Sign message using secret. - verify Verify signer of the signature. + info Display public key and address of the secret. + generate random Generates new random Ethereum key. + generate prefix Random generation, but address must start with a prefix ("vanity address"). + sign Sign message using a secret key. + verify Verify signer of the signature by public key or address. recover Try to find brain phrase matching given address from partial phrase. "#; diff --git a/ethstore/README.md b/ethstore/README.md index c56a24a9314..6099c413248 100644 --- a/ethstore/README.md +++ b/ethstore/README.md @@ -1,19 +1,12 @@ -# ethstore +## ethstore-cli -[![Build Status][travis-image]][travis-url] - -[travis-image]: https://travis-ci.org/paritytech/ethstore.svg?branch=master -[travis-url]: https://travis-ci.org/paritytech/ethstore - -Ethereum key management. - -[Documentation](http://paritytech.github.io/ethstore/ethstore/index.html) +Parity Ethereum key management. ### Usage ``` -Ethereum key management. - Copyright 2016, 2017 Parity Technologies (UK) Ltd +Parity Ethereum key management tool. + Copyright 2015-2018 Parity Technologies (UK) Ltd. Usage: ethstore insert [--dir DIR] [--vault VAULT] [--vault-pwd VAULTPWD] @@ -35,19 +28,19 @@ Usage: Options: -h, --help Display this message and exit. --dir DIR Specify the secret store directory. It may be either - parity, parity-test, geth, geth-test + parity, parity-(chain), geth, geth-test or a path [default: parity]. --vault VAULT Specify vault to use in this operation. --vault-pwd VAULTPWD Specify vault password to use in this operation. Please note that this option is required when vault option is set. Otherwise it is ignored. --src DIR Specify import source. It may be either - parity, parity-test, get, geth-test + parity, parity-(chain), geth, geth-test or a path [default: geth]. Commands: insert Save account with password. - change-pwd Change account password. + change-pwd Change password. list List accounts. import Import accounts from src. import-wallet Import presale wallet. @@ -59,7 +52,7 @@ Commands: create-vault Create new vault. change-vault-pwd Change vault password. move-to-vault Move account to vault from another vault/root directory. - move-from-vault Move account to root directory from given vault or root. + move-from-vault Move account to root directory from given vault. ``` ### Examples @@ -337,11 +330,11 @@ ethstore move-from-vault 00e63fdb87ceb815ec96ae185b8f7381a0b4a5ea vault1 vault1_ OK ``` --- - -# Parity toolchain -*this project is a part of the parity toolchain* +## Parity Ethereum toolchain +_This project is a part of the Parity Ethereum toolchain._ -- [**ethkey**](https://github.com/paritytech/ethkey) - Ethereum keys generator and signer. -- [**ethstore**](https://github.com/paritytech/ethstore) - Ethereum key management. -- [**ethabi**](https://github.com/paritytech/ethabi) - Ethereum function calls encoding. +- [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. +- [ethstore](https://github.com/paritytech/parity-ethereum/blob/master/ethstore/) - Parity Ethereum key management. +- [ethkey](https://github.com/paritytech/parity-ethereum/blob/master/ethkey/) - Parity Ethereum keys generator. +- [whisper](https://github.com/paritytech/parity-ethereum/blob/master/whisper/) - Implementation of Whisper-v2 PoC. diff --git a/ethstore/cli/src/main.rs b/ethstore/cli/src/main.rs index e542bd90899..6751f713c6e 100644 --- a/ethstore/cli/src/main.rs +++ b/ethstore/cli/src/main.rs @@ -38,8 +38,8 @@ use ethstore::{EthStore, SimpleSecretStore, SecretStore, import_accounts, Presal mod crack; pub const USAGE: &'static str = r#" -Ethereum key management. - Copyright 2016, 2017 Parity Technologies (UK) Ltd +Parity Ethereum key management tool. + Copyright 2015-2018 Parity Technologies (UK) Ltd. Usage: ethstore insert [--dir DIR] [--vault VAULT] [--vault-pwd VAULTPWD] @@ -68,7 +68,7 @@ Options: that this option is required when vault option is set. Otherwise it is ignored. --src DIR Specify import source. It may be either - parity, parity-(chain), get, geth-test + parity, parity-(chain), geth, geth-test or a path [default: geth]. Commands: diff --git a/evmbin/README.md b/evmbin/README.md new file mode 100644 index 00000000000..585be422840 --- /dev/null +++ b/evmbin/README.md @@ -0,0 +1,50 @@ +## evmbin + +EVM implementation for Parity. + +### Usage + +``` +EVM implementation for Parity. + Copyright 2015-2018 Parity Technologies (UK) Ltd. + +Usage: + parity-evm state-test [--json --std-json --only NAME --chain CHAIN] + parity-evm stats [options] + parity-evm stats-jsontests-vm + parity-evm [options] + parity-evm [-h | --help] + +Commands: + state-test Run a state test from a json file. + stats Execute EVM runtime code and return the statistics. + stats-jsontests-vm Execute standard json-tests format VMTests and return + timing statistics in tsv format. + +Transaction options: + --code CODE Contract code as hex (without 0x). + --to ADDRESS Recipient address (without 0x). + --from ADDRESS Sender address (without 0x). + --input DATA Input data as hex (without 0x). + --gas GAS Supplied gas as hex (without 0x). + --gas-price WEI Supplied gas price as hex (without 0x). + +State test options: + --only NAME Runs only a single test matching the name. + --chain CHAIN Run only tests from specific chain. + +General options: + --json Display verbose results in JSON. + --std-json Display results in standardized JSON format. + --chain CHAIN Chain spec file path. + -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. +- [ethstore](https://github.com/paritytech/parity-ethereum/blob/master/ethstore/) - Parity Ethereum key management. +- [ethkey](https://github.com/paritytech/parity-ethereum/blob/master/ethkey/) - Parity Ethereum keys generator. +- [whisper](https://github.com/paritytech/parity-ethereum/blob/master/whisper/) - Implementation of Whisper-v2 PoC. diff --git a/evmbin/src/main.rs b/evmbin/src/main.rs index 78fc474880c..c0f5003478b 100644 --- a/evmbin/src/main.rs +++ b/evmbin/src/main.rs @@ -57,7 +57,7 @@ use info::Informant; const USAGE: &'static str = r#" EVM implementation for Parity. - Copyright 2016, 2017 Parity Technologies (UK) Ltd + Copyright 2015-2018 Parity Technologies (UK) Ltd. Usage: parity-evm state-test [--json --std-json --only NAME --chain CHAIN] @@ -69,8 +69,8 @@ Usage: Commands: state-test Run a state test from a json file. stats Execute EVM runtime code and return the statistics. - stats-jsontests-vm Execute standard jsontests format VMTests and return - timing statistcis in tsv format. + stats-jsontests-vm Execute standard json-tests format VMTests and return + timing statistics in tsv format. Transaction options: --code CODE Contract code as hex (without 0x). @@ -86,7 +86,7 @@ State test options: General options: --json Display verbose results in JSON. - --std-json Display results in standardized JSON format. + --std-json Display results in standardized JSON format. --chain CHAIN Chain spec file path. -h, --help Display this message and exit. "#; diff --git a/license_header b/license_header index 4738554f915..c83bb0d90a4 100644 --- a/license_header +++ b/license_header @@ -1,16 +1,16 @@ // Copyright 2015-2018 Parity Technologies (UK) Ltd. -// This file is part of Parity. +// This file is part of Parity Ethereum. -// Parity is free software: you can redistribute it and/or modify +// 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 is distributed in the hope that it will be useful, +// 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. If not, see . +// along with Parity Ethereum. If not, see . diff --git a/parity/cli/usage_header.txt b/parity/cli/usage_header.txt index 0bcd776c4e0..82a6d58b245 100644 --- a/parity/cli/usage_header.txt +++ b/parity/cli/usage_header.txt @@ -1,3 +1,3 @@ -Parity. Ethereum Client. +Parity Ethereum Client. By Wood/Paronyan/Kotewicz/Drwięga/Volf et al. - Copyright 2015, 2016, 2017, 2018 Parity Technologies (UK) Ltd + Copyright 2015-2018 Parity Technologies (UK) Ltd. diff --git a/parity/cli/version.txt b/parity/cli/version.txt index ed0576e04d2..480fe5469ca 100644 --- a/parity/cli/version.txt +++ b/parity/cli/version.txt @@ -1,6 +1,6 @@ -Parity +Parity Ethereum version {} -Copyright 2015, 2016, 2017, 2018 Parity Technologies (UK) Ltd +Copyright 2015-2018 Parity Technologies (UK) Ltd. License GPLv3+: GNU GPL version 3 or later . This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. diff --git a/scripts/parity.service b/scripts/parity.service index 3d1f4a3da1e..24e14282bc4 100644 --- a/scripts/parity.service +++ b/scripts/parity.service @@ -1,5 +1,5 @@ [Unit] -Description=Parity Daemon +Description=Parity Ethereum Daemon After=network.target [Service] diff --git a/snap/gui/icon.png b/snap/gui/icon.png index 35238121adfd1fdb130497498b1a33f74bceff92..f0f22390f5629c9a746d7b54e359ca8a66fefd4b 100644 GIT binary patch literal 5044 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 literal 10671 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 P5_Cz|Sf^CWk^KJvUAPuQ diff --git a/snap/gui/parity.desktop b/snap/gui/parity.desktop index c8f83be73d0..1833865deab 100644 --- a/snap/gui/parity.desktop +++ b/snap/gui/parity.desktop @@ -1,8 +1,8 @@ [Desktop Entry] Type=Application Encoding=UTF-8 -Name=parity -Comment=Fast, light, robust Ethereum implementation +Name=Parity Ethereum +Comment=The fastest and most advanced Ethereum client. Exec=parity Icon=/usr/share/pixmaps/icon.png Terminal=true diff --git a/test.sh b/test.sh index baa959f3cb4..83d07b78bc9 100755 --- a/test.sh +++ b/test.sh @@ -41,14 +41,13 @@ echo "________Validate chainspecs________" time ./scripts/validate_chainspecs.sh fi - # Running the C++ example echo "________Running the C++ example________" cd parity-clib-examples/cpp && \ mkdir -p build && \ cd build && \ cmake .. && \ - make && \ + make -j 8 && \ ./parity-example && \ cd .. && \ rm -rf build && \ diff --git a/util/macros/Cargo.toml b/util/macros/Cargo.toml index 01d85935c54..fd6a130f37a 100644 --- a/util/macros/Cargo.toml +++ b/util/macros/Cargo.toml @@ -2,5 +2,3 @@ name = "macros" version = "0.1.0" authors = ["Parity Technologies "] - -[dependencies] diff --git a/util/mem/Cargo.toml b/util/mem/Cargo.toml index 1cca222142e..29d1db923ee 100644 --- a/util/mem/Cargo.toml +++ b/util/mem/Cargo.toml @@ -2,5 +2,3 @@ name = "mem" version = "0.1.0" authors = ["Parity Technologies "] - -[dependencies] diff --git a/util/stop-guard/Cargo.toml b/util/stop-guard/Cargo.toml index bf870fb6158..f8fa5f12343 100644 --- a/util/stop-guard/Cargo.toml +++ b/util/stop-guard/Cargo.toml @@ -2,5 +2,3 @@ name = "stop-guard" version = "0.1.0" authors = ["Parity Technologies "] - -[dependencies] diff --git a/util/unexpected/Cargo.toml b/util/unexpected/Cargo.toml index 35ff1a535de..d5caeadeed8 100644 --- a/util/unexpected/Cargo.toml +++ b/util/unexpected/Cargo.toml @@ -2,5 +2,3 @@ name = "unexpected" version = "0.1.0" authors = ["Parity Technologies "] - -[dependencies] diff --git a/util/using_queue/Cargo.toml b/util/using_queue/Cargo.toml index 4030d0d8dfe..ac581a96dc6 100644 --- a/util/using_queue/Cargo.toml +++ b/util/using_queue/Cargo.toml @@ -2,5 +2,3 @@ name = "using_queue" version = "0.1.0" authors = ["Parity Technologies "] - -[dependencies] diff --git a/util/version/Cargo.toml b/util/version/Cargo.toml index fc4cdece6db..172170e82db 100644 --- a/util/version/Cargo.toml +++ b/util/version/Cargo.toml @@ -2,7 +2,7 @@ # Make sure to update the service if it's moved or the structure is changed. [package] name = "parity-version" -# NOTE: this value is used for Parity version string (via env CARGO_PKG_VERSION) +# NOTE: this value is used for Parity Ethereum version string (via env CARGO_PKG_VERSION) version = "2.1.0" authors = ["Parity Technologies "] build = "build.rs" diff --git a/whisper/README.md b/whisper/README.md index 34a68a1cb8f..a582843f805 100644 --- a/whisper/README.md +++ b/whisper/README.md @@ -1,3 +1,30 @@ -# Whisper +## Whisper Implementation of Whisper based on the Whisper-v2 PoC. + +### Usage + +``` +Parity Whisper-v2 CLI. + Copyright 2015-2018 Parity Technologies (UK) Ltd. + +Usage: + whisper [options] + whisper [-h | --help] + +Options: + --whisper-pool-size SIZE Specify Whisper pool size [default: 10]. + -p, --port PORT Specify which RPC port to use [default: 8545]. + -a, --address ADDRESS Specify which 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. +``` + +## 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. +- [ethstore](https://github.com/paritytech/parity-ethereum/blob/master/ethstore/) - Parity Ethereum key management. +- [ethkey](https://github.com/paritytech/parity-ethereum/blob/master/ethkey/) - Parity Ethereum keys generator. +- [whisper](https://github.com/paritytech/parity-ethereum/blob/master/whisper/) - Implementation of Whisper-v2 PoC. diff --git a/whisper/cli/src/main.rs b/whisper/cli/src/main.rs index d09ff307cf4..76f852c762b 100644 --- a/whisper/cli/src/main.rs +++ b/whisper/cli/src/main.rs @@ -48,8 +48,8 @@ use jsonrpc_http_server::{AccessControlAllowOrigin, DomainsValidation}; const POOL_UNIT: usize = 1024 * 1024; const USAGE: &'static str = r#" -Whisper CLI. - Copyright 2018 Parity Technologies (UK) Ltd +Parity Whisper-v2 CLI. + Copyright 2015-2018 Parity Technologies (UK) Ltd. Usage: whisper [options]