* Move snapshot to own crate
Sort out imports
* WIP cargo toml
* Make snapshotting generic over the client
Sort out tests
* Sort out types from blockchain and client
* Sort out sync
* Sort out imports and generics
* Sort out main binary
* Fix sync test-helpers
* Sort out import for secret-store
* Sort out more imports
* Fix easy todos
* cleanup
* Cleanup
* remove unneded workspace member
* cleanup
* Sort out test-helpers dependency on account-db
* Update ethcore/client-traits/src/lib.rs
Co-Authored-By: Niklas Adolfsson <niklasadolfsson1@gmail.com>
* Update ethcore/snapshot/Cargo.toml
* Temp storage for the private state added
* Temp storage for the private state added
* Request message added
* Store and retrieve offchain state logic
* State sync cache
* Private state column added to key value db
* Private state column added to key value db
* Indexing stored states via its hash
* Works with errors changed
* Private state stored into the local db
* Access to private state db added to sync io
* Private state db file added
* Rlp packets for retrieiving private state data added
* Handling of private sync completed message
* Test code fixed
* External flag for offchain storing added
* Test for private state sync added
* Saving private state logic corrected
* Migration code corrected
* Fixes after merge with master
* Merge with head
* Additional checks for slices
* Log for private state retrieval added
* Limit time of retrieving private states
* Store required hashes for every request, mark them stale if needed
* Store requested private state hashes and check received data
* Log stale requests
* State insertion fix
* Refactoring of how logging passed to state store
* Heapsize removed, syncing hashes structure reworked
* Check state length returned by contract
* Get rid of OverlayDB
* hash-db version updated
* Test fixed
* One more test fixed
* Add client-traits crate
Move the BlockInfo trait to new crate
* New crate `machine`
Contains code extracted from ethcore that defines `Machine`, `Externalities` and other execution related code.
* Use new machine and client-traits crates in ethcore
* Use new crates machine and client-traits instead of ethcore where appropriate
* Fix tests
* Don't re-export so many types from ethcore::client
* Fixing more fallout from removing re-export
* fix test
* More fallout from not re-exporting types
* Add some docs
* cleanup
* import the macro edition style
* Tweak docs
* Add missing import
* remove unused ethabi_derive imports
* Use latest ethabi-contract
* Move many traits from ethcore/client/traits to client-traits crate
Initial version of extracted Engine trait
* Move snapshot related traits to the engine crate (eew)
* Move a few snapshot related types to common_types
Cleanup Executed as exported from machine crate
* fix warning
* Gradually introduce new engine crate: snapshot
* ethcore typechecks with new engine crate
* Sort out types outside ethcore
* Add an EpochVerifier to ethash and use that in Engine.epoch_verifier()
Cleanup
* Document pub members
* Sort out tests
Sort out default impls for EpochVerifier
* Add test-helpers feature and move EngineSigner impl to the right place
* Sort out tests
* Sort out tests and refactor verification types
* Fix missing traits
* More missing traits
Fix Histogram
* Fix tests and cleanup
* cleanup
* Put back needed logger import
* Don't rexport common_types from ethcore/src/client
Don't export ethcore::client::*
* Remove files no longer used
Use types from the engine crate
Explicit exports from engine::engine
* Get rid of itertools
* Move a few more traits from ethcore to client-traits: BlockChainReset, ScheduleInfo, StateClient
* Move ProvingBlockChainClient to client-traits
* Don't re-export ForkChoice and Transition from ethcore
* Address grumbles: sort imports, remove commented out code
* Fix merge resolution error
* merge failure
* whisper is no longer a part of parity-ethereum repo
* fix failing tests
* update whisper help with the link to the new repo
* Removed AttachedProtocols
* updated whisper info in README.md files
* Update parity/deprecated.rs
Co-Authored-By: Andronik Ordian <write@reusable.software>
* Add private tx enabled flag into status packet
* Error log added for the case with no peers available
* Add flag only for supported protocol versions
* Work with private handler refactored
* Log target changed
* Cargo.lock updated
* Update `add_license` script
* run script
* add `remove duplicate lines script` and run it
* Revert changes `English spaces`
* strip whitespaces
* Revert `GPL` in files with `apache/mit license`
* don't append `gpl license` in files with other lic
* Don't append `gpl header` in files with other lic.
* re-ran script
* include c and cpp files too
* remove duplicate header
* rebase nit
* Private transaction message added
* Empty line removed
* Private transactions logic removed from client into the separate module
* Fixed compilation after merge with head
* Signed private transaction message added as well
* Comments after the review fixed
* Private tx execution
* Test update
* Renamed some methods
* Fixed some tests
* Reverted submodules
* Fixed build
* Private transaction message added
* Empty line removed
* Private transactions logic removed from client into the separate module
* Fixed compilation after merge with head
* Signed private transaction message added as well
* Comments after the review fixed
* Encrypted private transaction message and signed reply added
* Private tx execution
* Test update
* Main scenario completed
* Merged with the latest head
* Private transactions API
* Comments after review fixed
* Parameters for private transactions added to parity arguments
* New files added
* New API methods added
* Do not process packets from unconfirmed peers
* Merge with ptm_ss branch
* Encryption and permissioning with key server added
* Fixed compilation after merge
* Version of Parity protocol incremented in order to support private transactions
* Doc strings for constants added
* Proper format for doc string added
* fixed some encryptor.rs grumbles
* Private transactions functionality moved to the separate crate
* Refactoring in order to remove late initialisation
* Tests fixed after moving to the separate crate
* Fetch method removed
* Sync test helpers refactored
* Interaction with encryptor refactored
* Contract address retrieving via substate removed
* Sensible gas limit for private transactions implemented
* New private contract with nonces added
* Parsing of the response from key server fixed
* Build fixed after the merge, native contracts removed
* Crate renamed
* Tests moved to the separate directory
* Handling of errors reworked in order to use error chain
* Encodable macro added, new constructor replaced with default
* Native ethabi usage removed
* Couple conversions optimized
* Interactions with client reworked
* Errors omitting removed
* Fix after merge
* Fix after the merge
* private transactions improvements in progress
* private_transactions -> ethcore/private-tx
* making private transactions more idiomatic
* private-tx encryptor uses shared FetchClient and is more idiomatic
* removed redundant tests, moved integration tests to tests/ dir
* fixed failing service test
* reenable add_notify on private tx provider
* removed private_tx tests from sync module
* removed commented out code
* Use plain password instead of unlocking account manager
* remove dead code
* Link to the contract changed
* Transaction signature chain replay protection module created
* Redundant type conversion removed
* Contract address returned by private provider
* Test fixed
* Addressing grumbles in PrivateTransactions (#8249)
* Tiny fixes part 1.
* A bunch of additional comments and todos.
* Fix ethsync tests.
* resolved merge conflicts
* final private tx pr (#8318)
* added cli option that enables private transactions
* fixed failing test
* fixed failing test
* fixed failing test
* fixed failing test
* whisper skeleton
* basic message store
* rallying and message logic
* pass host info to network protocol handlers
* choose who starts rally based on node key
* module reshuffling
* mining messages
* prune messages by low PoW until below size target
* associated error type for ethkey generators and `OsRng` generator
* beginnings of RPC
* generic message handler for whisper
* reshuffle code order
* standard payload encoding and decoding
* basic crypto
* minor restructuring of net code
* implement shh_post
* merge?
* implement filters
* rand trait for hash types
* filter RPCs for whisper
* symmetric encryption of payload
* pub-sub
* filter tests
* use only secure random IDs
* attach arbitrary protocols to network
* basic integration of whisper into Parity
* eagerly prune low PoW entries
* broadcast messages with salted topics
* node info RPC
* fix import
* fix leading zeros calculation
* address minor grumbles
* flush work
* flush work
* flush work
* flush work
* generalized notifiers
* general setup with modules
* general setup with modules
* all binded
* catch up with master
* all dependencies injected
* stratum another up
* tcp update
* submitwork routine
* finalize & fix warnings
* merge bugs, review fixes
* merge bugs, review fixes
* new cli mess cleanup
* usage.txt swap
* flush work
* cli adopt
* compilation with new cli sorted
* subid space in json
* serialization issues
* grumbles addressed
* more grumbles
* remove last_work note for now
* fix compilation
* fix tests
* merge bugs
* no obliged ipc
* moving notifiers
* no optional feature now
* refactored again
* working on tests
* refactor to new tcp/ip
* stratum lib ok
* ethcore crate ok
* wip on tests
* final test working
* fix warnings, \n-terminated response
* new compatibility
* re-pushing work once anybody submitted
* various review and general fixes
* reviewe fixes
* remove redundant notifier
* one symbol -> huge bug
* ensure write lock isn't held when calling handlers
* extern declarations moved
* options to stratum mod, SocketAddr strongly-typed instantiation
* Minor style fix.
* Whitespace and phrasing
* Whitespace
* cli commands
* cleanup parity/signer
* cleanup parity/signer
* remove redundant import of signer crate from main.rs
* cli cleanup in progress
* cli cleanup in progress
* moved few commonly used functions to separate methods with tests
* cleaning up blockchain import in progress
* cleaning up blockchain import in progress2
* cleaning up blockchain import in progress3
* tests for database compaction profile parsing
* cleaning up blockchain import in progress4
* cleaning up blockchain import in progress5
* blockchain import
* export blockchain in progress
* cleanup execute_export
* Configuration::to_duration cleaned up
* removed unused code, tests for to_duration
* cleanup Configuration::mode function
* parsing some of the cli params in params.rs
* rpc and signer are no longer optional
* move importing extern crates to main.rs file
* swipe dies from rpc module
* swipe dies from dapps
* finding deprecated
* several tests and fixes for parity
* parity cleanup in progress
* cleanup price parsing
* parity cleanup in progress
* swiped all dies
* parity cleanup in progress
* replace usages of from_str with parse() in parity/params.rs
* removed few more from_str
* split parity/params.rs into params and helpers
* removed wildcard import from configuration.rs
* cleanup directories/path creation
* cleaning up run cmd
* moved LoggerConfig
* defaults for cli params
* fixed indention in raise_fd_limit
* tests for rpc_apis
* tests for default ipc and rpc settings
* ipc socket
* cleanup in progress
* account service
* cleanup miner config
* BlockChain commands use Directiores structure now
* client_config
* network settings and dapps configuration
* removing warnings
* default logger config
* fixed client_path
* overhaul
* fixing export && import
* default export DataFormat
* import and export also upgrade db
* fixed export && import
* polishing pr
* polishing pr
* fixed custom bootnodes
* fixed daemonize on windows
* fixed setting up enable network
* finished pr
* fixed compiling on windows
* Fixed warning; windows build
* Better cache management
* Fixed tests on windows
* Fixed test
* Restored pruning method names
* --cache alias
* Fixed more tests
* Ensure default options actually listed as valid
[ci:skip]
* moving ipc deriving to trait
* refactoring of the client
* all compiled
* proved all working
* warnings purged
* allow hypervisor to specify initialization payload in two ways
* using binary initialisation payload for sync
* some docs
* logger to separate crate
* log settings for sync bin
* forwarding logging arguments to the sync