This is a huge change, which includes some changes to replace code that
originally cloned to reuse allocations instead. The updated
`elastic-array` crate renames its consuming `Vec`-conversion method to
`into_vec`, which means that I can do a simple
`sed -i 's/to_vec/into_vec/'` and then fix the compilation errors.
This commit is probably a minor performance win and definitely a
significant readability win.
* fixed naming of rlp modules
* RlpStream cleanup
* appending short rlp lists (0...55 bytes) is 25% faster
* RlpStream does not use bytes module, nor trait Stream
* removed unused code from rlp module
* compiling ethcore-util with new rlp serialization
* compiling parity with new rlp serialization
* fixed compiling ethcore-light with new rlp serialization
* fixed compiling ethsync with new rlp serialization
* removed redundant comment, print
* removed redundant double-space
* replace usage of WriteBytesExt with ByteOrder
* remove old lint silencer
* dispatch requests only to peers with higher TD
* dynamic target for sync rounds
* use round pivots instead of frames, fix test
* fix total difficulty calculation for test client
* fix broken reorg algorithm
* fork test, fix ancestor search
* owning views of blockchain data
* port blockchain and client traits to owning views
* fix ethcore tests
* use strong headers and bodies in ethcore_light
* port ethsync to use owning views
* port rpc to owning views
* port parity informant and blockchain export
* Allow sync reorg up to pruning history size
* Peer difficulty tracking
* Abort downloading block if received with NewBlock
* Set pruning history to 1200
* Renamed history size field
* possible fix for #3686
* queue: simplify conclusion, don't block on joining
* queue: park verifiers with timeout to prevent race
* more robust verification loop
* queue: re-introduce wait for verifier joining
* The front-end for each hard-fork, also EIP-160.
* Address EIP161 a/c
* Include EIP-161b
* EIP-161 part d.
* Fix test build.
* Fix one test, add another.
* Fix use of bloom & renaming.
* Initial groundwork for EIP-155
* Fix minor bug.
* Fix all tests finally.
* Rest of EIP-155.
* Add tests for EIP-155 algorithm.
Update transaction tests validation.
* Minor reformat.
* Address grumbles.
* Remove unused code.
* Fix SUICIDE gas mechanism and add consensus tests.
* Remove commented code.
* Set Frontier hardfork block number
* Fix warning.
* Transaction tests,
* no longer export action_params
* remove transaction, header, receipt re-rexports from common
* remove env_info and builtins re-exports from common
* remove everything but util export from common
* replace common usages with util, remove module
* add a prelude module for ethcore-bigint
* move block queue to own module, a couple readability changes
* make block queue generic over verifiable data
also fixes heap size calculation
* make block queue into a more generic verification queue
* some module reoganization
* implement header queue
* clean up verification error messages
Closes#2213
Omit transaction and receipt roots from abridged block.
No longer use RLP compression.
Make ordered_trie_root generic over an iterator to save an allocation.
Breaks snapshot format backwards compatibility (with other 1.4 snapshots -- it's already been broken with 1.3).
Documentation will need updating
* Make the block header struct's internals private
Currently, this involves a lot of explicit cloning, but we
could migrate the return types of the get_* functions to
be copies rather than references since they are mostly copy
types anyway.
I opted to eliminate the constructor in favor of using
Default::default() plus calling a bunch of setters. This
is similar to the model that a Google Protobuf client uses
and I think it looks fine.
* Drop some unnecessary cloning by comparing references
* Fix compiler errors from callsites in tests.
* Address renamed to H160 at bigint library level
* moved uint specific test from util to bigint library
* naming
* unifing hashes in progress
* unifing hashes
* cleanup redundant unwraps in tests
* Removing util/crypto in progress.
* fixed compiling
* signature cleanup in progress
* new module - ethcrypto used by ethstore and ethcore-network
* fixed compiling
* fixed compiling
* fixed merge
* Consolidation migration
* Started db amalgamation
* Using client constants for columns
* Adding with_columns constructor
* Migrating to single db
* Fixing tests.
* test.sh without verbose
* Fixing warnings
* add migration tests that catch the bug
* make multiple migrations more robust
* add moved v9
* Merge branch 'noop-migrations' into single-db
* spurious line
* clean up migrations ordering
* update comment [ci skip]
* Bumping default number of max_open_files & re-ordering columns.
* fix merge
* fix ignored analysis tests
* Caching best block content
* Faster best_block_header
* Adding progress to v8 migration
* clean up warnings
* Separate hashes and bodies in the DB
* Separate hashes and bodies in the DB
* Fixed tests
* cli commands
* cleanup parity/signer
* cleanup parity/signer
* remove redundant import of signer crate from main.rs
* cli cleanup in progress
* cli cleanup in progress
* moved few commonly used functions to separate methods with tests
* cleaning up blockchain import in progress
* cleaning up blockchain import in progress2
* cleaning up blockchain import in progress3
* tests for database compaction profile parsing
* cleaning up blockchain import in progress4
* cleaning up blockchain import in progress5
* blockchain import
* export blockchain in progress
* cleanup execute_export
* Configuration::to_duration cleaned up
* removed unused code, tests for to_duration
* cleanup Configuration::mode function
* parsing some of the cli params in params.rs
* rpc and signer are no longer optional
* move importing extern crates to main.rs file
* swipe dies from rpc module
* swipe dies from dapps
* finding deprecated
* several tests and fixes for parity
* parity cleanup in progress
* cleanup price parsing
* parity cleanup in progress
* swiped all dies
* parity cleanup in progress
* replace usages of from_str with parse() in parity/params.rs
* removed few more from_str
* split parity/params.rs into params and helpers
* removed wildcard import from configuration.rs
* cleanup directories/path creation
* cleaning up run cmd
* moved LoggerConfig
* defaults for cli params
* fixed indention in raise_fd_limit
* tests for rpc_apis
* tests for default ipc and rpc settings
* ipc socket
* cleanup in progress
* account service
* cleanup miner config
* BlockChain commands use Directiores structure now
* client_config
* network settings and dapps configuration
* removing warnings
* default logger config
* fixed client_path
* overhaul
* fixing export && import
* default export DataFormat
* import and export also upgrade db
* fixed export && import
* polishing pr
* polishing pr
* fixed custom bootnodes
* fixed daemonize on windows
* fixed setting up enable network
* finished pr
* fixed compiling on windows
* Fixed warning; windows build
* Better cache management
* Fixed tests on windows
* Fixed test
* Restored pruning method names
* --cache alias
* Fixed more tests
* Ensure default options actually listed as valid
[ci:skip]
* Gas price statistics.
Affects eth_gasPrice.
Added ethcore_gasPriceStatistics.
Closes#1265
* Fix a bug in eth_gasPrice
* Fix tests.
* Revert minor alteration.
* Tests for gas_price_statistics.
- Tests;
- Additional infrastructure for generating test blocks with
transactions.
* use bloomchain crate in blockchain module. remove obsole chainfilter submodule
* update database version to 6.0
* removed redundant line
* simple db migration
* make migration slightly more functional
* bloomchain migration
* migration version is just a single unsigned integer
* updated migration v6
* parity migration
* db migration
* removed hardcoded migration dir
* replace ptr::copy with clone_from_slice, removed potential endianess problem from trace/db.rs
* removed superfluous line
* blockchains log blooms config is not exposed any more