initial cleanup (#11542)

* cleanup

* upbork

* review grumble: rename client id prefix

* rpc-tests: make one of the clients open-ethereum

* fix doctest

* README: mention clang version and that our wiki is old
This commit is contained in:
Andronik Ordian 2020-03-09 15:07:15 +01:00 committed by GitHub
parent c190092750
commit 10d82ef119
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
79 changed files with 340 additions and 863 deletions

View File

@ -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/OpenEthereum/open-ethereum/issues/new) in our repository and state:
- What's your Parity Ethereum version?
- What's your Open Ethereum version?
- What's your operating system and version?
- How did you install Parity Ethereum?
- How did you install Open Ethereum?
- Is your node fully synchronized?
- Did you try turning it off and on again?
@ -22,7 +22,7 @@ Also, try to include **steps to reproduce** the issue and expand on the **actual
## Contribute!
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/OpenEthereum/open-ethereum/compare).
If you would like to contribute to Open Ethereum, please **fork it**, fix bugs or implement features, and [propose a pull request](https://github.com/OpenEthereum/open-ethereum/compare).
### Labels & Milestones
@ -39,7 +39,7 @@ There are a few basic ground-rules for contributors (including the maintainer(s)
### Recommendations
* **Non-master branch names** *should* be prefixed with a short name moniker, followed by the associated Github Issue ID (if any), and a brief description of the task using the format `<GITHUB_USERNAME>-<ISSUE_ID>-<BRIEF_DESCRIPTION>` (e.g. `gavin-123-readme`). The name moniker helps people to inquiry about their unfinished work, and the GitHub Issue ID helps your future self and other developers (particularly those who are onboarding) find out about and understand the original scope of the task, and where it fits into Parity Ethereum [Projects](https://github.com/OpenEthereum/open-ethereum/projects).
* **Non-master branch names** *should* be prefixed with a short name moniker, followed by the associated Github Issue ID (if any), and a brief description of the task using the format `<GITHUB_USERNAME>-<ISSUE_ID>-<BRIEF_DESCRIPTION>` (e.g. `gavin-123-readme`). The name moniker helps people to inquiry about their unfinished work, and the GitHub Issue ID helps your future self and other developers (particularly those who are onboarding) find out about and understand the original scope of the task, and where it fits into Open Ethereum [Projects](https://github.com/OpenEthereum/open-ethereum/projects).
* **Remove stale branches periodically**
### Preparing Pull Requests
@ -63,6 +63,4 @@ When doing a review, make sure to look for any:
## 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.
By contributing to Open Ethereum, you agree that your contributions will be licensed under the [GPLv3 License](../LICENSE).

View File

@ -4,7 +4,7 @@ _If you think that your issue is an exploitable security vulnerability, please m
_You can find mode info on the reporting process in [SECURITY.md](https://github.com/OpenEthereum/open-ethereum/blob/master/SECURITY.md)_
- **Parity Ethereum version**: 0.0.0
- **Open Ethereum version**: 0.0.0
- **Operating system**: Windows / MacOS / Linux
- **Installation**: homebrew / one-line installer / built from source
- **Fully synchronized**: no / yes

View File

@ -1,356 +0,0 @@
stages:
- test
- build
- publish
- optional
image: ${REGISTRY}/parity-ci-linux:latest
variables:
GIT_STRATEGY: fetch
GIT_SUBMODULE_STRATEGY: recursive
GIT_DEPTH: 3
CI_SERVER_NAME: "GitLab CI"
CARGO_HOME: "/ci-cache/${CI_PROJECT_NAME}/cargo/${CI_JOB_NAME}"
CARGO_TARGET: x86_64-unknown-linux-gnu
CARGO_INCREMENTAL: 0
REGISTRY: registry.parity.io/parity/infrastructure/scripts
.releaseable_branches: # list of git refs for building GitLab artifacts (think "pre-release binaries")
only: &releaseable_branches
- stable
- tags
- schedules
.collect_artifacts: &collect_artifacts
artifacts:
name: "${CI_JOB_NAME}_${SCHEDULE_TAG:-${CI_COMMIT_REF_NAME}}"
when: on_success
expire_in: 1 mos
paths:
- artifacts/
- tools/
.docker-cache-status: &docker-cache-status
dependencies: []
interruptible: true
before_script:
- rustup show
- cargo --version
retry:
max: 2
when:
- runner_system_failure
- unknown_failure
- api_failure
tags:
- linux-docker
.build-on-linux: &build-on-linux
stage: build
<<: *docker-cache-status
<<: *collect_artifacts
script:
- scripts/gitlab/build-linux.sh
after_script:
- mkdir -p tools
- cp -r scripts/docker/hub/* ./tools
- cp scripts/gitlab/publish-snap.sh ./tools
- cp scripts/gitlab/publish-onchain.sh ./tools
- cp scripts/gitlab/safe-curl.sh ./tools
- echo v"$(sed -r -n '1,/^version/s/^version\s*=\s*"([^"]+)".*$/\1/p' Cargo.toml)" |
tee ./tools/VERSION
- echo "$(sed -r -n '1,/^track/s/^track\s*=\s*"([^"]+)".*$/\1/p' ./util/version/Cargo.toml)" |
tee ./tools/TRACK
cargo-check 0 3:
stage: test
<<: *docker-cache-status
script:
- time cargo check --target $CARGO_TARGET --locked --no-default-features --verbose --color=always
- sccache --show-stats
cargo-check 1 3:
stage: test
<<: *docker-cache-status
script:
- time cargo check --target $CARGO_TARGET --locked --manifest-path util/io/Cargo.toml --no-default-features --verbose --color=always
- sccache --show-stats
cargo-check 2 3:
stage: test
<<: *docker-cache-status
script:
- time cargo check --target $CARGO_TARGET --locked --manifest-path util/io/Cargo.toml --features "mio" --verbose --color=always
- sccache --show-stats
cargo-check-evmbin:
stage: test
<<: *docker-cache-status
script:
- time cargo check -p evmbin --target $CARGO_TARGET --locked --verbose --color=always
- sccache --show-stats
cargo-check-benches:
stage: test
<<: *docker-cache-status
script:
- time cargo check --workspace --benches --target $CARGO_TARGET --locked --verbose --color=always --all-features
- sccache --show-stats
cargo-audit:
stage: test
<<: *docker-cache-status
script:
- cargo audit
allow_failure: true # failed cargo audit shouldn't prevent a PR from being merged
validate-chainspecs:
stage: test
<<: *docker-cache-status
script:
- ./scripts/gitlab/validate-chainspecs.sh
test-linux:
stage: build
<<: *docker-cache-status
script:
- ./scripts/gitlab/test-linux.sh stable
test-linux-beta:
stage: build
only: *releaseable_branches
<<: *docker-cache-status
script:
- ./scripts/gitlab/test-linux.sh beta
test-linux-nightly:
stage: build
only: *releaseable_branches
<<: *docker-cache-status
script:
- ./scripts/gitlab/test-linux.sh nightly
allow_failure: true
build-linux:
<<: *build-on-linux
only: *releaseable_branches
build-linux-i386:
<<: *build-on-linux
only: *releaseable_branches
image: ${REGISTRY}/parity-ci-i386:latest
variables:
CARGO_TARGET: i686-unknown-linux-gnu
build-linux-arm64:
<<: *build-on-linux
only: *releaseable_branches
image: ${REGISTRY}/parity-ci-arm64:latest
variables:
CARGO_TARGET: aarch64-unknown-linux-gnu
build-linux-armhf:
<<: *build-on-linux
only: *releaseable_branches
image: ${REGISTRY}/parity-ci-armhf:latest
variables:
CARGO_TARGET: armv7-unknown-linux-gnueabihf
build-darwin:
stage: build
<<: *collect_artifacts
only: *releaseable_branches
variables:
CARGO_TARGET: x86_64-apple-darwin
CARGO_HOME: "${CI_PROJECT_DIR}/.cargo"
script:
- scripts/gitlab/build-linux.sh
tags:
- rust-osx
build-windows:
stage: build
<<: *collect_artifacts
only: *releaseable_branches
variables:
CARGO_TARGET: x86_64-pc-windows-msvc
CARGO_HOME: "C:/ci-cache/parity-ethereum/cargo/$CI_JOB_NAME"
GIT_SUBMODULE_STRATEGY: none
script:
- sh scripts/gitlab/build-windows.sh
tags:
- rust-windows
publish-docker:
stage: publish
only: *releaseable_branches
except:
- nightly
when: manual
dependencies:
- build-linux
environment:
name: parity-build
cache: {}
image: docker:stable
services:
- docker:dind
variables:
GIT_STRATEGY: none
DOCKER_HOST: tcp://localhost:2375
DOCKER_DRIVER: overlay2
GIT_STRATEGY: none
# DOCKERFILE: tools/Dockerfile
# CONTAINER_IMAGE: parity/parity
script:
- ./tools/publish-docker.sh
tags:
- kubernetes-parity-build
publish-snap-nightly: &publish-snap
stage: publish
only:
- nightly
image: snapcore/snapcraft
variables:
GIT_STRATEGY: none
BUILD_ARCH: amd64
cache: {}
dependencies:
- build-linux
tags:
- linux-docker
script:
- ./tools/publish-snap.sh
publish-snap-manually:
<<: *publish-snap
only: *releaseable_branches
when: manual
publish-snap-i386-nightly: &publish-snap-i386
<<: *publish-snap
variables:
BUILD_ARCH: i386
CARGO_TARGET: i686-unknown-linux-gnu
dependencies:
- build-linux-i386
publish-snap-i386-manually:
<<: *publish-snap-i386
only: *releaseable_branches
when: manual
publish-snap-arm64-nightly: &publish-snap-arm64
<<: *publish-snap
variables:
BUILD_ARCH: arm64
CARGO_TARGET: aarch64-unknown-linux-gnu
dependencies:
- build-linux-arm64
publish-snap-arm64-manually:
<<: *publish-snap-arm64
only: *releaseable_branches
when: manual
publish-snap-armhf-nightly: &publish-snap-armhf
<<: *publish-snap
variables:
BUILD_ARCH: armhf
CARGO_TARGET: armv7-unknown-linux-gnueabihf
dependencies:
- build-linux-armhf
publish-snap-armhf-manually:
<<: *publish-snap-armhf
only: *releaseable_branches
when: manual
publish-onchain-nightly: &publish-onchain
stage: publish
only:
- nightly
cache: {}
variables:
GIT_STRATEGY: none
dependencies:
- build-linux
- build-darwin
- build-windows
script:
- ./tools/publish-onchain.sh
tags:
- linux-docker
publish-onchain-manually:
<<: *publish-onchain
only: *releaseable_branches
when: manual
publish-release-awss3-nightly: &publish-release-awss3
image: ${REGISTRY}/awscli:latest
stage: publish
only:
- nightly
variables:
GIT_STRATEGY: none
cache: {}
dependencies:
- build-linux
- build-darwin
- build-windows
script:
- echo "__________Push binaries to AWS S3____________"
- case "${SCHEDULE_TAG:-${CI_COMMIT_REF_NAME}}" in
(stable|nightly)
export BUCKET=releases.parity.io/ethereum;
;;
(*)
export BUCKET=builds-parity;
;;
esac
- aws s3 sync ./artifacts s3://${BUCKET}/${SCHEDULE_TAG:-${CI_COMMIT_REF_NAME}}/
- echo "__________Read from S3____________"
- aws s3 ls s3://${BUCKET}/${SCHEDULE_TAG:-${CI_COMMIT_REF_NAME}} --recursive --human-readable --summarize
tags:
- linux-docker
publish-release-awss3-manually:
<<: *publish-release-awss3
only: *releaseable_branches
when: manual
publish-docs:
stage: publish
image: ${REGISTRY}/parity-ci-docs:latest
only:
- tags
except:
- nightly
when: manual
cache: {}
dependencies: []
script:
- scripts/gitlab/publish-docs.sh
tags:
- linux-docker
allow_failure: true
publish-av-whitelist:
stage: publish
variables:
GIT_STRATEGY: none
only: *releaseable_branches
except:
- nightly
when: manual
cache: {}
dependencies:
- build-windows
script:
- scripts/gitlab/publish-av-whitelists.sh
tags:
- linux-docker

162
Cargo.lock generated
View File

@ -3129,6 +3129,87 @@ version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "93f5bb2e8e8dec81642920ccff6b61f1eb94fa3020c5a325c9851ff604152409"
[[package]]
name = "open-ethereum"
version = "2.8.0"
dependencies = [
"ansi_term",
"atty",
"blooms-db",
"clap",
"cli-signer",
"client-traits",
"common-types",
"ctrlc",
"dir",
"docopt",
"engine",
"ethabi",
"ethcore",
"ethcore-accounts",
"ethcore-blockchain",
"ethcore-call-contract",
"ethcore-db",
"ethcore-io",
"ethcore-light",
"ethcore-logger",
"ethcore-miner",
"ethcore-network",
"ethcore-private-tx",
"ethcore-service",
"ethcore-sync",
"ethereum-types",
"ethkey",
"ethstore",
"fake-fetch",
"fdlimit",
"futures",
"ipnetwork",
"journaldb",
"jsonrpc-core",
"keccak-hash",
"kvdb",
"kvdb-rocksdb",
"log",
"migration-rocksdb",
"node-filter",
"num_cpus",
"number_prefix",
"panic_hook",
"parity-bytes",
"parity-crypto",
"parity-daemonize",
"parity-hash-fetch",
"parity-local-store",
"parity-path",
"parity-rpc",
"parity-runtime",
"parity-secretstore",
"parity-updater",
"parity-util-mem",
"parity-version",
"parking_lot 0.10.0",
"pretty_assertions",
"regex",
"registrar",
"rlp",
"rpassword",
"rustc-hex 2.1.0",
"rustc_version",
"semver",
"serde",
"serde_derive",
"serde_json",
"snapshot",
"spec",
"tempdir",
"term_size",
"textwrap 0.9.0",
"toml",
"verification",
"winapi 0.3.8",
]
[[package]]
name = "openssl-probe"
version = "0.1.2"
@ -3216,87 +3297,6 @@ dependencies = [
"mio",
]
[[package]]
name = "parity-ethereum"
version = "2.8.0"
dependencies = [
"ansi_term",
"atty",
"blooms-db",
"clap",
"cli-signer",
"client-traits",
"common-types",
"ctrlc",
"dir",
"docopt",
"engine",
"ethabi",
"ethcore",
"ethcore-accounts",
"ethcore-blockchain",
"ethcore-call-contract",
"ethcore-db",
"ethcore-io",
"ethcore-light",
"ethcore-logger",
"ethcore-miner",
"ethcore-network",
"ethcore-private-tx",
"ethcore-service",
"ethcore-sync",
"ethereum-types",
"ethkey",
"ethstore",
"fake-fetch",
"fdlimit",
"futures",
"ipnetwork",
"journaldb",
"jsonrpc-core",
"keccak-hash",
"kvdb",
"kvdb-rocksdb",
"log",
"migration-rocksdb",
"node-filter",
"num_cpus",
"number_prefix",
"panic_hook",
"parity-bytes",
"parity-crypto",
"parity-daemonize",
"parity-hash-fetch",
"parity-local-store",
"parity-path",
"parity-rpc",
"parity-runtime",
"parity-secretstore",
"parity-updater",
"parity-util-mem",
"parity-version",
"parking_lot 0.10.0",
"pretty_assertions",
"regex",
"registrar",
"rlp",
"rpassword",
"rustc-hex 2.1.0",
"rustc_version",
"semver",
"serde",
"serde_derive",
"serde_json",
"snapshot",
"spec",
"tempdir",
"term_size",
"textwrap 0.9.0",
"toml",
"verification",
"winapi 0.3.8",
]
[[package]]
name = "parity-hash-fetch"
version = "1.12.0"

View File

@ -1,10 +1,10 @@
[package]
description = "Parity Ethereum client"
name = "parity-ethereum"
description = "Open Ethereum client"
name = "open-ethereum"
# NOTE Make sure to update util/version/Cargo.toml as well
version = "2.8.0"
license = "GPL-3.0"
authors = ["Parity Technologies <admin@parity.io>"]
authors = ["Open Ethereum developers", "Parity Technologies <admin@parity.io>"]
[dependencies]
ansi_term = "0.11"

141
README.md
View File

@ -1,10 +1,10 @@
![Parity Ethereum](docs/logo-parity-ethereum.svg)
![Open Ethereum](docs/logo-parity-ethereum.svg)
<h2 align="center">The Fastest and most Advanced Ethereum Client.</h2>
<p align="center"><strong><a href="https://github.com/OpenEthereum/open-ethereum/releases/latest">» Download the latest release «</a></strong></p>
<p align="center"><a href="https://gitlab.parity.io/parity/parity-ethereum/commits/master" target="_blank"><img src="https://gitlab.parity.io/parity/parity-ethereum/badges/master/build.svg" /></a>
<p align="center"><a href="https://github.com/OpenEthereum/open-ethereum/actions" target="_blank"><img src="https://github.com/OpenEthereum/open-ethereum/workflows/Build%20and%20Test%20Suite/badge.svg" /></a>
<a href="https://www.gnu.org/licenses/gpl-3.0.en.html" target="_blank"><img src="https://img.shields.io/badge/license-GPL%20v3-green.svg" /></a></p>
## Table of Contents
@ -14,8 +14,7 @@
3. [Building](#chapter-003)<br>
3.1 [Building Dependencies](#chapter-0031)<br>
3.2 [Building from Source Code](#chapter-0032)<br>
3.3 [Simple One-Line Installer for Mac and Linux](#chapter-0033)<br>
3.4 [Starting Parity Ethereum](#chapter-0034)
3.3 [Starting Open Ethereum](#chapter-0034)
4. [Testing](#chapter-004)
5. [Documentation](#chapter-005)
6. [Toolchain](#chapter-006)
@ -26,7 +25,7 @@
## 1. Description <a id="chapter-001"></a>
**Built for mission-critical use**: Miners, service providers, and exchanges need fast synchronisation and maximum uptime. Parity Ethereum provides the core infrastructure essential for speedy and reliable services.
**Built for mission-critical use**: Miners, service providers, and exchanges need fast synchronisation and maximum uptime. Open Ethereum provides the core infrastructure essential for speedy and reliable services.
- Clean, modular codebase for easy customisation
- Advanced CLI-based client
@ -36,19 +35,19 @@
## 2. Technical Overview <a id="chapter-002"></a>
Parity Ethereum's goal is to be the fastest, lightest, and most secure Ethereum client. We are developing Parity Ethereum using the sophisticated and cutting-edge **Rust programming language**. Parity Ethereum is licensed under the GPLv3 and can be used for all your Ethereum needs.
Open Ethereum's goal is to be the fastest, lightest, and most secure Ethereum client. We are developing Open Ethereum using the sophisticated and cutting-edge **Rust programming language**. Open Ethereum is licensed under the GPLv3 and can be used for all your Ethereum needs.
By default, Parity Ethereum runs a JSON-RPC HTTP server on port `:8545` and a Web-Sockets server on port `:8546`. This is fully configurable and supports a number of APIs.
By default, Open Ethereum runs a JSON-RPC HTTP server on port `:8545` and a Web-Sockets server on port `:8546`. This is fully configurable and supports a number of APIs.
If you run into problems while using Parity Ethereum, check out the [wiki for documentation](https://wiki.parity.io/), feel free to [file an issue in this repository](https://github.com/OpenEthereum/open-ethereum/issues/new), or hop on our [Gitter](https://gitter.im/paritytech/parity) or [Riot](https://riot.im/app/#/group/+parity:matrix.parity.io) chat room to ask a question. We are glad to help! **For security-critical issues**, please refer to the security policy outlined in [SECURITY.md](SECURITY.md).
If you run into problems while using Open Ethereum, check out the [old wiki for documentation](https://wiki.parity.io/), feel free to [file an issue in this repository](https://github.com/OpenEthereum/open-ethereum/issues/new), or hop on our [Discord](https://discord.gg/FJUgGe) chat room to ask a question. We are glad to help! **For security-critical issues**, please refer to the security policy outlined in [SECURITY.md](SECURITY.md).
You can download Parity Ethereum's latest release at [the releases page](https://github.com/OpenEthereum/open-ethereum/releases) or follow the instructions below to build from source. Please, mind the [CHANGELOG.md](CHANGELOG.md) for a list of all changes between different versions.
You can download Open Ethereum's latest release at [the releases page](https://github.com/OpenEthereum/open-ethereum/releases) or follow the instructions below to build from source. Please, mind the [CHANGELOG.md](CHANGELOG.md) for a list of all changes between different versions.
## 3. Building <a id="chapter-003"></a>
### 3.1 Build Dependencies <a id="chapter-0031"></a>
Parity Ethereum requires **latest stable Rust version** to build.
Open Ethereum requires **latest stable Rust version** to build.
We recommend installing Rust through [rustup](https://www.rustup.rs/). If you don't already have `rustup`, you can install it like this:
@ -57,7 +56,7 @@ We recommend installing Rust through [rustup](https://www.rustup.rs/). If you do
$ curl https://sh.rustup.rs -sSf | sh
```
Parity Ethereum also requires `gcc`, `g++`, `pkg-config`, `file`, `make`, and `cmake` packages to be installed.
Open Ethereum also requires `clang` (>= 9.0), `clang++`, `pkg-config`, `file`, `make`, and `cmake` packages to be installed.
- OSX:
```bash
@ -77,14 +76,14 @@ Once you have `rustup` installed, then you need to install:
* [Perl](https://www.perl.org)
* [Yasm](https://yasm.tortall.net)
Make sure that these binaries are in your `PATH`. After that, you should be able to build Parity Ethereum from source.
Make sure that these binaries are in your `PATH`. After that, you should be able to build Open Ethereum from source.
### 3.2 Build from Source Code <a id="chapter-0032"></a>
```bash
# download Parity Ethereum code
# download Open Ethereum code
$ git clone https://github.com/OpenEthereum/open-ethereum
$ cd parity-ethereum
$ cd open-ethereum
# build in release mode
$ cargo build --release --features final
@ -110,32 +109,26 @@ This always compiles the latest nightly builds. If you want to build stable, do
$ git checkout stable
```
### 3.3 Simple One-Line Installer for Mac and Linux <a id="chapter-0033"></a>
```bash
bash <(curl https://get.parity.io -L)
```
### 3.4 Starting Parity Ethereum <a id="chapter-0034"></a>
### 3.3 Starting Open Ethereum <a id="chapter-0034"></a>
#### Manually
To start Parity Ethereum manually, just run
To start Open Ethereum manually, just run
```bash
$ ./target/release/parity
```
so Parity Ethereum begins syncing the Ethereum blockchain.
so Open Ethereum begins syncing the Ethereum blockchain.
#### Using `systemd` service file
To start Parity Ethereum as a regular user using `systemd` init:
To start Open Ethereum as a regular user using `systemd` init:
1. Copy `./scripts/parity.service` to your
`systemd` user directory (usually `~/.config/systemd/user`).
2. Copy release to bin folder, write `sudo install ./target/release/parity /usr/bin/parity`
3. 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.
3. To configure Open Ethereum, write a `/etc/parity/config.toml` config file, see [our old wiki](https://paritytech.github.io/wiki/Configuring-Parity) for details.
## 4. Testing <a id="chapter-004"></a>
@ -157,13 +150,11 @@ You can show your logs in the test output by passing `--nocapture` (i.e. `cargo
## 5. Documentation <a id="chapter-005"></a>
Official website: https://parity.io
Be sure to [check out our old wiki](https://wiki.parity.io) for more information.
Be sure to [check out our wiki](https://wiki.parity.io) for more information.
### Viewing documentation for Open Ethereum packages
### Viewing documentation for Parity Ethereum packages
You can generate documentation for Parity Ethereum Rust packages that automatically opens in your web browser using [rustdoc with Cargo](https://doc.rust-lang.org/rustdoc/what-is-rustdoc.html#using-rustdoc-with-cargo) (of the The Rustdoc Book), by running the the following commands:
You can generate documentation for Open Ethereum Rust packages that automatically opens in your web browser using [rustdoc with Cargo](https://doc.rust-lang.org/rustdoc/what-is-rustdoc.html#using-rustdoc-with-cargo) (of the The Rustdoc Book), by running the the following commands:
* **All** packages
```
@ -177,135 +168,131 @@ You can generate documentation for Parity Ethereum Rust packages that automatica
Use`--document-private-items` to also view private documentation and `--no-deps` to exclude building documentation for dependencies.
Replacing `<spec>` with one of the following from the details section below (i.e. `cargo doc --package parity-ethereum --open`):
Replacing `<spec>` with one of the following from the details section below (i.e. `cargo doc --package open-ethereum --open`):
<a id="package-list"></a>
**Package List**
<details><p>
* Parity Ethereum (EthCore) Client Application
* Open Ethereum (EthCore) Client Application
```bash
parity-ethereum
open-ethereum
```
* Parity Ethereum Account Management, Key Management Tool, and Keys Generator
* Open Ethereum Account Management, Key Management Tool, and Keys Generator
```bash
ethcore-accounts, ethkey-cli, ethstore, ethstore-cli
```
* Parity Chain Specification
* Open Ethereum Chain Specification
```bash
chainspec
```
* Parity CLI Signer Tool & RPC Client
* Open Ethereum CLI Signer Tool & RPC Client
```bash
cli-signer parity-rpc-client
```
* Parity Ethereum Ethash & ProgPoW Implementations
* Open Ethereum Ethash & ProgPoW Implementations
```bash
ethash
```
* Parity (EthCore) Library
* EthCore Library
```bash
ethcore
```
* Parity Ethereum Blockchain Database, Test Generator, Configuration,
* Open Ethereum Blockchain Database, Test Generator, Configuration,
Caching, Importing Blocks, and Block Information
```bash
ethcore-blockchain
```
* Parity Ethereum (EthCore) Contract Calls and Blockchain Service & Registry Information
* Open Ethereum (EthCore) Contract Calls and Blockchain Service & Registry Information
```bash
ethcore-call-contract
```
* Parity Ethereum (EthCore) Database Access & Utilities, Database Cache Manager
* Open Ethereum (EthCore) Database Access & Utilities, Database Cache Manager
```bash
ethcore-db
```
* Parity Ethereum Virtual Machine (EVM) Rust Implementation
* Open Ethereum Virtual Machine (EVM) Rust Implementation
```bash
evm
```
* Parity Ethereum (EthCore) Light Client Implementation
* Open Ethereum (EthCore) Light Client Implementation
```bash
ethcore-light
```
* Parity Smart Contract based Node Filter, Manage Permissions of Network Connections
* Smart Contract based Node Filter, Manage Permissions of Network Connections
```bash
node-filter
```
* Parity Private Transactions
* Private Transactions
```bash
ethcore-private-tx
```
* Parity Ethereum (EthCore) Client & Network Service Creation & Registration with the I/O Subsystem
* Open Ethereum (EthCore) Client & Network Service Creation & Registration with the I/O Subsystem
```bash
ethcore-service
```
* Parity Ethereum (EthCore) Blockchain Synchronization
* Open Ethereum (EthCore) Blockchain Synchronization
```bash
ethcore-sync
```
* Parity Ethereum Common Types
* Open Ethereum Common Types
```bash
common-types
```
* Parity Ethereum Virtual Machines (VM) Support Library
* Open Ethereum Virtual Machines (VM) Support Library
```bash
vm
```
* Parity Ethereum WASM Interpreter
* Open Ethereum WASM Interpreter
```bash
wasm
```
* Parity Ethereum WASM Test Runner
* Open Ethereum WASM Test Runner
```bash
pwasm-run-test
```
* Parity EVM Implementation
* Open Ethereum EVM Implementation
```bash
evmbin
```
* Parity Ethereum JSON Deserialization
* Open Ethereum JSON Deserialization
```bash
ethjson
```
* Parity Ethereum State Machine Generalization for Consensus Engines
* Open Ethereum State Machine Generalization for Consensus Engines
```bash
parity-machine
```
* Parity Ethereum (EthCore) Miner Interface
* Open Ethereum (EthCore) Miner Interface
```bash
ethcore-miner parity-local-store price-info ethcore-stratum using_queue
```
* Parity Ethereum (EthCore) Logger Implementation
* Open Ethereum (EthCore) Logger Implementation
```bash
ethcore-logger
```
* C bindings library for the Parity Ethereum client
```bash
parity-clib
```
* Parity Ethereum JSON-RPC Servers
* Open Ethereum JSON-RPC Servers
```bash
parity-rpc
```
* Parity Updater Service
* Open Ethereum Updater Service
```bash
parity-updater parity-hash-fetch
```
* Parity Core Libraries (Parity Util)
* Open Ethereum Core Libraries (`util`)
```bash
ethcore-bloom-journal blooms-db dir eip-712 fake-fetch fastmap fetch ethcore-io
journaldb keccak-hasher len-caching-lock memory-cache memzero
migration-rocksdb ethcore-network ethcore-network-devp2p panic_hook
patricia-trie-ethereum registrar rlp_compress parity-runtime stats
patricia-trie-ethereum registrar rlp_compress stats
time-utils triehash-ethereum unexpected parity-version
```
</p></details>
### Contributing to documentation for Parity Ethereum packages
### Contributing to documentation for Open Ethereum packages
[Document source code](https://doc.rust-lang.org/1.9.0/book/documentation.html) for Parity Ethereum packages by annotating the source code with documentation comments.
[Document source code](https://doc.rust-lang.org/1.9.0/book/documentation.html) for Open Ethereum packages by annotating the source code with documentation comments.
Example (generic documentation comment):
```markdown
@ -331,28 +318,22 @@ Example (generic documentation comment):
## 6. Toolchain <a id="chapter-006"></a>
In addition to the Parity Ethereum client, there are additional tools in this repository available:
In addition to the Open Ethereum client, there are additional tools in this repository available:
- [evmbin](./evmbin) - Parity Ethereum EVM Implementation.
- [ethstore](./accounts/ethstore) - Parity Ethereum Key Management.
- [ethkey](./accounts/ethkey) - Parity Ethereum Keys Generator.
- [evmbin](./evmbin) - Open Ethereum EVM Implementation.
- [ethstore](./accounts/ethstore) - Open Ethereum Key Management.
- [ethkey](./accounts/ethkey) - Open Ethereum Keys Generator.
The following tool is available in a separate repository:
- [ethabi](https://github.com/paritytech/ethabi) - Parity Ethereum Encoding of Function Calls. [Docs here](https://crates.io/crates/ethabi)
- [whisper](https://github.com/paritytech/whisper) - Parity Ethereum Whisper-v2 PoC Implementation.
- [ethabi](https://github.com/OpenEthereum/ethabi) - Open Ethereum Encoding of Function Calls. [Docs here](https://crates.io/crates/ethabi)
- [whisper](https://github.com/OpenEthereum/whisper) - Open Ethereum Whisper-v2 PoC Implementation.
## 7. Community <a id="chapter-007"></a>
### Join the chat!
Questions? Get in touch with us on Gitter:
[![Gitter: Parity](https://img.shields.io/badge/gitter-parity-4AB495.svg)](https://gitter.im/paritytech/parity)
[![Gitter: Parity.js](https://img.shields.io/badge/gitter-parity.js-4AB495.svg)](https://gitter.im/paritytech/parity.js)
[![Gitter: Parity/Miners](https://img.shields.io/badge/gitter-parity/miners-4AB495.svg)](https://gitter.im/paritytech/parity/miners)
[![Gitter: Parity-PoA](https://img.shields.io/badge/gitter-parity--poa-4AB495.svg)](https://gitter.im/paritytech/parity-poa)
Alternatively, join our community on Matrix:
[![Riot: +Parity](https://img.shields.io/badge/riot-%2Bparity%3Amatrix.parity.io-orange.svg)](https://riot.im/app/#/group/+parity:matrix.parity.io)
Questions? Get in touch with us on Discord:
[![Discord: Open Ethereum](https://img.shields.io/discord/669192218728202270.svg?logo=discord)](https://discord.gg/FJUgGe)
## 8. Contributing <a id="chapter-008"></a>

View File

@ -1,6 +1,5 @@
[package]
description = "Parity Ethereum Account Management"
homepage = "http://parity.io"
description = "Open Ethereum Account Management"
license = "GPL-3.0"
name = "ethcore-accounts"
version = "0.1.0"

View File

@ -1,5 +1,5 @@
[package]
description = "Parity Ethereum Keys Generator"
description = "Open Ethereum Keys Generator"
name = "ethkey"
version = "0.4.0"
authors = ["Parity Technologies <admin@parity.io>"]

View File

@ -1,11 +1,11 @@
## ethkey-cli
Parity Ethereum keys generator.
Open Ethereum keys generator.
### Usage
```
Parity Ethereum Keys Generator.
Open Ethereum Keys Generator.
Copyright 2015-2020 Parity Technologies (UK) Ltd.
Usage:
@ -211,11 +211,11 @@ public: 4e19a5fdae82596e1485c69b687c9cc52b5078e5b0668ef3ce8543cd90e712cb00df822
address: 00cf3711cbd3a1512570639280758118ba0b2bcb
```
## Parity Ethereum toolchain
_This project is a part of the Parity Ethereum toolchain._
## Open Ethereum toolchain
_This project is a part of the Open Ethereum toolchain._
- [evmbin](https://github.com/OpenEthereum/open-ethereum/blob/master/evmbin/) - EVM implementation for Parity Ethereum.
- [ethabi](https://github.com/paritytech/ethabi) - Parity Ethereum function calls encoding.
- [ethstore](https://github.com/OpenEthereum/open-ethereum/blob/master/accounts/ethstore) - Parity Ethereum key management.
- [ethkey](https://github.com/OpenEthereum/open-ethereum/blob/master/accounts/ethkey) - Parity Ethereum keys generator.
- [whisper](https://github.com/paritytech/whisper) - Implementation of Whisper-v2 PoC.
- [evmbin](https://github.com/OpenEthereum/open-ethereum/blob/master/evmbin/) - EVM implementation for Open Ethereum.
- [ethabi](https://github.com/OpenEthereum/ethabi) - Open Ethereum function calls encoding.
- [ethstore](https://github.com/OpenEthereum/open-ethereum/blob/master/accounts/ethstore) - Open Ethereum key management.
- [ethkey](https://github.com/OpenEthereum/open-ethereum/blob/master/accounts/ethkey) - Open Ethereum keys generator.
- [whisper](https://github.com/OpenEthereum/whisper) - Implementation of Whisper-v2 PoC.

View File

@ -1,5 +1,5 @@
[package]
description = "Parity Ethereum Keys Generator CLI"
description = "Open Ethereum Keys Generator CLI"
name = "ethkey-cli"
version = "0.1.0"
authors = ["Parity Technologies <admin@parity.io>"]

View File

@ -36,7 +36,7 @@ use parity_crypto::publickey::{KeyPair, Random, Error as EthkeyError, Generator,
use rustc_hex::{FromHex, FromHexError};
const USAGE: &'static str = r#"
Parity Ethereum keys generator.
Open Ethereum keys generator.
Copyright 2015-2020 Parity Technologies (UK) Ltd.
Usage:

View File

@ -1,8 +1,9 @@
[package]
description = "Parity Ethereum Key Management"
description = "Open Ethereum Key Management"
name = "ethstore"
version = "0.2.1"
authors = ["Parity Technologies <admin@parity.io>"]
repository = "https://github.com/OpenEthereum/open-ethereum"
[dependencies]
log = "0.4"

View File

@ -1,11 +1,11 @@
## ethstore-cli
Parity Ethereum key management.
Open Ethereum key management.
### Usage
```
Parity Ethereum key management tool.
Open Ethereum key management tool.
Copyright 2015-2020 Parity Technologies (UK) Ltd.
Usage:
@ -330,11 +330,11 @@ ethstore move-from-vault 00e63fdb87ceb815ec96ae185b8f7381a0b4a5ea vault1 vault1_
OK
```
## Parity Ethereum toolchain
_This project is a part of the Parity Ethereum toolchain._
## Open Ethereum toolchain
_This project is a part of the Open Ethereum toolchain._
- [evmbin](https://github.com/OpenEthereum/open-ethereum/blob/master/evmbin/) - EVM implementation for Parity Ethereum.
- [ethabi](https://github.com/paritytech/ethabi) - Parity Ethereum function calls encoding.
- [ethstore](https://github.com/OpenEthereum/open-ethereum/blob/master/accounts/ethstore) - Parity Ethereum key management.
- [ethkey](https://github.com/OpenEthereum/open-ethereum/blob/master/accounts/ethkey) - Parity Ethereum keys generator.
- [whisper](https://github.com/paritytech/whisper) - Implementation of Whisper-v2 PoC.
- [evmbin](https://github.com/OpenEthereum/open-ethereum/blob/master/evmbin/) - EVM implementation for Open Ethereum.
- [ethabi](https://github.com/OpenEthereum/ethabi) - Open Ethereum function calls encoding.
- [ethstore](https://github.com/OpenEthereum/open-ethereum/blob/master/accounts/ethstore) - Open Ethereum key management.
- [ethkey](https://github.com/OpenEthereum/open-ethereum/blob/master/accounts/ethkey) - Open Ethereum keys generator.
- [whisper](https://github.com/OpenEthereum/whisper) - Implementation of Whisper-v2 PoC.

View File

@ -1,5 +1,5 @@
[package]
description = "Parity Ethereum Key Management CLI"
description = "Open Ethereum Key Management CLI"
name = "ethstore-cli"
version = "0.1.1"
authors = ["Parity Technologies <admin@parity.io>"]

View File

@ -43,7 +43,7 @@ use ethstore::{EthStore, SimpleSecretStore, SecretStore, import_accounts, Presal
mod crack;
pub const USAGE: &'static str = r#"
Parity Ethereum key management tool.
Open Ethereum key management tool.
Copyright 2015-2020 Parity Technologies (UK) Ltd.
Usage:

View File

@ -1,5 +1,5 @@
[package]
description = "Parity Ethereum Chain Specification"
description = "Open Ethereum Chain Specification"
name = "chainspec"
version = "0.1.0"
authors = ["Marek Kotewicz <marek@parity.io>"]

View File

@ -1,6 +1,6 @@
[package]
description = "Parity Ethereum CLI Signer Tool"
homepage = "http://parity.io"
description = "Open Ethereum CLI Signer Tool"
repository = "https://github.com/OpenEthereum/open-ethereum"
license = "GPL-3.0"
name = "cli-signer"
version = "1.4.0"

View File

@ -1,6 +1,6 @@
[package]
description = "Parity Ethereum RPC Client"
homepage = "http://parity.io"
description = "Open Ethereum RPC Client"
repository = "https://github.com/OpenEthereum/open-ethereum"
license = "GPL-3.0"
name = "parity-rpc-client"
version = "1.4.0"

View File

@ -1,5 +1,5 @@
[package]
description = "Parity Ethereum Ethash & ProgPoW Implementations"
description = "Open Ethereum Ethash & ProgPoW Implementations"
name = "ethash"
version = "1.12.0"
authors = ["Parity Technologies <admin@parity.io>"]

View File

@ -264,7 +264,7 @@ fn hash_compute(light: &Light, full_size: usize, header_hash: &H256, nonce: u64)
unsafe { make_const_array!(MIX_WORDS / 4, &mut buf.compress_bytes) };
#[cfg(target_endian = "big")]
{
compile_error!("parity-ethereum currently only supports little-endian targets");
compile_error!("open-ethereum currently only supports little-endian targets");
}
// Compress mix

View File

@ -1,6 +1,6 @@
[package]
description = "Parity Ethereum (EthCore) Library"
homepage = "http://parity.io"
description = "Open Ethereum (EthCore) Library"
repository = "https://github.com/OpenEthereum/open-ethereum"
license = "GPL-3.0"
name = "ethcore"
version = "1.12.0"

View File

@ -1,6 +1,6 @@
[package]
description = "Parity Ethereum Blockchain Database, Test Generator, Configuration, Caching, Importing Blocks, and Block Information"
homepage = "http://parity.io"
description = "Open Ethereum Blockchain Database, Test Generator, Configuration, Caching, Importing Blocks, and Block Information"
repository = "https://github.com/OpenEthereum/open-ethereum"
license = "GPL-3.0"
name = "ethcore-blockchain"
version = "0.1.0"

View File

@ -1,5 +1,5 @@
[package]
description = "Parity Ethereum (EthCore) Contract Calls and Blockchain Service & Registry Information"
description = "Open Ethereum (EthCore) Contract Calls and Blockchain Service & Registry Information"
name = "ethcore-call-contract"
version = "0.1.0"
license = "GPL-3.0"

View File

@ -1,6 +1,6 @@
[package]
description = "Ethcore DB access utilities"
homepage = "http://parity.io"
repository = "https://github.com/OpenEthereum/open-ethereum"
license = "GPL-3.0"
name = "ethcore-db"
version = "0.1.0"

View File

@ -14,7 +14,7 @@
// You should have received a copy of the GNU General Public License
// along with Open Ethereum. If not, see <http://www.gnu.org/licenses/>.
//! Parity Ethereum database access utilities.
//! Open Ethereum database access utilities.
#![warn(missing_docs)]

View File

@ -1,5 +1,5 @@
[package]
description = "Parity Ethereum Virtual Machine (EVM) Rust Implementation"
description = "Open Ethereum Virtual Machine (EVM) Rust Implementation"
name = "evm"
version = "0.1.0"
authors = ["Parity Technologies <admin@parity.io>"]

View File

@ -1,6 +1,6 @@
[package]
description = "Parity Ethereum (EthCore) Light Client Implementation (Block Import IO Service, Blockchain Data Fetching, Light Client Header Chain Storage, Parity Light Protocol (PLP) Provider, Light Transaction Queue, CHT Definitions, Light Client Data Cache), Parity Light Protocol (PLP) Implementation, P2P Network I/O and Event Context Generalization, Peer Error Handling & Punishment, Request Load Timer & Distribution Manager, Pending Request Set Storage, Request Credit Management, Light Client Request Types, Request Chain Builder Utility, On-demand Chain Request Service over LES (for RPCs), ResponseGuard Implementation)"
homepage = "http://parity.io"
description = "Open Ethereum (EthCore) Light Client Implementation (Block Import IO Service, Blockchain Data Fetching, Light Client Header Chain Storage, Parity Light Protocol (PLP) Provider, Light Transaction Queue, CHT Definitions, Light Client Data Cache), Parity Light Protocol (PLP) Implementation, P2P Network I/O and Event Context Generalization, Peer Error Handling & Punishment, Request Load Timer & Distribution Manager, Pending Request Set Storage, Request Credit Management, Light Client Request Types, Request Chain Builder Utility, On-demand Chain Request Service over LES (for RPCs), ResponseGuard Implementation)"
repository = "https://github.com/OpenEthereum/open-ethereum"
license = "GPL-3.0"
name = "ethcore-light"
version = "1.12.0"

View File

@ -1,6 +1,6 @@
[package]
description = "Parity Smart Contract based Node Filter, Manage Permissions of Network Connections"
homepage = "http://parity.io"
repository = "https://github.com/OpenEthereum/open-ethereum"
license = "GPL-3.0"
name = "node-filter"
version = "1.12.0"

View File

@ -1,5 +1,5 @@
[package]
description = "Parity Ethereum (EthCore) Client & Network Service Creation & Registration with the I/O Subsystem"
description = "Open Ethereum (EthCore) Client & Network Service Creation & Registration with the I/O Subsystem"
name = "ethcore-service"
version = "0.1.0"
authors = ["Parity Technologies <admin@parity.io>"]

View File

@ -14,7 +14,7 @@
// You should have received a copy of the GNU General Public License
// along with Open Ethereum. If not, see <http://www.gnu.org/licenses/>.
//! Load chain specifications for all chains supported by the parity-ethereum client.
//! Load chain specifications for all chains supported by the open-ethereum client.
macro_rules! bundle_release_spec {
($($path: expr => $name: ident), *) => {

View File

@ -1,5 +1,5 @@
[package]
description = "Parity Ethereum (EthCore) Blockchain Synchronization (Strategy, Blockchain Downloader, Blockchain Synchronization Implementation of Ethereum Protocol, Propagating Data to Peers, Requesting Data from Peers, Supplying Data in Response to Peer Requests, Handling Peer Responses, Matching Packet IDs and Protocol, Light Client Synchronization of Header Chain, Header Download State Machine, Light Decoding & Verifying Header Responses, Private Transaction Handling, Synchronization Snapshot Service to Download & Verify Block Chunks, Peer Connection Management and Blockchain Client I/O Interface for Synchronization Handler, Transaction Statistics)"
description = "Open Ethereum (EthCore) Blockchain Synchronization (Strategy, Blockchain Downloader, Blockchain Synchronization Implementation of Ethereum Protocol, Propagating Data to Peers, Requesting Data from Peers, Supplying Data in Response to Peer Requests, Handling Peer Responses, Matching Packet IDs and Protocol, Light Client Synchronization of Header Chain, Header Download State Machine, Light Decoding & Verifying Header Responses, Private Transaction Handling, Synchronization Snapshot Service to Download & Verify Block Chunks, Peer Connection Management and Blockchain Client I/O Interface for Synchronization Handler, Transaction Statistics)"
name = "ethcore-sync"
version = "1.12.0"
license = "GPL-3.0"

View File

@ -600,7 +600,7 @@ mod tests {
io.peers_info.insert(2, "Parity-Ethereum/v2.6.0/linux/rustc".to_owned());
// and peer#3 is Parity, accepting service transactions
insert_dummy_peer(&mut sync, 3, block_hash);
io.peers_info.insert(3, "Parity-Ethereum/ABCDEFGH/v2.7.3/linux/rustc".to_owned());
io.peers_info.insert(3, "Open-Ethereum/ABCDEFGH/v2.7.3/linux/rustc".to_owned());
// and new service transaction is propagated to peers
SyncPropagator::propagate_new_transactions(&mut sync, &mut io, || true);
@ -624,7 +624,7 @@ mod tests {
// when peer#1 is Parity, accepting service transactions
insert_dummy_peer(&mut sync, 1, block_hash);
io.peers_info.insert(1, "Parity-Ethereum/v2.6.0/linux/rustc".to_owned());
io.peers_info.insert(1, "Open-Ethereum/v2.6.0/linux/rustc".to_owned());
// and service + non-service transactions are propagated to peers
SyncPropagator::propagate_new_transactions(&mut sync, &mut io, || true);

View File

@ -147,7 +147,7 @@ pub struct Call {
/// This is essentially an `Option<CallType>`, but with a custom
/// `rlp` en/de-coding which preserves backwards compatibility with
/// the older encodings used in parity-ethereum versions < 2.7 and 2.7.0.
/// the older encodings used in open-ethereum versions < 2.7 and 2.7.0.
#[derive(Debug, Clone, Copy, PartialEq)]
pub struct BackwardsCompatibleCallType(pub Option<CallType>);

View File

@ -1,5 +1,5 @@
[package]
description = "Parity Ethereum Common Types"
description = "Open Ethereum Common Types"
name = "common-types"
version = "0.1.0"
authors = ["Parity Technologies <admin@parity.io>"]

View File

@ -14,7 +14,7 @@
// You should have received a copy of the GNU General Public License
// along with Open Ethereum. If not, see <http://www.gnu.org/licenses/>.
//! General error types for use in parity-ethereum.
//! General error types for use in open-ethereum.
mod block_error;
mod engine_error;

View File

@ -25,7 +25,7 @@
//! structures from that crate.
//!
//! NOTE If you can specify your data type in the same crate as your trait, please do that.
//! Don't treat this crate as a bag for any types that we use in Parity Ethereum.
//! Don't treat this crate as a bag for any types that we use in Open Ethereum.
//! This one is reserved for types that are shared heavily (like transactions),
//! historically this contains types extracted from `ethcore` crate, if possible
//! we should try to dissolve that crate in favour of more fine-grained crates,

View File

@ -45,10 +45,10 @@ Display result state dump in standardized JSON format.
-h, --help Display this message and exit.
```
## Parity Ethereum toolchain
_This project is a part of the Parity Ethereum toolchain._
## Open Ethereum toolchain
_This project is a part of the Open Ethereum toolchain._
- [evmbin](https://github.com/OpenEthereum/open-ethereum/blob/master/evmbin/) - EVM implementation for Parity Ethereum.
- [ethabi](https://github.com/paritytech/ethabi) - Parity Ethereum function calls encoding.
- [ethstore](https://github.com/OpenEthereum/open-ethereum/blob/master/accounts/ethstore) - Parity Ethereum key management.
- [ethkey](https://github.com/OpenEthereum/open-ethereum/blob/master/accounts/ethkey) - Parity Ethereum keys generator.
- [evmbin](https://github.com/OpenEthereum/open-ethereum/blob/master/evmbin/) - EVM implementation for Open Ethereum
- [ethabi](https://github.com/paritytech/ethabi) - Open Ethereum function calls encoding.
- [ethstore](https://github.com/OpenEthereum/open-ethereum/blob/master/accounts/ethstore) - Open Ethereum key management.
- [ethkey](https://github.com/OpenEthereum/open-ethereum/blob/master/accounts/ethkey) - Open Ethereum keys generator.

View File

@ -19,12 +19,12 @@
//! ## Overview
//!
//! The Parity EVM interpreter binary is a tool in the Parity
//! Ethereum toolchain. It is an EVM implementation for Parity Ethereum that
//! Ethereum toolchain. It is an EVM implementation for Open Ethereum that
//! is used to run a standalone version of the EVM interpreter.
//!
//! ## Usage
//!
//! The evmbin tool is not distributed with regular Parity Ethereum releases
//! The evmbin tool is not distributed with regular Open Ethereum releases
//! so you need to build it from source and run it like so:
//!
//! ```bash

View File

@ -1,5 +1,5 @@
[package]
description = "Parity Ethereum JSON Deserialization"
description = "Open Ethereum JSON Deserialization"
name = "ethjson"
version = "0.1.0"
authors = ["Parity Technologies <admin@parity.io>"]

View File

@ -1,7 +1,7 @@
[package]
description = "Parity Ethereum Miner Interface."
description = "Open Ethereum Miner Interface."
name = "ethcore-miner"
homepage = "http://parity.io"
repository = "https://github.com/OpenEthereum/open-ethereum"
license = "GPL-3.0"
version = "1.12.0"
authors = ["Parity Technologies <admin@parity.io>"]

View File

@ -1,6 +1,6 @@
[package]
description = "Fetch current ETH price"
homepage = "http://parity.io"
repository = "https://github.com/OpenEthereum/open-ethereum"
license = "GPL-3.0"
name = "price-info"
version = "1.12.0"

View File

@ -14,7 +14,7 @@
// You should have received a copy of the GNU General Public License
// along with Open Ethereum. If not, see <http://www.gnu.org/licenses/>.
//! Stratum protocol implementation for parity ethereum/bitcoin clients
//! Stratum protocol implementation for Open Ethereum/bitcoin clients
extern crate jsonrpc_tcp_server;
extern crate jsonrpc_core;

View File

@ -36,7 +36,7 @@ mod accounts {
}
pub fn prepare_account_provider(_spec: &SpecType, _dirs: &Directories, _data_dir: &str, _cfg: AccountsConfig, _passwords: &[Password]) -> Result<AccountProvider, String> {
warn!("Note: Your instance of Parity Ethereum is running without account support. Some CLI options are ignored.");
warn!("Note: Your instance of Open Ethereum is running without account support. Some CLI options are ignored.");
Ok(AccountProvider)
}

View File

@ -1,4 +1,4 @@
Parity Ethereum Client.
Open Ethereum Client.
By Wood/Paronyan/Kotewicz/Drwięga/Volf/Greeff
Habermeier/Czaban/Gotchac/Redman/Nikolsky
Schoedon/Tang/Adolfsson/Silva/Palm/Hirsz et al.

View File

@ -1,4 +1,4 @@
Parity Ethereum Client.
Open Ethereum Client.
version {}
Copyright 2015-2020 Parity Technologies (UK) Ltd.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.

View File

@ -104,7 +104,7 @@ impl Configuration {
/// # Example
///
/// ```
/// let _cfg = parity_ethereum::Configuration::parse_cli(&["--light", "--chain", "kovan"]).unwrap();
/// let _cfg = open_ethereum::Configuration::parse_cli(&["--light", "--chain", "kovan"]).unwrap();
/// ```
pub fn parse_cli<S: AsRef<str>>(command: &[S]) -> Result<Self, ArgsError> {
let config = Configuration {
@ -762,7 +762,7 @@ impl Configuration {
ret.client_version = {
let mut client_version = version();
if !self.args.arg_identity.is_empty() {
// Insert name after the "Parity-Ethereum/" at the beginning of version string.
// Insert name after the "Open-Ethereum/" at the beginning of version string.
let idx = client_version.find('/').unwrap_or(client_version.len());
client_version.insert_str(idx, &format!("/{}", self.args.arg_identity));
}
@ -1748,7 +1748,7 @@ mod tests {
match conf.into_command().unwrap().cmd {
Cmd::Run(c) => {
assert_eq!(c.name, "Somebody");
assert!(c.net_conf.client_version.starts_with("Parity-Ethereum/Somebody/"));
assert!(c.net_conf.client_version.starts_with("Open-Ethereum/Somebody/"));
}
_ => panic!("Should be Cmd::Run"),
}

View File

@ -1,5 +1,5 @@
[package]
description = "Parity Ethereum Logger Implementation"
description = "Open Ethereum Logger Implementation"
name = "ethcore-logger"
version = "1.12.0"
license = "GPL-3.0"

View File

@ -24,7 +24,7 @@ extern crate fdlimit;
#[macro_use]
extern crate log;
extern crate panic_hook;
extern crate parity_ethereum;
extern crate open_ethereum;
extern crate parking_lot;
extern crate parity_daemonize;
extern crate ansi_term;
@ -45,7 +45,7 @@ use ctrlc::CtrlC;
use dir::default_hypervisor_path;
use fdlimit::raise_fd_limit;
use ethcore_logger::setup_log;
use parity_ethereum::{start, ExecutionAction};
use open_ethereum::{start, ExecutionAction};
use parity_daemonize::AsHandle;
use parking_lot::{Condvar, Mutex};
@ -187,7 +187,7 @@ fn main_direct(force_can_restart: bool) -> i32 {
let mut conf = {
let args = std::env::args().collect::<Vec<_>>();
parity_ethereum::Configuration::parse_cli(&args).unwrap_or_else(|e| e.exit())
open_ethereum::Configuration::parse_cli(&args).unwrap_or_else(|e| e.exit())
};
let logger = setup_log(&conf.logger_config()).unwrap_or_else(|e| {

View File

@ -1,5 +1,5 @@
[package]
description = "Parity Ethereum JSON-RPC Servers (WS, HTTP, IPC)"
description = "Open Ethereum JSON-RPC Servers (WS, HTTP, IPC)"
name = "parity-rpc"
version = "1.12.0"
license = "GPL-3.0"

View File

@ -14,7 +14,7 @@
// You should have received a copy of the GNU General Public License
// along with Open Ethereum. If not, see <http://www.gnu.org/licenses/>.
//! Parity Ethereum JSON-RPC Servers (WS, HTTP, IPC).
//! Open Ethereum JSON-RPC Servers (WS, HTTP, IPC).
#![warn(missing_docs, unused_extern_crates)]
#![cfg_attr(feature = "cargo-clippy", warn(clippy::all, clippy::pedantic))]

View File

@ -347,14 +347,6 @@ pub fn encryption<T: fmt::Debug>(error: T) -> Error {
}
}
pub fn encoding<T: fmt::Debug>(error: T) -> Error {
Error {
code: ErrorCode::ServerError(codes::ENCODING_ERROR),
message: "Encoding error.".into(),
data: Some(Value::String(format!("{:?}", error))),
}
}
pub fn database<T: fmt::Debug>(error: T) -> Error {
Error {
code: ErrorCode::ServerError(codes::DATABASE_ERROR),

View File

@ -94,7 +94,7 @@ impl SyncProvider for TestSyncProvider {
},
PeerInfo {
id: None,
client_version: ClientVersion::from("Parity-Ethereum/2/v2.4.0/linux/rustc"),
client_version: ClientVersion::from("Open-Ethereum/2/v2.7.0/linux/rustc"),
capabilities: vec!["eth/64".to_owned(), "eth/65".to_owned()],
remote_address: "Handshake".to_owned(),
local_address: "127.0.0.1:3333".to_owned(),

View File

@ -255,7 +255,76 @@ fn rpc_parity_net_peers() {
let io = deps.default_client();
let request = r#"{"jsonrpc": "2.0", "method": "parity_netPeers", "params":[], "id": 1}"#;
let response = r#"{"jsonrpc":"2.0","result":{"active":0,"connected":120,"max":50,"peers":[{"caps":["eth/63","eth/64"],"id":"node1","name":{"ParityClient":{"can_handle_large_requests":true,"compiler":"rustc","identity":"1","name":"Parity-Ethereum","os":"linux","semver":"2.4.0"}},"network":{"localAddress":"127.0.0.1:8888","remoteAddress":"127.0.0.1:7777"},"protocols":{"eth":{"difficulty":"0x28","head":"0000000000000000000000000000000000000000000000000000000000000032","version":63},"pip":null}},{"caps":["eth/64","eth/65"],"id":null,"name":{"ParityClient":{"can_handle_large_requests":true,"compiler":"rustc","identity":"2","name":"Parity-Ethereum","os":"linux","semver":"2.4.0"}},"network":{"localAddress":"127.0.0.1:3333","remoteAddress":"Handshake"},"protocols":{"eth":{"difficulty":null,"head":"000000000000000000000000000000000000000000000000000000000000003c","version":65},"pip":null}}]},"id":1}"#;
let response = r#"
{
"jsonrpc": "2.0",
"result": {
"active": 0,
"connected": 120,
"max": 50,
"peers": [
{
"caps": [
"eth/63",
"eth/64"
],
"id": "node1",
"name": {
"ParityClient": {
"can_handle_large_requests": true,
"compiler": "rustc",
"identity": "1",
"name": "Parity-Ethereum",
"os": "linux",
"semver": "2.4.0"
}
},
"network": {
"localAddress": "127.0.0.1:8888",
"remoteAddress": "127.0.0.1:7777"
},
"protocols": {
"eth": {
"difficulty": "0x28",
"head": "0000000000000000000000000000000000000000000000000000000000000032",
"version": 63
},
"pip": null
}
},
{
"caps": [
"eth/64",
"eth/65"
],
"id": null,
"name": {
"ParityClient": {
"can_handle_large_requests": true,
"compiler": "rustc",
"identity": "2",
"name": "Open-Ethereum",
"os": "linux",
"semver": "2.7.0"
}
},
"network": {
"localAddress": "127.0.0.1:3333",
"remoteAddress": "Handshake"
},
"protocols": {
"eth": {
"difficulty": null,
"head": "000000000000000000000000000000000000000000000000000000000000003c",
"version": 65
},
"pip": null
}
}
]
},
"id": 1
}"#.replace(char::is_whitespace, "");
assert_eq!(io.handle_request_sync(request), Some(response.to_owned()));
}

View File

@ -7,7 +7,7 @@
Builds a lightweight non-root Parity docker image:
```
git clone https://github.com/OpenEthereum/open-ethereum.git
cd parity-ethereum
cd open-ethereum
./scripts/docker/centos/build.sh
```

View File

@ -2,7 +2,7 @@ FROM centos:latest
WORKDIR /build
ADD . /build/parity-ethereum
ADD . /build/open-ethereum
RUN yum -y update && \
yum install -y systemd-devel git make gcc-c++ gcc file binutils && \
@ -17,9 +17,9 @@ RUN yum -y update && \
gcc -v && \
g++ -v && \
cmake --version && \
cd parity-ethereum && \
cd open-ethereum && \
cargo build --verbose --release --features final && \
strip /build/parity-ethereum/target/release/parity && \
file /build/parity-ethereum/target/release/parity
strip /build/open-ethereum/target/release/parity && \
file /build/open-ethereum/target/release/parity

View File

@ -13,7 +13,7 @@ docker build --no-cache -t $PARITY_IMAGE_REPO:$PARITY_BUILDER_IMAGE_TAG-$(git lo
echo Creating $PARITY_BUILDER_IMAGE_TAG-$(git log -1 --format="%H"), extracting binary
docker create --name extract $PARITY_IMAGE_REPO:$PARITY_BUILDER_IMAGE_TAG-$(git log -1 --format="%H")
mkdir scripts/docker/centos/parity
docker cp extract:/build/parity-ethereum/target/release/parity scripts/docker/centos/parity
docker cp extract:/build/open-ethereum/target/release/parity scripts/docker/centos/parity
echo Building $PARITY_IMAGE_REPO:$PARITY_RUNNER_IMAGE_TAG
docker build --no-cache -t $PARITY_IMAGE_REPO:$PARITY_RUNNER_IMAGE_TAG scripts/docker/centos/ -f scripts/docker/centos/Dockerfile

View File

@ -7,7 +7,7 @@ ARG BUILD_DATE
LABEL io.parity.image.authors="devops-team@parity.io" \
io.parity.image.vendor="Parity Technologies" \
io.parity.image.title="parity/parity" \
io.parity.image.description="Parity Ethereum. The Fastest and most Advanced Ethereum Client." \
io.parity.image.description="Open Ethereum. The Fastest and most Advanced Ethereum Client." \
io.parity.image.source="https://github.com/OpenEthereum/open-ethereum/blob/${VCS_REF}/\
scripts/docker/hub/Dockerfile" \
io.parity.image.documentation="https://wiki.parity.io/Parity-Ethereum" \
@ -33,7 +33,7 @@ RUN set -eux; \
WORKDIR /home/parity
# add parity-ethereum binary to docker image
# add open-ethereum binary to docker image
COPY artifacts/x86_64-unknown-linux-gnu/parity /bin/parity
COPY tools/check_sync.sh /check_sync.sh

View File

@ -4,8 +4,8 @@ set -e # fail on any error
VERSION=$(cat ./tools/VERSION)
TRACK=$(cat ./tools/TRACK)
echo "Parity Ethereum version = ${VERSION}"
echo "Parity Ethereum track = ${TRACK}"
echo "Open Ethereum version = ${VERSION}"
echo "Open Ethereum track = ${TRACK}"
test "$Docker_Hub_User_Parity" -a "$Docker_Hub_Pass_Parity" \
|| ( echo "no docker credentials provided"; exit 1 )

View File

@ -1,49 +0,0 @@
#!/bin/bash
set -e # fail on any error
set -u # treat unset variables as error
export CC="sccache "$CC
export CXX="sccache "$CXX
echo "__________Show ENVIROMENT__________"
echo "CARGO_TARGET: " $CARGO_TARGET
echo "CC: " $CC
echo "CXX: " $CXX
#strip ON
export RUSTFLAGS+=" -C link-arg=-s"
echo "_____ Building target: "$CARGO_TARGET" _____"
if [ "${CARGO_TARGET}" = "x86_64-unknown-linux-gnu" ] || [ "${CARGO_TARGET}" = "x86_64-apple-darwin" ]
then
# NOTE: Enables the aes-ni instructions for RustCrypto dependency.
# If you change this please remember to also update .cargo/config
export RUSTFLAGS+=" -C target-feature=+aes,+sse2,+ssse3"
fi
time cargo build --target $CARGO_TARGET --verbose --color=always --release --features final
time cargo build --target $CARGO_TARGET --verbose --color=always --release -p evmbin
time cargo build --target $CARGO_TARGET --verbose --color=always --release -p ethstore-cli
time cargo build --target $CARGO_TARGET --verbose --color=always --release -p ethkey-cli
echo "_____ Post-processing binaries _____"
rm -rf artifacts/*
mkdir -p artifacts/$CARGO_TARGET
cd artifacts/$CARGO_TARGET
cp -v ../../target/$CARGO_TARGET/release/parity ./parity
cp -v ../../target/$CARGO_TARGET/release/parity-evm ./parity-evm
cp -v ../../target/$CARGO_TARGET/release/ethstore ./ethstore
cp -v ../../target/$CARGO_TARGET/release/ethkey ./ethkey
echo "_____ Calculating checksums _____"
for binary in $(ls)
do
rhash --sha256 $binary -o $binary.sha256 #do we still need this hash (SHA2)?
if [[ $CARGO_TARGET == *"x86_64"* ]];
then
./parity tools hash $binary > $binary.sha3
else
echo ">[WARN] ${binary} cannot be hashed with cross-compiled binary (keccak256)"
fi
done
#show sccache statistics
sccache --show-stats

View File

@ -1,52 +0,0 @@
#!/bin/bash
set -e # fail on any error
set -u # treat unset variables as error
set INCLUDE="C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Include;C:\vs2015\VC\include;C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt"
set LIB="C:\vs2015\VC\lib;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x64"
sccache -s
echo "__________Show ENVIROMENT__________"
echo "CI_SERVER_NAME: " $CI_SERVER_NAME
echo "CARGO_HOME: " $CARGO_HOME
echo "CARGO_TARGET: " $CARGO_TARGET
echo "RUSTC_WRAPPER: " $RUSTC_WRAPPER
echo "SCCACHE_DIR: " $SCCACHE_DIR
echo "_____ Building target: "$CARGO_TARGET" _____"
# NOTE: Enables the aes-ni instructions for RustCrypto dependency.
# If you change this please remember to also update .cargo/config
export RUSTFLAGS=" -Ctarget-feature=+aes,+sse2,+ssse3 -Ctarget-feature=+crt-static"
time cargo build --target $CARGO_TARGET --verbose --release --features final
time cargo build --target $CARGO_TARGET --verbose --release -p evmbin
time cargo build --target $CARGO_TARGET --verbose --release -p ethstore-cli
time cargo build --target $CARGO_TARGET --verbose --release -p ethkey-cli
echo "__________Sign binaries__________"
scripts/gitlab/sign-win.cmd $keyfile $certpass target/$CARGO_TARGET/release/parity.exe
scripts/gitlab/sign-win.cmd $keyfile $certpass target/$CARGO_TARGET/release/parity-evm.exe
scripts/gitlab/sign-win.cmd $keyfile $certpass target/$CARGO_TARGET/release/ethstore.exe
scripts/gitlab/sign-win.cmd $keyfile $certpass target/$CARGO_TARGET/release/ethkey.exe
echo "_____ Post-processing binaries _____"
rm -rf artifacts
mkdir -p artifacts
cd artifacts
mkdir -p $CARGO_TARGET
cd $CARGO_TARGET
cp --verbose ../../target/$CARGO_TARGET/release/parity.exe ./parity.exe
cp --verbose ../../target/$CARGO_TARGET/release/parity-evm.exe ./parity-evm.exe
cp --verbose ../../target/$CARGO_TARGET/release/ethstore.exe ./ethstore.exe
cp --verbose ../../target/$CARGO_TARGET/release/ethkey.exe ./ethkey.exe
echo "_____ Calculating checksums _____"
for binary in $(ls)
do
rhash --sha256 $binary -o $binary.sha256
./parity.exe tools hash $binary > $binary.sha3
done
cp parity.exe.sha256 parity.sha256
cp parity.exe.sha3 parity.sha3
sccache -s

View File

@ -1,33 +0,0 @@
#!/bin/bash
set -e # fail on any error
set -u # treat unset variables as error
echo "__________Register Release__________"
DATA="secret=$RELEASES_SECRET"
echo "Pushing release to Mainnet"
./tools/safe-curl.sh $DATA "https://update.parity.io/push-release/${SCHEDULE_TAG:-${CI_COMMIT_REF_NAME}}/$CI_COMMIT_SHA"
cd artifacts
ls -l | sort -k9
filetest=( * )
echo ${filetest[*]}
for DIR in "${filetest[@]}";
do
cd $DIR
if [[ $DIR =~ "windows" ]];
then
WIN=".exe";
else
WIN="";
fi
sha3=$(cat parity.sha3 | awk '{print $1}')
case $DIR in
x86_64* )
DATA="commit=$CI_COMMIT_SHA&sha3=$sha3&filename=parity$WIN&secret=$RELEASES_SECRET"
../../tools/safe-curl.sh $DATA "https://update.parity.io/push-build/${SCHEDULE_TAG:-${CI_COMMIT_REF_NAME}}/$DIR"
;;
esac
cd ..
done

View File

@ -8,7 +8,7 @@ TRACK=$(cat ./tools/TRACK)
echo "Track is: ${TRACK}"
VERSION=$(cat ./tools/VERSION)
SNAP_PACKAGE="parity_"$VERSION"_"$BUILD_ARCH".snap"
# Choose snap release channel based on parity ethereum version track
# Choose snap release channel based on Open Ethereum version track
case ${TRACK} in
nightly) export GRADE="devel" CHANNEL="edge";;
stable) export GRADE="stable" CHANNEL="stable";;

View File

@ -1,19 +0,0 @@
#!/usr/bin/env bash
set -eu
DATA=$1
ADDRESS=$2
CODE=$(curl -o out.txt -w '%{http_code}' --data $DATA $ADDRESS)
cat out.txt && rm out.txt
echo "\n"
if [[ $CODE -eq 200 ]]; then
echo 'Pushed to updater service.';
elif [[ $CODE -eq 202 ]]; then
echo 'Updater service ignored request.';
else
echo 'Unable to push info to updater service.';
exit 2
fi

View File

@ -1 +0,0 @@
@signtool sign /f %1 /p %2 /tr http://timestamp.comodoca.com /du https://parity.io %3

View File

@ -1,24 +0,0 @@
#!/bin/bash
# ARGUMENT $1 Rust flavor to run test with (stable/beta/nightly)
echo "________Running test-linux.sh________"
set -e # fail on any error
set -u # treat unset variables as error
export CC="sccache "$CC
export CXX="sccache "$CXX
FEATURES="json-tests"
OPTIONS="--release"
#use nproc `linux only
THREADS=$(nproc)
rustup default $1
rustup show
echo "________Running Parity Full Test Suite________"
# Why are we using RUSTFLAGS? See https://github.com/OpenEthereum/open-ethereum/pull/10719
CARGO_INCREMENTAL=0 RUSTFLAGS="-C opt-level=3 -C overflow-checks=on -C debuginfo=2 -Ctarget-feature=+aes,+sse2,+ssse3" time cargo test $OPTIONS --features "$FEATURES" --locked --all --target $CARGO_TARGET --verbose --color=never -- --test-threads $THREADS
#show sccache statistics
sccache --show-stats

View File

@ -1,29 +0,0 @@
#!/bin/bash
set -e # fail on any error
set -u # treat unset variables as error
echo "________Running validate_chainspecs.sh________"
ERR=0
echo "________Validate chainspecs________"
time cargo build --release -p chainspec --verbose --color=always
for spec in ethcore/res/*.json; do
if ! ./target/release/chainspec "$spec"; then ERR=1; fi
done
for spec in ethcore/res/ethereum/*.json; do
if ! ./target/release/chainspec "$spec"; then ERR=1; fi
done
echo "________Mainnet contains Istanbul EIPs________"
for eip in $(grep --only-matching "eip.*Transition" ethcore/res/ethereum/istanbul_test.json); do
if ! grep -q $eip ethcore/res/ethereum/foundation.json; then
echo "ERROR: $eip is missing in the foundation json spec"
ERR=1
fi
done
#show sccache statistics
sccache --show-stats
exit $ERR

View File

@ -1,5 +1,5 @@
[Unit]
Description=Parity Ethereum Daemon
Description=Open Ethereum Daemon
After=network.target
[Service]

View File

@ -1,7 +1,7 @@
[Desktop Entry]
Type=Application
Encoding=UTF-8
Name=Parity Ethereum
Name=Open Ethereum
Comment=The fastest and most advanced Ethereum client.
Exec=parity
Icon=/usr/share/pixmaps/icon.png

View File

@ -1,6 +1,6 @@
[package]
description = "Fetching hash-addressed content."
homepage = "http://parity.io"
repository = "https://github.com/OpenEthereum/open-ethereum"
license = "GPL-3.0"
name = "parity-hash-fetch"
version = "1.12.0"

View File

@ -1,6 +1,6 @@
[package]
description = "HTTP/HTTPS fetching library"
homepage = "http://parity.io"
repository = "https://github.com/OpenEthereum/open-ethereum"
license = "GPL-3.0"
name = "fetch"
version = "0.1.0"

View File

@ -2,7 +2,7 @@
name = "ethcore-io"
description = "Ethcore IO library"
version = "1.12.0"
homepage = "http://parity.io"
repository = "https://github.com/OpenEthereum/open-ethereum"
license = "GPL-3.0"
authors = ["Parity Technologies <admin@parity.io>"]
edition = "2018"

View File

@ -1,6 +1,6 @@
[package]
description = "Atomically cached len(), for use with collections contained in parking_lot Mutex and RwLock"
homepage = "http://parity.io"
repository = "https://github.com/OpenEthereum/open-ethereum"
license = "GPL-3.0"
name = "len-caching-lock"
version = "0.1.1"

View File

@ -1,6 +1,6 @@
[package]
description = "DevP2P implementation of the ethcore network library"
homepage = "http://parity.io"
repository = "https://github.com/OpenEthereum/open-ethereum"
license = "GPL-3.0"
name = "ethcore-network-devp2p"
version = "1.12.0"

View File

@ -584,7 +584,7 @@ impl<'a> Discovery<'a> {
None
} else {
if request.deprecated_echo_hash == echo_hash {
trace!(target: "discovery", "Got Pong from an old parity-ethereum version.");
trace!(target: "discovery", "Got Pong from an old open-ethereum version.");
}
Some((request.node.clone(), request.reason.clone()))
}

View File

@ -1,6 +1,6 @@
[package]
description = "Ethcore network library"
homepage = "http://parity.io"
repository = "https://github.com/OpenEthereum/open-ethereum"
license = "GPL-3.0"
name = "ethcore-network"
version = "1.12.0"

View File

@ -22,8 +22,8 @@ use semver::Version;
use std::fmt;
/// Parity client string prefix
const LEGACY_CLIENT_ID_PREFIX: &str = "Parity";
const PARITY_CLIENT_ID_PREFIX: &str = "Parity-Ethereum";
const LEGACY_CLIENT_ID_PREFIX: &str = "Parity-Ethereum";
const CURRENT_CLIENT_ID_PREFIX: &str = "Open-Ethereum";
lazy_static! {
/// Parity versions starting from this will accept block bodies requests
@ -153,7 +153,7 @@ impl ClientCapabilities for ClientVersion {
}
fn is_parity(client_id: &str) -> bool {
client_id.starts_with(LEGACY_CLIENT_ID_PREFIX) || client_id.starts_with(PARITY_CLIENT_ID_PREFIX)
client_id.starts_with(LEGACY_CLIENT_ID_PREFIX) || client_id.starts_with(CURRENT_CLIENT_ID_PREFIX)
}
/// Parse known parity formats. Recognizes either a short format with four fields
@ -260,7 +260,7 @@ pub mod tests {
fn make_default_version_string() -> String {
format!(
"{}/v{}/{}/{}",
PARITY_CLIENT_ID_PREFIX,
CURRENT_CLIENT_ID_PREFIX,
PARITY_CLIENT_SEMVER,
PARITY_CLIENT_OS,
PARITY_CLIENT_COMPILER
@ -270,7 +270,7 @@ pub mod tests {
fn make_default_long_version_string() -> String {
format!(
"{}/{}/v{}/{}/{}",
PARITY_CLIENT_ID_PREFIX,
CURRENT_CLIENT_ID_PREFIX,
PARITY_CLIENT_IDENTITY,
PARITY_CLIENT_SEMVER,
PARITY_CLIENT_OS,
@ -281,7 +281,7 @@ pub mod tests {
fn make_multitoken_identity_long_version_string() -> String {
format!(
"{}/{}/v{}/{}/{}",
PARITY_CLIENT_ID_PREFIX,
CURRENT_CLIENT_ID_PREFIX,
PARITY_CLIENT_MULTITOKEN_IDENTITY,
PARITY_CLIENT_SEMVER,
PARITY_CLIENT_OS,
@ -292,7 +292,7 @@ pub mod tests {
fn make_old_semver_version_string() -> String {
format!(
"{}/v{}/{}/{}",
PARITY_CLIENT_ID_PREFIX,
CURRENT_CLIENT_ID_PREFIX,
PARITY_CLIENT_OLD_SEMVER,
PARITY_CLIENT_OS,
PARITY_CLIENT_COMPILER
@ -318,7 +318,7 @@ pub mod tests {
let client_version_string = make_default_version_string();
if let ClientVersion::ParityClient(client_version) = ClientVersion::from(client_version_string.as_str()) {
assert_eq!(client_version.name(), PARITY_CLIENT_ID_PREFIX);
assert_eq!(client_version.name(), CURRENT_CLIENT_ID_PREFIX);
assert_eq!(*client_version.semver(), Version::parse(PARITY_CLIENT_SEMVER).unwrap());
assert_eq!(client_version.os(), PARITY_CLIENT_OS);
assert_eq!(client_version.compiler(), PARITY_CLIENT_COMPILER);
@ -332,7 +332,7 @@ pub mod tests {
let client_version_string = make_default_long_version_string();
if let ClientVersion::ParityClient(client_version) = ClientVersion::from(client_version_string.as_str()) {
assert_eq!(client_version.name(), PARITY_CLIENT_ID_PREFIX);
assert_eq!(client_version.name(), CURRENT_CLIENT_ID_PREFIX);
assert_eq!(client_version.identity().unwrap(), PARITY_CLIENT_IDENTITY);
assert_eq!(*client_version.semver(), Version::parse(PARITY_CLIENT_SEMVER).unwrap());
assert_eq!(client_version.os(), PARITY_CLIENT_OS);
@ -347,7 +347,7 @@ pub mod tests {
let client_version_string = make_multitoken_identity_long_version_string();
if let ClientVersion::ParityClient(client_version) = ClientVersion::from(client_version_string.as_str()) {
assert_eq!(client_version.name(), PARITY_CLIENT_ID_PREFIX);
assert_eq!(client_version.name(), CURRENT_CLIENT_ID_PREFIX);
assert_eq!(client_version.identity().unwrap(), PARITY_CLIENT_MULTITOKEN_IDENTITY);
assert_eq!(*client_version.semver(), Version::parse(PARITY_CLIENT_SEMVER).unwrap());
assert_eq!(client_version.os(), PARITY_CLIENT_OS);
@ -362,7 +362,7 @@ pub mod tests {
let client_version_string: String = make_default_version_string();
if let ClientVersion::ParityClient(client_version) = ClientVersion::from(client_version_string.as_str()) {
assert_eq!(client_version.name(), PARITY_CLIENT_ID_PREFIX);
assert_eq!(client_version.name(), CURRENT_CLIENT_ID_PREFIX);
assert_eq!(*client_version.semver(), Version::parse(PARITY_CLIENT_SEMVER).unwrap());
assert_eq!(client_version.os(), PARITY_CLIENT_OS);
assert_eq!(client_version.compiler(), PARITY_CLIENT_COMPILER);
@ -376,7 +376,7 @@ pub mod tests {
// This is invalid because version has no leading 'v'
let client_version_string = format!(
"{}/{}/{}/{}",
PARITY_CLIENT_ID_PREFIX,
CURRENT_CLIENT_ID_PREFIX,
PARITY_CLIENT_SEMVER,
PARITY_CLIENT_OS,
PARITY_CLIENT_COMPILER);
@ -392,7 +392,7 @@ pub mod tests {
pub fn client_version_when_parity_format_without_identity_and_missing_compiler_field_then_equals_parity_unknown_client_version_string() {
let client_version_string = format!(
"{}/v{}/{}",
PARITY_CLIENT_ID_PREFIX,
CURRENT_CLIENT_ID_PREFIX,
PARITY_CLIENT_SEMVER,
PARITY_CLIENT_OS,
);
@ -408,7 +408,7 @@ pub mod tests {
pub fn client_version_when_parity_format_with_identity_and_missing_compiler_field_then_equals_parity_unknown_client_version_string() {
let client_version_string = format!(
"{}/{}/v{}/{}",
PARITY_CLIENT_ID_PREFIX,
CURRENT_CLIENT_ID_PREFIX,
PARITY_CLIENT_IDENTITY,
PARITY_CLIENT_SEMVER,
PARITY_CLIENT_OS,
@ -489,12 +489,12 @@ pub mod tests {
fn client_version_accepts_service_transaction_for_different_versions() {
assert!(!ClientVersion::from("Geth").accepts_service_transaction());
assert!(ClientVersion::from("Parity-Ethereum/v2.6.0/linux/rustc").accepts_service_transaction());
assert!(ClientVersion::from("Parity-Ethereum/ABCDEFGH/v2.7.3/linux/rustc").accepts_service_transaction());
assert!(ClientVersion::from("Open-Ethereum/ABCDEFGH/v2.7.3/linux/rustc").accepts_service_transaction());
}
#[test]
fn is_parity_when_parity_then_true() {
let client_id = format!("{}/", PARITY_CLIENT_ID_PREFIX);
let client_id = format!("{}/", CURRENT_CLIENT_ID_PREFIX);
assert!(is_parity(&client_id));
}

View File

@ -1,6 +1,6 @@
[package]
description = "Parity custom panic hook"
homepage = "http://parity.io"
repository = "https://github.com/OpenEthereum/open-ethereum"
license = "GPL-3.0"
name = "panic_hook"
version = "0.1.0"

View File

@ -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 Ethereum version string (via env CARGO_PKG_VERSION)
# NOTE: this value is used for Open Ethereum version string (via env CARGO_PKG_VERSION)
version = "2.8.0"
authors = ["Parity Technologies <admin@parity.io>"]
build = "build.rs"

View File

@ -45,7 +45,7 @@ pub fn platform() -> String {
pub fn version() -> String {
let commit_date = format!("{}", env!("VERGEN_COMMIT_DATE")).replace("-", "");
format!(
"Parity-Ethereum/v{}-{}-{}-{}/{}/rustc{}",
"Open-Ethereum/v{}-{}-{}-{}/{}/rustc{}",
env!("CARGO_PKG_VERSION"),
THIS_TRACK,
env!("VERGEN_SHA_SHORT"),
@ -63,7 +63,7 @@ pub fn version_data() -> Bytes {
(env!("CARGO_PKG_VERSION_MINOR").parse::<u32>().expect("Environment variables are known to be valid; qed") << 8) +
env!("CARGO_PKG_VERSION_PATCH").parse::<u32>().expect("Environment variables are known to be valid; qed");
s.append(&v);
s.append(&"Parity-Ethereum");
s.append(&"Open-Ethereum");
s.append(&generated::rustc_version());
s.append(&&Target::os()[0..2]);
s.out()