126208cc74
* version: bump stable to 2.1.7 * Adjust requests costs for light client (#9925) * PIP Table Cost relative to average peers instead of max peers * Add tracing in PIP new_cost_table * Update stat peer_count * Use number of leeching peers for Light serve costs * Fix test::light_params_load_share_depends_on_max_peers (wrong type) * Remove (now) useless test * Remove `load_share` from LightParams.Config Prevent div. by 0 * Add LEECHER_COUNT_FACTOR * PR Grumble: u64 to u32 for f64 casting * Prevent u32 overflow for avg_peer_count * Add tests for LightSync::Statistics * Fix empty steps (#9939) * Don't send empty step twice or empty step then block. * Perform basic validation of locally sealed blocks. * Don't include empty step twice. * prevent silent errors in daemon mode, closes #9367 (#9946) * Fix light client informant while syncing (#9932) * Add `is_idle` to LightSync to check importing status * Use SyncStateWrapper to make sure is_idle gets updates * Update is_major_import to use verified queue size as well * Add comment for `is_idle` * Add Debug to `SyncStateWrapper` * `fn get` -> `fn into_inner` * ci: rearrange pipeline by logic (#9970) * ci: rearrange pipeline by logic * ci: rename docs script * Add readiness check for docker container (#9804) * Update Dockerfile Since parity is built for "mission critical use", I thought other operators may see the need for this. Adding the `curl` and `jq` commands allows for an extremely simple health check to be usable in container orchestrators. For example. Here is a health check for a parity docker container running in Kubernetes. This can be setup as a readiness Probe that would prevent clustered nodes that aren't ready from serving traffic. ```bash #!/bin/bash ETH_SYNCING=$(curl -X POST --data '{"jsonrpc":"2.0","method":"eth_syncing","params":[],"id":1}' http://localhost:8545 -H 'Content-Type: application/json') RESULT=$(echo "$ETH_SYNCING | jq -r .result) if [ "$RESULT" == "false" ]; then echo "Parity is ready to start accepting traffic" exit 0 else echo "Parity is still syncing the blockchain" exit 1 fi ``` * add sync check script * Fix docker script (#9854) * Dockerfile: change source path of the newly added check_sync.sh (#9869) * Do not use the home directory as the working dir in docker (#9834) * Do not create a home directory. * Re-add -m flag * fix docker build (#9971) * bump smallvec to 0.6 in ethcore-light, ethstore and whisper (#9588) * bump smallvec to 0.6 in ethcore-light, ethstore and whisper * bump transaction-pool * Fix test. * patch cargo to use tokio-proto from git repo this makes sure we no longer depend on smallvec 0.2.1 which is affected by https://github.com/servo/rust-smallvec/issues/96 * use patched version of untrusted 0.5.1 * ci: allow audit to fail
145 lines
4.0 KiB
TOML
145 lines
4.0 KiB
TOML
[package]
|
|
description = "Parity Ethereum client"
|
|
name = "parity-ethereum"
|
|
# NOTE Make sure to update util/version/Cargo.toml as well
|
|
version = "2.1.7"
|
|
license = "GPL-3.0"
|
|
authors = ["Parity Technologies <admin@parity.io>"]
|
|
|
|
[dependencies]
|
|
blooms-db = { path = "util/blooms-db" }
|
|
log = "0.4"
|
|
env_logger = "0.5"
|
|
rustc-hex = "1.0"
|
|
docopt = "0.8"
|
|
clap = "2"
|
|
term_size = "0.3"
|
|
textwrap = "0.9"
|
|
num_cpus = "1.2"
|
|
number_prefix = "0.2"
|
|
rpassword = "1.0"
|
|
semver = "0.9"
|
|
ansi_term = "0.10"
|
|
parking_lot = "0.6"
|
|
regex = "0.2"
|
|
atty = "0.2.8"
|
|
toml = "0.4"
|
|
serde = "1.0"
|
|
serde_json = "1.0"
|
|
serde_derive = "1.0"
|
|
futures = "0.1"
|
|
futures-cpupool = "0.1"
|
|
fdlimit = "0.1"
|
|
ctrlc = { git = "https://github.com/paritytech/rust-ctrlc.git" }
|
|
jsonrpc-core = { git = "https://github.com/paritytech/jsonrpc.git", branch = "parity-1.11" }
|
|
ethcore = { path = "ethcore", features = ["parity"] }
|
|
parity-bytes = "0.1"
|
|
ethcore-io = { path = "util/io" }
|
|
ethcore-light = { path = "ethcore/light" }
|
|
ethcore-logger = { path = "logger" }
|
|
ethcore-miner = { path = "miner" }
|
|
ethcore-network = { path = "util/network" }
|
|
ethcore-private-tx = { path = "ethcore/private-tx" }
|
|
ethcore-service = { path = "ethcore/service" }
|
|
ethcore-sync = { path = "ethcore/sync" }
|
|
ethcore-transaction = { path = "ethcore/transaction" }
|
|
ethereum-types = "0.4"
|
|
node-filter = { path = "ethcore/node_filter" }
|
|
ethkey = { path = "ethkey" }
|
|
rlp = { version = "0.2.4", features = ["ethereum"] }
|
|
rpc-cli = { path = "rpc_cli" }
|
|
parity-hash-fetch = { path = "hash-fetch" }
|
|
parity-ipfs-api = { path = "ipfs" }
|
|
parity-local-store = { path = "local-store" }
|
|
parity-reactor = { path = "util/reactor" }
|
|
parity-rpc = { path = "rpc" }
|
|
parity-rpc-client = { path = "rpc_client" }
|
|
parity-updater = { path = "updater" }
|
|
parity-version = { path = "util/version" }
|
|
parity-whisper = { path = "whisper" }
|
|
parity-path = "0.1"
|
|
dir = { path = "util/dir" }
|
|
panic_hook = { path = "util/panic_hook" }
|
|
keccak-hash = "0.1"
|
|
migration-rocksdb = { path = "util/migration-rocksdb" }
|
|
kvdb = "0.1"
|
|
kvdb-rocksdb = "0.1.3"
|
|
journaldb = { path = "util/journaldb" }
|
|
mem = { path = "util/mem" }
|
|
|
|
ethcore-secretstore = { path = "secret_store", optional = true }
|
|
|
|
registrar = { path = "registrar" }
|
|
|
|
[build-dependencies]
|
|
rustc_version = "0.2"
|
|
|
|
[dev-dependencies]
|
|
pretty_assertions = "0.1"
|
|
ipnetwork = "0.12.6"
|
|
tempdir = "0.3"
|
|
fake-fetch = { path = "util/fake-fetch" }
|
|
|
|
[target.'cfg(windows)'.dependencies]
|
|
winapi = { version = "0.3.4", features = ["winsock2", "winuser", "shellapi"] }
|
|
|
|
[target.'cfg(not(windows))'.dependencies]
|
|
daemonize = { git = "https://github.com/paritytech/daemonize" }
|
|
|
|
[features]
|
|
miner-debug = ["ethcore/miner-debug"]
|
|
json-tests = ["ethcore/json-tests"]
|
|
test-heavy = ["ethcore/test-heavy"]
|
|
evm-debug = ["ethcore/evm-debug"]
|
|
evm-debug-tests = ["ethcore/evm-debug-tests"]
|
|
slow-blocks = ["ethcore/slow-blocks"]
|
|
secretstore = ["ethcore-secretstore"]
|
|
final = ["parity-version/final"]
|
|
deadlock_detection = ["parking_lot/deadlock_detection"]
|
|
# to create a memory profile (requires nightly rust), use e.g.
|
|
# `heaptrack /path/to/parity <parity params>`,
|
|
# to visualize a memory profile, use `heaptrack_gui`
|
|
# or
|
|
# `valgrind --tool=massif /path/to/parity <parity params>`
|
|
# and `massif-visualizer` for visualization
|
|
memory_profiling = []
|
|
# hardcode version number 1.3.7 of parity to force an update
|
|
# in order to manually test that parity fall-over to the local version
|
|
# in case of invalid or deprecated command line arguments are entered
|
|
test-updater = ["parity-updater/test-updater"]
|
|
|
|
[lib]
|
|
path = "parity/lib.rs"
|
|
|
|
[[bin]]
|
|
path = "parity/main.rs"
|
|
name = "parity"
|
|
|
|
[profile.dev]
|
|
|
|
[profile.release]
|
|
debug = false
|
|
|
|
[workspace]
|
|
members = [
|
|
"chainspec",
|
|
"ethcore/wasm/run",
|
|
"ethcore/types",
|
|
"ethkey/cli",
|
|
"ethstore/cli",
|
|
"evmbin",
|
|
"miner",
|
|
"parity-clib",
|
|
"whisper",
|
|
"whisper/cli",
|
|
"util/triehash-ethereum",
|
|
"util/keccak-hasher",
|
|
"util/patricia-trie-ethereum",
|
|
"util/fastmap",
|
|
]
|
|
|
|
[patch.crates-io]
|
|
ring = { git = "https://github.com/paritytech/ring" }
|
|
tokio-proto = { git = "https://github.com/tokio-rs/tokio-proto.git", rev = "56c720e" }
|
|
untrusted = { git = "https://github.com/paritytech/untrusted", branch = "0.5" }
|