* `duration_ns: u64 -> duration: Duration` (#8457)
* duration_ns: u64 -> duration: Duration
* format on millis {:.2} -> {}
* Keep all enacted blocks notify in order (#8524)
* Keep all enacted blocks notify in order
* Collect is unnecessary
* Update ChainNotify to use ChainRouteType
* Fix all ethcore fn defs
* Wrap the type within ChainRoute
* Fix private-tx and sync api
* Fix secret_store API
* Fix updater API
* Fix rpc api
* Fix informant api
* Eagerly cache enacted/retracted and remove contain_enacted/retracted
* Fix indent
* tests: should use full expr form for struct constructor
* Use into_enacted_retracted to further avoid copy
* typo: not a function
* rpc/tests: ChainRoute -> ChainRoute::new
* Handle removed logs in filter changes and add geth compatibility field (#8796)
* Add removed geth compatibility field in log
* Fix mocked tests
* Add field block hash in PollFilter
* Store last block hash info for log filters
* Implement canon route
* Use canon logs for fetching reorg logs
Light client removed logs fetching is disabled. It looks expensive.
* Make sure removed flag is set
* Address grumbles
* Fixed AuthorityRound deadlock on shutdown, closes#8088 (#8803)
* CI: Fix docker tags (#8822)
* scripts: enable docker builds for beta and stable
* scripts: docker latest should be beta not master
* scripts: docker latest is master
* ethcore: fix ancient block error msg handling (#8832)
* Disable parallel verification and skip verifiying already imported txs. (#8834)
* Reject transactions that are already in pool without verifying them.
* Avoid verifying already imported transactions.
* Fix concurrent access to signer queue (#8854)
* Fix concurrent access to signer queue
* Put request back to the queue if confirmation failed
* typo: fix docs and rename functions to be more specific
`request_notify` does not need to be public, and it's renamed to `notify_result`.
`notify` is renamed to `notify_message`.
* Change trace info "Transaction" -> "Request"
* Don't allocate in expect_valid_rlp unless necessary (#8867)
* don't allocate via format! in case there's no error
* fix test?
* fixed ipc leak, closes#8774 (#8876)
* Add new ovh bootnodes and fix port for foundation bootnode 3.2 (#8886)
* Add new ovh bootnodes and fix port for foundation bootnode 3.2
* Remove old bootnodes.
* Remove duplicate 1118980bf48b0a3640bdba04e0fe78b1add18e1cd99bf22d53daac1fd9972ad650df52176e7c7d89d1114cfef2bc23a2959aa54998a46afcf7d91809f0855082
* Block 0 is valid in queries (#8891)
Early exit for block nr 0 leads to spurious error about pruning: `…your node is running with state pruning…`.
Fixes#7547, #8762
* Add ETC Cooperative-run load balanced parity node (#8892)
* Minor fix in chain supplier and light provider (#8906)
* fix chain supplier increment
* fix light provider block_headers
* Check whether we need resealing in miner and unwrap has_account in account_provider (#8853)
* Remove unused Result wrap in has_account
* Check whether we need to reseal for external transactions
* Fix reference to has_account interface
* typo: missing )
* Refactor duplicates to prepare_and_update_sealing
* Fix build
* Allow disabling local-by-default for transactions with new config entry (#8882)
* Add tx_queue_allow_unknown_local config option
- Previous commit messages:
dispatcher checks if we have the sender account
Add `tx_queue_allow_unknown_local` to MinerOptions
Add `tx_queue_allow_unknown_local` to config
fix order in MinerOptions to match Configuration
add cli flag for tx_queue_allow_unknown_local
Update refs to `tx_queue_allow_unknown_local`
Add tx_queue_allow_unknown_local to config test
revert changes to dispatcher
Move tx_queue_allow_unknown_local to `import_own_transaction`
Fix var name
if statement should return the values
derp de derp derp derp semicolons
Reset dispatch file to how it was before
fix compile issues + change from FLAG to ARG
add test and use `into`
import MinerOptions, clone the secret
Fix tests?
Compiler/linter issues fixed
Fix linter msg - case of constants
IT LIVES
refactor to omit yucky explict return
update comments
Fix based on diff AccountProvider.has_account method
* Refactor flag name + don't change import_own_tx behaviour
fix arg name
Note: force commit to try and get gitlab tests working again 😠
* Add fn to TestMinerService
* Avoid race condition from trusted sources
- refactor the miner tests a bit to cut down on code reuse
- add `trusted` param to dispatch_transaction and import_claimed_local_transaction
Add param to `import_claimed_local_transaction`
Fix fn sig in tests
* Trace precompiled contracts when the transfer value is not zero (#8486)
* Trace precompiled contracts when the transfer value is not zero
* Add tests for precompiled CALL tracing
* Use byzantium test machine for the new test
* Add notes in comments on why we don't trace all precompileds
* Use is_transferred instead of transferred
* Return error if RLP size of transaction exceeds the limit (#8473)
* Return error if RLP size of transaction exceeds the limit
* Review comments fixed
* RLP check moved to verifier, corresponding pool test added
* Don't block sync when importing old blocks (#8530)
* Alter IO queueing.
* Don't require IoMessages to be Clone
* Ancient blocks imported via IoChannel.
* Get rid of private transactions io message.
* Get rid of deadlock and fix disconnected handler.
* Revert to old disconnect condition.
* Fix tests.
* Fix deadlock.
* Refactoring `ethcore-sync` - Fixing warp-sync barrier (#8543)
* Start dividing sync chain : first supplier method
* WIP - updated chain sync supplier
* Finish refactoring the Chain Sync Supplier
* Create Chain Sync Requester
* Add Propagator for Chain Sync
* Add the Chain Sync Handler
* Move tests from mod -> handler
* Move tests to propagator
* Refactor SyncRequester arguments
* Refactoring peer fork header handler
* Fix wrong highest block number in snapshot sync
* Small refactor...
* Address PR grumbles
* Retry failed CI job
* Fix tests
* PR Grumbles
* Handle socket address parsing errors (#8545)
Unpack errors and check for io::ErrorKind::InvalidInput and return our own AddressParse error. Remove the foreign link to std::net::AddrParseError and add an `impl From` for that error. Test parsing properly.
* Fix packet count when talking with PAR2 peers (#8555)
* Support diferent packet counts in different protocol versions.
* Fix light timeouts and eclipse protection.
* Fix devp2p tests.
* Fix whisper-cli compilation.
* Fix compilation.
* Fix ethcore-sync tests.
* Revert "Fix light timeouts and eclipse protection."
This reverts commit 06285ea8c1d9d184d809f64b5507aece633da6cc.
* Increase timeouts.
* Add whisper CLI to the pipelines (#8578)
* Add whisper CLI to the pipelines
* Address todo, ref #8579
* Rename `whisper-cli binary` to `whisper` (#8579)
* rename whisper-cli binary to whisper
* fix tests
* Remove manually added text to the errors (#8595)
These messages were confusing for the users especially the help message.
* Fix account list double 0x display (#8596)
* Remove unused self import
* Fix account list double 0x display
* Fix BlockReward contract "arithmetic operation overflow" (#8611)
* Fix BlockReward contract "arithmetic operation overflow"
* Add docs on how execute_as_system works
* Fix typo
* Rlp decode returns Result (#8527)
rlp::decode returns Result
Make a best effort to handle decoding errors gracefully throughout the code, using `expect` where the value is guaranteed to be valid (and in other places where it makes sense).
* Remove expect (#8536)
* Remove expect and propagate rlp::DecoderErrors as TrieErrors
* Decoding headers can fail (#8570)
* rlp::decode returns Result
* Fix journaldb to handle rlp::decode Result
* Fix ethcore to work with rlp::decode returning Result
* Light client handles rlp::decode returning Result
* Fix tests in rlp_derive
* Fix tests
* Cleanup
* cleanup
* Allow panic rather than breaking out of iterator
* Let decoding failures when reading from disk blow up
* syntax
* Fix the trivial grumbles
* Fix failing tests
* Make Account::from_rlp return Result
* Syntx, sigh
* Temp-fix for decoding failures
* Header::decode returns Result
Handle new return type throughout the code base.
* Do not continue reading from the DB when a value could not be read
* Fix tests
* Handle header decoding in light_sync
* Handling header decoding errors
* Let the DecodeError bubble up unchanged
* Remove redundant error conversion
* fix compiler warning (#8590)
* Attempt to fix intermittent test failures (#8584)
Occasionally should_return_correct_nonces_when_dropped_because_of_limit fails, possibly because of multiple threads competing to finish. See CI logs here for an example: https://gitlab.parity.io/parity/parity/-/jobs/86738
* block_header can fail so return Result (#8581)
* block_header can fail so return Result
* Restore previous return type based on feedback
* Fix failing doc tests running on non-code
* Block::decode() returns Result (#8586)
* Gitlab test script fixes (#8573)
* Exclude /docs from modified files.
* Ensure all references in the working tree are available
* Remove duplicated line from test script
* Implementation of Verifier, Scoring and Ready.
* Queue in progress.
* TransactionPool.
* Prepare for txpool release.
* Miner refactor [WiP]
* WiP reworking miner.
* Make it compile.
* Add some docs.
* Split blockchain access to a separate file.
* Work on miner API.
* Fix ethcore tests.
* Refactor miner interface for sealing/work packages.
* Implement next nonce.
* RPC compiles.
* Implement couple of missing methdods for RPC.
* Add transaction queue listeners.
* Compiles!
* Clean-up and parallelize.
* Get rid of RefCell in header.
* Revert "Get rid of RefCell in header."
This reverts commit 0f2424c9b7319a786e1565ea2a8a6d801a21b4fb.
* Override Sync requirement.
* Fix status display.
* Unify logging.
* Extract some cheap checks.
* Measurements and optimizations.
* Fix scoring bug, heap size of bug and add cache
* Disable tx queueing and parallel verification.
* Make ethcore and ethcore-miner compile again.
* Make RPC compile again.
* Bunch of txpool tests.
* Migrate transaction queue tests.
* Nonce Cap
* Nonce cap cache and tests.
* Remove stale future transactions from the queue.
* Optimize scoring and write some tests.
* Simple penalization.
* Clean up and support for different scoring algorithms.
* Add CLI parameters for the new queue.
* Remove banning queue.
* Disable debug build.
* Change per_sender limit to be 1% instead of 5%
* Avoid cloning when propagating transactions.
* Remove old todo.
* Post-review fixes.
* Fix miner options default.
* Implement back ready transactions for light client.
* Get rid of from_pending_block
* Pass rejection reason.
* Add more details to drop.
* Rollback heap size of.
* Avoid cloning hashes when propagating and include more details on rejection.
* Fix tests.
* Introduce nonces cache.
* Remove uneccessary hashes allocation.
* Lower the mem limit.
* Re-enable parallel verification.
* Add miner log. Don't check the type if not below min_gas_price.
* Add more traces, fix disabling miner.
* Fix creating pending blocks twice on AuRa authorities.
* Fix tests.
* re-use pending blocks in AuRa
* Use reseal_min_period to prevent too frequent update_sealing.
* Fix log to contain hash not sender.
* Optimize local transactions.
* Fix aura tests.
* Update locks comments.
* Get rid of unsafe Sync impl.
* Review fixes.
* Remove excessive matches.
* Fix compilation errors.
* Use new pool in private transactions.
* Fix private-tx test.
* Fix secret store tests.
* Actually use gas_floor_target
* Fix config tests.
* Fix pool tests.
* Address grumbles.
* parity-reactor: Pass over Handle in spawning fn to allow normal tokio ops
* Allow fetch to work with arbitrary requests
* typo: Fix missing handler closure
* miner, work_notify: use fetch and parity-reactor
* Fix work_notify pushing in parity CLI
* 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
* Move miner away from ethcore.
* Fix ethcore to use miner/transaction.
* Fix tests and warnings.
* fixed incorrect merge of the test in the documentation