• 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