Fredrik
308f36a532
Don't reexport bigint from util
2017-09-04 16:36:49 +02:00
Robert Habermeier
7ac3dd0889
Merge branch 'light-poa' of github.com:paritytech/parity into light-poa
2017-09-04 12:49:06 +02:00
Robert Habermeier
ffde22e711
move genesis_epoch_data function to spec
2017-09-04 12:46:32 +02:00
Robert Habermeier
e69e8254db
instantiate genesis epoch data if nonexistant in header_chain
2017-09-04 12:37:03 +02:00
Robert Habermeier
372779915f
Merge branch 'master' into light-poa
2017-09-04 12:30:37 +02:00
Hawstein
7b8af30590
remove re-export of parking_lot in util ( #6435 )
2017-09-02 20:09:13 +02:00
Arkadiy Paronyan
ffae847b48
spacing around comas
2017-09-02 09:57:53 +02:00
debris
94f717a255
Merge branch 'master' into keccak_fn
2017-08-31 11:53:26 +02:00
debris
7849fff41e
finished
2017-08-31 11:35:41 +02:00
Robert Habermeier
abfa8e95a2
Merge branch 'master' into light-poa
2017-08-30 18:18:52 +02:00
Axel Chalon
6b5ad69c22
Remove reexport of HeapSizeOf in util ( #6419 )
2017-08-30 16:04:47 +02:00
Robert Habermeier
c79ecee094
only load ancestry from chain closure in engine
2017-08-24 16:29:31 +02:00
Robert Habermeier
b953f9b66a
glue for fetching epoch proofs from network
2017-08-24 15:17:48 +02:00
Robert Habermeier
871a9c063e
Merge branch 'master' into light-poa
2017-08-23 15:49:02 +02:00
Robert Habermeier
2ff3dff6ea
serve epoch signals over network and check them
2017-08-23 15:37:35 +02:00
Robert Habermeier
7f3e718851
EngineClient implementation for light client
2017-08-22 21:02:40 +08:00
Tomasz Drwięga
73644adf69
Rename network_id to chain_id where applicable.
2017-08-21 14:23:10 +02:00
Robert Habermeier
2985561012
detect epoch changes in light client
2017-08-21 18:31:25 +09:00
Robert Habermeier
6ab0fc4e14
epoch transitions in the header chain DB
2017-08-19 17:07:31 +09:00
Robert Habermeier
0abf2abc81
checking for signals in the light client
2017-08-03 18:18:19 +02:00
Robert Habermeier
70ef33f6fe
Light client improvements ( #6156 )
...
* no seal checking
* import command and --no-seal-check for light client
* fix eth_call
* tweak registry dapps lookup
* ignore failed requests to non-server peers
2017-07-27 13:50:12 +02:00
Robert Habermeier
7d348e2260
light client fixes ( #6148 )
...
* light client fixes
* fix memory-lru-cache
* clear pending reqs on disconnect
2017-07-26 15:48:00 +02:00
Robert Habermeier
d365281cce
Ethcore crate split part 1 ( #6041 )
...
* split out types into separate crate
* split out evm into its own crate
2017-07-12 13:09:17 +02:00
Robert Habermeier
67c1f71b6e
Proper light client informant and more verification of imported headers ( #5897 )
...
* do more validation of imported headers in light client
* generalize informant with traits
* informant implementation for light client
* make comment into TODO
* fix broken test
* disable full checking of headers in light client in sync tests
2017-07-10 13:21:11 +02:00
Vurich
3d8dc11442
Upgrade elastic-array
to 0.9.0
...
This is a huge change, which includes some changes to replace code that
originally cloned to reuse allocations instead. The updated
`elastic-array` crate renames its consuming `Vec`-conversion method to
`into_vec`, which means that I can do a simple
`sed -i 's/to_vec/into_vec/'` and then fix the compilation errors.
This commit is probably a minor performance win and definitely a
significant readability win.
2017-06-29 13:05:33 +02:00
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
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
e094043b80
Merge branch 'master' into block_header_rpc
2017-04-12 13:00:32 +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
Adrian Brink
645b8e4b0b
Fix failing tests
2017-04-07 21:35:42 +02:00
Adrian Brink
2ce5a656e7
Ensure that OnDemand and HeaderChain share the same cache
2017-04-07 21:35:41 +02:00
Adrian Brink
fa88ee148a
Add header to cache
2017-04-07 21:35:41 +02:00
Adrian Brink
5e33fe0aa7
Add cache to HeaderChain struct.
2017-04-07 21:35:41 +02:00
Adrian Brink
9552ca7bb3
Change to snakecase
2017-04-07 21:35:41 +02:00
Adrian Brink
3632a98062
Clean up
2017-04-07 21:35:41 +02:00
Adrian Brink
23c76caafa
Add header to cache
2017-04-07 21:35:41 +02:00
Adrian Brink
8a7ca6f0ba
Add caching to block_header()
2017-04-07 21:34:29 +02:00
Adrian Brink
8ea25eeb3c
Add cache to HeaderChain struct.
2017-04-07 21:34:29 +02:00
Robert Habermeier
4f843ada3c
Merge github.com:paritytech/parity into block_header_rpc
2017-04-05 16:27:32 +02:00
Robert Habermeier
0d8a2c8c44
CHT key optimization
2017-04-05 11:30:51 +02:00
Robert Habermeier
6aa9005785
parity_getBlockHeaderByNumber and LightFetch
2017-04-03 11:37:07 +02:00
Robert Habermeier
a78068cbe9
queue culling and informant
2017-03-23 22:20:00 +01:00
Robert Habermeier
ac7f1f6719
fix header chain tests
2017-03-23 14:15:13 +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
0d110ed47c
apply pending changes to chain after DB commit
2017-03-23 04:00:22 +01:00
Robert Habermeier
0abbd7ac97
Merge branch 'pip-msg' into lightcli
2017-03-22 22:08:39 +01:00
Robert Habermeier
c718b5618e
initial light CLI
2017-03-22 18:32:04 +01:00
Robert Habermeier
bc9c1d4824
use a database in ethcore-light
2017-03-21 20:57:13 +01:00
Robert Habermeier
21771aa1a6
don't keep headers in memory to avoid DoS
2017-03-21 20:23:58 +01:00
Robert Habermeier
d013a13be6
header_chain writes to database
2017-03-21 19:45:52 +01:00
Robert Habermeier
9692616958
re-do cost table
2017-03-08 18:01:41 +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
Robert Habermeier
87f3d53607
new requests in provider.
2017-03-06 17:36:56 +01:00
Robert Habermeier
41effadb94
RLP encoding and decoding for requests
2017-03-06 12:21:06 +01:00
Robert Habermeier
af235e564e
proved execution future
2017-02-26 15:05:33 +01:00
Robert Habermeier
1ff0abc661
Merge branch 'master' into remote-tx-exec
2017-02-26 13:55:29 +01:00
Robert Habermeier
92e5982127
generate transaction proofs from provider
2017-02-25 00:27:48 +01:00
Robert Habermeier
3b023c82b7
fetch gas price corpus from network when needed
2017-02-17 17:08:46 +01:00
Robert Habermeier
2b91c922c1
get signing network ID for light client
2017-02-16 16:08:58 +01:00
Robert Habermeier
4f1afccf97
best_block_header function
2017-02-13 16:51:40 +01:00
Robert Habermeier
325c6aaf6a
verify raw transactions against Engine
2017-02-09 19:58:29 +01:00
Robert Habermeier
baf0dbc6bf
LightProvider struct using light transaction queue
2017-02-09 18:42:18 +01:00
Robert Habermeier
028dbe5fe2
rename get_header to block_header by convention
2017-02-08 20:22:41 +01:00
Robert Habermeier
197695414e
correct ready transaction condition
2017-02-04 17:19:39 +01:00
Robert Habermeier
484b93abdc
Merge branch 'cht-td' into lightrpc
2017-02-04 17:14:47 +01:00
Robert Habermeier
02142e3a57
Merge branch 'master' into cht-td
2017-02-03 19:56:52 +01:00
Robert Habermeier
e874df5155
hide CHT internals from header chain
2017-02-03 19:50:23 +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
1dc957e3a5
allow genesis block to be latest
2017-02-03 16:11:09 +01:00
Robert Habermeier
83de16da88
use encoded::Header in HeaderChain
2017-02-03 15:32:22 +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
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
Robert Habermeier
31aae4ed78
move cht module up a level
2017-01-16 16:55:23 +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
Robert Habermeier
e6324a83f1
Merge branch 'master' into lightsync
2016-12-28 15:53:11 +01:00
Robert Habermeier
55dbfbf35b
address grumbles
2016-12-27 12:24:18 +01:00
Robert Habermeier
0688ccb003
chain_mem_used function on client
2016-12-23 14:54:31 +01:00
Robert Habermeier
bdf90df56f
client report and heap size for header chain
2016-12-23 14:50:42 +01:00
Robert Habermeier
01b494ca2c
Merge branch 'master' into lightsync
2016-12-21 13:42:07 +01:00
Robert Habermeier
a48435ca60
Merge branch 'master' into lightsync
2016-12-19 13:15:37 +01:00
Robert Habermeier
2c0f456e4d
guard import order
2016-12-16 23:53:20 +01:00
Robert Habermeier
5346539ef8
minimal header import and client service
2016-12-15 18:47:26 +01:00
Robert Habermeier
0768a61944
light: add LightChainClient trait
2016-12-14 23:26:15 +01:00
Robert Habermeier
6fb71527e4
light: search for common ancestor with peers
2016-12-13 21:09:57 +01:00
Robert Habermeier
484023b171
light: max requests as 0 on unknown peer
2016-12-13 20:13:55 +01:00
Robert Habermeier
2a01b43bd1
light: block status and CHT module
2016-12-13 20:13:16 +01:00
Robert Habermeier
45ef986c04
light: finish basic header chain and add tests
2016-12-13 14:48:03 +01:00
Robert Habermeier
4173ecf2a5
light: begin header chain
2016-12-12 22:59:05 +01:00