@5chdn 5chdn released this Nov 29, 2018 · 87 commits to master since this release

Assets 2

Parity-Ethereum 2.2.2-beta is an exciting release. Among others, it improves sync performance, peering stability, block propagation, and transaction propagation times. Also, a warp-sync no longer removes existing blocks from the database, but rather reuses locally available information to decrease sync times and reduces required bandwidth.

Before upgrading to 2.2.2, please also verify the validity of your chain specs. Parity Ethereum now denies unknown fields in the specification. To do this, use the chainspec tool:

cargo build --release -p chainspec
./target/release/chainspec /path/to/spec.json

Last but not least, JSONRPC APIs which are not yet accepted as an EIP in the eth, personal, or web3 namespace, are now considere experimental as their final specification might change in future. These APIs have to be manually enabled by explicitly running --jsonrpc-experimental.

Thanks for flying with Parity Ethereum!

System Architecture Binary SHA256 Checksum
Windows Icon by Pixel Perfect from https://www.flaticon.com/authors/pixel-perfect x64 parity.exe 6849df08e75e126a3dc66a8409b252e8b5f76352f331125c399bfce4318e5978
Apple Icon by Pixel Perfect from https://www.flaticon.com/authors/pixel-perfect x64 parity eb4fa2b28bb73ec55b36d525738e3c485569183b7d39c306fd87df7909b26a59
Linux Icon by Pixel Perfect from https://www.flaticon.com/authors/pixel-perfect x64 parity 4f6d921e850ac126e3f9fb5d26b80851374f738aaa34941dc0fa3c1d9e80bdf4
System Option - Resource
Apple Icon by Pixel Perfect from https://www.flaticon.com/authors/pixel-perfect Homebrew - github.com/paritytech/homebrew-paritytech
Settings Icon by Pixel Perfect from https://www.flaticon.com/authors/pixel-perfect Docker - hub.docker.com/r/parity/parity
Settings Icon by Pixel Perfect from https://www.flaticon.com/authors/pixel-perfect All binaries - vanity-service.parity.io/parity-binaries?version=v2.2.2

The full list of included changes:

  • Backports For beta 2.2.2 (#9976)
    • Version: bump beta to 2.2.2
    • Add experimental RPCs flag (#9928)
    • Keep existing blocks when restoring a Snapshot (#8643)
      • Rename db_restore => client
      • First step: make it compile!
      • Second step: working implementation!
      • Refactoring
      • Fix tests
      • Migrate ancient blocks interacting backward
      • Early return in block migration if snapshot is aborted
      • Remove RwLock getter (PR Grumble I)
      • Remove dependency on Client: only used Traits
      • Add test for recovering aborted snapshot recovery
      • Add test for migrating old blocks
      • Release RwLock earlier
      • Revert Cargo.lock
      • Update update ancient block logic: set local in commit
      • Update typo in ethcore/src/snapshot/service.rs
    • 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
      • 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 a deadlock (#9952)
      • Update informant:
        • Decimal in Mgas/s
        • Print every 5s (not randomly between 5s and 10s)
      • Fix dead-lock in blockchain.rs
      • Update locks ordering
    • 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
    • Fix docker build (#9971)
    • Deny unknown fields for chainspec (#9972)
      • Add deny_unknown_fields to chainspec
      • Add tests and fix existing one
      • Remove serde_ignored dependency for chainspec
      • Fix rpc test eth chain spec
      • Fix starting_nonce_test spec
    • Improve block and transaction propagation (#9954)
      • Refactor sync to add priority tasks.
      • Send priority tasks notifications.
      • Propagate blocks, optimize transactions.
      • Implement transaction propagation. Use sync_channel.
      • Tone down info.
      • Prevent deadlock by not waiting forever for sync lock.
      • Fix lock order.
      • Don't use sync_channel to prevent deadlocks.
      • Fix tests.
    • Fix unstable peers and slowness in sync (#9967)
      • Don't sync all peers after each response
      • Update formating
      • Fix tests: add continue_sync to Sync_step
      • Update ethcore/sync/src/chain/mod.rs
      • Fix rpc middlewares
    • Fix Cargo.lock
    • Json: resolve merge in spec
    • Rpc: fix starting_nonce_test
    • Ci: allow nightl job to fail