Robert Habermeier
aa41b48ba0
Dynamically adjust PIP request costs based on gathered data ( #5603 )
...
* beginnings of load timer
* initial load timer implementation
* saturating adds
* create flow params from distribution
* update request credits and acknowledgement
* mark cumulative cost dead code
* fix compilation
* tests
* supply load share and other params to lightprotocol params
* add file store
* fix ethsync compilation
* reshuffle constants
2017-05-23 12:31:09 +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
Robert Habermeier
c7cf43d1c1
improve assertion
2017-05-16 17:24:12 +02:00
Robert Habermeier
f8279bb7bb
code cleanup with macro
2017-05-12 18:00:01 +02:00
Robert Habermeier
2a6f38c587
removing slienced warning
2017-05-12 17:53:10 +02:00
Robert Habermeier
909f3d76d8
optimize back-reference filling
2017-05-12 17:25:02 +02:00
Robert Habermeier
2d87f562f6
address grumbles
2017-05-12 17:16:38 +02:00
Robert Habermeier
0fd3e36c23
Merge branch 'master' into on-demand-priority
2017-05-10 12:18:30 +02:00
Robert Habermeier
9358f81ac1
fix indentation
2017-05-09 14:24:45 +02:00
Robert Habermeier
6652df03df
Merge branch 'master' into aura-contract-warp
2017-04-19 20:43:24 +02:00
Robert Habermeier
a278dd5a0a
store epoch transition proofs in DB
2017-04-19 14:58:19 +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
a98052fe74
Merge branch 'master' into on-demand-priority
2017-04-13 16:44:47 +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
Adrian Brink
e004e05037
Spelling fixes and link addition about LRU cache in the docs.
2017-04-07 21:34:29 +02:00
Robert Habermeier
68ec7ae41e
tests for on_demand
2017-04-07 19:35:39 +02:00
Robert Habermeier
5793bb8fac
typestrong API
2017-04-06 20:01:09 +02:00
Robert Habermeier
cf75a19e8d
Merge branch 'block_header_rpc' into on-demand-priority
2017-04-06 17:59:55 +02:00
Robert Habermeier
d19232a848
use cache in on-demand again
2017-04-06 17:22:05 +02:00
Robert Habermeier
574cfae470
dispatch batched requests
2017-04-06 15:34:48 +02:00
Robert Habermeier
3eea77709b
convert Request to CheckedRequest
2017-04-05 19:19:04 +02:00
Robert Habermeier
08d8709ef6
checked request for OnDemand
2017-04-05 18:56:01 +02:00
Robert Habermeier
4f843ada3c
Merge github.com:paritytech/parity into block_header_rpc
2017-04-05 16:27:32 +02:00
Robert Habermeier
35740456a4
generalize RequestBuilder
2017-04-05 15:02:44 +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
Robert Habermeier
e2dfea8c12
set gas limit before proving transactions
2017-04-05 12:05:55 +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
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
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
Robert Habermeier
1b0a369889
return default accounts from on_demand
2017-03-28 18:55:23 +02:00
Robert Habermeier
73fa0cdc31
eth_block fetching RPCs
2017-03-28 17:15:36 +02:00
Robert Habermeier
da3dd65726
block_hash method for LightChainClient
2017-03-28 11:23:43 +02:00
Robert Habermeier
ac057ebe93
fix test build
2017-03-23 22:36:15 +01:00
Robert Habermeier
a78068cbe9
queue culling and informant
2017-03-23 22:20:00 +01:00
Robert Habermeier
e0a79699ea
transaction propagation on a timer
2017-03-23 20:31:20 +01:00
Robert Habermeier
45c0a97142
fix body encoding
2017-03-23 18:52:54 +01:00
Robert Habermeier
5700f4ac81
fix block response decoding
2017-03-23 18:31:16 +01:00
Robert Habermeier
974f89d5bf
correct workaround for RLP issue
2017-03-23 16:00:00 +01:00
Robert Habermeier
10a470a5fa
better bookkeeping of requests in light sync
2017-03-23 15:44:16 +01:00
Robert Habermeier
c75b49667e
workaround for #5008
2017-03-23 14:49:02 +01:00
Robert Habermeier
1485dd07ae
use prev credits in tracing
2017-03-23 14:38:32 +01:00
Robert Habermeier
54eb575000
request tests that demonstrate broken RLP behavior
2017-03-23 14:38:23 +01:00
Robert Habermeier
ac7f1f6719
fix header chain tests
2017-03-23 14:15:13 +01:00
Robert Habermeier
a1df49ef3e
add test for request vec deserialization
2017-03-23 14:04:26 +01:00
Robert Habermeier
ec52a4a235
more tracing in on-demand
2017-03-23 13:24:04 +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
77f036ee21
fix capabilities-interpreting error in on_demand
2017-03-23 04:38:08 +01:00
Robert Habermeier
4eb69dc0fe
reintroduce credits recharging
2017-03-23 04:36:49 +01:00
Robert Habermeier
0d110ed47c
apply pending changes to chain after DB commit
2017-03-23 04:00:22 +01:00
Robert Habermeier
a55001ad1d
fix deadlock in on_demand
2017-03-23 02:55:25 +01:00
Robert Habermeier
0abbd7ac97
Merge branch 'pip-msg' into lightcli
2017-03-22 22:08:39 +01:00
Robert Habermeier
73b2dd7a59
light client RPC dependencies
2017-03-22 21:09:43 +01:00
Robert Habermeier
e3d6525d83
store cumulative cost in pending request set.
2017-03-22 19:30:42 +01:00
Robert Habermeier
c718b5618e
initial light CLI
2017-03-22 18:32:04 +01:00
Robert Habermeier
a0619fc101
Merge branch 'master' into pip-msg
2017-03-22 15:56:09 +01: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
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
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
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
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
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
Robert Habermeier
8be41ad946
Merge branch 'master' into pip-msg
2017-03-17 14:13:10 +01:00
Robert Habermeier
b5527415d6
get on_demand tests to compile
2017-03-16 20:33:45 +01:00
Robert Habermeier
04f106aad8
migrate oneshot::complete to send in on_demand
2017-03-16 20:29:06 +01:00
Robert Habermeier
cbb9314531
use PIP messages in on_demand, old API
2017-03-16 20:23:59 +01:00
Tomasz Drwięga
579cff478d
Fixing deprecated methods of tokio_core
2017-03-16 15:48:08 +01:00
Tomasz Drwięga
491eeb9878
Better invalid encoding messages
2017-03-16 12:48:51 +01:00
Robert Habermeier
599f81daa9
split request filling into fill,complete
2017-03-13 16:06:58 +01:00
Robert Habermeier
f0a587d310
request builder improvements
2017-03-13 13:36:03 +01:00
Marek Kotewicz
3fe3353696
removed redundant FixedHash trait, fixes #4029 ( #4866 )
2017-03-11 22:58:15 +04:00
Robert Habermeier
64342d200c
return only complete headers responses
2017-03-09 17:28:49 +01:00
Robert Habermeier
391eb4b66c
get network tests working
2017-03-09 16:55:13 +01:00
Robert Habermeier
8fb0a2d417
move request_builder -> request::builder
2017-03-08 20:11:22 +01:00
Robert Habermeier
aea9b1d6cc
request builder tests
2017-03-08 20:07:45 +01:00
Robert Habermeier
d9087dd2b6
roundtrip tests for request types
2017-03-08 19:50:26 +01:00
Robert Habermeier
868f83e6ca
Merge branch 'master' into pip-msg
2017-03-08 18:55:21 +01:00
Robert Habermeier
a1186727af
fix cost table RLP encoding
2017-03-08 18:38:25 +01:00
Robert Habermeier
9268a1f59c
get tests compiling
2017-03-08 18:27:29 +01:00
Robert Habermeier
9692616958
re-do cost table
2017-03-08 18:01:41 +01:00
Robert Habermeier
bb39f104f4
implement requesting from
2017-03-08 17:37:07 +01:00
Robert Habermeier
ee034185a5
handle response packets
2017-03-08 15:28:46 +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
dbd05e6c92
handle request packet in LightProtocol
2017-03-07 20:58:23 +01:00
Robert Habermeier
04291fe71e
complete initial request changes
2017-03-07 19:48:07 +01:00
Arkadiy Paronyan
ae3f85bd5b
v1.7 ( #4730 )
2017-03-07 17:29:27 +01:00
Robert Habermeier
b396b56e34
encode and decode responses
2017-03-07 17:18:26 +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
bbb50caa89
initial request definitions
2017-03-03 19:25:29 +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
69e82e15a3
request transaction proofs from on_demand
2017-02-25 20:10:38 +01:00
Robert Habermeier
2b671b8476
test for transaction proof message
2017-02-25 12:43:43 +01:00
Robert Habermeier
4158693470
network messages for transaction proof
2017-02-25 11:07:38 +01:00
Robert Habermeier
92e5982127
generate transaction proofs from provider
2017-02-25 00:27:48 +01:00
Robert Habermeier
ddbdfafc05
buffer flow -> request credits
2017-02-23 23:10:29 +01:00
Robert Habermeier
9316eb4ad3
(most of) parity RPC for light client
2017-02-17 21:38:43 +01:00
Robert Habermeier
3b023c82b7
fetch gas price corpus from network when needed
2017-02-17 17:08:46 +01:00
Robert Habermeier
48cf591e66
integrate cache in on-demand
2017-02-16 20:46:59 +01:00
Robert Habermeier
3b9741e9d8
Implement the basic data cache
2017-02-16 18:07:28 +01:00
Robert Habermeier
2b91c922c1
get signing network ID for light client
2017-02-16 16:08:58 +01:00
Robert Habermeier
e591b4481b
warning on detected inconsistency
2017-02-14 19:16:46 +01:00
Robert Habermeier
1d9db578ff
ready transactions order documentation
2017-02-14 12:14:02 +01:00
Robert Habermeier
63ad8cb086
store pending transactions only once
2017-02-14 12:12:26 +01:00
Robert Habermeier
e911fc2db9
address grumbles
2017-02-14 12:05:24 +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
a559dfe9a1
implement send_raw_transaction
2017-02-09 19:17:37 +01:00
Robert Habermeier
baf0dbc6bf
LightProvider struct using light transaction queue
2017-02-09 18:42:18 +01:00
Robert Habermeier
6a924770be
add several tests + minor bugfixes
2017-02-09 18:10:59 +01:00
Robert Habermeier
33266f78d1
initial transaction queue implementation
2017-02-09 17:36:12 +01:00
Robert Habermeier
869d193d21
Merge branch 'lightrpc' into light-txq
2017-02-08 20:51:11 +01:00
Robert Habermeier
028dbe5fe2
rename get_header to block_header by convention
2017-02-08 20:22:41 +01:00
Robert Habermeier
b3440babe3
light txq skeleton
2017-02-08 19:21:12 +01:00
Robert Habermeier
6c06a1a5ec
expunge error types from OnDemand
2017-02-07 17:06:22 +01:00
Robert Habermeier
04fe72face
reassign requests indefinitely
2017-02-07 16:49:14 +01:00
Robert Habermeier
b37124991c
enforce validity of on_demand requests
2017-02-07 16:13:56 +01:00
Robert Habermeier
9524ebbff1
on-demand contract code request
2017-02-07 15:29:38 +01:00
Robert Habermeier
66692bc0e2
fast paths for block and receipts on_demand
2017-02-06 18:28:13 +01:00
Robert Habermeier
3a7248b964
cht proof checker, use it in on_demand
2017-02-04 17:48:02 +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
1baa824d1e
use CHT abstraction in provider
2017-02-03 18:47:03 +01:00
Robert Habermeier
fc8e9e39ec
CHT builder and prover
2017-02-03 18:38:28 +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
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
Robert Habermeier
b739704902
ensure write lock isn't held when calling handlers ( #4285 )
2017-01-24 19:15:59 +00: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
3ff9324ec0
LES Peer Info ( #4195 )
...
* connected peers function for network service
* get LES peer info in sync API
* new peer info in RPC
2017-01-20 12:41:49 +01:00
Robert Habermeier
5830e03201
Merge pull request #4181 from ethcore/cht-full-nodes
...
CHT calculations for full nodes
2017-01-19 15:12:44 +01:00
Robert Habermeier
3040a1c83e
Merge pull request #4093 from ethcore/better-timeouts
...
LES: Better timeouts + Track failed requests
2017-01-18 15:04:48 +01:00
Robert Habermeier
536df809c6
tests + documentation
2017-01-16 17:42:39 +01:00
Robert Habermeier
b960152d5b
CHT calculations for full nodes
2017-01-16 17:10:30 +01:00
Robert Habermeier
31aae4ed78
move cht module up a level
2017-01-16 16:55:23 +01:00
Robert Habermeier
f0eab337d8
Merge pull request #4036 from ethcore/on-demand-les-request
...
On demand LES request
2017-01-13 14:36:48 +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
Robert Habermeier
7dde02b25d
Merge branch 'master' into on-demand-les-request
2017-01-12 11:23:47 +01:00
Robert Habermeier
78e670812c
fix test compilation
2017-01-11 18:57:38 +01:00
Robert Habermeier
e88c62d37d
Merge branch 'master' into better-timeouts
2017-01-11 18:55:16 +01:00
Robert Habermeier
7b3c648d3e
Merge branch 'master' into better-timeouts
2017-01-11 18:47:09 +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
5b8a7259c1
Merge branch 'master' into on-demand-les-request
2017-01-11 11:39:43 +01:00
Arkadiy Paronyan
148ea37687
v1.6 in master ( #4113 )
2017-01-10 15:41:59 +01:00
Robert Habermeier
d515ef9a2a
test for id_guard behavior
2017-01-09 12:20:44 +01:00
Robert Habermeier
54058e3712
ensure failed requests considered unfulfilled
2017-01-09 11:29:06 +01:00
Robert Habermeier
75b5acf21d
use common BasicAccount type
2017-01-05 13:26:14 +01:00
Robert Habermeier
f63faea308
test for request_set and remove idle flag
2017-01-04 18:43:11 +01:00
Robert Habermeier
04282be721
use request set to provide better timeouts
2017-01-04 18:00:12 +01:00
Robert Habermeier
6ad0a0baaa
fix test imports
2017-01-04 16:12:58 +01:00
Robert Habermeier
ed98c389ca
no_peers test
2017-01-04 14:54:50 +01:00
Robert Habermeier
38ac84f0c7
reassign requests on failure
2017-01-04 14:33:32 +01:00
Robert Habermeier
ca35b345ca
separate request dispatch from creation
2017-01-04 13:58:26 +01:00
Robert Habermeier
1d51b6f7e5
handle incoming LES requests
2017-01-04 13:34:50 +01:00
Robert Habermeier
4e94f43644
tests for request module
2017-01-04 12:48:07 +01:00
Robert Habermeier
01977e60aa
finish request module, basic dispatch
2017-01-03 19:13:40 +01:00
Robert Habermeier
4dbbc3bc88
beginnings of on_demand request module + verification
2017-01-03 16:18:57 +01:00
Robert Habermeier
ddf2b944b5
on demand request dispatch
2016-12-28 21:46:55 +01:00
Robert Habermeier
4daa645789
dispatch header requests
2016-12-28 16:20:46 +01:00
Robert Habermeier
5309ba45a8
update peer status from announcement
2016-12-28 16:20:35 +01:00
Robert Habermeier
e6324a83f1
Merge branch 'master' into lightsync
2016-12-28 15:53:11 +01:00
Robert Habermeier
c2ad769fb7
Merge branch 'master' into on-demand-les-request
2016-12-28 14:00:33 +01: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
428d5db9d1
beginning of on_demand
2016-12-27 16:43:28 +01:00
Robert Habermeier
9b4f90718f
Display impl for ReqId
2016-12-27 13:54:51 +01: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
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
d0194f3ad3
Merge branch 'master' into lightsync
2016-12-23 13:39:06 +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
Robert Habermeier
01b494ca2c
Merge branch 'master' into lightsync
2016-12-21 13:42:07 +01:00
Robert Habermeier
4c7dc9f2d8
require only simpler methods on Provider
2016-12-19 14:54:10 +01:00
Robert Habermeier
a48435ca60
Merge branch 'master' into lightsync
2016-12-19 13:15:37 +01:00
Robert Habermeier
ccdf5d5873
increase tick timer and limit peers to one req
2016-12-19 12:28:42 +01:00
Robert Habermeier
2c0f456e4d
guard import order
2016-12-16 23:53:20 +01:00
Robert Habermeier
a7505be627
fix deadlocks
2016-12-16 22:09:29 +01:00
arkpar
65f07e5aa7
Renamed some functions
2016-12-16 14:54:26 +01:00
Robert Habermeier
9c7340307e
handle events, minimal state machine
2016-12-15 21:51:08 +01:00
Robert Habermeier
72f7391551
add BasicContext trait for handler ticking
2016-12-15 19:25:52 +01:00
Robert Habermeier
5346539ef8
minimal header import and client service
2016-12-15 18:47:26 +01:00
arkpar
2952ea1b85
Delayed transactions
2016-12-15 18:19:19 +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
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
Tomasz Drwięga
83d9bc189b
Fixing test
2016-12-11 21:08:15 +01:00
Gav Wood
94f5501c61
authors & homepage => Parity
2016-12-11 19:43:58 +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
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
Robert Habermeier
6724f574d6
Light server improvements and protocol adjustments ( #3801 )
...
* light: basic transaction pool
* light: network timeouts
* fix dead code warnings
* les: update to new message format
* fix indentation
* les: hash or number in headers req, not both
2016-12-11 15:40:31 +01:00
Tomasz Drwięga
1e8638608c
fixing tests
2016-12-10 22:59:35 +01:00
Tomasz Drwięga
b5020d3c8d
Fixing Light context API
2016-12-10 21:25:28 +01:00
Tomasz Drwięga
aaf6da4c00
Returning persistent node id
2016-12-10 16:55:29 +01:00
Gav Wood
0977b82eeb
More fixes.
2016-12-10 13:54:17 +01:00
Gav Wood
7eb30b1249
Fix build.
2016-12-10 13:52:43 +01:00
Gav Wood
82efa2675e
Merge remote-tracking branch 'origin/master' into consistent-id
2016-12-10 13:36:30 +01:00
Gav Wood
5f1fcf95e0
Make *ID names consistent with std Rust (Id)
2016-12-09 23:01:43 +01:00
Robert Habermeier
415fccfffb
add ethcore-light cov target
2016-12-09 15:20:45 +01:00
Robert Habermeier
5f37c93659
les: use negotiated protocol version
2016-12-09 15:04:54 +01:00
Robert Habermeier
07d7a37319
les: make peer buffer flow params optional
2016-12-09 01:06:51 +01:00
Robert Habermeier
d53c47aa69
more tracing
2016-12-09 00:35:34 +01:00
Robert Habermeier
e7ce8c9558
light: broadcast status updates to peers
2016-12-08 23:57:09 +01:00
Robert Habermeier
6f5f1f5e26
light: integrate with sync + serve_light CLI
2016-12-08 23:21:47 +01:00
Robert Habermeier
efd66f566d
ethsync: optional ipc codegen
2016-12-08 19:52:48 +01:00
Robert Habermeier
2e87e31157
light: no default features
2016-12-08 16:46:58 +01:00
Robert Habermeier
64ebcd0f24
fix contract code response encoding; add test
2016-12-08 16:12:00 +01:00
Robert Habermeier
3e8ee9d423
light IPC feature and mock state proofs
2016-12-08 13:44:17 +01:00
Robert Habermeier
8d16f73795
first few LES tests, fix get_header logic bug
2016-12-08 12:20:18 +01:00
Robert Habermeier
2d1a3ff091
les: generalize network and event contexts with traits
2016-12-07 17:52:10 +01:00
Robert Habermeier
10d75b6de0
light: implement all response handlers
2016-12-07 15:27:04 +01:00
Robert Habermeier
cdc758368a
les: flesh out event handler
2016-12-07 13:52:45 +01:00
Robert Habermeier
5db93cd433
light: fix compile errors
2016-12-05 17:09:05 +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
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
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
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
Robert Habermeier
ca25deb4e6
implement announcement serialization
2016-11-08 19:00:37 +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