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
Arkadiy Paronyan
25b35ebddd
Byzantium updates ( #5855 )
...
* EIP-211 updates
* benchmarks
* blockhash instruction gas cost updated
* More benches
* EIP-684
* EIP-649
* EIP-658
* Updated some tests
* Modexp fixes
* STATICCALL fixes
* Pairing fixes
* More STATICALL fixes
* Use paritytech/bn
* Fixed REVERTing of contract creation
* Fixed more tests
* Fixed more tests
* Blockchain tests
* Enable previously broken tests
* Transition test
* Updated tests
* Fixed modexp reading huge numbers
* Enabled max_code_size test
* Review fixes
* Updated pairing pricing
* missing commas (style)
* Update test.rs
* Small improvements
* eip161abc
2017-09-15 21:07:54 +02:00
Arkadiy Paronyan
eed0e8b03a
Transaction permissioning ( #6441 )
2017-09-05 10:39:50 +01:00
Gav Wood
50495c6898
Merge branch 'master' into Fix-4858
2017-08-29 15:11:05 +02:00
Arkadiy Paronyan
d520aa2633
Connection filter ( #6359 )
2017-08-29 14:38:01 +02:00
Tomasz Drwięga
f9a08e285c
Running state test using parity-evm ( #6355 )
...
* Initial version of state tests.
* Refactor state to support tracing.
* Unify TransactResult.
* Add test.
2017-08-28 14:25:16 +02:00
Anton Gavrilov
01ea968d4f
Merge with master
2017-08-02 17:24:34 +02:00
debris
bfbeda4ede
fixed tests
2017-07-31 20:17:19 +02:00
Anton Gavrilov
5086dc3024
Working test with block reward added
2017-07-31 13:42:34 +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
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
debris
61d8f90530
updated serde to version 1.0
2017-07-06 11:36:15 +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
Stewart Mackenzie
d152fa3e85
Ethereum Classic Monetary Policy ( #5741 )
...
* Ethereum Classic Monetary Policy
Create a new parameter `ecip1017EraRounds`. When the block number
passes one era rounds, the reward is reduced by 20%.
See https://github.com/ethereumproject/ECIPs/blob/master/ECIPs/ECIP-1017.md
* Update rewards for uncle miners for ECIP1017
In the monetary policy, the rewards are changed from "up to 7/8 of the
reward" to "1/32 of the reward".
* Fix an off-by-one error in ECIP1017 era calculation
According to
https://github.com/ethereumproject/ECIPs/blob/master/ECIPs/ECIP-1017.md ,
when in block number 5,000,000, it should still be in Era 1 (which in
our code `era == 0`). So we need to check whether the `rem` equals to
zero and act accordingly when calculating the era.
* `ecip1017_era_rounds` missing from EthashParams when run in build bot
* strip out ecip1017_eras_block_reward function and add unit test
2017-06-19 18:56:37 +02:00
Marek Kotewicz
575c51f5a0
eip214, #4833 ( #4851 )
2017-06-19 11:41:46 +02:00
Anton Gavrilov
06eb561af5
Duration limit made optional for EthashParams ( #5777 )
...
* Duration limit made optional for EthashParams
* Forgotten space added
2017-06-09 12:24:23 +02:00
Arkadiy Paronyan
99bfef2801
EIP-211 RETURNDATACOPY and RETURNDATASIZE ( #5678 )
...
* EIP-211
* Optimized memory usage
* Optimized truncation
2017-06-06 18:47:12 +03:00
Arkadiy Paronyan
e6a31e7543
EIP-210 BLOCKHASH changes ( #5505 )
...
* EIP-210
* comment
2017-05-30 11:52:33 +02:00
Nikolay Volf
e1fef5c732
Update dependencies and bigint api ( #5685 )
...
* update to latest bigint
* bump elastic array and deps
* fix rlp tests
* also update all smallvec deps
* fix doc test
* reduce parking in attempt to fix CI bug
* fix from/into electum bug
* remove duplicate imports
2017-05-24 12:31:33 +02:00
Robert Habermeier
18c3e90dbf
Merge pull request #5671 from paritytech/guanqun-add-unit-tests
...
Guanqun add unit tests
2017-05-23 15:18:11 -04:00
Arkadiy Paronyan
dd004aba9f
EIP-140 ( #5477 )
2017-05-23 16:49:17 +03:00
Guanqun Lu
d35da909db
add asserts in ethash.rs
2017-05-20 12:12:16 +08:00
Guanqun Lu
73ad575306
add asserts in genesis.rs
2017-05-20 12:12:16 +08:00
Guanqun Lu
292eb1de62
add asserts in engine.rs
2017-05-20 12:12:16 +08:00
Guanqun Lu
f96731c82b
add assets for seal.rs
2017-05-19 22:48:23 +08:00
Guanqun Lu
5c7c30cc4b
add asserts in spec param.rs
2017-05-19 22:48:23 +08:00
Guanqun Lu
a61b249d57
add asserts in tendermint.rs
2017-05-19 22:48:23 +08:00
Guanqun Lu
0b4eef48c5
add asserts in instantseal
2017-05-19 22:48:23 +08:00
Guanqun Lu
90b8b612cc
add asserts for spec::basic_authority
2017-05-19 22:48:23 +08:00
Guanqun Lu
c0a8eaa3bf
add asserts in spec::authority_round's unit test
2017-05-19 22:48:23 +08:00
Guanqun Lu
a0dd77ca01
add asserts in spec::validatorset's unit test
2017-05-19 22:48:23 +08:00
Guanqun Lu
f90802498f
add two asserts in unit tests for spec::authority_round
2017-05-19 22:48:23 +08:00
Guanqun Lu
cf0b8b7681
add several new tests for spec::account
2017-05-19 22:48:23 +08:00
keorn
945c1a9478
add monotonic transition to kovan ( #5587 )
2017-05-15 21:34:01 +01:00
Arkadiy Paronyan
b50fb71dd1
EIP-86 ( #4697 )
...
* EIP-86
* Disable EIP-86 auto activation for now
2017-04-19 14:30:00 +02:00
Arkadiy Paronyan
15ae24b541
New state tests ( #5418 )
...
* General state tests
* Allow dir name for a test
2017-04-12 13:33:49 +02:00
keorn
84abf5d84f
Aura eip155 validation transition ( #5362 )
...
* add eip155 validation
* add transition block
2017-04-01 13:21:22 +02:00
keorn
a61b1567d0
Strict validation transitions ( #4988 )
...
* ability to make validation stricter
* fix consensus
* remove logger
2017-03-28 10:46:52 +02:00
Marek Kotewicz
23d3b79d9a
eip100b ( #5027 )
...
* eip100b
* fix eip100b build and tests
* Conventional comparison order
2017-03-27 11:42:40 +02:00
keorn
9fdd0e3a0a
Switching ValidatorSet ( #4961 )
...
* add multi validator set
* nicer comment
* validate in constructor
* reporting
2017-03-23 13:19:28 +01:00
Tomasz Drwięga
7e87e9e8ad
Updating JSON-RPC crates ( #4934 )
...
* New version of jsonrpc.
* Better invalid encoding messages
* Fixing deprecated methods of tokio_core
* Using dedicated branch for jsonrpc
* Bump
2017-03-22 07:02:14 +01: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
Arkadiy Paronyan
43871e393c
Additional kovan params ( #4892 )
2017-03-14 11:41:56 +01: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
Arkadiy Paronyan
ef7998f473
Max gas limit and min gas price ( #4661 )
...
* Max gas limit and min gas price
* Tests
* Limit gas limit ceiling
2017-02-24 17:34:32 +01:00
Tomasz Drwięga
72998d3ce3
Proper default accounts RPCs ( #4580 )
...
* Default accounts setting - account provider
* RPC support for default accounts
* Updating JS code
* Rename whitelist to addresses
2017-02-20 16:33:12 +01:00
Tomasz Drwięga
f1e99ea2e4
Serde 0.9 ( #4508 )
...
* Porting json
* Dapps
* Rpc & Ethstore
* New ethabi
* Last bunch of fixes
* Fixing last test
* Removing build script
* Adding ethcore-ipc-tests back
* Fixing grumbles
* Fixing blockchain tests (inference regression?)
2017-02-13 18:38:47 +03:00
Tomasz Drwięga
cf348dae60
Persistent tracking of dapps ( #4302 )
...
* Tests for RPC
* Extracting dapp_id from Origin and x-parity-origin
* Separate type for DappId
* Persistent tracking of recent dapps
* Fixing tests
* Exposing dapp timestamps
* Fixing import to work on stable
* Fixing test again
2017-01-30 10:59:46 +01:00
Arkadiy Paronyan
c012dfc3ef
EIP-98: Optional transaction state root ( #4296 )
...
* EIP98: Optional receipt state root
* Use if-else
* Fixing tests
2017-01-25 20:22:48 +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
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
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
fbc9f0d7fb
Add block rewards to more Engines ( #4055 )
...
* add block rewards
* imports
2017-01-05 21:16:13 +01:00
keorn
e5b3c092c8
Merge branch 'master' into optional-spec
2017-01-03 15:42:56 +01:00
Robert Habermeier
8125b5690c
Port try
macro to new ?
operator. ( #3962 )
...
* initial untry sweep
* restore try in ipc codegen, fix inference
* change a few missed try instances
2016-12-27 12:53:56 +01:00
keorn
afc4cd2785
Allow contract constructors in chain spec ( #3932 )
...
* constructor spec
* execute under wrong address
* create under correct address
* revert
* move genesis block lookup
* remove env_logger
2016-12-23 18:44:39 +01:00
Igor Artamonov
be75cbfaaa
set CHAIN_ID for Classic ( #3934 )
...
* configurable CHAIN_ID
* set CHAIN_ID for Ethereum Classic
2016-12-22 13:10:58 +01:00
keorn
552a772cc1
make fields defaulting to 0 optional
2016-12-22 07:06:40 +01:00
keorn
46662899da
make spec naming consistent
2016-12-19 14:15:39 +01:00
Gav Wood
d455ac4a40
Merge remote-tracking branch 'origin/master' into dapps-accounts-rpc
2016-12-15 17:12:18 +01:00
Gav Wood
20b2f84d48
Merge pull request #3828 from ethcore/new-dirs
...
New directory structure
2016-12-15 14:34:01 +01:00
Gav Wood
1ea521ea7d
Merge remote-tracking branch 'origin/master' into dapps-accounts-rpc
2016-12-15 13:51:22 +01:00
keorn
943efc21bb
add tendermint seal
2016-12-15 13:41:04 +01:00
Gav Wood
db73b0d66f
Merge remote-tracking branch 'origin/master' into dapps-accounts-rpc
2016-12-15 13:28:37 +01:00
Gav Wood
a74bce2c06
Merge pull request #3759 from ethcore/auth-bft
...
Tendermint Engine
2016-12-15 13:18:15 +01:00
keorn
8509a183ed
deserialize new seal
2016-12-14 12:14:04 +01:00
arkpar
be5fefe772
Merge branch 'master' of github.com:ethcore/parity into new-dirs
2016-12-14 00:04:11 +01:00
keorn
fa504e510f
Merge branch 'master' into auth-bft
2016-12-12 21:28:46 +01:00
arkpar
6601fde328
New data paths with upgrade
2016-12-12 16:51:07 +01:00
Gav Wood
94f5501c61
authors & homepage => Parity
2016-12-11 19:43:58 +01:00
Gav Wood
17cc2be4b5
Rename ethcore -> parity in license.
2016-12-11 19:30:54 +01:00
keorn
f3af0f46be
Merge branch 'master' into auth-bft
2016-12-10 18:14:35 +01:00
Tomasz Drwięga
4696d7f606
Additional RPCs for dapps accounts management
2016-12-10 12:36:04 +01:00
Gav Wood
5f1fcf95e0
Make *ID names consistent with std Rust (Id)
2016-12-09 23:01:43 +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
c39d504167
Merge branch 'spec-rlp-loading' into auth-bft
2016-12-05 14:11:06 +00:00
keorn
0860a3a767
ignore variable
2016-12-05 14:09:41 +00:00
keorn
22632e6324
make generic seal take valid rlp
2016-12-05 14:07:31 +00:00
keorn
c946ffebf3
Merge branch 'master' into auth-bft
2016-12-05 11:30:11 +00:00
Gav Wood
1dd13372b6
Merge remote-tracking branch 'origin/master' into rpc-middleware
2016-12-01 19:43:31 -08:00
keorn
155da50fcd
Merge branch 'master' into auth-bft
2016-11-30 13:06:21 +00:00
Tomasz Drwięga
e1e7886918
Bumping clippy
2016-11-28 12:23:06 +01:00
Tomasz Drwięga
cd6f565f69
RPC Middleware & Get/Set dapp-specific accounts
2016-11-23 16:27:05 +01:00
keorn
2fa34fd6a8
step transition messaging
2016-11-16 12:43:21 +00:00
keorn
8ac989cbeb
Merge remote-tracking branch 'parity/master' into bft
2016-11-16 10:29:54 +00:00
Gav Wood
1daba384cc
Merge pull request #3426 from ethcore/auth-round
...
Authority round consensus engine
2016-11-16 11:18:01 +08:00
Gav Wood
528bf17af5
Restrict max code size to 23999 bytes for EIP-150 and after.
2016-11-15 17:58:28 +01:00
keorn
1c958695c3
timeout loading
2016-11-15 15:25:30 +00:00
keorn
d19e8c5505
Merge remote-tracking branch 'parity/master' into bft
2016-11-15 10:26:37 +00:00
keorn
501f6d3f49
Merge branch 'master' into auth-round
2016-11-14 10:08:14 +00:00
Gav Wood
4a92668c56
Fix chainspec storage field. ( #3406 )
...
Add a test.
2016-11-13 13:58:42 +01:00
keorn
49f2a72d5d
Merge branch 'master' into auth-round
2016-11-09 10:35:00 +00:00
keorn
ea960f1c27
Merge remote-tracking branch 'parity/master' into bft
2016-11-07 11:34:45 +00:00
Igor Artamonov
2a19c33b8d
delay bomb for Classic (ECIP-1010) ( #3179 )
...
* delay bomb for classic (ECIP-1010)
* formatting fix after core review, rel [e6b5093]
2016-11-04 23:09:23 +01:00
keorn
255ec0c139
Merge branch 'master' into auth-round
2016-11-04 11:35:17 +00:00
Gav Wood
d3de475205
EIPs 155, 160, 161 ( #2976 )
...
* 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,
2016-11-03 22:22:25 +01:00
keorn
7976f46231
Merge branch 'master' into auth-round-no-mocknet
2016-10-28 17:53:23 +01:00
Tomasz Drwięga
88997801d0
Clippy bump ( #2877 )
...
* Bumping clippy
* Fixing warnings
* Fix the "fix"
2016-10-27 08:28:12 +02:00