Commit Graph

1705 Commits

Author SHA1 Message Date
Gav Wood
a5c6cc34cf Merge pull request #3466 from ethcore/hf2-block-num
Set HF2 block number
2016-11-16 11:21:59 +08: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
be4311540d Set HF block number 2016-11-15 22:04:25 +01:00
Arkadiy Paronyan
4016c58ee9 Update test client with max code size 2016-11-15 19:48:15 +01:00
arkpar
e795f84664 fixed test 2016-11-15 19:46:25 +01:00
Robert Habermeier
7bfb9e4003 handle all LES requests 2016-11-15 18:19:16 +01:00
Gav Wood
b5704f8056 Update max code size. 2016-11-15 17:58:29 +01:00
Gav Wood
062d55a046 Fix test. 2016-11-15 17:58:28 +01:00
Gav Wood
30ea921329 Introduce the actual max code size. 2016-11-15 17:58:28 +01:00
Gav Wood
528bf17af5 Restrict max code size to 23999 bytes for EIP-150 and after. 2016-11-15 17:58:28 +01:00
Robert Habermeier
cb54152c23 cut off headers after first missing 2016-11-15 15:47:08 +01:00
Robert Habermeier
abf39fde0a implement provider for client 2016-11-15 14:53:30 +01:00
keorn
8efaf08da3 typos and warning 2016-11-15 13:02:46 +00:00
keorn
fde6ff2186 nicer extra info 2016-11-15 11:10:32 +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
Robert Habermeier
25b0b8641e indent state tests 2016-11-14 17:47:56 +01:00
keorn
1e3ae9fff9 typos, header functions 2016-11-14 15:56:19 +00:00
Gav Wood
ae67bd5371 Merge pull request #3385 from ethcore/dev-chain
Dev chain
2016-11-14 16:28:58 +01:00
keorn
0b5a9a6e60 nicer bundled spec message 2016-11-14 14:29:33 +00:00
Robert Habermeier
3c7533831e Merge branch 'master' into client-provider 2016-11-14 15:16:26 +01: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
8a86c11375 enable force sealing 2016-11-14 13:35:16 +00:00
Robert Habermeier
18153b8d9e Merge branch 'master' into missing-code-by-prefix 2016-11-14 14:02:19 +01: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
501f6d3f49 Merge branch 'master' into auth-round 2016-11-14 10:08:14 +00:00
keorn
d8e6dbd981 Merge branch 'master' into dev-chain 2016-11-14 10:05:34 +00:00
keorn
2d4b4cf5c9 revert moves to Spec 2016-11-14 10:04:34 +00:00
GitLab Build Bot
d1848117ef [ci skip] js-precompiled 20161113-131856 2016-11-13 13:20:20 +00:00
GitLab Build Bot
5a259be290 [ci skip] js-precompiled 20161113-131228 2016-11-13 13:13:54 +00:00
Gav Wood
4a92668c56 Fix chainspec storage field. (#3406)
Add a test.
2016-11-13 13:58:42 +01:00
Robert Habermeier
37f49aac1b abort snapshot restoration faster (#3356)
* abort snapshot restoration faster

* flag-checking tests
2016-11-13 13:52:53 +01:00
keorn
15d748c2f7 Merge branch 'master' into dev-chain 2016-11-11 20:40:05 +00:00
keorn
ea9c479fff update json_tests 2016-11-11 18:57:57 +00:00
keorn
cc39b24599 update chain name 2016-11-11 18:41:04 +00:00
keorn
4a65394269 change instant spec, update doc 2016-11-11 18:38:44 +00:00
keorn
53258cca6c add new dev spec 2016-11-11 17:27:20 +00:00
keorn
e63b7e51fb update instant_seal schedule 2016-11-11 17:26:41 +00:00
Robert Habermeier
87c668ba9c test previous code fetch 2016-11-11 18:24:12 +01:00
keorn
beaa014543 tix doc test 2016-11-11 16:59:22 +00:00
keorn
a719b91b63 move spec constructors to spec 2016-11-11 16:37:44 +00:00
Gav Wood
a7ad75d851 whitespace
[ci:skip]
2016-11-11 17:32:54 +01:00
Robert Habermeier
ed135bb9dc fetch known code from the database during restoration
previously it kept all seen code in memory, leading to
high memory usage by the end of state restoration
2016-11-11 17:18:31 +01:00
Robert Habermeier
3854b8a689 LES Part 1 (#3322)
* stub implementations of light client trait

* Light provider trait

* light client sync stubs

* LES boilerplate

* stub implementation of provider for client

* skeleton and request traits

* request definitions

* new_list -> begin_list

* handle unknown packet

* revise light implementation strategy

* make verification module public

* Move all light client work to own crate

* experiment with answering requests

* buffer flow scaffolding

* remove LESv2 requests

* buffer flow basics, implement cost table

* begin status module

* implement handshake parsing and creation

* implement announcement serialization

* errors, punishment, and handshake

* handle announcements

* making announcements, clean up warnings

* allow dead code temporarily
2016-11-10 18:30:17 +01:00
Robert Habermeier
8c2c048444 clean up errors 2016-11-10 14:05:47 +01:00
Arkadiy Paronyan
6ffaab15a3 Disarm the HF and add more bootnodes (#3323)
* Disarm the HF

* More bootnodes

* Updated tests
2016-11-10 11:28:27 +01:00
Tomasz Drwięga
2f98169539 In-browser signing support (#3231)
* Signer RAW confirmations

* Returning address book as eth_accounts

* UI support for in-browser signing

* Post review fixes

* Adding new methods to jsonrpc

* Fixing eth_accounts

* Deterministic accounts ordering
2016-11-10 11:27:05 +01:00
Robert Habermeier
11e6b08f02 Move ethcore-light crate into ethcore/light module 2016-11-09 23:39:56 +01:00
Robert Habermeier
ebff010d16 partial implementation of provider for client types 2016-11-09 23:25:54 +01:00
GitLab Build Bot
29aecc2cff [ci skip] js-precompiled 20161109-171832 2016-11-09 17:19:59 +00:00
Robert Habermeier
60a8728121 Merge branch 'master' into les-impl 2016-11-09 18:06:12 +01:00
Robert Habermeier
6c23d53f04 allow dead code temporarily 2016-11-09 18:05:56 +01:00
Robert Habermeier
25d5efac15 making announcements, clean up warnings 2016-11-09 18:05:00 +01:00
Gav Wood
4712b882e5 New transaction tests (#3313)
* Add new transaction tests.

* Add new test.
2016-11-09 18:02:24 +01:00
Robert Habermeier
c132775bb1 handle announcements 2016-11-09 16:21:09 +01:00
Robert Habermeier
ec1b982b52 errors, punishment, and handshake 2016-11-09 15:36:26 +01:00
Arkadiy Paronyan
85ade4a2ec Fixed uncle details (#3299) 2016-11-09 13:17:40 +01:00
keorn
49f2a72d5d Merge branch 'master' into auth-round 2016-11-09 10:35:00 +00:00
Robert Habermeier
ca25deb4e6 implement announcement serialization 2016-11-08 19:00:37 +01:00
Robert Habermeier
b369cdd573 Merge branch 'master' into les-impl 2016-11-08 17:14:19 +01:00
Robert Habermeier
440f5e537f implement handshake parsing and creation 2016-11-08 17:13:43 +01:00
Robert Habermeier
4ba4861734 begin status module 2016-11-07 19:16:23 +01:00
Robert Habermeier
051effe9f8 buffer flow basics, implement cost table 2016-11-07 15:40:34 +01:00
Robert Habermeier
d573ef3cc2 remove LESv2 requests 2016-11-06 20:02:15 +01:00
Robert Habermeier
44e36596c9 buffer flow scaffolding 2016-11-06 19:04:30 +01:00
Robert Habermeier
56fd88d1e8 ethash unsafety cleanup (#3210) 2016-11-05 10:39:15 +01:00
Gav Wood
744501c454 Mode improvements for UI (#3109)
* `--mode=off` now works.

* Add Mode::Off as a persistent CLI option.

* "last" not "auto" as default.

* Commit accidentally unsaved file.

* Whitespace

[ci:skip]

* Mode CLI parse fix

* or offline

* Save mode when it gets changed.

* Fix Offline mode

* Fix up mode operations.

* Make passive default, but not overriding.

* Fix test

* Maybe not everyone wants to run an archive node...
2016-11-05 10:38:00 +01:00
Robert Habermeier
52abbc0643 experiment with answering requests 2016-11-04 23:50:56 +01:00
Igor Artamonov
2a19c33b8d delay bomb for Classic (ECIP-1010) (#3179)
* delay bomb for classic (ECIP-1010)

* formatting fix after core review, rel [e6b5093]
2016-11-04 23:09:23 +01:00
Robert Habermeier
c1a6dbe75f Move all light client work to own crate 2016-11-04 19:40:11 +01:00
Robert Habermeier
5cabb3008f make verification module public 2016-11-04 19:21:48 +01:00
Robert Habermeier
edf17d00c4 revise light implementation strategy 2016-11-04 18:40:31 +01: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
Arkadiy Paronyan
d37f4cc82f v1.5 (#3195) 2016-11-04 17:27:11 +01:00
Robert Habermeier
eef9a355af request definitions 2016-11-04 17:19:01 +01:00
keorn
a8b688b469 allow permanent unlock for internal sealing 2016-11-04 15:50:56 +00:00
keorn
0e5060db18 update schedule 2016-11-04 15:04:19 +00:00
Gav Wood
0f16942186 EIP-155 update with Vitalik's new test vectors (#3166)
* Vitalik's new test vectors.

* Update to latest EIP155 spec.

* Fix txs.

* Another fix.
2016-11-04 15:13:51 +01:00
Robert Habermeier
1bc124f980 Merge branch 'master' into les-impl 2016-11-04 15:00:05 +01:00
keorn
255ec0c139 Merge branch 'master' into auth-round 2016-11-04 11:35:17 +00:00
Tomasz Drwięga
2e47842d66 Exposing state root and logsBloom in RPC receipts (#3174) 2016-11-04 12:33:13 +01: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
0c2cfc9b6e Fix histogram (#3150)
* fix histogram

* remove outdated comment
2016-11-03 21:15:27 +01:00
keorn
00a3619392 header methods 2016-11-02 17:42:56 +00:00
keorn
03c9760de2 Merge remote-tracking branch 'parity/master' into auth-round-no-mocknet 2016-11-02 13:01:31 +00:00
keorn
26155f51d5 proper calculation of remaining step time 2016-11-02 12:13:47 +00:00
keorn
da3253133c ignore block timeout when sealing internally 2016-11-02 12:13:12 +00:00
keorn
3a6b56e99c check double signing, tracing 2016-11-01 18:12:06 +00:00
Tomasz Drwięga
8c1f8700ec Fixing last hashes for ethcall (#3043) 2016-11-01 11:24:46 +01:00
Robert Habermeier
42010acd68 execute periodic snapshot in new thread (#3029)
to ensure that the I/O worker isn't stalled.
2016-11-01 11:09:46 +01:00
Robert Habermeier
8599a11a0b Snapshot sync and block gap info in eth_syncing (#2948)
* provide snapshot sync info in eth_syncing

* specify block gap in eth_syncing

* Extend eth_syncing with warp, format the output properly

* adjust serialization tests for sync info

* whitespace
2016-10-31 17:32:53 +01:00
Gav Wood
547871f933 RPCs for mode change (#3002)
* Allow warnings.

* Add RPCs to allow ad-hoc mode changes.

* Add the JSAPI interfaces

* Add missing file.
2016-10-31 16:58:35 +01:00
Gav Wood
54a408fd88 Fix a test sensitive to slow execution. (#3014) 2016-10-31 16:55:30 +01:00
keorn
7af20a5db0 Modify gas price statistics (#2947)
* gas price distribution + median + tests

* put histogram in util

* use the util histogram

* remove the default gas price implementation

* histogram rpc

* fix empty corpus

* Add JS ethcore_gasPriceHistogram

* Fix typo (s/types/type/) & subsequent failing test

* Fix return type & formatting

* bucketBounds

* Add jsapi e2e test verification
2016-10-31 12:57:48 +01:00
keorn
fc4664ab12 Merge branch 'master' into auth-round-no-mocknet 2016-10-30 21:18:52 +00:00
Arkadiy Paronyan
bccc56b6b0 mio version bump (#2982) 2016-10-30 09:56:34 +01:00
Arkadiy Paronyan
8796574e5a Use separate lock for code cache (#2977) 2016-10-29 21:27:53 +02:00
Tomasz Drwięga
f17cad9dff Fixing clippy warnings 2 (#2961) 2016-10-29 13:08:49 +02:00
keorn
7976f46231 Merge branch 'master' into auth-round-no-mocknet 2016-10-28 17:53:23 +01:00
Tomasz Drwięga
0f0334275e Validating minimal required gas for a transaction (#2937)
* Validating minimal required gas for a transaction

* Adding RPC case and note

* Fixing whitespace [ci skip]
2016-10-28 16:42:24 +02:00
Robert Habermeier
2806f1d4c9 Even more snapshot validity checks (#2935)
* clarify "cancelled periodic snapshot" message

* more rigorous checks for snapshot validity

* verify ancient blocks on import

* limit number of fed blocks

* make it possible to feed snapshot service canonical hashes

* fix failing test build

* swap ethash DAG only when more recent
2016-10-28 16:10:30 +02:00
Robert Habermeier
29ab4ecac1 Shared code cache (#2921)
* add a global code cache

* extract memory-limited lru cache to util

* use memory-limited code cache

* account for code cache size in mem_used
2016-10-28 16:04:44 +02:00
Tomasz Drwięga
956a059a06 Updating bootnodes for ETC (#2938) 2016-10-28 16:02:23 +02:00
Arkadiy Paronyan
55efa16e42 More bootnodes (#2926) 2016-10-28 12:00:01 +02:00
Tomasz Drwięga
dedc4d5cfc Get rid of duplicated code (#2915) 2016-10-27 19:29:23 +02:00
Tomasz Drwięga
152a551e8b Transaction Queue banning (#2524)
* Blacklisting transaction queue

* Using blacklisting queue in miner

* Restoring todo [ci:skip]

* Blacklisting recipients and code

* Renaming blacklisting->banning

* CLI option for banning.

* Fixing submodule commit [ci:skip]

* Fixing RPC tests

* Additional logging when dropping transactions

* whitespace

[ci:skip]

* Configurable ban duration

* Reverting fix for pruning history from config file
2016-10-27 19:28:34 +02:00
Tomasz Drwięga
ce37b6dcb9 Revert to gas price ordering (#2919) 2016-10-27 19:27:08 +02:00
Robert Habermeier
3a5843c40f skeleton and request traits 2016-10-27 15:45:59 +02:00
Nikolay Volf
d315ec29e1 Apply pending block details on commit (#2254)
* failing test

* Cache pending details

* [ci skip] updated comment
2016-10-27 15:26:29 +02:00
Robert Habermeier
a7e420d9ec stub implementation of provider for client 2016-10-27 15:09:17 +02:00
Tomasz Drwięga
88997801d0 Clippy bump (#2877)
* Bumping clippy

* Fixing warnings

* Fix the "fix"
2016-10-27 08:28:12 +02:00
keorn
3ff26dd544 Merge branch 'master' into auth-round-no-mocknet 2016-10-26 17:50:04 +01:00
keorn
a1745624ce enable suicide test (#2893) 2016-10-26 16:27:38 +02:00
Arkadiy Paronyan
f024acd329 More snapshot fixes and optimizations (#2883)
* More snapshot fixes and optimizations

* db drop
2016-10-26 16:14:13 +02:00
Robert Habermeier
4b82392371 merge with master 2016-10-26 14:17:13 +02:00
Arkadiy Paronyan
5b978be034 Get rid of MemoryDB denote (#2881) 2016-10-26 13:53:47 +02:00
Arkadiy Paronyan
135d5d0e4c Snapshot fixes and optimizations (#2863) 2016-10-25 18:40:01 +02:00
Gav Wood
a6fd922ffb Don't fail badly when no transactions in last 100 blocks. (#2856) 2016-10-25 12:21:21 +02: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
Robert Habermeier
bc81ae0407 Snapshot and blockchain stability improvements (#2843)
* allow taking snapshot from just-restored database without error

* make creation informant less spammy

* Ancestry iterator failure-resilient

* make uncle hash searching resilient to incomplete chain

* deduce pre-chunk info from last written block's details
2016-10-24 18:27:23 +02:00
keorn
aa05823afe Merge remote-tracking branch 'parity/master' into auth-round-no-mocknet 2016-10-24 15:32:30 +01:00
arkpar
f543108cf5 Fixed tests 2016-10-24 16:31:37 +02:00
Arkadiy Paronyan
44a560e964 CLI option to skip seal check when importing (#2842) 2016-10-24 15:09:13 +02:00
Gav Wood
37a2ee98de Additional RPCs for password management (#2779)
* Add personal_testPassword and stub for personal_changePassword

* Add change-password functionality.

* Address grumble.

* Update tests.

* Update build.
2016-10-22 14:24:02 +01:00
Robert Habermeier
8e5c9ff162 rename State::snapshot to checkpoint to avoid confusion (#2796) 2016-10-22 14:22:16 +01:00
keorn
479657b23b Automatic compaction selection on Linux (#2785)
* add auto compaction types

* pass db paths

* detect drive type on Linux

* use base db path

* add docstring

* limit the test to be side effect free

* use base db path

* more docs

* fix parsing test

* update error

* detect only on Linux

* make test Linux only

* add second device letter, update cli doc

* use spaces in cli doc

* import only on linux

* default->auto
2016-10-21 23:21:57 +02:00
Robert Habermeier
49ef9a1aa4 Add empty account existence test from beta. (#2769)
* add bloom filter existence test from beta

* fix U256 instantiation for master
2016-10-21 20:36:40 +02:00
Arkadiy Paronyan
6f7b7638f4 Resolve morden fork (#2773) 2016-10-21 19:23:05 +02: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
866ab9c7a3 Check queue to determine major importing (#2763)
* simplify major sync detection

* fix typos

* fix merge

* more realistic EthTester

* add new synced state

* remove Blocks synced state

* move is_major_importing to rpc crate and check queue

* add tests
2016-10-20 23:36:18 +02:00
Nicolas Gotchac
236fb82886 Trace filtering fix (#2760)
* (#2751) Trace filtering fix:
  Don't test contract address against empty array in trace filtering

* Fixes spaces/typo

* Simplify the Trace Filtering (#2751)

* Removed unused `strictly_matches` fn
2016-10-20 23:35:56 +02:00
Robert Habermeier
7359af8588 Incrementally calculate verification queue heap size (#2749)
* incrementally calculate queue heap size

* query the correct queue sizes
2016-10-20 17:19:31 +02:00
Arkadiy Paronyan
ae853a7557 Don't add empty accounts to bloom (#2753) 2016-10-20 16:49:27 +02:00
Arkadiy Paronyan
906dcd7bfe Block import optimization (#2748)
* Block import optimization

* whitespace

[ci:none]
2016-10-20 14:49:12 +02:00
Arkadiy Paronyan
20e1d575da Frontport commits from beta to master (#2743)
* Remove count limit for local transactions (#2634)

* Fixed stalled sync
2016-10-20 00:33:00 +02:00
keorn
aa52b04e31 Unify major syncing detection (#2699)
* simplify major sync detection

* fix typos

* fix merge

* more realistic EthTester

* add new synced state
2016-10-19 18:35:39 +02:00
Tomasz Drwięga
9869a85ed5 Bumping json tests 2016-10-19 16:31:51 +02:00
Jaco Greeff
57f33c45cc Update Registry.sol address (mainnet) (#2713) 2016-10-19 12:35:56 +02:00
Arkadiy Paronyan
487dfb0208 Snapshot sync part 2 (#2098)
* Split block downloader into a module

* Snapshot sync progress

* Warp sync CLI option

* Increased snapshot chunk and ping timeouts

* Fixed an issue with delayed writes

* Updated bootnodes

* Don't run pending IO tasks on shutdown

* Optional first_block; removed insert_snapshot_block

* Fixing expect calls

* Fixed stalled sync

* style and docs

* Update block_sync.rs

[ci:skip]
2016-10-18 18:16:00 +02:00
Tomasz Drwięga
4d48054cee Fixing importing traces for non-canon blockS (#2683) 2016-10-18 16:43:42 +02:00
Robert Habermeier
0eb8cb453b Merge pull request #2658 from ethcore/snapshot-earliest-era
use pruning history in CLI snapshots
2016-10-18 13:57:43 +02:00
Robert Habermeier
c2dd37bb69 use pruning history in CLI snapshots 2016-10-17 13:05:57 +02:00
Gav Wood
b5c65e3df5 Fix up ETC EIP-150 transition to 2,500,000. (#2636) 2016-10-16 13:44:56 +02:00
keorn
303f922ebd steps based on unix epoch 2016-10-15 13:55:10 +01:00
Tomasz Drwięga
cceca916a1 [frontport] CLI to specify queue ordering strategy (#2494) (#2623)
* CLI to specify queue ordering strategy (#2494)

* Alter gas priorities to include gas_price also

* CLI options and tests

* Adding ordering by gas

* whitespace

Conflicts:
	ethcore/src/miner/miner.rs
	ethcore/src/miner/mod.rs
	ethcore/src/miner/transaction_queue.rs
	parity/cli/usage.txt
	parity/configuration.rs

* fix build
2016-10-15 14:46:33 +02: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