Nikolay Volf
b7006034b1
Decouple virtual machines ( #6184 )
...
* work in progress for splitting vms
* evm working
* Evm -> Vm
* wasm converted
* ethcore working
* test fixes
2017-08-01 13:37:57 +03:00
Robert Habermeier
d365281cce
Ethcore crate split part 1 ( #6041 )
...
* split out types into separate crate
* split out evm into its own crate
2017-07-12 13:09:17 +02:00
Nikolay Volf
62210fb932
WASM contracts MVP ( #5679 )
...
* lifetime issues
* refactor to new 'native env'
* descriptors and such
* wasm mvp continued
* finalized env/ext bindings
* descriptor -> call_args
* inject gas counter
* result processing and engine activation
* tabify some source files
* needs return new
* wasm tests initial
* erradicate warnings
* origin in the descriptor
* update test repo
* payload verification tests
* identity return payload test
* some test description
* dispersion test
* check length here
* suicidal contract
* engine params
* fix typo
* review fixes
* submodule update
* update - purge reserved space
* doc effort
* more review fixes
* fix error message
* fix dependency url
* reorg error handling
* update submodule
* update utils
* update to latest parity-wasm
* tabify
* fix wasm magic header
* update dependencies
* external create and tests
* update to latest tests
* extra trace info
* Update parity-wasm
* update wasm-utils also
* few traces and result handle change
* alter trace content
* fix issues with optimizer, update to latest parity with validator, etc
* static initialization
* license preamble
* update wasm crates and gas costs
* fix grumbles
* bring back lifetime
* fix compilation
2017-07-10 17:42:10 +02:00
Tomasz Drwięga
a24b6ad983
Use standard paths for Ethash cache ( #5881 )
...
* Use cache path to store ethash files.
* Fixing tests, more flexible API.
* Use AsRef<Path> everywhere.
* Fixing ethcore tests.
* Fix RPC tests.
2017-07-10 12:57:40 +02:00
Tomasz Drwięga
5d9f5e3509
Defer code hash calculation.
2017-06-30 11:30:32 +02:00
Robert Habermeier
d069b98b45
PoA: Wait for transition finality before applying ( #5774 )
...
* final engine changes
* migration to v13
* adding and removing pending transitions
* epoch_transition_for
* port snapshot to new engine methods
* final validator set interface
* fix compiler errors
* revert v13/epoch_depth transition
* make call on new epoch
* rolling finality checker
* tests for finality checker
* constructing finality proof upon pending transition
* fix warnings and finality proof checking
* fix compiler warnings in tests
* test fixes
* don't include genesis in finality checking
* change snapshot test chain building logic
* minor refactorings
* fetch epoch transition based on parent, fix divide-by-zero in SimpleList
* fix formatting
* fix ABIs and finality checking in snapshot restoration
* encode signal number in proof
* create more blocks at the end of tests
* update gist to accurate contract code
* test for epoch_transition_for
* fix tests with immediateTransitions parameter
* disable force flag after forcing
* rename ValidatorsChanged to InitiateChange and finalizeSignal to finalizeChange
* a few more validator set tests
2017-06-28 13:17:36 +02:00
Arkadiy Paronyan
57626b60e7
EIP-168, 169: Dust protection ( #4757 )
...
* Dust protection
* Track touched accounts in the substate
* Minor alterations
2017-06-28 09:10:57 +02:00
Marek Kotewicz
575c51f5a0
eip214, #4833 ( #4851 )
2017-06-19 11:41:46 +02:00
Robert Habermeier
edea41d35e
enforce block signer == author field in PoA ( #5808 )
2017-06-12 12:54:34 +03:00
Arkadiy Paronyan
e6a31e7543
EIP-210 BLOCKHASH changes ( #5505 )
...
* EIP-210
* comment
2017-05-30 11:52:33 +02:00
Robert Habermeier
4c5e4ac8da
PoA warp implementation ( #5488 )
...
* separate modules for consensus snapshot chunks
* bulk of authority warp logic
* finish authority warp implementation
* squash warnings and enable authority snapshot mode
* test harness for PoA
* fiddle with harness
* epoch generation proof fixes
* update constructor code
* store epoch transition proof after block commit
* basic snap and restore test
* use keyvaluedb in state restoration
* decompress chunks
* fix encoding issues
* fixed-to-contract-to-contract test
* implement ancient block import
* restore genesis transition in PoW snapshot
* add format version method to snapshot components
* supported version numbers in snapshot_components
* allow returning of ancient epoch transitions
* genesis hash mismatch check
* remove commented code
2017-05-17 12:41:33 +02:00
Robert Habermeier
56768ff237
only try to warp when engine supports it
2017-05-10 17:12:00 +02:00
Arkadiy Paronyan
ed7c366b90
EIP-86 fixes ( #5506 )
2017-05-05 15:00:40 +01:00
Robert Habermeier
6652df03df
Merge branch 'master' into aura-contract-warp
2017-04-19 20:43:24 +02:00
Robert Habermeier
2ec3397b7d
snapshot chunk and restore traits
2017-04-19 20:31:53 +02:00
Robert Habermeier
a278dd5a0a
store epoch transition proofs in DB
2017-04-19 14:58:19 +02:00
Arkadiy Paronyan
b50fb71dd1
EIP-86 ( #4697 )
...
* EIP-86
* Disable EIP-86 auto activation for now
2017-04-19 14:30:00 +02:00
Robert Habermeier
f6f9816ef4
epoch verifier rename
2017-04-18 14:19:10 +02:00
Robert Habermeier
715d5daafe
ChainVerifier for memoizing validator sets
2017-04-13 20:24:21 +02:00
Robert Habermeier
34a1512ff0
skeleton for proof checking
2017-04-12 18:55:38 +02:00
Robert Habermeier
2d8a8bd3e5
engine changes
2017-04-12 14:41:19 +02:00
Robert Habermeier
7723d6281b
starting memoized validatorset
2017-04-12 12:46:25 +02:00
Robert Habermeier
a254b2098f
more useful Engine::verify_seal
2017-04-11 17:07:04 +02:00
keorn
2398311455
add eip155 validation ( #5346 )
2017-03-30 20:01:19 +02:00
Robert Habermeier
797a3e1cd9
EIP198 and built-in activation ( #4926 )
...
* EIP198 and built-in activation
* address review
2017-03-21 19:36:38 +03:00
keorn
a84a10ff03
Add replay protection ( #4808 )
...
* add eip155
* make network_id default
2017-03-08 14:44:07 +01:00
keorn
ac6180a6fe
seals_internally ( #4613 )
2017-02-20 16:35:53 +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
e9251a9325
Generic engine utilities ( #4258 )
...
* move modules up
* make structs generic
* reound to view and tests
* fix
2017-01-24 22:03:03 +01:00
keorn
ba0209678b
ValidatorSet reporting ( #4208 )
...
* remove register_account_provider
* build rpc module
* new dummy client
* common EngineSigner struct
* from -> into
* initial report via call
* separate safe from regular contract
* transact_contract
* fix build
* return Signature, docs
* add sign method to some engines
* add safeContract spec
* update specs to new contracts
* use AuthorityRound for contract spec
* add more reporting
* add reporting test
* use gas floor
* shorter
2017-01-24 12:03:58 +03:00
keorn
b7f9b304c1
Chain scoring ( #4218 )
...
* chain scoring
* use current steps
2017-01-23 17:27:11 +03:00
keorn
97a60ceab1
Common EngineSigner ( #4189 )
...
* remove register_account_provider
* build rpc module
* new dummy client
* common EngineSigner struct
* from -> into
* return Signature, docs
2017-01-20 13:25:17 +01:00
keorn
73b80869f5
Remove unnecessary Engine method ( #4184 )
...
* remove register_account_provider
* build rpc module
* new dummy client
2017-01-18 18:49:50 +01:00
Tomasz Drwięga
e11353f94c
UnverifiedTransaction type ( #4134 )
...
* Introducing ValidSignedTransaction
* Verifiying transactions in engines
* Widening use of VerifiedSignedTransaction
* Renaming Transactions
* Uncommenting banning queue & Fixing tests
* Fixing json tests
* Fixing pre-homestead test
* Fixing imports
* Addressing grumbles
* Fixing test
2017-01-13 08:51:36 +00: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
fa504e510f
Merge branch 'master' into auth-bft
2016-12-12 21:28:46 +01:00
Gav Wood
58b72c521d
Rename ethcore -> parity in licenses.
2016-12-11 19:31:31 +01:00
Robert Habermeier
9252ebf93d
block: enforce gas limit falls within engine bounds
2016-12-11 12:50:48 +01:00
arkpar
c777362d02
Sync channel for consensus test
2016-12-11 12:32:01 +01:00
arkpar
97f358ced9
AuthorityRound network simulation test
2016-12-09 20:38:06 +01:00
arkpar
ca7406773f
AuthorityRound network simulation test
2016-12-09 19:27:16 +01:00
keorn
56e9dab9de
add Engine stop method
2016-12-09 14:52:08 +01:00
keorn
3ebfa1481d
better proposal block handling
2016-12-08 12:03:34 +01:00
keorn
8f641e67f3
Merge branch 'engine-password' into auth-bft
2016-12-06 13:13:02 +00:00
keorn
81a756394a
Merge branch 'master' into engine-password
2016-12-05 17:08:57 +00:00
keorn
529a7fc33c
add password and AccountProvider
2016-12-05 17:08:16 +00:00
keorn
6fc943ca6d
Merge branch 'master' into auth-bft
2016-12-05 16:37:35 +00:00
keorn
c61a0e97b3
make engine determine block order
2016-12-05 15:20:32 +00:00
Gav Wood
2911c549e3
Encode networkid as a u64.
2016-12-04 10:48:26 -08:00
keorn
e0f2fac441
new error type
2016-12-02 13:32:00 +00:00