1. May 16, 2018
    • Wei Tang's avatar
      Fork choice and metadata framework for Engine (#8401) · 0ecbb3ec
      Wei Tang authored
      * Add light client TODO item
      
      * Move existing total-difficulty-based fork choice check to Engine
      
      * Abstract total difficulty and block provider as Machine::BlockMetadata and Machine::BlockProvider
      
      * Decouple "generate_metadata" logic to Engine
      
      * Use fixed BlockMetadata and BlockProvider type for null and instantseal
      
      In this way they can use total difficulty fork choice check
      
      * Extend blockdetails with metadatas and finalized info
      
      * Extra data update: mark_finalized and update_metadatas
      
      * Check finalized block in Blockchain
      
      * Fix a test constructor in verification mod
      
      * Add total difficulty trait
      
      * Fix type import
      
      * Db migration to V13 with metadata column
      
      * Address grumbles
      
      * metadatas -> metadata
      
      * Use generic type for update_metadata to avoid passing HashMap all around
      
      * Remove metadata in blockdetails
      
      * [WIP] Implement a generic metadata architecture
      
      * [WIP] Metadata insertion logic in BlockChain
      
      * typo: Value -> Self::Value
      
      * [WIP] Temporarily remove Engine::is_new_best interface
      
      So that we don't have too many type errors.
      
      * [WIP] Fix more type errors
      
      * [WIP] ExtendedHeader::PartialEq
      
      * [WIP] Change metadata type Option<Vec<u8>> to Vec<u8>
      
      * [WIP] Remove Metadata Error
      
      * [WIP] Clean up error conversion
      
      * [WIP] finalized -> is_finalized
      
      * [WIP] Mark all fields in ExtrasInsert as pub
      
      * [WIP] Remove unused import
      
      * [WIP] Keep only local metadata info
      
      * Mark metadata as optional
      
      * [WIP] Revert metadata db change in BlockChain
      
      * [WIP] Put finalization in unclosed state
      
      * Use metadata interface in BlockDetail
      
      * [WIP] Fix current build failures
      
      * [WIP] Remove unused blockmetadata struct
      
      * Remove DB migration info
      
      * [WIP] Typo
      
      * Use ExtendedHeader to implement fork choice check
      
      * Implement is_new_best using Ancestry iterator
      
      * Use expect instead of panic
      
      * [WIP] Add ancestry Engine support via on_new_block
      
      * Fix tests
      
      * Emission of ancestry actions
      
      * use_short_version should take account of metadata
      
      * Engine::is_new_best -> Engine::fork_choice
      
      * Use proper expect format as defined in #1026
      
      * panic -> expect
      
      * ancestry_header -> ancestry_with_metadata
      
      * Boxed iterator -> &mut iterator
      
      * Fix tests
      
      * is_new_best -> primitive_fork_choice
      
      * Document how fork_choice works
      
      * Engine::fork_choice -> Engine::primitive_fork_choice
      
      * comment: clarify types of finalization where Engine::primitive_fork_choice works
      
      * Expose FinalizationInfo to Engine
      
      * Fix tests due to merging
      
      * Remove TotalDifficulty trait
      
      * Do not pass FinalizationInfo to Engine
      
      If there's finalized blocks in from route, choose the old branch without calling `Engine::fork_choice`.
      
      * Fix compile
      
      * Fix unused import
      
      * Remove is_to_route_finalized
      
      When no block reorg passes a finalized block, this variable is always false.
      
      * Address format grumbles
      
      * Fix docs: mark_finalized returns None if block hash is not found
      
      `blockchain` mod does not yet have an Error type, so we still temporarily use None here.
      
      * Fix inaccurate tree_route None expect description
      0ecbb3ec
  2. May 15, 2018
  3. May 14, 2018
  4. May 12, 2018
    • lihuafeng's avatar
      2 tiny modification on snapshot (#8601) · 979af3d3
      lihuafeng authored and Niklas Adolfsson's avatar Niklas Adolfsson committed
      * Some tiny modifications.
      1. fix some typo in the comment.
      2. sort the order of methods in 'impl state::Backend for StateDB`
      
      * Remove the clone of code_cache, as it has been done in clone_basic.
      
      * remove From::from. It seems not necessary.
      
      * change mode: remove rust files' executable mode.
      
      * 2 tiny modifications on snapshot.
      979af3d3
  5. May 11, 2018
  6. May 10, 2018
  7. May 09, 2018
    • Marek Kotewicz's avatar
    • Afri Schoedon's avatar
      Add whisper CLI to the pipelines (#8578) · b2cc1c54
      Afri Schoedon authored
      * Add whisper CLI to the pipelines
      
      * Address todo, ref #8579
      b2cc1c54
    • Niklas Adolfsson's avatar
      Rename `whisper-cli binary` to `whisper` (#8579) · 21dad1d4
      Niklas Adolfsson authored
      * rename whisper-cli binary to whisper
      
      * fix tests
      21dad1d4
    • Niklas Adolfsson's avatar
      changelog nit (#8585) · 1d42b7f0
      Niklas Adolfsson authored
      1d42b7f0
    • Wei Tang's avatar
      Remove unnecessary cloning in overwrite_with (#8580) · cddc33bb
      Wei Tang authored and asynchronous rob's avatar asynchronous rob committed
      * Remove unnecessary cloning in overwrite_with
      
      * Remove into_iter
      cddc33bb
    • David's avatar
      Handle socket address parsing errors (#8545) · cb7ad236
      David authored
      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.
      cb7ad236
    • Afri Schoedon's avatar
      Update CHANGELOG for 1.9, 1.10, and 1.11 (#8556) · 25536c5f
      Afri Schoedon authored
      * Move changelog for 1.10.x
      
      * Mark 1.9 EOL
      
      * Prepare changelog for 1.10.3 stable
      
      * Prepare changelog for 1.11.0 stable
      
      * Update changelogs
      
      * Update CHANGELOG for 1.10.3 beta
      
      * Update CHANGELOG for 1.11.0 beta
      
      * Update CHANGELOG for 1.11.0 beta
      
      * Update CHANGELOG for 1.11.0 beta
      
      * Format changelog
      25536c5f
    • David's avatar
      Decoding headers can fail (#8570) · 842b75c0
      David authored
      * 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
      842b75c0
    • Nicolas Gotchac's avatar
      Refactoring `ethcore-sync` - Fixing warp-sync barrier (#8543) · 8b0ba97c
      Nicolas Gotchac authored
      * 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
      8b0ba97c
    • Wei Tang's avatar
      Remove State::replace_backend (#8569) · b8468216
      Wei Tang authored
      b8468216
    • Tomasz Drwięga's avatar
      Make trace-time publishable. (#8568) · f20f9f37
      Tomasz Drwięga authored
      f20f9f37
    • Tomasz Drwięga's avatar
      Don't block sync when importing old blocks (#8530) · 24838bbc
      Tomasz Drwięga authored
      * 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.
      24838bbc
    • Wei Tang's avatar
      Trace precompiled contracts when the transfer value is not zero (#8486) · 7a00d979
      Wei Tang authored
      * 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
      7a00d979
    • Pierre Krieger's avatar
      Parity as a library (#8412) · ac3de4c5
      Pierre Krieger authored
      * Parity as a library
      
      * Fix concerns
      
      * Allow using a null on_client_restart_cb
      
      * Fix more concerns
      
      * Test the C library in test.sh
      
      * Reduce CMake version to 3.5
      
      * Move the clib test before cargo test
      
      * Add println in test
      ac3de4c5
  8. May 08, 2018
    • David's avatar
      Rlp decode returns Result (#8527) · 28c73188
      David authored
      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).
      28c73188
  9. May 07, 2018
    • André Silva's avatar
      Node table sorting according to last contact data (#8541) · a7a46f42
      André Silva authored
      * network-devp2p: sort nodes in node table using last contact data
      
      * network-devp2p: rename node contact types in node table json output
      
      * network-devp2p: fix node table tests
      
      * network-devp2p: note node failure when failed to establish connection
      
      * network-devp2p: handle UselessPeer error
      
      * network-devp2p: note failure when marking node as useless
      a7a46f42
    • Wei Tang's avatar
      Keep all enacted blocks notify in order (#8524) · 528497b8
      Wei Tang authored
      * 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
      528497b8