Commit Graph

321 Commits

Author SHA1 Message Date
keorn
bb8347477a gossip when not enough votes 2016-11-30 16:01:20 +00:00
keorn
73e7908325 test password registration 2016-11-30 14:30:21 +00:00
keorn
155da50fcd Merge branch 'master' into auth-bft 2016-11-30 13:06:21 +00:00
keorn
34d5017950 hold password in engine, add rpc 2016-11-30 12:59:33 +00:00
Gav Wood
d525a6d7f0 Merge pull request #3654 from ethcore/clippy-bump
Bumping clippy
2016-11-29 18:00:13 +01:00
keorn
7929a145e7 fix deadlock 2016-11-29 14:55:54 +00:00
keorn
294e89e5c0 use EngineError instead of BlockError 2016-11-29 12:51:27 +00:00
keorn
e784fa906e warn on double vote 2016-11-29 12:20:38 +00:00
keorn
49b953a9f4 order invariant seal equality 2016-11-29 11:18:40 +00:00
keorn
d0eab4a0d8 old message removal, avoid too many recoveries 2016-11-29 10:55:24 +00:00
keorn
61cf8b8b7e vote propose 2016-11-28 18:58:15 +00:00
keorn
0f1eefc00d disallow None seal sigs 2016-11-28 18:37:00 +00:00
keorn
e4ff614966 remove unused tracing 2016-11-28 15:50:55 +00:00
keorn
1326c6cf5a rebroadcast unseen messages 2016-11-28 15:24:22 +00:00
keorn
7d97ba5ee0 seal sigs test 2016-11-28 15:23:39 +00:00
Tomasz Drwięga
2b3d100de2 Fixing some clippy warnings 2016-11-28 15:54:22 +01:00
keorn
ef4ecce7bf nicer vote counting + test 2016-11-28 14:08:38 +00:00
keorn
09c28806d6 proper test IoHandler 2016-11-28 11:47:33 +00:00
keorn
89f0bd714d test whole transitioning 2016-11-28 09:42:50 +00:00
arkpar
d0c80a6903 Updated tests 2016-11-28 01:37:25 +01:00
keorn
a7afbf4d25 tracing and vote test 2016-11-25 16:45:32 +00:00
keorn
8f72017bcc add transition tracing 2016-11-25 16:44:57 +00:00
keorn
f59746b2da order messages by signature 2016-11-25 16:44:18 +00:00
keorn
1692c07ba6 Merge branch 'master' into auth-bft 2016-11-25 10:51:06 +00:00
keorn
da499b0a4a self contained test proposal 2016-11-24 19:59:08 +00:00
keorn
f867372dfe increase default proposal time 2016-11-24 19:58:29 +00:00
keorn
04acdd6ca0 reuse rlp generation 2016-11-24 19:57:58 +00:00
keorn
8f37807d4b seal checks 2016-11-24 13:57:54 +00:00
keorn
38f25fc195 message tests and fixes 2016-11-24 13:57:04 +00:00
keorn
340d377930 Revert "dont keep account provider in miner"
This reverts commit 11ccacd6d0.
2016-11-22 16:05:27 +00:00
keorn
32bcd08b94 test utilities 2016-11-21 18:54:16 +00:00
keorn
66526af5a8 pass engine in tests 2016-11-21 18:53:53 +00:00
keorn
84fdaf966a correct seal verification 2016-11-21 16:02:26 +00:00
keorn
42ef7767da delete unused message type 2016-11-21 12:23:27 +00:00
keorn
959ccc705a fix indent 2016-11-21 12:07:43 +00:00
keorn
c6db157554 fix flaky test, clean up specs 2016-11-21 12:06:14 +00:00
keorn
e69be670de message serialization 2016-11-21 11:36:07 +00:00
keorn
49cbd6ef98 unused imports, proposer_nonce 2016-11-18 13:38:04 +00:00
keorn
2f3b801296 rename transition 2016-11-18 13:37:47 +00:00
keorn
e90d814193 lock rounds 2016-11-18 12:27:00 +00:00
keorn
c62795d09b ap registration 2016-11-17 23:36:24 +00:00
keorn
9d61071dd7 Merge branch 'miner-no-ap' into auth-bft 2016-11-17 22:04:07 +00:00
keorn
9d8ac7a09b extra line [ci skip] 2016-11-17 19:08:00 +00:00
keorn
11b6578bc3 update tests 2016-11-17 18:46:50 +00:00
keorn
11ccacd6d0 dont keep account provider in miner 2016-11-17 18:32:12 +00:00
keorn
3bac68419a last_lock 2016-11-17 17:12:37 +00:00
keorn
ce711e321a remove unused vote accumulators 2016-11-17 13:28:29 +00:00
keorn
51ac38318a save proposal hash 2016-11-17 13:26:57 +00:00
keorn
9563ccfbd2 message broadcasting methods 2016-11-17 12:18:20 +00:00
keorn
802d5c669d transition rules 2016-11-16 18:01:09 +00:00
keorn
51bbad66d0 add a path to submit seal from engine 2016-11-16 15:56:16 +00:00
keorn
3b0d5503b1 fix compilation 2016-11-16 13:13:21 +00: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
Arkadiy Paronyan
df1fbf50d8 Build fix (#3470) 2016-11-16 08:47:50 +01:00
Gav Wood
1daba384cc Merge pull request #3426 from ethcore/auth-round
Authority round consensus engine
2016-11-16 11:18:01 +08:00
arkpar
e795f84664 fixed test 2016-11-15 19:46:25 +01:00
keorn
1c958695c3 timeout loading 2016-11-15 15:25:30 +00:00
keorn
7d0eafd5cd fix extra_info 2016-11-15 13:33:11 +00:00
keorn
8efaf08da3 typos and warning 2016-11-15 13:02:46 +00:00
keorn
06e5416537 header fns, extra_info 2016-11-15 11:27:09 +00:00
keorn
fde6ff2186 nicer extra info 2016-11-15 11:10:32 +00:00
keorn
d19e8c5505 Merge remote-tracking branch 'parity/master' into bft 2016-11-15 10:26:37 +00:00
keorn
ff2dc5dd57 vote counting 2016-11-15 10:21:49 +00:00
keorn
54e4956345 return errors from constructor 2016-11-15 10:21:18 +00:00
keorn
dd8ed42270 update timeouts 2016-11-15 10:20:42 +00:00
keorn
55a5402bf5 simplify messages 2016-11-15 10:20:14 +00:00
keorn
071e66c9a8 fix flaky test 2016-11-14 19:03:02 +00:00
keorn
9d46401626 revert to try! 2016-11-14 18:25:42 +00:00
keorn
ae5ae765a6 Merge branch 'master' into auth-round 2016-11-14 18:04:44 +00:00
keorn
06ebd5fa1a remove most panics 2016-11-14 17:42:56 +00:00
keorn
1e3ae9fff9 typos, header functions 2016-11-14 15:56:19 +00:00
keorn
5de7d50bf8 add test for multi proposals 2016-11-14 14:15:31 +00:00
keorn
8be8b3e1cd ensure no double proposals 2016-11-14 13:35:45 +00:00
keorn
165e2bef75 modify proposer test 2016-11-14 11:34:54 +00:00
keorn
b5c891814a fix merge 2016-11-14 11:09:57 +00:00
keorn
e63b7e51fb update instant_seal schedule 2016-11-11 17:26:41 +00:00
keorn
49f2a72d5d Merge branch 'master' into auth-round 2016-11-09 10:35:00 +00:00
keorn
4e36550890 message revamp 2016-11-08 18:01:31 +00:00
keorn
ea960f1c27 Merge remote-tracking branch 'parity/master' into bft 2016-11-07 11:34:45 +00:00
Tomasz Drwięga
f31d42d0c5 Exposing engine extra info in block RPC (#3169)
* Exposing extra info in RPC

* Proper serialization and client trait API
2016-11-04 17:35:02 +01:00
keorn
0e5060db18 update schedule 2016-11-04 15:04:19 +00: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
00a3619392 header methods 2016-11-02 17:42:56 +00:00
keorn
26155f51d5 proper calculation of remaining step time 2016-11-02 12:13:47 +00:00
keorn
3a6b56e99c check double signing, tracing 2016-11-01 18:12:06 +00:00
keorn
3ff26dd544 Merge branch 'master' into auth-round-no-mocknet 2016-10-26 17:50:04 +01:00
Robert Habermeier
0fedc27332 Remove ethcore::common re-export module (#2792)
* no longer export action_params

* remove transaction, header, receipt re-rexports from common

* remove env_info and builtins re-exports from common

* remove everything but util export from common

* replace common usages with util, remove module

* add a prelude module for ethcore-bigint
2016-10-24 18:35:25 +02:00
keorn
aa05823afe Merge remote-tracking branch 'parity/master' into auth-round-no-mocknet 2016-10-24 15:32:30 +01:00
Robert Habermeier
96f4c10453 sweep most unwraps from ethcore crate, dapps crate (#2762)
* sweep most unwraps from ethcore crate

* purge unwrap from dapps server

* whitespace

[ci:none]
2016-10-20 23:41:15 +02:00
keorn
303f922ebd steps based on unix epoch 2016-10-15 13:55:10 +01:00
Tomasz Drwięga
03c1559ead Support for decryption in Signer (#2421)
* Adding some tests

* Implementing decrypt in queue

* Removing code duplication.

* Printing public key in ethstore

* Bump UI

* Normalizing dapps format for signer.

* Fixing tests compilation

* fix whitespace

[ci:skip]
2016-10-15 14:44:08 +02:00
keorn
44f42ac7d3 Merge remote-tracking branch 'parity/master' into auth-round-no-mocknet
Conflicts:
	ethcore/src/state/mod.rs
	ethcore/src/tests/mod.rs
2016-10-12 18:39:31 +01:00
keorn
214916a414 new vote counter 2016-10-11 18:38:05 +01:00
keorn
e343153f06 mixed merge and changes... 2016-10-11 18:37:31 +01:00
keorn
096b71feb2 add Vote generation 2016-10-05 14:33:07 +01:00
keorn
cb2c9938a1 keep author as validator 2016-10-05 14:32:15 +01:00
keorn
a03db2ff29 add is_new_best method to engines 2016-10-05 14:30:44 +01:00
keorn
76d7ec84bb new block ordering engine method 2016-09-30 14:43:52 +01:00
keorn
9ca938f740 Merge remote-tracking branch 'parity/master' into bft
Conflicts:
	ethcore/src/client/client.rs
	sync/src/api.rs
2016-09-30 12:44:52 +01:00
keorn
8a51ae02aa simplify seal 2016-09-30 12:22:46 +01:00
keorn
d59e9e816e fix tests compilation 2016-09-29 16:57:52 +01:00
keorn
d085146254 separate params out 2016-09-29 15:32:49 +01:00
keorn
6cbb859bd2 add tendermint message types and deserialization 2016-09-29 14:44:42 +01:00
Arkadiy Paronyan
ad63780b4d Canonical state cache (master) (#2311)
* State cache

* Reduced copying data between caches

Whitespace and optional symbols

* Reduced copying data between caches

Whitespace and optional symbols

* Set a limit on storage cache

* Style and docs
2016-09-27 18:02:11 +02:00
keorn
28cf91c7a5 remove mocknet stuff, clean up debug 2016-09-27 15:50:16 +01:00
keorn
0c69d4a1ce Merge remote-tracking branch 'parity/master' into auth-round
Conflicts:
	devtools/src/random_path.rs
2016-09-27 12:39:25 +02:00
keorn
fd6900bbb3 Merge remote-tracking branch 'parity/master' into bft
Conflicts:
	Cargo.lock
2016-09-27 12:37:43 +02:00
keorn
ec058cdb50 reseal on timeout 2016-09-27 12:12:18 +02:00
Tomasz Drwięga
15488b3e40 Fixing output of eth_call and Bytes deserialization (#2230)
* Fixing eth_call to builtins

* Fixing bytes deserialization

* Removing comment
2016-09-22 14:50:00 +02:00
keorn
c57e3cefe4 sync check method 2016-09-21 10:29:44 +02:00
keorn
44c4845d84 fix up step switching test 2016-09-19 18:40:25 +02:00
keorn
d84f94975f add proposer step to seal 2016-09-19 18:00:39 +02:00
keorn
ce3e8750c9 additional consensus test 2016-09-19 14:33:11 +02:00
keorn
b31e732ebe temporary is_sealer check disable 2016-09-19 10:39:57 +02:00
keorn
167cfd4caa Enable sealing if Engine provides internal sealing given author (#2084)
* enable internal sealing based on author

* add tests, keep track of engine sealing status

* method to check if default address is_sealer

* simplify constructors

* fix typo
2016-09-15 12:12:15 +02:00
keorn
c482b8ffb6 enable sealing only is authority 2016-09-14 17:28:15 +02:00
keorn
bedbe6e65e update test spec loading 2016-09-14 11:20:22 +02:00
keorn
7f05021075 Merge remote-tracking branch 'parity/should-seal' into auth-round 2016-09-14 10:59:33 +02:00
keorn
0880d4ad8f method to check if default address is_sealer 2016-09-14 10:49:44 +02:00
keorn
2bd82269e8 add tests, keep track of engine sealing status 2016-09-14 00:00:26 +02:00
keorn
fef94205e3 enable internal sealing based on author 2016-09-13 19:59:34 +02:00
keorn
341e06481e Split internal sealing from work preparation (#2071)
* separate block preparation methods

* Split internal sealing from work sealing, add cli option

* replace cli with engine method, simplify

* More docs about sealing types. Bypass work in external txs.

* split requires_reseal, add test and new test miner
2016-09-13 15:09:07 +02:00
keorn
eee6be1ce3 implement new predicate trait 2016-09-13 14:23:52 +02:00
keorn
8b9e7c0ba5 Merge remote-tracking branch 'parity/split-internal-seal' into auth-round 2016-09-13 12:57:52 +02:00
keorn
e41b6c410f split requires_reseal, add test and new test miner 2016-09-13 12:52:14 +02:00
keorn
d98f69cf58 Merge remote-tracking branch 'parity/split-internal-seal' into auth-round 2016-09-12 11:36:16 +02:00
keorn
c0201bd891 replace cli with engine method, simplify 2016-09-12 11:07:40 +02:00
keorn
fc3d01ec71 add tests, fixes, simplifications 2016-09-08 16:27:54 +02:00
keorn
747898d8e7 add new engine to spec 2016-09-08 12:28:59 +02:00
keorn
3a68fab066 new simple authority engine 2016-09-08 12:12:24 +02:00
keorn
9fe62d9750 adjust default timeouts 2016-09-08 10:31:46 +02:00
keorn
4ccbec1148 Merge remote-tracking branch 'parity/master' into bft
Conflicts:
	sync/src/api.rs
	sync/src/lib.rs
2016-09-07 16:54:39 +02:00
keorn
ba21bafd7b tests and fixes 2016-09-07 16:25:42 +02:00
keorn
45e6b4ac9d seal generation and verificatio 2016-09-06 12:26:06 +02:00
keorn
91fbaf935c Merge remote-tracking branch 'parity/master' into bft
Conflicts:
	ethcore/src/client/client.rs
2016-09-05 18:16:09 +02:00
keorn
0af4bf23a9 add internal timeout service, test proposer switching 2016-09-05 17:51:29 +02:00
debris
aa8b871e49 handling invalid spec jsons properly, additional tests, closes #1840 2016-09-05 17:41:34 +02:00
keorn
8851acec7c fix propose collect locking 2016-09-05 17:06:43 +02:00
Robert Habermeier
5dd56aa070 port ethcore 2016-09-01 14:29:59 +02:00
keorn
0fcbf8d99f fix after merge 2016-08-31 18:43:24 +02:00
keorn
2f3d162f57 Merge remote-tracking branch 'parity/master' into bft 2016-08-31 18:19:24 +02:00
keorn
e475d0bf4c initial timeouts 2016-08-31 18:18:02 +02:00
keorn
d7499044e3 move seal into commit 2016-08-29 14:32:37 +02:00
keorn
4025645188 accumulate seal in precommit 2016-08-29 12:09:51 +02:00
Nipunn Koorapati
4389742ca3 Make the block header struct's internals private (#2000)
* Make the block header struct's internals private

Currently, this involves a lot of explicit cloning, but we
could migrate the return types of the get_* functions to
be copies rather than references since they are mostly copy
types anyway.

I opted to eliminate the constructor in favor of using
Default::default() plus calling a bunch of setters. This
is similar to the model that a Google Protobuf client uses
and I think it looks fine.

* Drop some unnecessary cloning by comparing references

* Fix compiler errors from callsites in tests.
2016-08-29 11:35:23 +02:00
keorn
a12a764d6c add rounds check, simplify tests 2016-08-26 19:27:50 +02:00
keorn
f60d4645ed move vote with addresses, remove recover check 2016-08-26 19:27:02 +02:00
keorn
a4ba7262ad update Signature and ipc usage 2016-08-26 13:16:56 +02:00
keorn
8bd0034ced Merge remote-tracking branch 'parity/master' into bft
Conflicts:
	ethcore/src/error.rs
2016-08-25 19:24:29 +02:00
keorn
fcae03e55f propose message test 2016-08-25 19:22:10 +02:00
Marek Kotewicz
b0d462c6c9 Signature cleanup (#1921)
* Address renamed to H160 at bigint library level

* moved uint specific test from util to bigint library

* naming

* unifing hashes in progress

* unifing hashes

* cleanup redundant unwraps in tests

* Removing util/crypto in progress.

* fixed compiling

* signature cleanup in progress

* new module - ethcrypto used by ethstore and ethcore-network

* fixed compiling

* fixed compiling

* fixed merge
2016-08-24 18:35:21 +02:00
Robert Habermeier
190e4db266 Trie query recording and AccountDB factory for no mangling (#1944)
* optionally use no mangling for accountdb

* add the recorder module

* get_recorded for tries, no virtual dispatch on readonly tries

* add recording test
2016-08-24 16:53:36 +02:00
keorn
77f06be7fb fix error propagation 2016-08-24 15:55:47 +02:00
keorn
1cb3c164da propose step 2016-08-24 11:58:49 +02:00
keorn
99a143eb37 change broadcast interface, add basic message handling 2016-08-23 17:19:23 +02:00
keorn
535c502771 delete old test 2016-08-23 15:44:01 +02:00
keorn
3aa862c9c2 add test, start tendermint 2016-08-23 12:58:40 +02:00
keorn
3515a72fa0 proposal vote collector 2016-08-22 20:00:41 +02:00
keorn
89011dcc34 fix locking patterns, add simple test 2016-08-22 17:33:04 +02:00
keorn
2f5aeda44f reusable voting on hashes 2016-08-22 13:19:23 +02:00
keorn
74939a43d6 fix types and lifetimes 2016-08-21 15:27:39 +02:00
keorn
8da38fa98b intro simple seal bft engine 2016-08-19 17:18:30 +02:00
Gav Wood
ccdf80f4dc Fix several RPCs (#1926)
* Fix up pending receipts details.

* Add support for additional params and registry over RPC.

* Fix tests.

* Add test, additional fix.

Fixes #1932.

* Fix up tests.

* Fix test.

* Fix test.
2016-08-17 19:25:02 +02:00
Marek Kotewicz
c39761c042 ethkey and ethstore use hash structures from bigint (#1851)
* Address renamed to H160 at bigint library level

* moved uint specific test from util to bigint library

* naming

* unifing hashes in progress

* unifing hashes

* cleanup redundant unwraps in tests

* fixed compiling
2016-08-15 15:09:00 +02:00
Tomasz Drwięga
a427208f79 Purging .derefs, fixing clippy warnings. (#1890)
* Fixing clippy warnings

* Purging derefs

* Simplifying engine derefs

* Simplifying more engine derefs
2016-08-10 16:29:40 +02:00
Arkadiy Paronyan
7093651d70 More performance optimizations (#1814)
* Buffered DB

* Use identity hash for MemoryDB

* Various tweaks

* Delayed DB compression

* Reduce last_hashes cloning

* Keep state cache

* Updating tests

* Optimized to_big_int

* Fixing build with stable

* Safer code
2016-08-03 22:03:40 +02:00
Robert Habermeier
11b65ce53d Remove (almost all) panickers from trie module (#1776)
* memorydb ub patch and other cleanup

* fix denote invocations

* move trie traits into trie module

* replace "denote" with shim

* triedb returns results and no longer panics

* fix warnings

* get ethcore compiling

* warn on trie errors in ethcore

* remove unsafety from node decoder

* restore broken denote behavior for this branch

* fix overlayrecent fallout

* fix triedb tests

* remove unwrap in state

* alter Trie::get to return Result<Option<_>>

* fix refcell error in require

* fix test warnings

* fix json tests

* whitespace

[ci:skip]

* Avoid unneeded match/indentation

* whitespace

* prettify map_or_else

* remove test warning
2016-08-03 18:35:48 +02:00
keorn
b672d51a74 Instant sealing engine (#1767)
* add an instant sealing engine

* add sealing engine tests

* rename to InstantSeal

* update name in json

* whitespace

[ci:skip]
2016-07-30 14:42:31 -07:00
keorn
11cb544c24 Collect consensus/null engines into a single module (#1754)
* collect consesnsus engine code into module

* move Engine to mod

* fix json test
2016-07-28 20:32:20 +02:00