Commit Graph

2029 Commits

Author SHA1 Message Date
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