Vurich
3d8dc11442
Upgrade elastic-array
to 0.9.0
...
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.
2017-06-29 13:05:33 +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
Jef
72094a8bee
Reduce unnecessary allocations ( #5944 )
2017-06-28 09:36:42 +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
Robert Habermeier
796482c129
fix minor race condition in aura seal generation ( #5910 )
2017-06-22 20:44:04 +02:00
Arkadiy Paronyan
4d5280e43c
removed panic handlers ( #5895 )
2017-06-22 19:00:53 +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
Robert Habermeier
bedce59a6f
Merge pull request #5867 from guanqun/small-fixes
...
ArchiveDB and other small fixes
2017-06-19 14:03:48 +02:00
Robert Habermeier
b84be93bb7
Merge pull request #5866 from guanqun/remove-try
...
convert try!() to ?
2017-06-19 14:02:58 +02:00
Marek Kotewicz
575c51f5a0
eip214, #4833 ( #4851 )
2017-06-19 11:41:46 +02:00
Guanqun Lu
4eff7abf3b
StateDB: change spaces to tab
2017-06-18 23:13:27 +08:00
Guanqun Lu
41fed96d96
convert try!() to ?
2017-06-18 22:16:34 +08:00
Robert Habermeier
ca27234a59
minor optimizations of the modexp builtin
2017-06-17 21:18:52 +02:00
Tomasz Drwięga
963bcba267
Merge branch 'master' into unlock
2017-06-14 12:06:27 +02:00
Tomasz Drwięga
efc46e78f1
Fix description of AccountProvider setting.
2017-06-14 12:06:15 +02:00
Tomasz Drwięga
fb3668f903
Adding missing documentation. ( #5821 )
2017-06-13 18:38:10 +03:00
arkpar
4b74f65ed8
Fixed mem write for empty slice v2
2017-06-12 22:45:57 +02:00
Arkadiy Paronyan
033a75888c
Revert "Fixed mem write for empty slice ( #5825 )" ( #5826 )
...
This reverts commit 6b874cedb8
.
2017-06-12 22:43:20 +02:00
Arkadiy Paronyan
6b874cedb8
Fixed mem write for empty slice ( #5825 )
2017-06-12 22:42:58 +02:00
Robert Habermeier
edea41d35e
enforce block signer == author field in PoA ( #5808 )
2017-06-12 12:54:34 +03:00
Tomasz Drwięga
75ac263961
Fix stack display in evmbin. ( #5733 )
...
* Fix stack display.
* Additional compatiblity fixes.
2017-06-09 12:31:03 +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
Tomasz Drwięga
52f7978d4d
Merge branch 'master' into unlock
2017-06-07 17:07:32 +02:00
Guanqun Lu
05aa960c25
use NULL_RLP, remove NULL_RLP_STATIC ( #5742 )
2017-06-07 11:58:39 +02:00
Tomasz Drwięga
19f01194b1
Blacklist empty phrase account. ( #5730 )
2017-06-07 11:34:53 +02:00
Tomasz Drwięga
f5d0fa2c21
Merge branch 'master' into unlock
2017-06-06 18:41:00 +02:00
Tomasz Drwięga
a5299bdb1a
Unlocking with secrets.
2017-06-06 18:06:40 +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
Guanqun Lu
5a20c63b70
two small changes in evm ( #5700 )
...
* add a simple test for is_push so that every small utility has a corresponding unit test
* split evm/factory.rs into two files as the TODO suggests
* style fixes according to review comments
2017-05-30 19:31:43 +02:00
Arkadiy Paronyan
e6a31e7543
EIP-210 BLOCKHASH changes ( #5505 )
...
* EIP-210
* comment
2017-05-30 11:52:33 +02:00
Tomasz Drwięga
543965411e
Revamping parity-evmbin ( #5696 )
...
* Revamping evmbin to support spec files, json format and subcalls.
* Fix formatting of usage.
2017-05-26 11:06:48 +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
Arkadiy Paronyan
dd004aba9f
EIP-140 ( #5477 )
2017-05-23 16:49:17 +03:00
Tomasz Drwięga
f38cc8e182
Latest headers Pub-Sub ( #5655 )
...
* Signer subscription.
* Fixing RPC tests.
* Block Headers eth-pubsub.
* PubSub for light client.
* Fixing tests.
* Updating to proper jsonrpc version.
* Update to correct tests.
* Fixing tests.
2017-05-23 12:26:39 +02:00
Tomasz Drwięga
f47cbe0be6
Adding CLI options: port shift and unsafe expose. ( #5677 )
...
* Adding CLI option for port shift and unsafe expose.
* Fixing IPC path.
* Fix hosts when attempting to expose on all interfaces.
* Fixing test.
* Fix typo.
2017-05-23 12:24:32 +02:00
keorn
532801f9d6
Report missing author in Aura ( #5583 )
...
* report missing block
* add a test validator set
* add a skip test
* clean up test
* report all skipped
2017-05-22 08:21:34 +02:00
Tomasz Drwięga
3ff72794e5
Create an account for chain=dev ( #5612 )
...
* implement From<&'static str> for Secret
* Dev account.
* Fix Secret semantics.
2017-05-19 17:06:36 +02:00
Guanqun Lu
6d81b8a49a
use copy_from_slice instead of for loop ( #5647 )
2017-05-18 12:46:14 +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
5d973f8ef5
Merge pull request #5419 from paritytech/on-demand-priority
...
Improve on-demand dispatch and add support for batch requests
2017-05-17 12:28:27 +02:00
keorn
945c1a9478
add monotonic transition to kovan ( #5587 )
2017-05-15 21:34:01 +01:00
Robert Habermeier
4df1772078
Merge pull request #5595 from paritytech/no-warp-if-disabled
...
only enable warp sync when engine supports it
2017-05-13 15:04:06 +02:00
Robert Habermeier
56768ff237
only try to warp when engine supports it
2017-05-10 17:12:00 +02:00
Robert Habermeier
0fd3e36c23
Merge branch 'master' into on-demand-priority
2017-05-10 12:18:30 +02:00
Guanqun Lu
a4b0e0c93c
fix the doc of installing rust
...
multirust is deprecated.
2017-05-10 17:13:40 +08:00
YaNing Zhang
0bd4d5bb0c
Typo ( #5547 )
2017-05-07 14:33:52 +02:00
Robert Habermeier
6dd1fe0312
reorg into blocks before minimum history ( #5558 )
2017-05-05 15:01:19 +01:00
Arkadiy Paronyan
ed7c366b90
EIP-86 fixes ( #5506 )
2017-05-05 15:00:40 +01:00
keorn
a3d9cce7c5
Pass additional data when reporting ( #5527 )
...
* pass additional data when reporting
* checkout correct tests
2017-05-03 09:01:24 +02:00
Robert Habermeier
60bb0de9d6
Calculate post-constructors state root in spec at load time ( #5523 )
...
* apply contract constructors at spec load time
* debugging
* do trie updates in two stages
* add lint exception to newly-dead constructor
* squash warning in RPC tests
* kill dead accountdb constructors
* restore accountdb constructors under test configuration
* use provided state root in spec, if it exists
2017-05-03 09:00:02 +02:00
Robert Habermeier
35958a0965
Merge pull request #5454 from paritytech/aura-contract-warp
...
Groundwork for generalized warp sync
2017-04-25 17:58:13 +02:00
Robert Habermeier
6a5702f27c
address grumbles
2017-04-24 13:14:50 +02:00
Robert Habermeier
7ab92f0807
epoch generation proof fixes
2017-04-22 18:56:34 +02:00
Robert Habermeier
0768ce3600
Merge pull request #5307 from paritytech/eip-212
...
EIP-212 (bn128 curve pairing)
2017-04-21 13:10:57 +02:00
NikVolf
7a1db0852b
fix typo
2017-04-21 12:10:41 +03:00
Robert Habermeier
f18f81ec58
Merge pull request #5479 from paritytech/fix-tree-route-panic
...
fix panickers in tree-route
2017-04-20 18:31:16 +02:00
Robert Habermeier
ee25249729
Merge pull request #5473 from paritytech/eip86
...
Correct contract address for EIP-86
2017-04-20 17:21:16 +02:00
Robert Habermeier
167d06d727
fix panickers in tree-route
2017-04-20 16:21:53 +02:00
Robert Habermeier
468a7a4a77
bloom check test
2017-04-20 16:09:43 +02:00
Afri
a16fb04280
Force two decimals for USD conversion rate ( #5471 )
2017-04-19 22:59:02 +02:00
Robert Habermeier
240c111ebb
fix indent
2017-04-19 20:44:11 +02: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
arkpar
97052f3912
null_sign with network id
2017-04-19 19:10:12 +02:00
Robert Habermeier
4d3f137e1e
iterate over all epochs
2017-04-19 16:28:16 +02:00
Robert Habermeier
af868a7439
ensure genesis validator set in DB
2017-04-19 15:35:12 +02:00
Robert Habermeier
a278dd5a0a
store epoch transition proofs in DB
2017-04-19 14:58:19 +02:00
arkpar
04e581db61
Correct contract address for EIP-86
2017-04-19 14:50:56 +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
e1fa4ab8ec
verify_external in verifier trait
2017-04-13 20:34:16 +02:00
Robert Habermeier
715d5daafe
ChainVerifier for memoizing validator sets
2017-04-13 20:24:21 +02:00
Robert Habermeier
a98052fe74
Merge branch 'master' into on-demand-priority
2017-04-13 16:44:47 +02:00
arkpar
314af4cdae
Use in-memory database in tests
2017-04-13 12:17:53 +02:00
Robert Habermeier
b4f3e30cd6
detect changes in safe_contract
2017-04-12 22:10:18 +02:00
Robert Habermeier
34a1512ff0
skeleton for proof checking
2017-04-12 18:55:38 +02:00
Robert Habermeier
ec922ee5e4
supply optional call context to validator sets
2017-04-12 16:42:19 +02:00
Robert Habermeier
0f80c57dca
use native contracts in ValidatorSet
2017-04-12 16:15:35 +02:00
Robert Habermeier
2d8a8bd3e5
engine changes
2017-04-12 14:41:19 +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
Robert Habermeier
7723d6281b
starting memoized validatorset
2017-04-12 12:46:25 +02:00
Robert Habermeier
daf1495c4e
Filters and block RPCs for the light client ( #5320 )
...
* block_hash method for LightChainClient
* abstraction and futures-based eth_filter
* log fetching for light client
* add eth-filter delegate
* eth_block fetching RPCs
* return default accounts from on_demand
* fix early exit
* BlockNumber -> BlockId
* early exit for no known block number.
2017-04-12 12:07:54 +02:00
Robert Habermeier
a254b2098f
more useful Engine::verify_seal
2017-04-11 17:07:04 +02:00
keorn
d3b2bcdd79
Tendermint fixes ( #5415 )
...
* more resilience
* refactor commit
* fix proposal broadcast
* list encoding
* address grumbles
* to into
2017-04-10 20:03:18 +02:00
Robert Habermeier
bbe0eb96f4
Merge branch 'master' into on-demand-priority
2017-04-10 19:53:53 +02:00
Robert Habermeier
68ec7ae41e
tests for on_demand
2017-04-07 19:35:39 +02:00
Robert Habermeier
50886fcb31
Merge pull request #5318 from paritytech/snapshot-v2
...
Snapshot chunks packed by size
2017-04-07 14:45:42 +02:00
Robert Habermeier
cf75a19e8d
Merge branch 'block_header_rpc' into on-demand-priority
2017-04-06 17:59:55 +02:00
NikVolf
9bcd1245d9
fix typo
2017-04-06 11:04:28 +03:00
arkpar
03ec27be66
Removed assert
2017-04-05 16:50:06 +02:00
Robert Habermeier
8486e79cad
Merge pull request #5002 from paritytech/lightcli
...
Quick'n'dirty CLI for the light client
2017-04-05 13:50:17 +02:00
arkpar
81db3461fe
Added an assert
2017-04-05 12:27:37 +02:00
Robert Habermeier
e2dfea8c12
set gas limit before proving transactions
2017-04-05 12:05:55 +02:00
Robert Habermeier
60ce0aee1a
Merge branch 'lightcli' into light-filters
2017-04-03 12:55:31 +02:00
Robert Habermeier
394040e22c
Merge branch 'master' into lightcli
2017-04-03 12:44:52 +02:00
NikVolf
df72c9c6cc
fold multiplication
2017-04-03 12:57:18 +03:00
Robert Habermeier
c9c8f920d2
Futures-based native wrappers for contract ABIs ( #5341 )
...
* initial native contract generator
* get generated code compiling
* unit tests for type codegen
* autogenerate registry contract
* native_contracts entry for registry
* service_transaction_checker
* fixed indentation
2017-04-03 09:40:18 +02:00
Robert Habermeier
8c715e025a
Merge branch 'lightcli' into light-filters
2017-04-03 09:03:12 +02:00
Robert Habermeier
3eece20967
Merge branch 'master' into lightcli
2017-04-03 08:58:20 +02:00
Robert Habermeier
21e21f1e02
Merge pull request #5337 from paritytech/kovan-receipt-fix
...
Kovan warp sync fixed
2017-04-02 18:26:49 +02:00