* parity-version: bump stable to 1.11.9
* Fix compilation error on nightly rust (#8707)
On nightly rust passing `public_url` works but that breaks on stable. This works for both.
* parity-version: bump stable to 1.11.10
* Check if synced when using eth_getWork (#9193) (#9210)
* Check if synced when using eth_getWork (#9193)
* Don't use fn syncing
* Fix identation
* Fix typo
* Don't check for warping
* rpc: avoid calling queue_info twice on eth_getWork
* Fix potential as_usize overflow when casting from U256 in miner (#9221)
* Allow old blocks from peers with lower difficulty (#9226)
Previously we only allow downloading of old blocks if the peer
difficulty was greater than our syncing difficulty. This change allows
downloading of blocks from peers where the difficulty is greater then
the last downloaded old block.
* Update Dockerfile (#9242)
* Update Dockerfile
fix Docker build
* fix dockerfile paths: parity -> parity-ethereum (#9248)
* Update tobalaba.json (#9313)
* Light client `Provide default nonce in transactions when it´s missing` (#9370)
* Provide `default_nonce` in tx`s when it´s missing
When `nonce` is missing in a `EthTransaction` will cause it to fall in
these cases provide `default_nonce` value instead!
* Changed http:// to https:// on Yasm link (#9369)
Changed http:// to https:// on Yasm link in README.md
* Provide `default_nonce` in tx`s when it´s missing
When `nonce` is missing in a `EthTransaction` will cause it to fall in
these cases provide `default_nonce` value instead!
* Address grumbles
* ethcore: kovan: delay activation of strict score validation (#9406)
* Use impl Future in the light client RPC helpers (#8628)
* Better support for eth_getLogs in light mode (#9186)
* Light client on-demand request for headers range.
* Cache headers in HeaderWithAncestors response.
Also fulfills request locally if all headers are in cache.
* LightFetch::logs fetches missing headers on demand.
* LightFetch::logs limit the number of headers requested at a time.
* LightFetch::logs refactor header fetching logic.
* Enforce limit on header range length in light client logs request.
* Fix light request tests after struct change.
* Respond to review comments.
* Propagate transactions for next 4 blocks. (#9265)
Closes#9255
This PR also removes the limit of max 64 transactions per packet, currently we only attempt to prevent the packet size to go over 8MB. This will only be the case for super-large transactions or high-block-gas-limit chains.
Patching this is important only for chains that have blocks that can fit more than 4k transactions (over 86M block gas limit)
For mainnet, we should actually see a tiny bit faster propagation since instead of computing 4k pending set, we only need `4 * 8M / 21k = 1523` transactions.
Running some tests on `dekompile` node right now, to check how it performs in the wild.
* ethcore: fix pow difficulty validation (#9328)
* ethcore: fix pow difficulty validation
* ethcore: validate difficulty is not zero
* ethcore: add issue link to regression test
* ethcore: fix tests
* ethcore: move difficulty_to_boundary to ethash crate
* ethcore: reuse difficulty_to_boundary and boundary_to_difficulty
* ethcore: fix grumbles in difficulty_to_boundary_aux
* parity-version: stabelize 1.11
* parity-version: bump stable to 1.11.7
* Don't fetch snapshot chunks at random (#9088)
* Offload cull to IoWorker.
* Limit the number of transactions in pending set (#8777)
* Unordered iterator.
* Use unordered and limited set if full not required.
* Split timeout work into smaller timers.
* Avoid collecting all pending transactions when mining
* Remove println.
* Use priority ordering in eth-filter.
* Fix ethcore-miner tests and tx propagation.
* Review grumbles addressed.
* Add test for unordered not populating the cache.
* Fix ethcore tests.
* Fix light tests.
* Fix ethcore-sync tests.
* Fix RPC tests.
* Make sure to produce full blocks.
* Update hidapi, fixes#7542 (#9108)
* docker: add cmake dependency (#9111)
* Fix miner tests.
* Revert "Make sure to produce full blocks."
This reverts commit b12d5920b2.
* Update light client hardcoded headers (#9098)
* Insert Kovan hardcoded headers until #7690241
* Insert Kovan hardcoded headers until block 7690241
* Insert Ropsten hardcoded headers until #3612673
* Insert Mainnet hardcoded headers until block 5941249
* Make sure to produce full blocks. (#9115)
* Insert ETC (classic) hardcoded headers until block #6170625 (#9121)
* fix verification in ethcore-sync collect_blocks (#9135)
* `evm bench` fix broken dependencies (#9134)
* `evm bench` use valid dependencies
Benchmarks of the `evm` used stale versions of a couple a crates that
this commit fixes!
* fix warnings
* parity-version: bump beta to 1.11.6
* scripts: remove md5 checksums (#8884)
* Add support for --chain tobalaba
* Convert indents to tabs :)
* Fixes for misbehavior reporting in AuthorityRound (#8998)
* aura: only report after checking for repeated skipped primaries
* aura: refactor duplicate code for getting epoch validator set
* aura: verify_external: report on validator set contract instance
* aura: use correct validator set epoch number when reporting
* aura: use epoch set when verifying blocks
* aura: report skipped primaries when generating seal
* aura: handle immediate transitions
* aura: don't report skipped steps from genesis to first block
* aura: fix reporting test
* aura: refactor duplicate code to handle immediate_transitions
* aura: let reporting fail on verify_block_basic
* aura: add comment about possible failure of reporting
* Only return error log for rustls (#9025)
* Transaction Pool improvements (#8470)
* Don't use ethereum_types in transaction pool.
* Hide internal insertion_id.
* Fix tests.
* Review grumbles.
* Improve should_replace on NonceAndGasPrice (#8980)
* Additional tests for NonceAndGasPrice::should_replace.
* Fix should_replace in the distinct sender case.
* Use natural priority ordering to simplify should_replace.
* Minimal effective gas price in the queue (#8934)
* Minimal effective gas price.
* Fix naming, add test
* Fix minimal entry score and add test.
* Fix worst_transaction.
* Remove effective gas price threshold.
* Don't leak gas_price decisions out of Scoring.
* Never drop local transactions from different senders. (#9002)
* Recently rejected cache for transaction queue (#9005)
* Store recently rejected transactions.
* Don't cache AlreadyImported rejections.
* Make the size of transaction verification queue dependent on pool size.
* Add a test for recently rejected.
* Fix logging for recently rejected.
* Make rejection cache smaller.
* obsolete test removed
* obsolete test removed
* Construct cache with_capacity.
* Optimize pending transactions filter (#9026)
* rpc: return unordered transactions in pending transactions filter
* ethcore: use LruCache for nonce cache
Only clear the nonce cache when a block is retracted
* Revert "ethcore: use LruCache for nonce cache"
This reverts commit b382c19abdb9985be1724c3b8cde83906da07d68.
* Use only cached nonces when computing pending hashes.
* Give filters their own locks, so that they don't block one another.
* Fix pending transaction count if not sealing.
* Clear cache only when block is enacted.
* Fix RPC tests.
* Address review comments.
* A last bunch of txqueue performance optimizations (#9024)
* Clear cache only when block is enacted.
* Add tracing for cull.
* Cull split.
* Cull after creating pending block.
* Add constant, remove sync::read tracing.
* Reset debug.
* Remove excessive tracing.
* Use struct for NonceCache.
* Fix build
* Remove warnings.
* Fix build again.
* miner: add missing macro use for trace_time
* ci: remove md5 merge leftovers
* parity-version: bump beta to 1.11.5
* Update ropsten.json (#8926)
* Update hardcoded headers (#8925)
* Update kovan.json
Update Kovan to block 7693549
* Update foundation.json
Updated to block #5812225
* Update ropsten.json
Update to 3465217
* Update ropsten.json
use tabs
* Update foundation.json
use tabs
* Update kovan.json
use tabs
* scripts: minor improvements (#8930)
* CI: enable 'latest' docker tag on master pipeline
* CI: mark both beta and stable as stable snap.
* CI: sign all windows binaries
* scripts: fix docker build tag on latest using master (#8952)
* rpc: cap gas limit of local calls (#8943)
* snap: downgrade rust to revision 1.26.2, ref snapcraft/+bug/1778530 (#8984)
* snap: downgrade rust to revision 1.26.2, ref snapcraft/+bug/1778530
* snap: use plugin rust
* Fix deadlock in blockchain. (#8977)
* Remove js-glue from workspace
This fixes test error on Rust 1.27 but also prevents js-glue from building itself. Builtin dapp users can still use
js-glue from crates.io.
* Fix Android build on beta (#9003)
* parity-version: bump beta to 1.11.3
* Disallow unsigned transactions in case EIP-86 is disabled (#8802)
* Disallow unsigned transactions in case EIP-86 is disabled
* Add tests for verification
* Add disallow unsigned transactions test in machine
* Fix ancient blocks queue deadlock (#8751)
* Revert "Fix not downloading old blocks (#8642)"
This reverts commit d1934363e7.
* Make sure only one thread actually imports old blocks.
* Add some trace timers.
* Bring back pending hashes set.
* Separate locks so that queue can happen while we are importing.
* Address grumbles.
* secret_store: remove kvdb_rocksdb dependency
* cli: init db mod for open dispatch
* cli: move db, client_db, restoration_db, secretstore_db to a separate mod
* migration: rename to migration-rocksdb and remove ethcore-migrations
* ethcore: re-move kvdb-rocksdb dep to test
* mark test_helpers as test only and fix migration mod naming
* Move restoration_db_handler to test_helpers_internal
* Fix missing preambles in test_helpers_internal and rocksdb/helpers
* Move test crates downward
* Fix missing docs
* cli, db::open_db: move each argument to a separate line
* Use featuregate instead of dead code for `open_secretstore_db`
* Move pathbuf import to open_secretstore_db
Because it's only used there behind a feature gate
* start
* hash-fetch
* rpc
* revert price-info
* remove used file
* adapt to changes in fetch
* make fake-fetch generic over
* fix tests to comply with the new `fake-fetch`
* getting started
* wip wip
* add parsing of pool-size and enable panic-hook
* more cli options
* remove explicit unwrapping
* bump dependencies to parity-jsonrpc
* add tests
* remove tests
* bump jsonrpc
* Remove unused dependencies
* add logging to the cli
* Fix so `FilterManager` drops its resources
* Introduced an AtomicBool flag in FilterManager to cancel the `Decryption Worker Thread`
* Added some very basic test to faulty arguments
* ignore privileged port test
* Private transaction message added
* Empty line removed
* Private transactions logic removed from client into the separate module
* Fixed compilation after merge with head
* Signed private transaction message added as well
* Comments after the review fixed
* Private tx execution
* Test update
* Renamed some methods
* Fixed some tests
* Reverted submodules
* Fixed build
* Private transaction message added
* Empty line removed
* Private transactions logic removed from client into the separate module
* Fixed compilation after merge with head
* Signed private transaction message added as well
* Comments after the review fixed
* Encrypted private transaction message and signed reply added
* Private tx execution
* Test update
* Main scenario completed
* Merged with the latest head
* Private transactions API
* Comments after review fixed
* Parameters for private transactions added to parity arguments
* New files added
* New API methods added
* Do not process packets from unconfirmed peers
* Merge with ptm_ss branch
* Encryption and permissioning with key server added
* Fixed compilation after merge
* Version of Parity protocol incremented in order to support private transactions
* Doc strings for constants added
* Proper format for doc string added
* fixed some encryptor.rs grumbles
* Private transactions functionality moved to the separate crate
* Refactoring in order to remove late initialisation
* Tests fixed after moving to the separate crate
* Fetch method removed
* Sync test helpers refactored
* Interaction with encryptor refactored
* Contract address retrieving via substate removed
* Sensible gas limit for private transactions implemented
* New private contract with nonces added
* Parsing of the response from key server fixed
* Build fixed after the merge, native contracts removed
* Crate renamed
* Tests moved to the separate directory
* Handling of errors reworked in order to use error chain
* Encodable macro added, new constructor replaced with default
* Native ethabi usage removed
* Couple conversions optimized
* Interactions with client reworked
* Errors omitting removed
* Fix after merge
* Fix after the merge
* private transactions improvements in progress
* private_transactions -> ethcore/private-tx
* making private transactions more idiomatic
* private-tx encryptor uses shared FetchClient and is more idiomatic
* removed redundant tests, moved integration tests to tests/ dir
* fixed failing service test
* reenable add_notify on private tx provider
* removed private_tx tests from sync module
* removed commented out code
* Use plain password instead of unlocking account manager
* remove dead code
* Link to the contract changed
* Transaction signature chain replay protection module created
* Redundant type conversion removed
* Contract address returned by private provider
* Test fixed
* Addressing grumbles in PrivateTransactions (#8249)
* Tiny fixes part 1.
* A bunch of additional comments and todos.
* Fix ethsync tests.
* resolved merge conflicts
* final private tx pr (#8318)
* added cli option that enables private transactions
* fixed failing test
* fixed failing test
* fixed failing test
* fixed failing test
* Refactor usage of registry contract
* remove unsed file
* Rename methods & fix comments
* refactor contract_client:
* Intoduced separate traits for asyncronous and syncronous contract clients
* Removed registrar from ethcore::client
* s/ContractClient/AsyncContractClient
* make the tests compile and pass
* omit changes in ethcore
* Use only one trait for ContractClient
* Use an associated type in the trait to determine syncronous or asyncronous communication
* Export the types from contract-client crate
* Document that "A" in the hash correspons to a DNS A Record A.K.A Address Record
* contract_client -> registrar
* address review feedback
* Refactor updater to use ethabi-derive
* Grumble: do_call type alias
* Empty commit to trigger test re-run
* migration to ethabi-5.0
* migration to ethabi-5.0 in progress
* use ethabi_deriven to generate TransactAcl contract
* use ethabi_deriven to generate Registry contract
* hash-fetch uses ethabi_derive, removed retain cycle from updater, fixed#7720
* node-filter crate uses ethabi_derive to generate peer_set contract interface
* use LruCache in node-filter instead of HashMap
* validator_set engine uses ethabi_derive
* ethcore does not depend on native_contracts
* miner does no depend on native_contracts
* secret_store does not use native_contracts (in progress)
* removed native-contracts
* ethcore and updater does not depend on futures
* updated ethereum-types
* fixed all warnings caused by using new version of ethereum-types
* updated ethabi_derive && ethabi_contract to get rid of warnings
* removed another retain cycle in updater, fixed following minor version on update
* moved contracts out of native_contracts res
* updated ethabi_contract
* fixed failing test
* fixed failing test
* there is no need to create two contracts of the same kind any more
* simplify updater::ReleaseTrack conversion into u8 and add several tests for it
* applied review suggestions
* applied review suggestions
* Update Clap dependency and remove workarounds
* WIP
* Remove line breaks in help messages for now
* Multiple values can only be separated by commas (closes#7428)
* Grumbles; refactor repeating code; add constant
* Use a single Wrapper rather than allocate a new one for each call
* Wrap --help to 120 characters rather than 100 characters
* updated ethereum-types and tiny-keccak
* Updated several deps
* Updated several more dependencies
* Modify dummy file to trigger ci
* fixed update of memmap to 0.6 in ethash crate
* Fixed fetch after update to latest reqwest
* Updated jsonrpc-core with fixes for serde
* add expects in util/version/build.rs
* Move miner away from ethcore.
* Fix ethcore to use miner/transaction.
* Fix tests and warnings.
* fixed incorrect merge of the test in the documentation
* created the dir crate in util
* moved code from ethstore/src/dir/paths.rs to dir crate
* rename dir module in ethstore to accounts_dir to distinguish it
from the dir crate
* changes after @tomusdrw on #6952
* parity-version module split from util
removed unused util deps and features
trigger buildbot again
only kvdb links rocksdb
snappy linker issues
* rm snappy
* fixed old version imports