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
Robert Habermeier
6aa9005785
parity_getBlockHeaderByNumber and LightFetch
2017-04-03 11:37:07 +02:00
maciejhirsz
9bd3f10f41
Squashed: Public Node
2017-03-29 17:07:58 +02: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
Tomasz Drwięga
2dca24cc28
Traces error handling ( #4849 )
2017-03-14 13:04:32 +01:00
Marek Kotewicz
3fe3353696
removed redundant FixedHash trait, fixes #4029 ( #4866 )
2017-03-11 22:58:15 +04:00
Tomasz Drwięga
0ab0cb1173
Fix RPC errors. Implement geth-compatibility option to return correct pending nonce. ( #4837 )
2017-03-10 10:25:13 +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
31302e057f
provide uncle size where available ( #4713 )
2017-03-02 12:29:18 +01:00
Robert Habermeier
1bf2b27708
Propagate trie errors upwards from State ( #4655 )
...
* state backend trait mirroring state_db API
* minimal state backend trait
make state module public
* fix json tests
* return errors on database corruption
* fix tests, json tests
* fix remainder of build
* add Backend bound on state
2017-02-26 13:10:50 +01:00
Tomasz Drwięga
72998d3ce3
Proper default accounts RPCs ( #4580 )
...
* Default accounts setting - account provider
* RPC support for default accounts
* Updating JS code
* Rename whitelist to addresses
2017-02-20 16:33:12 +01:00
Robert Habermeier
54c48d14ec
Deprecate eth_compile* RPCs ( #4577 )
...
* Deprecate eth_compile* RPCs
* Add deprecation doc comments
2017-02-17 12:00:33 +01:00
Tomasz Drwięga
5369a129ae
Signer provenance ( #4477 )
...
* Signer - Tracking Request Provenance
* Basic UI
* Changing messages
* VecDeque::from
* Fix dapps tests
* Addressing UI grumbles
2017-02-14 22:45:43 +01:00
Robert Habermeier
0d09a473a7
remove let inner pattern with take_weakf and try_bf
2017-02-09 20:38:47 +01:00
Robert Habermeier
2ca61151ac
squash some warnings
2017-02-08 16:59:04 +01:00
Robert Habermeier
5223e25aa6
use generic dispatcher everywhere, squash errors
2017-02-08 16:55:06 +01:00
Robert Habermeier
b32cb7a97d
make total difficulty field optional
2017-02-06 15:28:16 +01:00
Robert Habermeier
7c9064c856
Merge branch 'master' into lightrpc
2017-02-04 22:30:20 +01:00
Tomasz Drwięga
248cd5e036
RPC middleware: Informant & Client.keep_alive ( #4384 )
...
* Adding RPC informant structs
* RPC informant
* Middleware counting RPC requests
* Moving client keep_alive to middleware
2017-02-04 22:18:19 +01:00
Robert Habermeier
024e69138a
get it compiling
2017-02-03 17:41:25 +01:00
Robert Habermeier
9328067eac
start eth RPC API for light client
2017-02-03 16:20:43 +01:00
Tomasz Drwięga
9fb2be8f2b
Optional from field in Transaction Requests ( #4332 )
...
* Infering default account when sending transactions if not provided
* Fixing test
* Fixing tests code
* Fixes.
* More fixes.
* Final fix.
2017-01-30 21:08:36 +01:00
Tomasz Drwięga
bf1e7ecfcb
Returning default account as coinbase + allow altering sender in signer ( #4323 )
...
* Returning first address as coinbase
* Allowing sender alteration in signer
* Adding default account RPC
2017-01-30 11:10:58 +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
keorn
c460aec646
Dont decode seal fields ( #4263 )
...
* dont decode seal
* add get_block test
2017-01-24 21:57:29 +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
Tomasz Drwięga
41da1a0a79
New jsonrpc-core with futures and metadata support ( #3859 )
...
* Bumping serde & serde_json
* Super-initial usage of new jsonrpc
* Single event loop for jsonrpc
* Metadata
* Supporting metadata extraction for eth_accounts
* Fixing Cargo.lock
* Removing uneccessary clones
* Fixing unused import
* Unused import
* Fixing test
2017-01-11 20:02:27 +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
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
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
Robert Habermeier
e1adc9606f
parity_chainStatus RPC for block gap info
2016-12-19 15:27:17 +01:00
arkpar
f8961484c1
Merge branch 'master' of github.com:ethcore/parity into tx-block
2016-12-15 19:10:33 +01:00
arkpar
2952ea1b85
Delayed transactions
2016-12-15 18:19:19 +01:00
Gav Wood
db73b0d66f
Merge remote-tracking branch 'origin/master' into dapps-accounts-rpc
2016-12-15 13:28:37 +01:00
Tomasz Drwięga
f47be50843
Using jsonrpc-macros
2016-12-13 14:40:35 +01:00
Gav Wood
58b72c521d
Rename ethcore -> parity in licenses.
2016-12-11 19:31:31 +01:00
Tomasz Drwięga
4696d7f606
Additional RPCs for dapps accounts management
2016-12-10 12:36:04 +01:00
Gav Wood
5f1fcf95e0
Make *ID names consistent with std Rust (Id)
2016-12-09 23:01:43 +01:00
Tomasz Drwięga
cd6f565f69
RPC Middleware & Get/Set dapp-specific accounts
2016-11-23 16:27:05 +01:00
Tomasz Drwięga
5897e01dbd
Correct format of eth_signTransaction
2016-11-18 11:03:29 +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
Tomasz Drwięga
b33b237f76
Refactoring Signer to auto_args + eth_signTransaction ( #3261 )
...
* Sign transaction initial
* Refactoring signer to auto_args
2016-11-09 13:13:35 +01:00
Tomasz Drwięga
501b2cdd18
Add error for sendRawTransaction and estimateGas ( #3194 )
...
* sendRawTransaction invalid RLP error
* Returning proper error for estimate_gas
2016-11-04 18:33:10 +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
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
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
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
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
keorn
271bcf4d5d
Return errors from eth_call RPC ( #2498 )
...
* propagate call errors
* add error code for execution error
2016-10-09 11:45:12 +02:00
Tomasz Drwięga
4655fd04a5
Using pending block only if not old ( #2514 )
2016-10-07 11:13:15 +01:00
Gav Wood
3fb3f1f54e
Reorder transaction_by_hash to favour canon search ( #2332 )
...
* Reorder transaction_by_hash to favour canon search
* Fix build.
* Slightly cleaner function.
* Fix test.
2016-09-27 12:17:02 +02:00
Robert Habermeier
ff0be9f361
Separate RPC serialization from implementation ( #2072 )
...
* add auto-args deserialization for RPC
* make block param member public
* change BlockParam to a more generic Trailing<T> mechanism
* define work type
* build_rpc_trait macro, implement eth protocol
* fix up tests
* move eth_filter API to new macro
2016-09-23 19:42:33 +02:00
Gav Wood
07b5e9a5c7
Encryption, decryption and public key RPCs. ( #1946 )
...
* 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.
* Remove unused use.
* Add encryption, decryption and public-key RPCs.
* Remove &
2016-09-22 14:48:22 +02:00
Tomasz Drwięga
8c111da70b
Limit for logs filter. ( #2180 )
...
* Limit for logs filter.
* Moving limit inside the filter object
* Fixing tests
2016-09-21 11:51:10 +01:00
Tomasz Drwięga
9ed9857fba
Logs limit & log_index bug ( #2073 )
...
* Limiting number of logs
* Test for logs
* Fixing logs ordering and indexing
* Fixing sort
* unwrap -> expect
* Revert "unwrap -> expect"
This reverts commit e99e6e77f37692fe568448e768aa72775de8d0cd.
2016-09-14 12:02:30 +02:00
Arkadiy Paronyan
5c5d9c8ccd
Snapshot sync ( #2047 )
...
* PV64 sync
* Tests
* Client DB restore
* Snapshot restoration over IPC
* Upating test
* Minor tweaks
* Upating test
2016-09-06 15:31:13 +02:00
Robert Habermeier
bb6243c550
merge with master
2016-09-01 15:07:06 +02:00
Robert Habermeier
d763664d16
port network, sync, rpc
2016-09-01 14:49:12 +02:00
Tomasz Drwięga
b4f3c4bd7a
Asynchronous RPC support ( #2017 )
...
* Async RPC
* Limiting number of transactions in queue
* Fixing tests
* Bumping serde and jsonrpc-core
* serde updated to 0.8
* fixed failing tests
* Bumping ipc server
* Fixing API for endpoints
* Experimenting with tests without --release mode
2016-09-01 12:00:00 +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
Nipunn Koorapati
2a550c2adf
Add timeout for eth_getWork call ( #1975 )
2016-08-23 17:07:00 +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
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
debris
974d537849
Merge branch 'master' of github.com:ethcore/parity into move_hash
2016-08-09 09:58:18 +02:00
Tomasz Drwięga
59b0f8c7a3
RPC errors & logs ( #1845 )
...
* Refactoring errors in RPC
* Updating jsonrpc-core
* Fixing code_at
* Avoid mentioning obvious segments in proof
[ci:skip]
2016-08-08 17:25:15 +02:00
debris
1ed2de1d9b
Merge branch 'master' of github.com:ethcore/parity into move_hash
2016-08-05 09:30:01 +02:00
Tomasz Drwięga
25aabe6e52
Supporting blockid in eth_call and trace_call/trace_raw ( #1837 )
...
* Supporting blockid in eth_call and trace_call/trace_raw
* Nicer state diff handling
* Purging deref.deref
2016-08-04 18:17:21 +02:00
debris
e8c451ac82
cleaning up hash reexports
2016-08-03 18:05:17 +02:00
Tomasz Drwięga
c5ffb5af79
No block number in get work while in geth-compat mode. ( #1821 )
2016-08-03 15:31:00 +02:00
Gav Wood
9de579366a
Miner tweaks ( #1797 )
...
* Mining fixes.
- Use queue to determine whether we're mining
- Kick stale hash rates
Fixes #1794
Fixes #1641
* Fix tests.
* Address grumbles.
2016-08-02 17:53:32 +01:00
debris
489722b83f
dynamic keys pickup
2016-07-31 10:46:28 +02:00
Gav Wood
b29329c3c5
Return storage as H256 from RPC. ( #1774 )
...
* Return storage as H256 from RPC.
* Fix test.
2016-07-30 14:42:52 -07:00
Gav Wood
861c8d0701
Size for blocks ( #1668 )
...
* Add size field for blocks.
* Ignore invalid test.
2016-07-19 20:40:18 +02:00
Gav Wood
3ba3dd3805
Asynchronous transactions (polling based for now). ( #1652 )
...
* Asynchronous transactions (polling based for now).
- Alter eth_sendTransaction to be async, returning one of:
- Transaction hash (signed and submitted).
- Transaction promise ID (< 32 bytes).
- Zero hash (will never be signed).
- Introduce new JSONRPC eth_checkTransaction.
The new API call takes a single argument - a promise ID. It returns
either:
- Transaction hash (signed and submitted).
- null (still pending, call again later),
- Zero hash (will never be signed).
* New RPC eth_postTransaction
- Restore previous semantics of sendTransaction.
- Introduce eth_postTransaction.
- Some refactoring.
* Fix minor lockup.
* Use TransientHashMap to prevent leak.
2016-07-19 09:19:58 +02:00
NikVolf
be25e930e5
Merge branch 'master' into sync-svc
2016-07-16 15:57:30 +02:00
NikVolf
4cb1c906b0
rpc dependencies relayout
2016-07-16 15:51:06 +02:00
Gav Wood
2b193f00d4
Allow RPC to use solc to compile solidity ( #1607 )
...
* Allow use to use solc to compile solidity.
* Remove unneeded commemt.
[si:skip]
* Address grumble and disable incorrect tests.
2016-07-14 14:25:44 +02:00
Robert Habermeier
36d3d0d7d7
replace synchronization primitives with those from parking_lot ( #1593 )
...
* parking_lot in cargo.toml
* replace all lock invocations with parking_lot ones
* use parking_lot synchronization primitives
2016-07-13 19:59:59 +02:00
Robert Habermeier
7200cfcbc9
expunge &Vec<T> pattern ( #1579 )
...
* expunge &Vec<T> pattern
* fix travis
2016-07-12 10:28:35 +02:00
Gav Wood
9f43526c88
Merge branch 'master' into kill_unwraps
2016-07-07 09:40:12 +02:00
Nikolay Volf
8282c7dd50
Client IPC Interface ( #1493 )
...
* btree map serializer
* serde tests
* state diff serialization
* basic layout
* more missing serializaers
* uncle returns rlp
* block queue info
* sorting with transaction result
* sorting out util imports
* transaction import result sorting also
* sorting filters & ranges
* error sorting out
* deriving ipc service compiling
* rpc & sync recompile
* sorting rpc using uncles
* fix compilation
* fix merging bugs
* fix unused imports
* fix all warnings
* tests stub
* some merge bugs
* ethcore compilation
* fix rpc compilation
* deriving attribute
* tests (and fixes)
* rpc test working
* fix warnings again
* rs.in -> rs
* missing attribute
* refactored tree changes
* paste reformat mess fix
* pub mod actually
* intendation fix
2016-07-07 09:39:32 +02:00
Gav Wood
456ad9e21b
Remove .lock().unwrap() idiom into locked().
2016-07-06 19:52:34 +02:00
Marek Kotewicz
bcb63bce12
serde is no longer util dependency ( #1534 )
...
* removed old json-tests
* simplify folds in triehash.rs
* removed unused json_aid
* removed unused squeeze.rs
* json branching tests for trie
* removing todos from util
* separated UsingQueue and Table
* further cleanup, removing unused code
* serde serialization of hash moved to rpc module
* uint wrapper for rpc in progress
* serialization of uint moved to rpc module
* updated eth-secp256k1
* updated igd, serde is no longer dependency of util
* loading trie consensus tests
* renamed aliases in rpc imports
2016-07-06 11:23:29 +02:00
Gav Wood
c26cfc1c5a
Silent running operating modes ( #1477 )
...
* Command=line options.
* Keep alive for the eth protocol.
* Wire up final pieces.
* No network when dark.
* Passive and dark mode work.
* Ensure all RPCs keep alive.
* Fix tests.
* Fix minor bug.
* Minor whitespace.
* Split out some of the sleep-state.
* Fix help text.
2016-07-05 17:50:46 +02:00
Nikolay Volf
8102fb9306
Client api cleaning - uncles are returned as rlp ( #1516 )
...
* uncle as rlp in the api
* uncle rlp in block view
* fix warning
2016-07-01 19:37:17 +01:00
Gav Wood
05927eba1f
Include number in eth_getWork.
2016-06-29 15:43:34 +02:00
Gav Wood
a3758161ac
Ensure we always get the latest work when mining on submitted. ( #1469 )
...
* Ensure we always get the latest work when mining on submitted.
* Build fix.
* Smaller timeslices for the wait.
2016-06-28 18:46:09 +02:00
Gav Wood
516b015325
Don't mine without --author ( #1436 )
...
Requires --author to be set before mining is allowed to happen.
2016-06-26 22:02:17 +02:00
Robert Habermeier
f947a9cb71
Optional gas price in transactions come from statistics ( #1388 )
...
* use gas price statistics for default transaction gas price
* create new signing queue client properly
* replace one more usage of sensible_gas_price
* fill_optional_fields as a free function
* keep test client alive
2016-06-22 15:55:07 +02:00
Marek Kotewicz
6b074e8fb2
secret store separated from util ( #1304 )
...
* bump rust-crypto
* initial version of account provider utilizing secret store
* update lazy_static to latest version
* AccountProvider accounts method
* new AccountProvider tests in progress
* basic tests for new AccountProvider
* ethcore compiles with new account provider and secret store
* ethcore-rpc build now compiling with new AccountProvider
* most rpc tests passing with new accounts_provider
* fixed basic_authority tests
* fixed eth_transaction_count rpc test
* fixed mocked/eth.rs tests
* fixed personal tests
* fixed personal signer rpc tests
* removed warnings
* parity compiling fine with new sstore
* fixed import direction
* do not unlock temporarily when we have the password
* removed TODO in account import
* display warning on auto account import failure
* fixed compiling of ethstore on windows
* ethstore as a part of parity repo
* added ethkey
2016-06-20 00:10:34 +02:00
Gav Wood
08522eec37
--geth prevent getTransactionReceipt from using pending. ( #1325 )
...
This mimics the fucntionality of Geth and the current unratified
JSONRPC spec (but not the functionality of eth and the ratified
spec).
2016-06-19 14:51:51 +02:00
Marek Kotewicz
75a7cf2860
fixed #1180 ( #1282 )
2016-06-18 12:09:29 +02:00
Tomasz Drwięga
1baa150086
Consolidating all RPC error codes
2016-06-18 10:54:15 +02:00
Tomasz Drwięga
defe688797
Fixing returned value
2016-06-18 10:54:15 +02:00
Gav Wood
335bce85e8
Gas price statistics. ( #1291 )
...
* Gas price statistics.
Affects eth_gasPrice.
Added ethcore_gasPriceStatistics.
Closes #1265
* Fix a bug in eth_gasPrice
* Fix tests.
* Revert minor alteration.
* Tests for gas_price_statistics.
- Tests;
- Additional infrastructure for generating test blocks with
transactions.
2016-06-18 10:52:50 +02:00
debris
dac387fac1
changed rpc error message to Still Syncing, when mining is not ready
2016-06-15 01:12:46 +02:00
debris
7610d308e8
fixed #1255
2016-06-14 15:17:17 +02:00
Marek Kotewicz
c8c47ebe32
Merge pull request #1206 from ethcore/diffing
...
Integrate state diffing into the ethcore JSONRPC
2016-06-05 21:35:36 +02:00