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.
* header back-references for on demand
* initial back-reference implementation for on demand requests
* answer requests from cache
* answer requests from cache, add tests
* strongly typed responses for vectors of homogeneous requests
* fix fallout in RPC without optimizing
* Adding CLI option for port shift and unsafe expose.
* Fixing IPC path.
* Fix hosts when attempting to expose on all interfaces.
* Fixing test.
* Fix typo.
* ECDKG protocol prototype
* added test for enc/dec math
* get rid of decryption_session
* added licenses
* fix after merge
* get rid of unused serde dependency
* doc
* decryption session [without commutative enc]
* failed_dec_session
* fixed tests
* added commen
* added more decryption session tests
* helper to localize an issue
* more computations to localize error
* decryption_session::SessionParams
* added tests for EC math to localize problem
* secretstore network transport
* encryption_session_works_over_network
* network errors processing
* connecting to KeyServer
* licenses
* get rid of debug println-s
* fixed secretstore args
* encryption results are stored in KS database
* decryption protocol works over network
* enc/dec Session traits
* fixing warnings
* fix after merge
* on-chain ACL checker proto
* fixed compilation
* fixed compilation
* finally fixed <odd>-of-N-scheme
* temporary commented test
* 1-of-N works in math
* scheme 1-of-N works
* updated AclStorage with real contract ABI
* remove unnecessary unsafety
* fixed grumbles
* wakeup on access denied
* encrypt secretstore messages
* 'shadow' decryption
* fix grumbles
* lost files
* secretstore cli-options
* decryption seccion when ACL check failed on master
* disallow regenerating key for existing document
* removed obsolete TODO
* fix after merge
* switched to tokio_io
* fix after merge
* fix after merge
* fix after merge
* fix after merge
* fix after merge
* fixed test
* fix after merge
* encryption session errors are now fatal
* session timeouts
* autorestart decryption session
* remove sessions on completion
* exclude disconnected nodes from decryption session
* test for enc/dec session over network with 1 node
* remove debug printlns
* fixed 1-of-1 scheme
* drop for KeyServerHttpListener
* Use standard encryption and decryption (as in RPC)
* added some tests
* moved DEFAULT_MAC to ethcrypto
* rpc_secretstore_encrypt_and_decrypt
* serialization with "0x" prefix (RPC compatibility)
* secretstore RPC API
* fix after merge
* fixed typo
* secretstore_shadowDecrypt RPC
* enable secretstore RPCs by default
* fixed test
* SecStore RPCs available without SecStore feature
* fixed grumbles
* lost files
* added password argument to Parity RPCs
* update docs
* lost file
* 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
* 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
* First little bits for chain-selection.
* Provide RPCs and get settings through to user defaults.
* Hasty stash.
* Fix updater accidentally redownloading.
* Finish up.
* Add JS tests.
* Hypervisor should never run a binary modified before itself.
* Style.
* Help tweak.
* Fix test compile.
* Fix JS test
* Build fix for tests.
* Revert default chain name
* Another test
* Use spec name via client.
* Fix mock up.
* whitespace
[ci:skip]
* whitespace
[ci:skip]
* remove exit/restart endpoints.
* 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
* Fix whitespace.
* Fix post sign.
* Fix message.
* Fix tests.
* Rest of the problems.
* All hail the linter and its omniscience.
* ...and its divine omniscience.
* Grumbles and wording.
* 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
* Dapps web
Conflicts:
dapps/src/apps/fetcher.rs
dapps/src/handlers/fetch.rs
* Rewriting fetch
* Parity-wide fetch service
* Obey the limits and support cancellation.
* Removing temporary files.
* Actually use Fetch for dapps
* Re-implementing file fetching to avoid temporary files.
* Serde to 0.8.19
* Fixing content & dapps fetch
* Serving web content and injecting scripts
* Don't wait for old content, start a new download
* Supporting timeouts and query
* Simple GUI for the browser
* Proxy tokens validation
* Recovering from invalid web-based requests
* Remember last visisted URL
* Removing unused variables
* Addressing review comments
* Setting default account in web3
* Adding WebBrowser dapp to the list
* Actually prune old entries when generating new token
* 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
* 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,
* 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
* 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
* port ethcore module to new rpc macro
* port ethcore_set to auto_args
* port net RPC to auto_args
* port rpc meta api to new
* skeleton for async RPC auto_args
* macro implementations for strongly-typed async RPC wrapper
* clarify docs
* reflect new required Rust version in README
[ci skip]
* 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
* 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
* Making ConfirmationsQueue a bit more generic [WiP]
* Generalizing cofirmations
* New confirmations types - tests
* Separating transaction type in queue. Closes#1310
* Handling sign requests
* Speeding up tests
* Renaming methods
* eth_postSign
* Bumping ui
* 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.
* 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
* Splitting methods requiring signing into separate trait
* Single place where RPC apis are created.
* Separating eth_filter
* Separating eth_signing
* Stubs for Personal Signer methods
* Test for EthSigningQueueClient
* TransactionConfirmation API
* Exposing PersonalSigner API
* Defining ApiSets dependent on context
* Removing types
* Supporting sending notification to WS connected SystemUIs
* Sending a notification on every new messages
* Adding logs to signing queue
* Shutting down broadcaster
* Refactoring the signing queue
* Fixing wait loop in case of spurious wake-ups.