Afri Schoedon
78ceec6c6e
Backports for beta 2.2.2 ( #9976 )
...
* version: bump beta to 2.2.2
* Add experimental RPCs flag (#9928 )
* WiP
* Enable experimental RPCs.
* Keep existing blocks when restoring a Snapshot (#8643 )
* Rename db_restore => client
* First step: make it compile!
* Second step: working implementation!
* Refactoring
* Fix tests
* PR Grumbles
* PR Grumbles WIP
* Migrate ancient blocks interating backward
* Early return in block migration if snapshot is aborted
* Remove RwLock getter (PR Grumble I)
* Remove dependency on `Client`: only used Traits
* Add test for recovering aborted snapshot recovery
* Add test for migrating old blocks
* Fix build
* PR Grumble I
* PR Grumble II
* PR Grumble III
* PR Grumble IV
* PR Grumble V
* PR Grumble VI
* Fix one test
* Fix test
* PR Grumble
* PR Grumbles
* PR Grumbles II
* Fix tests
* Release RwLock earlier
* Revert Cargo.lock
* Update _update ancient block_ logic: set local in `commit`
* Update typo in ethcore/src/snapshot/service.rs
Co-Authored-By: ngotchac <ngotchac@gmail.com >
* Adjust requests costs for light client (#9925 )
* PIP Table Cost relative to average peers instead of max peers
* Add tracing in PIP new_cost_table
* Update stat peer_count
* Use number of leeching peers for Light serve costs
* Fix test::light_params_load_share_depends_on_max_peers (wrong type)
* Remove (now) useless test
* Remove `load_share` from LightParams.Config
Prevent div. by 0
* Add LEECHER_COUNT_FACTOR
* PR Grumble: u64 to u32 for f64 casting
* Prevent u32 overflow for avg_peer_count
* Add tests for LightSync::Statistics
* Fix empty steps (#9939 )
* Don't send empty step twice or empty step then block.
* Perform basic validation of locally sealed blocks.
* Don't include empty step twice.
* prevent silent errors in daemon mode, closes #9367 (#9946 )
* Fix a deadlock (#9952 )
* Update informant:
- decimal in Mgas/s
- print every 5s (not randomly between 5s and 10s)
* Fix dead-lock in `blockchain.rs`
* Update locks ordering
* Fix light client informant while syncing (#9932 )
* Add `is_idle` to LightSync to check importing status
* Use SyncStateWrapper to make sure is_idle gets updates
* Update is_major_import to use verified queue size as well
* Add comment for `is_idle`
* Add Debug to `SyncStateWrapper`
* `fn get` -> `fn into_inner`
* ci: rearrange pipeline by logic (#9970 )
* ci: rearrange pipeline by logic
* ci: rename docs script
* fix docker build (#9971 )
* Deny unknown fields for chainspec (#9972 )
* Add deny_unknown_fields to chainspec
* Add tests and fix existing one
* Remove serde_ignored dependency for chainspec
* Fix rpc test eth chain spec
* Fix starting_nonce_test spec
* Improve block and transaction propagation (#9954 )
* Refactor sync to add priority tasks.
* Send priority tasks notifications.
* Propagate blocks, optimize transactions.
* Implement transaction propagation. Use sync_channel.
* Tone down info.
* Prevent deadlock by not waiting forever for sync lock.
* Fix lock order.
* Don't use sync_channel to prevent deadlocks.
* Fix tests.
* Fix unstable peers and slowness in sync (#9967 )
* Don't sync all peers after each response
* Update formating
* Fix tests: add `continue_sync` to `Sync_step`
* Update ethcore/sync/src/chain/mod.rs
Co-Authored-By: ngotchac <ngotchac@gmail.com >
* fix rpc middlewares
* fix Cargo.lock
* json: resolve merge in spec
* rpc: fix starting_nonce_test
* ci: allow nightl job to fail
2018-11-29 10:57:49 +01:00
Marek Kotewicz
6b286a5dee
make instantSeal engine backwards compatible, closes #9696 ( #9700 )
2018-10-04 15:08:20 +02:00
Wei Tang
5752869824
Support millisecond timestamp for instant seal engine ( #9469 )
...
* Support millisecond timestamp for instant seal engine
* Forgot to checkin instant_seal mod
* Fix instant seal config
* Fix json crate compile
* Fix private_spec.json
* Option<bool> -> bool
2018-09-06 11:38:00 +02:00
Niklas Adolfsson
98b7c07171
Update license header and scripts ( #8666 )
...
* Update `add_license` script
* run script
* add `remove duplicate lines script` and run it
* Revert changes `English spaces`
* strip whitespaces
* Revert `GPL` in files with `apache/mit license`
* don't append `gpl license` in files with other lic
* Don't append `gpl header` in files with other lic.
* re-ran script
* include c and cpp files too
* remove duplicate header
* rebase nit
2018-06-04 10:19:50 +02:00
Robert Habermeier
bc167a211b
Generalize engine trait ( #6591 )
...
* move common forks and parameters to common params
* port specs over to new format
* fix RPC tests
* parity-machine skeleton
* remove block type
* extract out ethereum-specific methods into EthereumMachine
* beginning to integrate Machine into engines. dealing with stale transitions in Ethash
* initial porting to machine
* move block reward back into engine
* abstract block reward logic
* move last hash and DAO HF logic into machine
* begin making engine function parameters generic
* abstract epoch verifier and ethash block reward logic
* instantiate special ethereummachine for ethash in spec
* optional full verification in verify_block_family
* re-instate tx_filter in a way that works for all engines
* fix warnings
* fix most tests, further generalize engine trait
* uncomment nullengine, get ethcore tests compiling
* fix warnings
* update a bunch of specs
* re-enable engine signer, validator set, and transition handler
* migrate basic_authority engine
* move last hashes into executedblock
* port tendermint
* make all ethcore tests pass
* json-tests compilation
* fix RPC tests: change in gas limit for new block changed PoW hash
* fix minor grumbles
* validate chainspecs
* fix broken import
* fix transaction verification for pre-homestead
2017-09-26 14:19:08 +02:00
Robert Habermeier
003eef982b
Move more params to the common section. ( #6134 )
...
* move common forks and parameters to common params
* port specs over to new format
* fix RPC tests
2017-07-31 12:34:29 +02:00
Guanqun Lu
292eb1de62
add asserts in engine.rs
2017-05-20 12:12:16 +08:00
keorn
ade5a13f5b
Add registrar fields ( #4716 )
...
* add registrar field
* use constructor for dev registrar
* fix test
2017-03-02 12:25:55 +01:00
Gav Wood
8404edb656
Fix whitespace ( #4299 )
...
* Fix whitespace.
* Update copyright years/owner.
* Push release only for tags.
2017-01-25 18:51:41 +01:00
keorn
be30c44179
Validator/authority contract ( #3937 )
...
* dir
* simple validator list
* stub validator contract
* make the engine hold Weak<Client> instead of IoChannel
* validator set factory
* register weak client with ValidatorContract
* check chain security
* add address array to generator
* register provider contract
* update validator set on notify
* add validator contract spec
* simple list test
* split update and contract test
* contract change
* use client in tendermint
* fix deadlock
* step duration in params
* adapt tendermint tests
* add storage fields to test spec
* constructor spec
* execute under wrong address
* create under correct address
* revert
* validator contract constructor
* move genesis block lookup
* add removal ability to contract
* validator contract adding validators
* fix basic authority
* validator changing test
* more docs
* update sync tests
* remove env_logger
* another env_logger
* cameltoe
* hold EngineClient instead of Client
* add a comment about lock scope
2017-01-10 12:23:59 +01:00
keorn
46662899da
make spec naming consistent
2016-12-19 14:15:39 +01:00
keorn
fa504e510f
Merge branch 'master' into auth-bft
2016-12-12 21:28:46 +01:00
Gav Wood
17cc2be4b5
Rename ethcore -> parity in license.
2016-12-11 19:30:54 +01:00
keorn
8ac989cbeb
Merge remote-tracking branch 'parity/master' into bft
2016-11-16 10:29:54 +00:00
keorn
ea960f1c27
Merge remote-tracking branch 'parity/master' into bft
2016-11-07 11:34:45 +00:00
keorn
aa05823afe
Merge remote-tracking branch 'parity/master' into auth-round-no-mocknet
2016-10-24 15:32:30 +01:00
Gav Wood
85eeb3ea6e
EIP150.1c ( #2591 )
...
* EIP150.1b first part.
* Add documentation.
[ci:skip]
* Tweak comment
* Fix some tests.
* Fix create
* Add the new EIP150 test. (#2563 )
* Fix create some more.
* Another fix for create.
* Final fixes.
* Enable EIP150 test.
* Revert the costly suicides to respect EIP150.1b.
* Fixups for EIP150.1c
* Update tests.
* Updating tests
* Adding state tests
* Updating tests
* Updating HF block
* Removing flushln [ci:skip]
* Commenting out suicide test
* New tests.
* Switch to EIP tests.
* Rename some stuff, combine transition tests.
* Fix U256 overflows.
* Name cleanups and an effort to fix tests.
* Rename back for clarity.
* Fix non-EIP-150 OOG CALLs
* New transition block number & additional EIP150 tests
* Morden transition block set; Tests updated
* Added missing test
2016-10-15 14:39:15 +02:00
keorn
747898d8e7
add new engine to spec
2016-09-08 12:28:59 +02:00
keorn
3aa862c9c2
add test, start tendermint
2016-08-23 12:58:40 +02:00
keorn
a20a0de48f
add spec
2016-08-21 15:28:40 +02:00
keorn
b672d51a74
Instant sealing engine ( #1767 )
...
* add an instant sealing engine
* add sealing engine tests
* rename to InstantSeal
* update name in json
* whitespace
[ci:skip]
2016-07-30 14:42:31 -07:00
Gav Wood
799c69c8d5
DAO hard-fork ( #1483 )
...
* Minor additions to allow resetting of code.
* Add test.
* Provisional DAO hard-fork proposal.
* Change to reflect latest HF spec.
* Include extradata restrictions and overrides.
* Introduce new tests.
* Update tests to new spec format.
* Allow JSON chain spec fields to be optional.
* Remove superfluous definitions. Fix overflow risk.
* Fix build.
* Add missing file.
* Remove old flag.
* Update to latest address set.
* Update tests and test spec to latest.
Change the mining default to release only on own transactions.
2016-07-16 13:02:56 +02:00
Gav Wood
488ff88562
Remove soft-fork stuff.
2016-07-05 18:18:35 +02:00
Robert Habermeier
d8fca91a2f
add daoRescueSoftFork to failing rpc and json tests
2016-06-19 17:12:14 +02:00
Tomasz Drwięga
256557d3cc
Removing warnings
2016-05-23 11:46:01 +02:00
Gav Wood
ac73b2628a
Basic Authority ( #991 )
...
* Firt commit.
* First non-functional but correct implementation of BasicAuthority.
Still needs:
- Sealing infrastructure.
* Punch a hole to give miner access to key store.
* Fix test built.
* Basic version of synchronous mining.
This will seal a block whenever a new transaction comes through.
To be made better we need a timer which will wait for one second after the
last block before sealing a new one - better still would be to cooperatively
interleave blocks with other sealing nodes.
* Add tests.
* Fix minor issues from repotting.
* Address grumbles.
2016-05-03 17:23:53 +02:00
Tomasz Drwięga
c47d08e308
Fixing warnings
2016-04-21 16:06:54 +02:00
Marek Kotewicz
373284ca0a
spec loading cleanup ( #858 )
...
* spec loading cleanup in progress
* changed engine field in json spec
* refactored engine params
* polishing spec loading refactor
* fixed compiling json tests
* fixed compiling parity
* removed warnings
* removed commented out code
* fixed failing test
* bringing back removed TODO in spec.
2016-04-09 10:20:35 -07:00