Skip to content
  1. Apr 03, 2018
  2. Apr 02, 2018
  3. Mar 31, 2018
  4. Mar 29, 2018
    • Andrew Jones's avatar
      Replace all Rlp usages with UntrustedRlp except for ethcore views (#8233) · e3f7b70c
      Andrew Jones authored
      * Replace Rlp with UntrustedRlp and unsafely unwrap
      
      All Rlp methods return Result<_,DecoderError> now, so for this first
      pass each will be marked with `expect("TODO")`. In the next pass we can
      categorise figure out how to handle each case.
      
      * Handle DecoderError for tendermint message
      
      * Unwrap rlp results in TestBlockcChainClient
      
      Rlp should be valid since created manually in tests
      
      * Replace `use rlp::*` with explicit imports
      
      * Remove rlp decode unwraps from light cli request
      
      * Structured rlp encoding for curr best and latest in header chain
      
      * Propogate decoder errors from send_packet
      
      * Fix body uncles rlp index
      
      * Use BodyView in sync and `expect` rlp errors
      
      * Revert bbf28f removing original Rlp for this phase
      
      This can be done again in the next phase, in order that we can leave the ethcore views unchanged
      
      * Restore legacy Rlp and UntrustedRlp
      
      Use legacy Rlp for ethcore views. Will redo replacing Rlp with UntrustedRlp in  a subsequent PR
      
      * Fix tests
      
      * Replace boilerplate Encodable/Decodable with derive
      
      * Use BlockView instead of Rlp, remove unwrap
      
      * Remove rlp test_cli unwraps by using BlockView instead of Rlp directly
      
      * Remove unneccesary change to use borrowed hash
      
      * Construct sync block using new_from_header_and_body
      e3f7b70c
  5. Mar 28, 2018
  6. Mar 27, 2018
  7. Mar 20, 2018
  8. Mar 14, 2018
  9. Mar 13, 2018
  10. Mar 12, 2018
  11. Mar 07, 2018
  12. Mar 06, 2018
  13. Mar 04, 2018
  14. Mar 03, 2018
    • Dmitry Kashitsyn's avatar
      `Client` refactoring (#7038) · 9d7d6f71
      Dmitry Kashitsyn authored and Marek Kotewicz's avatar Marek Kotewicz committed
      * Improves `BestBlock` comment
      
      * Improves `TraceDB` comment
      
      * Improves `journaldb::Algorithm` comment.
      
      Probably the whole enum should be renamed to `Strategy` or something alike.
      
      * Comments some of the `Client`'s fields
      
      * Deglobs client imports
      
      * Fixes comments
      
      * Extracts `import_lock` to `Importer` struct
      
      * Extracts `verifier` to `Importer` struct
      
      * Extracts `block_queue` to `Importer` struct
      
      * Extracts `miner` to `Importer` struct
      
      * Extracts `ancient_verifier` to `Importer` struct
      
      * Extracts `rng` to `Importer` struct
      
      * Extracts `import_old_block` to `Importer` struct
      
      * Adds `Nonce` trait
      
      * Adds `Balance` trait
      
      * Adds `ChainInfo` trait
      
      * Fixes imports for tests using `chain_info` method
      
      * Adds `BlockInfo` trait
      
      * Adds more `ChainInfo` imports
      
      * Adds `BlockInfo` imports
      
      * Adds `ReopenBlock` trait
      
      * Adds `PrepareOpenBlock` trait
      
      * Fixes import in tests
      
      * Adds `CallContract` trait
      
      * Fixes imports in tests using `call_contract` method
      
      * Adds `TransactionInfo` trait
      
      * Adds `RegistryInfo` trait
      
      * Fixes imports in tests using `registry_address` method
      
      * Adds `ScheduleInfo` trait
      
      * Adds `ImportSealedBlock` trait
      
      * Fixes imports in test using `import_sealed_block` method
      
      * Adds `BroadcastProposalBlock` trait
      
      * Migrates `Miner` to static dispatch
      
      * Fixes tests
      
      * Moves `calculate_enacted_retracted` to `Importer`
      
      * Moves import-related methods to `Importer`
      
      * Removes redundant `import_old_block` wrapper
      
      * Extracts `import_block*` into separate trait
      
      * Fixes tests
      
      * Handles `Pending` in `LightFetch`
      
      * Handles `Pending` in filters
      
      * Handles `Pending` in `ParityClient`
      
      * Handles `Pending` in `EthClient`
      
      * Removes `BlockId::Pending`, partly refactors dependent code
      
      * Adds `StateInfo` trait
      
      * Exports `StateOrBlock` and `BlockChain` types from `client` module
      
      * Refactors `balance` RPC using generic API
      
      * Refactors `storage_at` RPC using generic API
      
      * Makes `MinerService::pending_state`'s return type dynamic
      
      * Adds `StateOrBlock` and `BlockChain` types
      
      * Adds impl of `client::BlockChain` for `Client`
      
      * Exports `StateInfo` trait from `client` module
      
      * Missing `self` use
      
      To be fixed up to "Adds impl of `client::BlockChain` for `Client`"
      
      * Adds `number_to_id` and refactors dependent RPC methods
      
      * Refactors `code_at` using generic API
      
      * Adds `StateClient` trait
      
      * Refactors RPC to use `StateClient` trait
      
      * Reverts `client::BlockChain` trait stuff, refactors methods to accept `StateOrBlock`
      
      * Refactors TestClient
      
      * Adds helper function `block_number_to_id`
      
      * Uses `block_number_to_id` instead of local function
      
      * Handles `Pending` in `list_accounts` and `list_storage_keys`
      
      * Attempt to use associated types for state instead of trait objects
      
      * Simplifies `state_at_beginning`
      
      * Extracts `call` and `call_many` into separate trait
      
      * Refactors `build_last_hashes` to accept reference
      
      * Exports `Call` type from the module
      
      * Refactors `call` and `call_many` to accept state and header
      
      * Exports `state_at` in `StateClient`
      
      * Exports `pending_block_header` from `MinerService`
      
      * Refactors RPC `call` method using new API
      
      * Adds missing parentheses
      
      * Refactors `parity::call` to use new call API
      
      * Update .gitlab-ci.yml
      
      fix gitlab lint
      
      * Fixes error handling
      
      * Refactors `traces::call` and `call_many` to use new call API
      
      * Refactors `call_contract`
      
      * Refactors `block_header`
      
      * Refactors internal RPC method `block`
      
      * Moves `estimate_gas` to `Call` trait, refactors parameters
      
      * Refactors `estimate_gas` in RPC
      
      * Refactors `uncle`
      
      * Refactors RPC `transaction`
      
      * Covers missing branches
      
      * Makes it all compile, fixes compiler grumbles
      
      * Adds casts in `blockchain` module
      
      * Fixes `PendingBlock` tests, work on `MinerService`
      
      * Adds test stubs for StateClient and EngineInfo
      
      * Makes `state_db` public
      
      * Adds missing impls for `TestBlockChainClient`
      
      * Adds trait documentation
      
      * Adds missing docs to the `state_db` module
      
      * Fixes trivial compilation errors
      
      * Moves `code_hash` method to a `BlockInfo` trait
      
      * Refactors `Verifier` to be generic over client
      
      * Refactors `TransactionFilter` to be generic over client
      
      * Refactors `Miner` and `Client` to reflect changes in verifier and txfilter API
      
      * Moves `ServiceTransactionChecker` back to `ethcore`
      
      * Fixes trait bounds in `Miner` API
      
      * Fixes `Client`
      
      * Fixes lifetime bound in `FullFamilyParams`
      
      * Adds comments to `FullFamilyParams`
      
      * Fixes imports in `ethcore`
      
      * Fixes BlockNumber handling in `code_at` and `replay_block_transactions`
      
      * fix compile issues
      
      * First step to redundant trait merge
      
      * Fixes compilation error in RPC tests
      
      * Adds mock `State` as a stub for `TestClient`
      
      * Handles `StateOrBlock::State` in `TestBlockChainClient::balance`
      
      * Fixes `transaction_count` RPC
      
      * Fixes `transaction_count`
      
      * Moves `service_transaction.json` to the `contracts` subfolder
      
      * Fixes compilation errors in tests
      
      * Refactors client to use `AccountData`
      
      * Refactors client to use `BlockChain`
      
      * Refactors miner to use aggregate traits
      
      * Adds `SealedBlockImporter` trait
      
      * Refactors miner to use `SealedBlockImporter` trait
      
      * Removes unused imports
      
      * Simplifies `RegistryInfo::registry_address`
      
      * Fixes indentation
      
      * Removes commented out trait bound
      9d7d6f71
  15. Mar 01, 2018
  16. Feb 27, 2018
  17. Feb 23, 2018
  18. Feb 22, 2018
  19. Feb 19, 2018
  20. Feb 18, 2018
  21. Feb 16, 2018