Commit Graph

2564 Commits

Author SHA1 Message Date
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
keorn
84abf5d84f Aura eip155 validation transition (#5362)
* add eip155 validation

* add transition block
2017-04-01 13:21:22 +02:00
NikVolf
d6baadbaf2 fix doc comment about failing 2017-03-31 17:53:26 +03:00
NikVolf
569d63d0c9 fix assertions 2017-03-31 17:46:44 +03:00
NikVolf
2f30b03060 some tests 2017-03-31 17:38:31 +03:00
NikVolf
d34aec29ed finalize 2017-03-31 17:38:30 +03:00
NikVolf
9271dd0cc7 wip 2017-03-31 17:38:30 +03:00
NikVolf
3d2e9efb1e P1, P2 definition 2017-03-31 17:38:30 +03:00
arkpar
b840ab8f8b Compact chunks 2017-03-31 16:31:12 +02:00
Robert Habermeier
d146ae7275 Merge pull request #4999 from paritytech/eip-213
EIP-213 (bn128 curve operations)
2017-03-31 14:54:07 +02:00
keorn
2398311455 add eip155 validation (#5346) 2017-03-30 20:01:19 +02:00
arkpar
3915943f57 Kovan warp sync fixed 2017-03-30 13:13:43 +02:00
Tomasz Drwięga
d2394d3ac3 Updating paths to repos. (#5330)
* Updating paths to repos.

* Updating rotor and libusb

* Fixing other occurrences
2017-03-29 15:17:27 +02:00
Tomasz Drwięga
d4684d6302 Separate status for canceled local transactions. (#5319) 2017-03-29 14:43:55 +02:00
Robert Habermeier
73fa0cdc31 eth_block fetching RPCs 2017-03-28 17:15:36 +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
NikVolf
efe0f8449c Merge remote-tracking branch 'origin/master' into eip-213 2017-03-27 18:18:22 +03:00
NikVolf
c313857485 fix error handling 2017-03-27 18:17:49 +03:00
Robert Habermeier
1ca1a4b1cc Merge pull request #5019 from paritytech/snapshot-v2
Fine grained snapshot chunking
2017-03-27 16:57:02 +02:00
Marek Kotewicz
23d3b79d9a eip100b (#5027)
* eip100b

* fix eip100b build and tests

* Conventional comparison order
2017-03-27 11:42:40 +02:00
arkpar
387a5fb03b Doc 2017-03-26 13:26:20 +02:00
NikVolf
34fb39da5b avoid allocating string 2017-03-25 23:30:11 +03:00
arkpar
b0a9c1e0fa Limit by entry count 2017-03-25 15:25:20 +01:00
arkpar
b52c7bba4b Fewer allocations 2017-03-25 13:22:25 +01:00
arkpar
4ef89b5ccb Fine grained snapshot chunking 2017-03-25 13:22:25 +01:00
Robert Habermeier
109012cae8 force earliest era set in snapshot restore (#5021) 2017-03-25 10:00:50 +01:00
NikVolf
434ed1b91c remove alt_ 2017-03-24 15:35:00 +03:00
Robert Habermeier
da837fa9d8 Merge branch 'master' into lightcli 2017-03-23 14:12:42 +01:00
Tomasz Drwięga
bb1bbebfd6 Export account RPC (#4967)
* Export account RPC

* Removing GethDirectory and ParityDirectory

* Updating ethstore-cli help.
2017-03-23 13:23:03 +01:00
keorn
9fdd0e3a0a Switching ValidatorSet (#4961)
* add multi validator set

* nicer comment

* validate in constructor

* reporting
2017-03-23 13:19:28 +01:00
Robert Habermeier
64cec5ff7d Implement PIP messages, request builder, and handlers (#4945)
* return errors on database corruption

* fix tests, json tests

* fix remainder of build

* buffer flow -> request credits

* proving state backend

* generate transaction proofs from provider

* network messages for transaction proof

* transaction proof test

* test for transaction proof message

* fix call bug

* request transaction proofs from on_demand

* most of proved_execution rpc

* proved execution future

* initial request definitions

* RLP encoding and decoding for requests

* proofs of non-existance in ProvingBlockChainClient

* new requests in provider.

* encode and decode responses

* complete initial request changes

* handle request packet in LightProtocol

* handle response packets

* implement requesting from

* re-do cost table

* get tests compiling

* fix cost table RLP encoding

* roundtrip tests for request types

* request builder tests

* move request_builder -> request::builder

* get network tests working

* return only complete headers responses

* request builder improvements

* New version of jsonrpc.

* split request filling into fill,complete

* Better invalid encoding messages

* Fixing deprecated methods of tokio_core

* use PIP messages in on_demand, old API

* migrate oneshot::complete to send in on_demand

* get on_demand tests to compile

* port ethsync to PIP messages

* adjust to minor on_demand API changes in RPC

* Using dedicated branch for jsonrpc

* Bump
2017-03-23 13:17:05 +01:00
Robert Habermeier
0abbd7ac97 Merge branch 'pip-msg' into lightcli 2017-03-22 22:08:39 +01:00
Robert Habermeier
dd1a3fc60a migration to light client mode 2017-03-22 15:58:43 +01:00
Robert Habermeier
a0619fc101 Merge branch 'master' into pip-msg 2017-03-22 15:56:09 +01:00
NikVolf
9d23101c9a update for rv 2017-03-22 17:43:19 +03:00
Marek Kotewicz
044d070667 rlp deserialization refactor, 30% faster (#4901)
* 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

* moved rlp benches and rlp tests

* rlp deserialization refactor, 30% faster

* removed redundant comment, print

* fixed compiling parity with new rlp deserialization

* removed redundant double-space

* fixed failing test

* updated rlp docs, removed unused traits

* fixed rlp benchmarks

* replace usage of WriteBytesExt with ByteOrder

* removed unused, commented out code

* fixed merge conflict
2017-03-22 14:41:46 +01:00
NikVolf
436ae1333c trace mapping fix 2017-03-22 16:40:44 +03:00
NikVolf
8a4537fc73 no-input test 2017-03-22 16:31:43 +03:00
NikVolf
d1293d9fb0 fix warnings 2017-03-22 15:54:19 +03:00
NikVolf
3e7dc57289 some tests for simple cases 2017-03-22 15:41:32 +03:00
Robert Habermeier
219eddf33e Merge branch 'master' into pip-msg 2017-03-22 13:14: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
Marek Kotewicz
d530cc86f3 splitting part of util into smaller crates (#4956)
* split path module from util

* moved RotatingLogger from util to logger crate

* fix tests

* fix tests

* use only one version of ansi_term crate
2017-03-22 06:23:40 +01:00
NikVolf
5e34235a36 initial, fallable built-ins 2017-03-22 04:01:46 +03:00
Robert Habermeier
384aeda645 Merge branch 'pip-msg' into lightcli 2017-03-21 21:15:24 +01:00
Robert Habermeier
7ad36ee36c Merge remote-tracking branch 'upstream/new-jsonrpc' into pip-msg 2017-03-21 21:15:06 +01:00
Robert Habermeier
e99884d0c0 Merge branch 'master' into pip-msg 2017-03-21 21:05:01 +01:00
Robert Habermeier
bc9c1d4824 use a database in ethcore-light 2017-03-21 20:57:13 +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
Robert Habermeier
fe52e969b6 Merge branch 'master' into pip-msg 2017-03-21 15:24:47 +01:00
Tomasz Drwięga
958a8f66a0
Merge branch 'master' into new-jsonrpc 2017-03-21 09:35:50 +01:00
Tomasz Drwięga
badb3729c9 Changing Mutex into RwLock for transaction queue (#4951)
* Changing Mutex into RwLock for transaction queue

* Fixing merge

* little fix
2017-03-20 19:15:02 +01:00
keorn
e228de18e2 Disable max seal period for external sealing (#4927)
* no max sealing when external

* force internal sealing
2017-03-20 19:14:49 +01:00
Marek Kotewicz
a555686bcd rlp serialization refactor (#4873)
* 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
2017-03-20 19:14:29 +01:00
Tomasz Drwięga
6fa9393a25
Merge branch 'master' into new-jsonrpc 2017-03-20 10:30:53 +01:00
Tomasz Drwięga
34d28189ea Remove transaction RPC (#4949) 2017-03-19 08:46:51 +01:00
Robert Habermeier
8be41ad946 Merge branch 'master' into pip-msg 2017-03-17 14:13:10 +01:00
Tomasz Drwięga
44052e7d8d
Merge branch 'master' into new-jsonrpc 2017-03-16 16:04:30 +01:00
Tomasz Drwięga
491eeb9878
Better invalid encoding messages 2017-03-16 12:48:51 +01:00
NikVolf
daca82bdfc fix condition check 2017-03-16 04:16:05 +03:00
NikVolf
131aa14afa ensure sealing work enabled if notifier registed 2017-03-16 03:38:50 +03:00
keorn
1f7fb1591d Add reseal max period (#4903)
* add reseal max period

* fix rpc
2017-03-15 14:04:42 +01:00
Tomasz Drwięga
2dca24cc28 Traces error handling (#4849) 2017-03-14 13:04:32 +01:00
Arkadiy Paronyan
43871e393c Additional kovan params (#4892) 2017-03-14 11:41:56 +01:00
Arkadiy Paronyan
e0d554e0ca Recalculate receipt roots in close_and_lock (#4884) 2017-03-13 17:47:43 +01:00
Gav Wood
3041c95408 Chain-selection from UI (#4859)
* First little bits for chain-selection.

* Provide RPCs and get settings through to user defaults.

* Hasty stash.

* Fix updater accidentally redownloading.

* Finish up.

* Add JS tests.

* Hypervisor should never run a binary modified before itself.

* Style.

* Help tweak.

* Fix test compile.

* Fix JS test

* Build fix for tests.

* Revert default chain name

* Another test

* Use spec name via client.

* Fix mock up.

* whitespace

[ci:skip]

* whitespace

[ci:skip]

* remove exit/restart endpoints.
2017-03-13 12:10:53 +01:00
Marek Kotewicz
3fe3353696 removed redundant FixedHash trait, fixes #4029 (#4866) 2017-03-11 22:58:15 +04:00
Arkadiy Paronyan
9047b4b487 Supress USB error message (#4839) 2017-03-10 10:25:40 +01:00
Tomasz Drwięga
aedc473f64 Lowering threshold for transactions above gas limit (#4831) 2017-03-10 10:11:37 +01:00
Robert Habermeier
868f83e6ca Merge branch 'master' into pip-msg 2017-03-08 18:55:21 +01:00
keorn
be21671c1c Calibrate step before rejection (#4800)
* calibrate before rejection

* change flag name

* fix merge
2017-03-08 17:25:50 +01:00
keorn
a84a10ff03 Add replay protection (#4808)
* add eip155

* make network_id default
2017-03-08 14:44:07 +01:00
keorn
98be191b25 Fix validator contract syncing (#4789)
* make validator set aware of various states

* fix updater build

* clean up contract call

* failing sync test

* adjust tests

* nicer indent [ci skip]

* revert bound divisor
2017-03-08 14:41:24 +01:00
Robert Habermeier
8a3b5c6332 Remote transaction execution (#4684)
* return errors on database corruption

* fix tests, json tests

* fix remainder of build

* buffer flow -> request credits

* proving state backend

* generate transaction proofs from provider

* network messages for transaction proof

* transaction proof test

* test for transaction proof message

* fix call bug

* request transaction proofs from on_demand

* most of proved_execution rpc

* proved execution future
2017-03-08 14:39:44 +01:00
Gav Wood
cec37207be Update comments and reg ABI (#4787)
* Update comments.

* Fix up new ABI.
2017-03-06 21:37:38 +01:00
Robert Habermeier
8e9faa416d proofs of non-existance in ProvingBlockChainClient 2017-03-06 17:03:58 +01:00
Jaco Greeff
495e5790e9 Support both V1 & V2 DataChanged events in registry (#4734)
* Add info on forks.

* Add new registry ABI

* Import registry2 & fix exports

* Select ABI based on code hash

* Render new event types (owner not available)

* New registry.

* Rename old chain.

* Fix test.

* Another fix.

* Finish rename.
2017-03-03 13:33:49 +01:00
Gav Wood
3a0c4b6539 Add info on forks. (#4733) 2017-03-03 08:20:25 +01:00
Gav Wood
2862b3c21a New chains (#4720)
* Add Kovan chain.

* Fix up --testnet.

* Fix tests.

* Fix test.

* fix test

* Fix test.
2017-03-02 20:24:27 +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
Robert Habermeier
c2c699abb9 change migration to v11 to be faster 2017-02-26 18:41:40 +01:00
Robert Habermeier
1ff0abc661 Merge branch 'master' into remote-tx-exec 2017-02-26 13:55:29 +01:00
Robert Habermeier
1bf2b27708 Propagate trie errors upwards from State (#4655)
* state backend trait mirroring state_db API

* minimal state backend trait

make state module public

* fix json tests

* return errors on database corruption

* fix tests, json tests

* fix remainder of build

* add Backend bound on state
2017-02-26 13:10:50 +01:00
Robert Habermeier
69e82e15a3 request transaction proofs from on_demand 2017-02-25 20:10:38 +01:00
Robert Habermeier
7c541117b3 fix call bug 2017-02-25 19:01:41 +01:00
Robert Habermeier
eb9ee35d6c Merge pull request #4632 from ethcore/state-backend
Generic state backend
2017-02-25 16:22:42 +01:00
Robert Habermeier
4cf62e816e Merge branch 'state-backend' into remote-tx-exec 2017-02-25 14:31:27 +01:00
Robert Habermeier
7863d1e978 add Backend bound on state 2017-02-25 14:28:26 +01:00
Robert Habermeier
32f906fe9f transaction proof test 2017-02-25 11:54:32 +01:00
Robert Habermeier
92e5982127 generate transaction proofs from provider 2017-02-25 00:27:48 +01:00
Robert Habermeier
ee7779df17 proving state backend 2017-02-24 20:16:32 +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
keorn
9b5bcb81fd Fix Tendermint deadlock (#4654)
* scope read

* consistent step
2017-02-24 10:26:56 +01:00
Robert Habermeier
3f78c945d7 Merge pull request #4594 from ethcore/lightrpc
Remainder of RPC APIs implemented for the light client
2017-02-23 19:58:27 +01:00
Robert Habermeier
91753c53cd fix tests, json tests 2017-02-23 18:41:01 +01:00
Robert Habermeier
3655601693 return errors on database corruption 2017-02-23 17:40:03 +01:00
Gav Wood
3182540d9f Tweak some checks. (#4633)
* Tweak some checks.

* Fixed build and added a difficulty test
2017-02-22 18:24:22 +01:00
Robert Habermeier
636b2deb2e fix json tests 2017-02-22 10:52:58 +01:00
Robert Habermeier
1fba73c15e minimal state backend trait
make state module public
2017-02-21 12:35:21 +01:00
Robert Habermeier
ac9716a5ce state backend trait mirroring state_db API 2017-02-21 11:13:02 +01:00
Robert Habermeier
d8b1cfe082 Merge branch 'master' into lightrpc 2017-02-20 18:01:29 +01:00
Robert Habermeier
62b340f2b9 Save pending local transactions in the database (#4566)
* Create new column family for local node info

* remove DBTransaction::new reliance on DB

* KeyValueDB trait

* InMemory KeyValueDB implementation

* journaldb generic over KVDB

* make most of `ethcore` generic over KVDB

* fix json tests compilation

* get all tests compiling

* implement local store (just for transactions)

* finish local store API, test

* put everything into place

* better test for skipping bad transactions

* fix warning

* update local store every 15 minutes

* remove superfluous `{}`s
2017-02-20 17:21:55 +01:00
keorn
ac6180a6fe seals_internally (#4613) 2017-02-20 16:35:53 +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
Arkadiy Paronyan
0aad8a87ae Added pending transaction info to eth_getTransactionByHash (#4570)
* Return condition info for pending transactions

* Fixed warnings
2017-02-20 16:19:43 +01:00
Robert Habermeier
7a857a24ae use new histogram/corpus 2017-02-17 16:18:31 +01:00
Nikolay Volf
494a0de1e2 Key derivation in ethstore & rpc (#4515)
* initial in secret store

* generation

* test

* refactor of the derivation

* signing

* account provider

* tests for account provider

* rpc types

* rpc types converts

* rpc tests

* fix warnings

* some extra docs

* derivate -> derive

* secret() -> as_raw()

* secret() -> as_raw() in rpc

* fix merge bug

* align with new serde changes
2017-02-15 16:56:15 +01:00
Tomasz Drwięga
5369a129ae Signer provenance (#4477)
* Signer - Tracking Request Provenance

* Basic UI

* Changing messages

* VecDeque::from

* Fix dapps tests

* Addressing UI grumbles
2017-02-14 22:45:43 +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
Arkadiy Paronyan
1fa830d19b Fixed receipt decoding (#4521) 2017-02-13 12:14:05 +03:00
Robert Habermeier
6bf97de9d8 Merge branch 'master' into lightrpc 2017-02-10 02:44:12 +01:00
Arkadiy Paronyan
a7e6d8727a Ledger wallet support (#4486)
* Ledger devices support

* structs for RPC types
2017-02-09 19:07:06 -05:00
Robert Habermeier
0246d5c734 Merge branch 'master' into lightrpc 2017-02-08 19:20:35 +01:00
Robert Habermeier
e73ea80954 dispatcher abstraction, port most things to it 2017-02-08 15:36:53 +01:00
Svyatoslav Nikolsky
a92bf65181 parity_getVaultMeta && parity_setVaultMeta (#4475) 2017-02-08 07:53:39 -05:00
keorn
b0248cad0b sort corpus when hitting genesis (#4470) 2017-02-08 08:55:56 +01:00
Tomasz Drwięga
5fe993f658 Fixing CORS headers for parity.web3.site (#4461) 2017-02-07 18:11:42 -05:00
Robert Habermeier
1fa5b07321 Merge branch 'master' into lightrpc 2017-02-07 17:13:18 +01:00
Robert Habermeier
4172a5369c Include total difficulty in CHTs and hide implementation details from consumers (#4428)
* CHT builder and prover

* use CHT abstraction in provider

* hide CHT internals from header chain

* fix itertools conflict by updating all to 0.5

* cht proof checker, use it in on_demand
2017-02-06 17:21:35 +01:00
Maciej Hirsz
127baed385 Merge pull request #4362 from ethcore/mh-tendermintrlpfix
Fix RLP encoding for types recursively calling `RlpStream::append`
2017-02-06 11:13:40 +01:00
Svyatoslav Nikolsky
2f340a547a Vaults RPCs (#4366)
* vaults RPCs

* vault.password != vault_account.password

* moved vault RPCs to parityAccounts NS

* parity_listVaults + parity_listOpenedVaults
2017-02-05 10:17:56 -05:00
Robert Habermeier
7c9064c856 Merge branch 'master' into lightrpc 2017-02-04 22:30:20 +01:00
Tomasz Drwięga
248cd5e036 RPC middleware: Informant & Client.keep_alive (#4384)
* Adding RPC informant structs

* RPC informant

* Middleware counting RPC requests

* Moving client keep_alive to middleware
2017-02-04 22:18:19 +01:00
Robert Habermeier
484b93abdc Merge branch 'cht-td' into lightrpc 2017-02-04 17:14:47 +01:00
Robert Habermeier
ca11138ce8 fix itertools conflict by updating all to 0.5 2017-02-04 17:07:39 +01:00
Arkadiy Paronyan
312aa72747 Transaction timestamp condition (#4419)
* Transaction timestamp condtiion

* Updated docs

* Updated docs

* Check agains last block timestamp
2017-02-03 19:32:10 +01:00
Robert Habermeier
83de16da88 use encoded::Header in HeaderChain 2017-02-03 15:32:22 +01:00
Tomasz Drwięga
853aae2b92 Validate dapps accounts with address book (#4407)
* Parametrize address book

* Improving types in account_provider

* Filtering dapps_accounts

* Fixing RPC tests
2017-02-03 13:56:47 +01:00
keorn
76c39e3e66 Fix lock and rename tracing (#4403)
* tracing, timeouts

* remove env_logger
2017-02-02 19:11:43 +01:00
maciejhirsz
687ae4d7fa Removed fixed TODO 2017-02-01 10:38:01 +01:00
Tomasz Drwięga
9fb2be8f2b Optional from field in Transaction Requests (#4332)
* Infering default account when sending transactions if not provided

* Fixing test

* Fixing tests code

* Fixes.

* More fixes.

* Final fix.
2017-01-30 21:08:36 +01:00
maciejhirsz
681fa10d4b Tests checking item sizes for changed types 2017-01-30 20:01:32 +01:00
maciejhirsz
6795068ea4 Fixed other types 2017-01-30 19:13:35 +01:00
maciejhirsz
5fe54901e7 Fix Step encoding 2017-01-30 18:13:14 +01:00
Svyatoslav Nikolsky
9ac4d83ca3 Initial commit for vaults (#4312)
* initial commit for vaults

* fixed TODO

* public docs

* vault_file.json now contains enc(pwd hash)

* removed doc
2017-01-30 13:44:09 +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
Nikolay Volf
1acc8031ce Stratum up (#4233)
* flush work

* flush work

* flush work

* flush work

* generalized notifiers

* general setup with modules

* general setup with modules

* all binded

* catch up with master

* all dependencies injected

* stratum another up

* tcp update

* submitwork routine

* finalize & fix warnings

* merge bugs, review fixes

* merge bugs, review fixes

* new cli mess cleanup

* usage.txt swap

* flush work

* cli adopt

* compilation with new cli sorted

* subid space in json

* serialization issues

* grumbles addressed

* more grumbles

* remove last_work note for now

* fix compilation

* fix tests

* merge bugs

* no obliged ipc

* moving notifiers

* no optional feature now

* refactored again

* working on tests

* refactor to new tcp/ip

* stratum lib ok

* ethcore crate ok

* wip on tests

* final test working

* fix warnings, \n-terminated response

* new compatibility

* re-pushing work once anybody submitted

* various review and general fixes

* reviewe fixes

* remove redundant notifier

* one symbol -> huge bug

* ensure write lock isn't held when calling handlers

* extern declarations moved

* options to stratum mod, SocketAddr strongly-typed instantiation

* Minor style fix.

* Whitespace and phrasing

* Whitespace
2017-01-25 11:03:36 +01:00
Tomasz Drwięga
67284cc1a2 Logging transaction duration (#4297)
* Logging transaction duration

* Printing time also on heavy transactions [ci:skip]
2017-01-25 11:02:03 +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
Tomasz Drwięga
fa02b3ae54 Additional logs for own transactions (#4278) 2017-01-24 19:18:52 +00: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
Svyatoslav Nikolsky
092e24b9f2 Integration with zgp whitelist contract (#4215)
* zgp-transactions checker

* polishing

* rename + refactor

* refuse-service-transactions cl option

* fixed tests compilation
2017-01-22 16:15:22 +01:00
Robert Habermeier
203fd8a471 Memory-based pruning history size (#4114)
* prune states based on memory param

* pruning memory CLI and usage in sync

* return purged value from memorydb

* calculate memory used incrementally in overlayrecentdb

* refactor shared history pruning code in client

* Fixed usage alignment

* journal_size function for fast memory calculation
2017-01-20 13:25:53 +01: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
Robert Habermeier
a791cb50a6 Light protocol syncing improvements (#4212)
* 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
2017-01-20 12:41:59 +01:00
Tomasz Drwięga
24aec5191a Fixing minimal transaction queue price (#4204)
* Fixing minimal transaction queue price

* Fixing tests
2017-01-18 19:44:24 +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
b4ff08beb8 Fixing etherscan price parsing (#4202)
* Fixing etherscan price parsing

* Handling all errors
2017-01-18 17:56:21 +01:00
Svyatoslav Nikolsky
bac6293309 gas_limit for blocks, mined by Parity will be divisible by 37 (#4154)
* gas_limit for new blocks will divide evenly by 13

* increased PARITY_GAS_LIMIT_DETERMINANT to 37

* separate method for marking mined block

* debug_asserts(gas_limit within protocol range)

* round_block_gas_limit method is now static

* made round_block_gas_limit free-function

* multiplier->multiple [ci skip]
2017-01-16 14:29:51 +01:00
Gav Wood
c2f4716ee2 icarus -> update, increase web timeout. (#4165)
* icarus -> update, increase web timeout.

* Fix estimate gas
2017-01-13 16:30:16 +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
Gav Wood
311730ea95 Improvements and optimisations to estimate_gas (#4142)
* Return 0 instead of error with out of gas on estimate_gas

* Fix stuff up.

* Another estimate gas fix.

* Alter balance to maximum possible rather than GP=0.

* Only increase to amount strictly necessary.

* Improvements and optimisations to estimate_gas.

- Introduce proper error type
- Avoid building costly traces

* Fix tests.

* Actually fix testsActually fix tests
2017-01-12 11:06:12 +01:00
keorn
844b1f8c0d Refactor VoteCollector (#4101)
* 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

* return error on misbehaviour

* nicer return

* sprinkle docs
2017-01-11 17:56:50 +01:00
Gav Wood
56c546f465 Another minor estimation fix (#4133)
* Return 0 instead of error with out of gas on estimate_gas

* Fix stuff up.

* Another estimate gas fix.

* Alter balance to maximum possible rather than GP=0.

* Only increase to amount strictly necessary.
2017-01-11 17:51:48 +01:00
Robert Habermeier
7123f19a75 Test harness for lightsync (#4109)
* make on_connect/disconnect public

* free flow params constructor

* Shared ownership of LES handlers

* light provider impl for test client

* skeleton for testing light sync

* have test_client use actual genesis

* fix underflow in provider

* test harnesses for lightsync

* fix tests

* fix test failure caused by test_client changes
2017-01-11 14:39:03 +01:00
Gav Wood
7286d42b7d Fix call/estimate_gas (#4121)
* Return 0 instead of error with out of gas on estimate_gas

* Fix stuff up.
2017-01-11 14:28:27 +01:00
Tomasz Drwięga
21006da125 Get rid of unsafe code in ethkey, propagate incorrect Secret errors. (#4119)
* Implementing secret

* Fixing tests
2017-01-11 12:16:47 +01:00
Gav Wood
23feb7998f Use binary chop to estimate gas accurately (#4100)
* Initial sketch.

* Building.

* Fix a few things.

* Fix issue, add tracing.

* Address grumbles

* Raise upper limit if needed

* Fix test.
2017-01-10 18:56:41 +01:00
Gav Wood
ae144b7f62 Ignore get_price_info test by default. (#4112) 2017-01-10 15:41:48 +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
Tomasz Drwięga
a584c6396c Don't remove out of date local transactions (#4094) 2017-01-09 17:01:09 +01:00
Robert Habermeier
9c00eb4e8a Zero-alloc trie lookups (#3998)
* triedb cleanup

* factor out common portion of trie query

* allocate far fewer times in node decoding

* fix bench compilation

* introduce OwnedNode variant to make iter fast again

* generalize recorder trait to Query

* decode trie outputs cost-free in state

* test for passing closure as query
2017-01-06 16:18:45 +01:00
Tomasz Drwięga
eb0daea9b9 Removing old transactions from the queue (#4046)
* Removing old transactions from the queue

* Addressing grumbles
2017-01-05 21:16:52 +01:00
keorn
fbc9f0d7fb Add block rewards to more Engines (#4055)
* add block rewards

* imports
2017-01-05 21:16:13 +01:00
Robert Habermeier
b4e713efdc return old trie values on insert and remove (#4053)
* return old trie values on insert and remove

* fix json tests
2017-01-05 21:15:43 +01:00
Tomasz Drwięga
91f864b2b7 Fixing minGasLimit > ceil limit mining issue (#4018) 2017-01-05 12:59:16 +00:00
Maciej Hirsz
881066243b Merge pull request #4034 from maciejhirsz/mh-pwmsg
Better error messages for PoA chains, closes #4030
2017-01-05 11:13:45 +01:00
keorn
93237045b8 Merge pull request #4019 from ethcore/optional-spec
Make some spec fields optional
2017-01-04 19:25:42 +01:00
maciejhirsz
8ca0e09ffc Better error messages for PoA chains 2017-01-04 12:50:50 +01:00
Robert Habermeier
5d2cf22ef4 use basic_account in snapshot 2017-01-03 17:05:27 +01:00
Robert Habermeier
eb2b1ad5da move basic_account to types module 2017-01-03 16:43:22 +01:00
Robert Habermeier
7c715aeec3 basic account type 2017-01-03 16:32:50 +01:00
keorn
e5b3c092c8 Merge branch 'master' into optional-spec 2017-01-03 15:42:56 +01:00
Tomasz Drwięga
b24fc97cb6 Correct log index in transaction receipt (#3995)
* Moving logs to separate, testable function

* Adding test

* Fixing log index

* Adding transaction log index

* Fixing rpc tests

* Making interface of  a bit cleaner.
2016-12-29 18:48:28 +00:00
Robert Habermeier
fe1f542c4f Owning views of blockchain data (#3982)
* 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
2016-12-28 12:44:51 +00: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
Robert Habermeier
546246c56b Unknown block error for RPC (#3965) 2016-12-23 18:46:17 +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
Arkadiy Paronyan
5a3c3bcb45 Sync reorg up to history size (#3874)
* 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
2016-12-23 18:43:40 +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
Nikolay Volf
af501e6467 Custom attribute for binary serialization (#3922)
* derive(Binary) -> binary

* ethcore types refact

* fixup ethcore

* make binary optional

* fix common types

* fix updater

* remove condition
2016-12-21 15:09:35 +01:00
Gav Wood
18965be047 Merge pull request #3903 from ethcore/test-mem-limit-deadlock
fix deadlock in queue drop
2016-12-19 22:23:56 +01:00
Robert Habermeier
ae8f77bc7c fix deadlock in queue drop 2016-12-19 18:10:26 +01:00
arkpar
d3486b45c5 Allow retry for future blocks 2016-12-19 14:47:48 +01:00
Gav Wood
e755c09446 Merge pull request #3884 from ethcore/fix-diff-adj
Fix difficulty adjustment.
2016-12-17 16:35:20 +01:00
Gav Wood
023d413610
Fix difficulty adjustment.
Closes #3861
2016-12-17 15:53:06 +01:00
arkpar
b34d3ee5a2 Fixin racy test 2016-12-17 12:28:31 +01:00
arkpar
65f07e5aa7 Renamed some functions 2016-12-16 14:54:26 +01:00
arkpar
6c9de9e6f8 Merge branch 'master' of github.com:ethcore/parity into tx-block 2016-12-16 13:36:07 +01:00
arkpar
f967713d08 Added a test 2016-12-16 13:27:14 +01:00
Gav Wood
6e5a583cb4 Merge pull request #3505 from ethcore/check-updates
Auto-updating
2016-12-16 13:01:49 +01:00
keorn
d8470cc5ca revert slack 2016-12-16 00:07:07 +01:00
keorn
447196398a fix start_step 2016-12-15 23:36:06 +01:00
Gav Wood
ca0d87da10
125 -> 69. 2016-12-15 22:05:54 +01:00
arkpar
060cc799a6 Minor tweaks 2016-12-15 21:44:31 +01:00
arkpar
27580586e0 Minor tweaks 2016-12-15 20:09:05 +01:00
keorn
b7b531ca75 more slack in test 2016-12-15 19:54:28 +01:00
keorn
b88d50dc9b fix naming collision 2016-12-15 19:27:06 +01:00
arkpar
f8961484c1 Merge branch 'master' of github.com:ethcore/parity into tx-block 2016-12-15 19:10:33 +01:00
Gav Wood
c12702fc51
Merge remote-tracking branch 'origin/master' into check-updates 2016-12-15 18:23:02 +01:00
arkpar
2952ea1b85 Delayed transactions 2016-12-15 18:19:19 +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
db2e1dd01a
Merge remote-tracking branch 'origin/master' into check-updates 2016-12-15 17:11:22 +01:00
Gav Wood
2e02db2d3e Merge pull request #3860 from ethcore/fix-channel
Fix flaky test
2016-12-15 17:10:41 +01:00
keorn
ee653bc262 unused import 2016-12-15 16:53:28 +01:00
keorn
9bfa69c6bd fix channel 2016-12-15 16:52:39 +01:00
Gav Wood
817a58cf64 Merge pull request #3844 from ethcore/trace-macros
Converting traces API to AutoArgs
2016-12-15 15:21:35 +01:00
Gav Wood
590428e7f2
Merge remote-tracking branch 'origin/master' into check-updates 2016-12-15 15:12:09 +01:00
Gav Wood
20b2f84d48 Merge pull request #3828 from ethcore/new-dirs
New directory structure
2016-12-15 14:34:01 +01:00
Jaco Greeff
054a6a9daf Merge branch 'master' into check-updates
# Conflicts:
#	.gitlab-ci.yml
#	js/webpack/dev.server.js
2016-12-15 13:52:28 +01:00
Gav Wood
1ea521ea7d
Merge remote-tracking branch 'origin/master' into dapps-accounts-rpc 2016-12-15 13:51:22 +01:00
keorn
0b9ab0797f fix build 2016-12-15 13:45:22 +01:00
keorn
943efc21bb add tendermint seal 2016-12-15 13:41:04 +01:00
Gav Wood
69eec105a7
Change default back to permissive for now. 2016-12-15 13:40:44 +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
Gav Wood
a660024eac Merge pull request #3843 from ethcore/auth-round-seal
AuthorityRound seal and simplify Generic seal Spec
2016-12-15 13:08:50 +01:00
Gav Wood
c4406c9198 Merge pull request #3691 from ethcore/rotating-key
Signing transactions with rotating token
2016-12-15 13:08:19 +01:00
Tomasz Drwięga
6e51b23e30 Adding traces tests 2016-12-14 20:07:33 +01:00
Tomasz Drwięga
7eb9112613 Merge branch 'master' into rotating-key
Conflicts:
	rpc/src/v1/traits/signer.rs
2016-12-14 14:10:44 +01:00
keorn
f686fa3d6f update specs and generic conversion 2016-12-14 12:50:32 +01:00
keorn
e1d83d15b7 bump dev chain 2016-12-14 11:34:19 +01:00
arkpar
be5fefe772 Merge branch 'master' of github.com:ethcore/parity into new-dirs 2016-12-14 00:04:11 +01:00
Gav Wood
597c3a4770
Ensure chain state is at threshold security level before looking for updates. 2016-12-13 21:21:07 +01:00
Gav Wood
805b8cab2c
Add missing file. 2016-12-13 20:50:33 +01:00
Gav Wood
4424155d39
Similar checks on file changes to other tests. 2016-12-13 20:49:26 +01:00
keorn
c96826beaa expect instead of index 2016-12-13 18:22:56 +01:00
arkpar
5fd2e15313 Style and docs 2016-12-12 23:21:44 +01:00
keorn
fa504e510f Merge branch 'master' into auth-bft 2016-12-12 21:28:46 +01:00
keorn
19adb84527 TestNet flushing and cleanup 2016-12-12 19:44:24 +01:00
keorn
f8ed5cf022 finalize unit tests 2016-12-12 17:20:20 +01:00
arkpar
6601fde328 New data paths with upgrade 2016-12-12 16:51:07 +01:00
Gav Wood
988ac8a22d
Add forks supported. 2016-12-12 16:47:57 +01:00
Gav Wood
ab4d666681
Merge remote-tracking branch 'origin/master' into check-updates 2016-12-12 16:35:11 +01:00
Gav Wood
c0a2d5c8f5 Merge pull request #3796 from ethcore/tx-broadcast
Avoid broadcasting transactions to peers that send them
2016-12-12 04:13:56 +01:00
keorn
3c5d5856d2 nicer tracing 2016-12-11 22:54:48 +01:00
Gav Wood
58b72c521d
Rename ethcore -> parity in licenses. 2016-12-11 19:31:31 +01:00
Gav Wood
17cc2be4b5
Rename ethcore -> parity in license. 2016-12-11 19:30:54 +01:00
Gav Wood
10b0898bdf
Crate tidyups.
- Move Updater into its own crate.
- Change ethcore -> parity in authors, homepages and licenses.
2016-12-11 19:14:42 +01:00
keorn
a4bf914683 Merge branch 'auth-bft' of https://github.com/ethcore/parity into auth-bft 2016-12-11 18:23:54 +01:00
Tomasz Drwięga
627b8a8414 Changing default policy 2016-12-11 17:56:12 +01:00
keorn
d4c9493b00 verification cache retrieval 2016-12-11 17:50:12 +01:00
Tomasz Drwięga
b56f12adc6 Merge branch 'master' into tx-broadcast
Conflicts:
	ethcore/light/src/net/context.rs
	ethcore/light/src/net/tests/mod.rs
2016-12-11 17:31:56 +01:00
Gav Wood
22cb5753d0
Improve capability information and disable old clients. 2016-12-11 16:52:41 +01:00
Gav Wood
74a6203f72
Merge remote-tracking branch 'origin/master' into check-updates 2016-12-11 15:43:28 +01:00
Gav Wood
b28537aa9a Merge pull request #3809 from ethcore/mining-min-gas-limit
block: enforce gas limit falls within engine bounds
2016-12-11 15:08:30 +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
Gav Wood
0a494962e4
Merge remote-tracking branch 'origin/master' into check-updates 2016-12-11 02:13:52 +01:00
Gav Wood
120564ff29
Avoid pulling in hash_fetch. 2016-12-11 02:12:52 +01:00
Gav Wood
0302d582d2
Fix build. 2016-12-11 02:02:40 +01:00
Gav Wood
fa30dfd4b9
Refactor into system service, add exe redirect. 2016-12-10 23:58:39 +01:00
Tomasz Drwięga
1e8638608c fixing tests 2016-12-10 22:59:35 +01:00
Tomasz Drwięga
19ca9ad460 Prevent broadcasting transactions to peer that send them. 2016-12-10 21:22:19 +01:00
keorn
b6c7ed24b7 Client trait reorg 2016-12-10 18:35:29 +01:00
keorn
f3af0f46be Merge branch 'master' into auth-bft 2016-12-10 18:14:35 +01:00
keorn
b9909da8b1 move Sealing methods to MiningBlockChainClient 2016-12-10 17:40:20 +01:00
Tomasz Drwięga
1f9adc8622 Merge branch 'master' into txqueue-gc
Conflicts:
	ethcore/src/miner/miner.rs
2016-12-10 17:00:29 +01:00
keorn
239ba61a99 move transition message to to_step 2016-12-10 16:50:23 +01:00
Tomasz Drwięga
704054ef40 Merge branch 'master' into tx-broadcast
Conflicts:
	ethcore/src/client/traits.rs
2016-12-10 15:23:53 +01:00
Tomasz Drwięga
e1ade5b375 Maintaining a list of transactions propagated from other peers 2016-12-10 15:18:44 +01:00
Tomasz Drwięga
27503e8e8c Merge branch 'master' into rotating-key
Conflicts:
	ethstore/src/ethstore.rs
	ethstore/src/secret_store.rs
2016-12-10 15:13:58 +01:00
Gav Wood
316c25d9f8
Merge remote-tracking branch 'origin/master' into check-updates 2016-12-10 14:08:41 +01:00
Gav Wood
82efa2675e
Merge remote-tracking branch 'origin/master' into consistent-id 2016-12-10 13:36:30 +01:00
Tomasz Drwięga
4696d7f606 Additional RPCs for dapps accounts management 2016-12-10 12:36:04 +01:00
keorn
e5f8044cad Merge branch 'master' into auth-bft 2016-12-10 11:01:23 +01:00
keorn
5f09eb9d04 update tests to new spec (#3790) 2016-12-10 10:38:10 +01:00
Gav Wood
edd5e76050
Merge branch 'consistent-id' into check-updates 2016-12-09 23:12:36 +01:00
Gav Wood
5f1fcf95e0
Make *ID names consistent with std Rust (Id) 2016-12-09 23:01:43 +01:00
Robert Habermeier
503b126c93 Merge branch 'master' into lightserv 2016-12-09 21:37:55 +01:00
Gav Wood
2226324495 Merge pull request #3778 from ethcore/auth-round-test
AuthorityRound network simulation test
2016-12-09 20:58:05 +01:00
keorn
b15edd095e Merge branch 'auth-bft' of https://github.com/ethcore/parity into auth-bft 2016-12-09 20:51:42 +01:00
Gav Wood
c82754874c
Fix typo. 2016-12-09 20:48:52 +01:00
keorn
08e7e79bfd more test 2016-12-09 20:48:05 +01:00
Gav Wood
46af3d18da
Merge remote-tracking branch 'origin/master' into check-updates 2016-12-09 20:45:15 +01:00
Gav Wood
e5e6b77984
Cleanups and avoid redownloading. 2016-12-09 20:40:24 +01:00
arkpar
97f358ced9 AuthorityRound network simulation test 2016-12-09 20:38:06 +01:00
Tomasz Drwięga
c91a614c3d Fixing tests 2016-12-09 20:24:33 +01:00
arkpar
ca7406773f AuthorityRound network simulation test 2016-12-09 19:27:16 +01:00
Gav Wood
c2b6be95c8
Fetch and place in updates path. 2016-12-09 19:02:42 +01:00
Tomasz Drwięga
cee07fef74 Trigger remove_old on new block 2016-12-09 15:54:13 +01:00
Tomasz Drwięga
5d054f08c3 Clearing old transactions 2016-12-09 15:05:03 +01:00
keorn
56e9dab9de add Engine stop method 2016-12-09 14:52:08 +01:00
arkpar
cc8c2ea58d Reject existing tx 2016-12-09 14:37:11 +01:00
Tomasz Drwięga
3ccdb7c143 Fixing unused imports 2016-12-09 10:52:42 +00:00
keorn
42c34b5c1b ignore flaky test 2016-12-09 10:53:38 +01:00
Tomasz Drwięga
930183831b Adding tests for ethstore 2016-12-09 09:45:34 +00:00
Tomasz Drwięga
8596134c0f Clearer updates handling 2016-12-09 08:31:58 +00:00
Tomasz Drwięga
93230dd4c2 Merge branch 'master' into rotating-key
Conflicts:
	ethcore/src/account_provider/mod.rs
	rpc/src/v1/types/mod.rs.in
2016-12-09 07:37:34 +00:00
Robert Habermeier
eec1929658 Merge branch 'master' into lightserv 2016-12-09 01:29:46 +01:00
keorn
7c42241466 remove merge code 2016-12-08 22:00:26 +01:00
keorn
74770e4773 better docstrings 2016-12-08 21:49:55 +01:00
keorn
cc284dd86f Merge branch 'master' into auth-bft 2016-12-08 21:35:08 +01:00
keorn
79ef64349c remove assert 2016-12-08 21:27:49 +01:00
keorn
9ecb07434f fix informant 2016-12-08 21:13:32 +01:00
Gav Wood
2d6656fc43 Merge pull request #3725 from ethcore/engine-password
Make engine hold AccountProvider
2016-12-08 20:52:12 +01:00
keorn
dca752e9bb docs, tweaks 2016-12-08 20:09:30 +01:00
Robert Habermeier
efd66f566d ethsync: optional ipc codegen 2016-12-08 19:52:48 +01:00
Robert Habermeier
8d16f73795 first few LES tests, fix get_header logic bug 2016-12-08 12:20:18 +01:00
keorn
3ebfa1481d better proposal block handling 2016-12-08 12:03:34 +01:00
Gav Wood
8903384840
Merge branch 'master' into check-updates 2016-12-07 19:19:44 +01:00
Jaco Greeff
7c054d2da0 Remove unneeded block scope 2016-12-07 17:07:28 +01:00
Jaco Greeff
46840d36c9 Add parity_removeAddress RPC 2016-12-07 16:53:46 +01:00
keorn
347634ac6c dont rebroadcast propose 2016-12-07 16:42:58 +01:00
keorn
b73689f041 Merge branch 'engine-password' into auth-bft 2016-12-07 15:17:49 +01:00
keorn
727ace0561 add test 2016-12-07 15:14:21 +01:00
keorn
e9743a3a75 Merge branch 'master' into auth-bft 2016-12-07 14:50:17 +01:00
keorn
4361cb53e7 Merge branch 'engine-password' into auth-bft 2016-12-07 14:49:42 +01:00
keorn
5faa4a85cb remove dummy type 2016-12-07 14:49:07 +01:00
keorn
6440ca2f68 move stuff around 2016-12-07 14:39:37 +01:00
Gav Wood
1f0a02b638 Merge pull request #3633 from ethcore/fix-tx-rpc
Fix up the transaction JSON serialisation for RPC.
2016-12-07 14:34:51 +01:00
Robert Habermeier
89726356a3 Merge pull request #3709 from ethcore/opt-in-verifier-scaling
queue: CLI for auto-scaling and num verifiers
2016-12-07 13:40:42 +01:00
keorn
c582540746 Merge branch 'engine-password' into auth-bft 2016-12-07 11:41:38 +01:00
keorn
3ae09de019 restore is_new_best 2016-12-07 11:40:46 +01:00
keorn
a296c5e226 test client message handling 2016-12-07 11:38:09 +01:00
Robert Habermeier
b38d95328d light: conditional compilation 2016-12-07 10:50:24 +01:00
keorn
da030fed51 Merge branch 'master' into auth-bft 2016-12-07 10:41:07 +01:00
keorn
5c333fce31 Merge branch 'engine-password' into auth-bft 2016-12-07 10:35:52 +01:00
keorn
71a96588b0 add the methods to engines 2016-12-07 10:34:06 +01:00
keorn
d9eb5e7f1d remove uncles 2016-12-07 09:32:36 +01:00
Robert Habermeier
085b8ad553 Merge pull request #3527 from ethcore/client-provider
LES Part 2
2016-12-07 09:31:50 +01:00
Robert Habermeier
398b94e6e2 Merge branch 'master' into opt-in-verifier-scaling 2016-12-06 15:37:10 +01:00
keorn
8f641e67f3 Merge branch 'engine-password' into auth-bft 2016-12-06 13:13:02 +00:00
keorn
0a2ec319ac rename to engine_signer 2016-12-05 21:31:38 +00:00
keorn
92d566c900 Merge branch 'master' into engine-password 2016-12-05 19:30:08 +00:00
Gav Wood
ff7b918d82
Fix build. 2016-12-05 10:55:53 -08:00
Gav Wood
5e1fdc4b11
Merge remote-tracking branch 'origin/master' into fix-tx-rpc 2016-12-05 10:44:19 -08:00
Gav Wood
ad36743122 Merge pull request #3719 from ethcore/engine-block-ordering
Engine block ordering
2016-12-05 10:37:36 -08:00
keorn
01bf483b63 remove unnecessary impls 2016-12-05 17:29:47 +00:00
Robert Habermeier
1b6ebe1a6d possible fix for queue drop deadlock (#3702)
* 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
2016-12-05 18:18:56 +01: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
4f857642b5 rename set_sealer 2016-12-05 16:28:56 +00:00
Robert Habermeier
a726472023 Merge pull request #3713 from ethcore/fix-v-u64
Encode networkid as a u64.
2016-12-05 17:14:07 +01:00
Robert Habermeier
a6c2408562 IPC codegen in ethcore-light; remove network dependency 2016-12-05 16:56:21 +01:00
Robert Habermeier
61c3358447 move light to its own crate again 2016-12-05 16:55:33 +01:00
keorn
53b479fb7a pass engine to snapshot service 2016-12-05 15:43:46 +00:00
keorn
94302f3f61 throw out difficulty checks 2016-12-05 15:27:44 +00:00
keorn
c61a0e97b3 make engine determine block order 2016-12-05 15:20:32 +00:00
Gav Wood
afe4cc6a05
Merge remote-tracking branch 'origin/master' into check-updates 2016-12-05 07:09:42 -08:00
Gav Wood
459babb1a8
Logging. 2016-12-05 06:39:56 -08:00
keorn
c39d504167 Merge branch 'spec-rlp-loading' into auth-bft 2016-12-05 14:11:06 +00:00
keorn
22632e6324 make generic seal take valid rlp 2016-12-05 14:07:31 +00:00
keorn
b30c1d5602 fix tests 2016-12-05 13:24:22 +00:00
keorn
c946ffebf3 Merge branch 'master' into auth-bft 2016-12-05 11:30:11 +00:00
Gav Wood
9d79cac36b
Cleanups. 2016-12-04 11:56:12 -08:00
keorn
f7a01b87b5 better gossip, better proposal collection 2016-12-04 19:43:24 +00:00
keorn
edef7a185f remove tracing 2016-12-04 19:42:53 +00:00
Gav Wood
2911c549e3
Encode networkid as a u64. 2016-12-04 10:48:26 -08:00
Gav Wood
356aca2db5
Fix build. 2016-12-04 09:13:23 -08:00
Gav Wood
90a20a217f
Merge branch 'master' into check-updates 2016-12-04 09:01:50 -08:00
Gav Wood
0c7b7fc8bc Merge pull request #3627 from ethcore/rpc-middleware
Dapps-specific accounts
2016-12-04 08:46:05 -08:00
keorn
9084e6242d lock ordering 2016-12-02 20:04:12 +00:00
keorn
ff6240eff3 insert block into queue when sealing 2016-12-02 20:03:15 +00:00
Robert Habermeier
cd5b6fdf59 queue: CLI for auto-scaling and num verifiers 2016-12-02 18:21:54 +01:00
keorn
c8a3db4c52 new error proposal test 2016-12-02 13:59:54 +00:00