This project is mirrored from https://github.com/paritytech/parity-ethereum.git. Updated .
  1. 19 Nov, 2019 1 commit
  2. 18 Nov, 2019 1 commit
    • David's avatar
      Ensure jsonrpc threading settings are sane (#11267) · 82c32658
      David authored
      * Ensure jsonrpc threading settings are sane
      
      Starting with `jsonrpc` v14, the "server threads" setting is more important than before and the current default of 1 means the https server is effectively single-threaded. This PR proposes a new default of 4 (and ensures that crazy settings like e.g. `0` are bumped to at least `1`).
      
      Also included: some docs, tests and cosmetics.
      
      * Update parity/rpc.rs
      Co-Authored-By: default avatarTomasz Drwięga <tomusdrw@users.noreply.github.com>
      
      * Update parity/rpc.rs
      Co-Authored-By: default avatarTomasz Drwięga <tomusdrw@users.noreply.github.com>
      
      * Remove (i.e. deprecate) `--jsonrpc-threads` command line option
      
      * Call numbers NUM
      
      * Don't show a default for --jsonrpc-threads (deprecated)
      
      * Show deprecation warning when using `--jsonrpc-threads` or `processing_threads`
      
      * Update parity/deprecated.rs
      Co-Authored-By: Niklas Adolfsson's avatarNiklas Adolfsson <niklasadolfsson1@gmail.com>
      
      * Fix test
      
      * Fix tests for real
      82c32658
  3. 15 Nov, 2019 2 commits
  4. 13 Nov, 2019 1 commit
  5. 12 Nov, 2019 1 commit
    • Marek Kotewicz's avatar
      simplify verification (#11249) · db1ea1dc
      Marek Kotewicz authored
      * simplify verifier, remove NoopVerifier
      
      * simplify verifier by removing Verifier trait and its only implementation
      
      * remove unused imports
      
      * fixed verification test failing to compile
      db1ea1dc
  6. 11 Nov, 2019 1 commit
  7. 10 Nov, 2019 1 commit
    • Seun LanLege's avatar
      Make InstantSeal Instant again (#11186) · 887aa62f
      Seun LanLege authored
      * Make InstantSeal Instant again
      
      * update_sealing if there are transactions in pool after impoerting a block, some line formatting
      
      * Apply suggestions from code review
      Co-Authored-By: default avatarTomasz Drwięga <tomusdrw@users.noreply.github.com>
      
      * InstantSeal specific behaviour
      
      * introduce engine.should_reseal_on_update, remove InstantSealService
      
      * remove unused code
      
      * add force param to update_sealing
      
      * better docc
      
      * even better docs
      
      * revert code changes, doc corrections, sort dep
      
      * code optimization
      
      * fix test
      
      * fix bench
      887aa62f
  8. 05 Nov, 2019 2 commits
  9. 02 Nov, 2019 1 commit
    • Talha Cross's avatar
      ethcore/res: add mordor testnet configuration (#11200) · 1b4d23fd
      Talha Cross authored
      * ethcore/res: add mordor testnet configuration
      
      * ethcore/spec: add mordor testnet configuration
      
      * parity/cli: add mordor testnet configuration
      
      * parity/config: fix tests
      
      * ethcore/res: update mordor spec with agharta hardfork block 301243
      
      *  ethcore/res: update kotti with agharta block 1705549
      
      * ethcore/res: update morden with agharta block 5000381
      
      * ethcore/res: multiple prices and activations for mordor testnet
      
      * fix mordor spec json
      
      * fix mordor spec json
      1b4d23fd
  10. 01 Nov, 2019 1 commit
    • Niklas Adolfsson's avatar
      [chain specs]: activate `Istanbul` on mainnet (#11228) · 43dc9af0
      Niklas Adolfsson authored
      * [chains spec]: activate istanbul at mainnet
      
      * Activate `Block >= 9,069,000` on the Ethereum mainnet
      * Enable Blake2 compression function `F` precompile
      
      * [chain specs]: add comments for EIP1108 activation
      
      * [chainspec mainnet]: enable Istanbul transitions
      
      * [chainspec mainnet]: simply configuration
      43dc9af0
  11. 31 Oct, 2019 4 commits
    • Niklas Adolfsson's avatar
      [builtin]: support `multiple prices and activations` in chain spec (#11039) · 13729a0f
      Niklas Adolfsson authored
      * [builtin]: impl new builtin type
      
      Have an enum to deserialize either a builtin of a single price or several prices
      
      * [builtin]: style cleanup
      
      * [builtin]: fix tests
      
      * [builtin]: replace boxing with wrapper enum
      
      * cleanup
      
      * fix: make it backward compatible with old builtin
      
      * fix: update chain specs
      
      * fix: revert use of `type alias` on enum
      
      The CI doesn't use the latest rust.
      
      This commit reverts that change
      
      * fix: builtin tests
      
      * fix: revert use of `type alias` on enum
      
      * [basic-authority]: update test-chainspec
      
      * fix failing tests
      
      * [builtin]: multi-prices add `info field`
      
      It might be hard to read chain specs with several activations points.
      This commit introduces a `info` field which may be used to write some
      information about the current activation such as:
      
      `Istanbul hardfork EIP-1108` or something similar.
      
      * fix: bad rebase
      Co-Authored-By: David's avatarDavid <dvdplm@gmail.com>
      
      * fix(grumbles): make it backward compatible
      
      * grumbles: resolve `NOTE`
      
      * revert chain specs changes
      
      * rename test
      Co-Authored-By: David's avatarDavid <dvdplm@gmail.com>
      
      * [builtin docs]: price -> Fixed price
      Co-Authored-By: Andronik Ordian's avatarAndronik Ordian <write@reusable.software>
      
      * [json]: address naming grumbles
      
      InnerPricing -> PricingInner
      PriceWithActivationAt -> PricingAt
      
      * docs: revert changes for `AltBn128ConstOperations`
      
      * [json]: usize -> u64
      
      Use explicit types to cope with platform dependent issues for `usize`
      
      * grumble: simplify `spec_backward_compability.json`
      
      * docs: add issue link to `TODO`
      
      * [builtin]: replace `match` with `map`
      
      * [builtin]: add deprecation message `eip1108` params
      
      * nits
      
      * [json spec tests]: fix json indentation
      
      * [json docs]: fix typos
      
      * [json]: `compability layer` + deser to BTreeMap
      
      Previously we had to match `Pricing::Single` and `PricingMulti` which this fixes.
      It does by introducing a compability layer and into() implemenentation.
      
      In addition, I switched the deserialization to `BTreeMap` instead of `Vec`.
      That changes the format of the chain spec again
      
      * [json]: rename `BuiltinCombat` -> `BuiltinCompat`
      
      * Update ethcore/builtin/src/lib.rs
      Co-Authored-By: David's avatarDavid <dvdplm@gmail.com>
      
      * [json builtin]: improve docs
      Co-Authored-By: David's avatarDavid <dvdplm@gmail.com>
      
      * [json builtin]: improve docs
      Co-Authored-By: David's avatarDavid <dvdplm@gmail.com>
      
      * chore(builtin): sort dependencies
      
      * [json builtin]: deprecate `eip1108` params
      
      * [machine]: add bench for calling builtin contract
      
      * [machine]: reduce calls to `Builtin::is_active`
      
      * [builtin]: fix nits
      
      * [json]: revert breakage of chain specs
      
      * [json builtin]: remove `eip1108` params
      
      * [chain specs]: update to new format
      
      * [machine]: revert changes
      
      * [devp2p]: revert change
      
      * [builtin]: doc nits
      13729a0f
    • Anton Gavrilov's avatar
      80754c34
    • David's avatar
      Snapshot restoration overhaul (#11219) · 8c2199dd
      David authored
      * Comments and todos
      Use `snapshot_sync` as logging target
      
      * fix compilation
      
      * More todos, more logs
      
      * Fix picking snapshot peer: prefer the one with the highest block number
      More docs, comments, todos
      
      * Adjust WAIT_PEERS_TIMEOUT to be a multiple of MAINTAIN_SYNC_TIMER to try to fix snapshot startup problems
      Docs, todos, comments
      
      * Tabs
      
      * Formatting
      
      * Don't build new rlp::EMPTY_LIST_RLP instances
      
      * Dial down debug logging
      
      * Don't warn about missing hashes in the manifest: it's normal
      Log client version on peer connect
      
      * Cleanup
      
      * Do not skip snapshots further away than 30k block from the highest block seen
      
      Currently we look for peers that seed snapshots that are close to the highest block seen on the network (where "close" means withing 30k blocks). When a node starts up we wait for some time (5sec, increased here to 10sec) to let peers connect and if we have found a suitable peer to sync a snapshot from at the end of that delay, we start the download; if none is found and --warp-barrier is used we stall, otherwise we start a slow-sync.
      When looking for a suitable snapshot, we use the highest block seen on the network to check if a peer has a snapshot that is within 30k blocks of that highest block number. This means that in a situation where all available snapshots are older than that, we will often fail to start a snapshot at all. What's worse is that the longer we delay starting a snapshot sync (to let more peers connect, in the hope of finding a good snapshot), the more likely we are to have seen a high block and thus the more likely we become to accept a snapshot.
      This commit removes this comparison with the highest blocknumber criteria entirely and picks the best snapshot we find in 10sec.
      
      * lockfile
      
      * Add a `ChunkType::Dupe` variant so that we do not disconnect a peer if they happen to send us a duplicate chunk (just ignore the chunk and keep going)
      Resolve some documentation todos, add more
      
      * tweak log message
      
      * Don't warp sync twice
      Check if our own block is beyond the given warp barrier (can happen after we've completed a warp sync but are not quite yet synced up to the tip) and if so, don't sync.
      More docs, resolve todos.
      Dial down some `sync` debug level logging to trace
      
      * Avoid iterating over all snapshot block/state hashes to find the next work item
      
      Use a HashSet instead of a Vec and remove items from the set as chunks are processed. Calculate and store the total number of chunks in the `Snapshot`  struct instead of counting pending chunks each time.
      
      * Address review grumbles
      
      * Log correct number of bytes written to disk
      
      * Revert ChunkType::Dup change
      
      * whitespace grumble
      
      * Cleanup debugging code
      
      * Fix docs
      
      * Fix import and a typo
      
      * Fix test impl
      
      * Use `indexmap::IndexSet` to ensure chunk hashes are accessed in order
      
      * Revert increased SNAPSHOT_MANIFEST_TIMEOUT: 5sec should be enough
      8c2199dd
    • Louis Pérez's avatar
      Fix docker centos build (#11226) · 6b17e321
      Louis Pérez authored
      - Update shell script to build docker centos
        image with the new path.
        - Update REAMDE.md with build instructions.
      
      Closes [#11224](https://github.com/paritytech/parity-ethereum/issues/11224)
      6b17e321
  12. 30 Oct, 2019 1 commit
  13. 29 Oct, 2019 2 commits
    • Jonathan Brown's avatar
      Update bootnodes. (#11203) · 29c364be
      Jonathan Brown authored
      29c364be
    • Rakan Alhneiti's avatar
      Use provided usd-per-eth value if an endpoint is specified (#11209) · 6993ec95
      Rakan Alhneiti authored
      * Fix `invalid transaction price` error message
      
      * Setup Calibrated GasPriceConfig when usd-per-eth is an endpoint
      
      The change will try to check if the specified value is an endpoint.
      If the value of `auto` is specified, the default endpoint URL will be used
      otherwise, the user-provided value will be taken as-is for an endpoint.
      
      * Use if-let and check for usd-per-eth arg:
      
      1. auto = use etherscan
      2. value = use fixed pricer
      3. endpoint = use the provided endpoint as-is
      
      * Fix typo in to_pricce error message
      
      * Correct whitespace indentation
      
      * Use arg_usd_per_eth directly
      6993ec95
  14. 28 Oct, 2019 3 commits
    • David's avatar
      Use a lock instead of atomics for snapshot Progress (#11197) · 0d3423cb
      David authored
      * WIP. Typos and logging.
      
      * Format todos
      
      * Pause pruning while a snapshot is under way
      Logs, docs and todos
      
      * Allocate memory for the full chunk
      
      * Name snapshotting threads
      
      * Ensure `taking_snapshot` is set to false whenever and however `take_snapshot`returns
      Rename `take_at` to `request_snapshot_at`
      Cleanup
      
      * Let "in_progress" deletion fail
      Fix tests
      
      * Just use an atomic
      
      * Review grumbles
      
      * Finish the sentence
      
      * Resolve a few todos and clarify comments.
      
      * Calculate progress rate since last update
      
      * Lockfile
      
      * Fix tests
      
      * typo
      
      * Reinstate default snapshotting frequency
      Cut down on the logging noise
      
      * Use a lock instead of atomics for snapshot Progress
      
      * Update ethcore/types/src/snapshot.rs
      Co-Authored-By: Andronik Ordian's avatarAndronik Ordian <write@reusable.software>
      
      * Avoid truncating cast
      Cleanup
      0d3423cb
    • Niklas Adolfsson's avatar
      [informant]: `MillisecondDuration` -> `as_millis()` (#11211) · 293e06e0
      Niklas Adolfsson authored
      * [informant]: `MillisecondDuration` -> `as_millis()`
      
      This commit removes the trait `MillisecondDuration` and
      replaces it with `Duration::as_millis` instead
      
      * [grumble]: extract `elapsed()` to variable
      293e06e0
    • Vladimir Komendantskiy's avatar
      Step duration map configuration parameter ported from the POA Network fork (#10902) · e0e79fde
      Vladimir Komendantskiy authored
      * step duration map configuration parameter ported from POA Network fork
      
      * step duration map refactoring
      
      * added a test of step duration change
      
      * refactoring of vector search; return Err instead of panicking
      
      * removed dead code and the Config engine error variant
      
      * doc correction
      
      * converted triples to struct StepDurationInfo
      e0e79fde
  15. 26 Oct, 2019 1 commit
  16. 25 Oct, 2019 1 commit
  17. 24 Oct, 2019 1 commit
    • David's avatar
      Pause pruning while snapshotting (#11178) · ffeaee77
      David authored
      * WIP. Typos and logging.
      
      * Format todos
      
      * Pause pruning while a snapshot is under way
      Logs, docs and todos
      
      * Allocate memory for the full chunk
      
      * Name snapshotting threads
      
      * Ensure `taking_snapshot` is set to false whenever and however `take_snapshot`returns
      Rename `take_at` to `request_snapshot_at`
      Cleanup
      
      * Let "in_progress" deletion fail
      Fix tests
      
      * Just use an atomic
      
      * Review grumbles
      
      * Finish the sentence
      
      * Resolve a few todos and clarify comments.
      
      * Calculate progress rate since last update
      
      * Lockfile
      
      * Fix tests
      
      * typo
      
      * Reinstate default snapshotting frequency
      Cut down on the logging noise
      
      * address grumble
      
      * Log memory use with `journal_size()` and explain why.
      ffeaee77
  18. 23 Oct, 2019 2 commits
    • Fabio Lama's avatar
      Type annotation for next_key() matching of json filter options (#11192) · acf7c48d
      Fabio Lama authored
      * type annotation for next_key matching of json filter options
      
      * rpc tests for pending transactions
      
      * mention git submodules in the readme
      acf7c48d
    • Anton Gavrilov's avatar
      Crypto primitives removed from ethkey (#11174) · 834585d6
      Anton Gavrilov authored
      * Crypto utils removed from ethkey
      
      * Fix ethkey lib
      
      * Switch ethsore to new crypto
      
      * Accounts crate fixed
      
      * Secret store crate switched to new crypto
      
      * Ethcore builtin fixed
      
      * Accounts crate fixed
      
      * Ethcore crate fixed
      
      * Util network fixed
      
      * Util network-devp2p fixed
      
      * Private tx fixed
      
      * Ethcore sync fixed
      
      * Secret store fixed
      
      * Rpc fixed
      
      * Parity fixed
      
      * Ethkey cli fixed
      
      * Local store fixed
      
      * Ethcore blockchain fixed
      
      * Cargo.lock pushed; doc comment added for reversed nonce
      
      * Ethstore tests fixed
      
      * Ethstore cli fixed
      
      * Miner fixed
      
      * Snapshot tests are fixed
      
      * Single brackets removed
      
      * Machine fixed
      
      * Verification fixed
      
      * Executive state fixed
      
      * More single brackets removed
      
      * Update version of parity-crypto
      
      * Use published version 0.4.2 of parity-crypto
      
      * New test in tx_filter fixed
      834585d6
  19. 22 Oct, 2019 2 commits
  20. 19 Oct, 2019 1 commit
  21. 18 Oct, 2019 4 commits
    • Niklas Adolfsson's avatar
      [receipt]: add `sender` & `receiver` to `RichReceipts` (#11179) · c8b4373e
      Niklas Adolfsson authored
      * [receipts]: add `to` & `from` to `RichReceipts`
      
      * [rpc]: add test for `pending_receipt`
      
      * docs(common_types/receipt): add note Option field
      c8b4373e
    • Niklas Adolfsson's avatar
      [dependencies] bump rand 0.7 (#11022) · 2d2513b3
      Niklas Adolfsson authored
      * network-devp2p: bump rand `0.7`
      
      * updater: bump rand `0.7`
      
      * hash-fetch: bump rand `0.7`
      
      * ethcore-sync: bump rand `0.7`
      
      * rpc: dont work yet
      
      * [private-tx] remove unused rand
      
      * [ethcore-snapshot] bump rand 0.7
      
      * [engine clique]: bump rand 0.7
      
      * [engine authority-round]: remove rand
      
      * [ethcore-blockchain]: bump rand 0.7
      
      * [ethcore]: bump rand 0.7
      
      * [ethcore-light]: bump rand 0.7
      
      * [ethstore]: bump rand 0.7
      
      * Fix for rand usage in rpc
      
      * [rpc]: fix test build
      
      * [ethcore-sync]: fix test build
      
      * [snapshot tests]: rand 0.7
      
      * [ethkey]: bump rand 0.7
      
      * [rpc]: resolve TODO incompatible `rand versions`
      
      * [ethkey] use `rust-secp256k1` master branch
      
      * fix(bad merge): ethcoore-light remove itertools
      
      * [rpc tests]: revert rpc test changes in #11139
      
      `#11139` makes use a different `RNG/seed`, not `H64::random_using(&mut self.rand)`
      
      This commit reverts the changed tests (the generated id by `Subscribers::next_id`)
      
      * [ethkey/random]: resolve introduced `TODO`
      2d2513b3
    • Andronik Ordian's avatar
      [ethcore/builtin]: do not panic in blake2pricer on short input (#11180) · 3696f686
      Andronik Ordian authored
      * [ethcore/builtin]: do not panic in blake2pricer on short input
      
      * [ethcore/builtin]: add a test for blake2pricer
      3696f686
    • Andreas Fackler's avatar
      ff697b64
  22. 17 Oct, 2019 2 commits
  23. 16 Oct, 2019 1 commit
  24. 14 Oct, 2019 1 commit
    • Andreas Fackler's avatar
      Aura: Report malice on sibling blocks from the same validator (#11160) · f59ed47b
      Andreas Fackler authored
      * Aura: Report malice on sibling blocks from the same validator
      
      This was originally written by @vkomenda, then squashed for
      easier rebasing on master. Cleanup of `received_step_hashes`
      was moved to `verify_block_family`, since `on_prepare_block`
      does not exist on master, and a unit test was added.
      Original commit messages:
      
      added the map of received block header hashes
      
      do not return an error and remove older received block records
      
      optimised older record removal
      
      block hash comparison optimisation and the weak client ref fix
      
      SIBLING_MALICE_DETECTION_PERIOD constant
      
      review comments
      
      using step numbers instead of block numbers
      
      * Add docs; use map_or.
      
      * Update step hash record comment.
      Co-Authored-By: David's avatarDavid <dvdplm@gmail.com>
      
      * Remove hash records after 2 rounds instead of 100 steps.
      f59ed47b
  25. 11 Oct, 2019 2 commits
    • David's avatar
      Change how RPCs eth_call and eth_estimateGas handle "Pending" (#11127) · aefa8d5f
      David authored
      * Change how RPCs eth_call and eth_estimateGas handle "Pending"
      
      Before this PR we would return a rather confusing error when calling `eth_call` and `eth_estimateGas` with `"Pending"`, e.g.:
      
      ```
      {"jsonrpc":"2.0","error":{"code":-32000,"message":"This request is not supported because your node is running with state pruning. Run with --pruning=archive."},"id":"e237678f6648ed12ff05a74933d06d17"}
      ```
      
      In reality what is going on is that users often use `"Pending"` when they really mean `"Latest"` (e.g. MyCrypto…) and when the block in question is not actually pending. This changes our behaviour for these two RPC calls to fall back to `"Latest"` when the query with `"Pending"` fails.
      Note that we already behave this way for many other RPCs:
      
      	- eth_call (after this PR)
      	- eth_estimateGas (after this PR)
      	- eth_getBalance
      	- eth_getCode
      	- eth_getStorageAt
      
      Closes https://github.com/paritytech/parity-ethereum/issues/10096
      
      * Fetch jsonrpc from git
      
      * No real need to wait for new jsonrpc
      
      * Add tests for calling eth_call/eth_estimateGas with "Pending"
      
      * Fix a todo, add another
      
      * Change client.latest_state to return the best header as well so we avoid potential data races and do less work
      
      * Impl review suggestions
      
      * Update rpc/src/v1/impls/eth.rs
      Co-Authored-By: Niklas Adolfsson's avatarNiklas Adolfsson <niklasadolfsson1@gmail.com>
      
      * Review grumbles
      
      * update docs
      aefa8d5f
    • David's avatar
      Cleanup stratum a bit (#11161) · f3015ce0
      David authored
      * Cleanup stratum a bit
      
      Salvage some code from https://github.com/paritytech/parity-ethereum/pull/10884 + some cleanup and typos.
      
      * HashSet::new does not allocate before first insert
      
      * Remove unused method push_work()
      f3015ce0