* switch to simple codec, trie broken for now
* Actualy use trie_root_noext
* align some hash, failing test on EMCH comment
* Fix trie code over layout instead of hash, revert legacy code for legacy
mainnet ??
* stub behind LayOut
* fix no_std
* temp solution for legacy trie behind feature legacy-key in various crate
* use remote project
* rc client db need prefix
* update trie deps
* bum spec runtime version
* Removing legacy as default.
* Switch mode to non legacy.
* bump runtime version
* Remove legacy trie compatibility features.
* fix warning
* bump version
* change hash on new test.
* Move dependency (#11 trie PR) patched to a parity repo.
Bench reverted to correct hasher.
Some renaming and doc improvments.
* ChildBitmap renaming to BitMap.
* Renaming of LayOut to Layout.
* formatting.
* Removing abreviation such as _ix nb_ or bm.
* Update deps and apply renaming 'Buff' -> 'Buffer'.
* Align to latest trie crates naming changes.
* Update trie dependency.
* Update trie dependency.
* change block_import test hash
* update trie deps (trie use new scale codec but it does not seems to be
an issue).
* update to use latest trie version (no mgmt of multiple radix).
* tabify
* Restoring test to 10 000.
* Use published crate, trie bench is currently down until publishing
(require another pr to update version).
* Update trie-bench.
* State pinning in client
* Canonicalization queue
* Fixed prioritization queue
* possible fix of "hash mismatch"
* Check for pinned discarded states
* Release state before finalization
* Style
* Style
* proof on child trie
* higher level api for child storage proof
* boilerplate for proof from light fetch
* actually check proof on light fetch
* Do not break former encoding
* tabify
* tabify2
* Add child trie root tx to full_storage_root transaction.
* Shorten long lines.
* Temp rename for audit
* Make full_storage a trait method
* Name back and replace some code with full_storage where it looks fine.
* fix indentations, remove unused import
* flush child root to top when calculated
* impl +1
* Temporarily pin trie to #2
* Use generic and delay trait object casting
Rust does not support super-trait upcasting
* Add PlainDB impl for Ephemeral
* Add PlainDB trait alias for completeness
* Use PlainDB for test TrieBackendStorage fetch
We always check overlay first for a storage fetch, which already checked null data. Using PlainDB here makes it work
nicer with other PlainDB overlays.
* Update trie reference
* Use HashDBRef in places when approriate
* Use PlainDBRef in places when approriate
* Update trie crate reference
* Remove unused HashDB::keys
* Patch dependencies
* Fix cargolock
* Update cargo lock again
Went through the TODOs, removed a bunch, which are outdated or nothing more than a regular comment, documented a bunch more as actual tickets and made them FIXMEs and unified their structure (`FIXME #TICKETNO DESC` for local tickets, `FIXME: DESC LINK` for external tickets) for easier in-editor support. Further more remove unnecessary remarks and related old code that I noticed in that instance.
* build CHT for changes tries roots
* collect chnages tries roots proof in key_changes_proof
* flush check_changes_proof
* fixed compilation
* LightDataChecker now has a ref to the blockchain
* continue passing proofs
* new light db tests
* more CHT tests
* more tests for key changes proof when headers are missing
* lost files
* [core/primitives] Update crunchy 0.1 => 0.2
* [core/primitives] Update fixed-hash 0.2 => 0.3.0-beta
* [core/primitives] Update `uint` 0.4 => 0.5.0-beta
* [core/state-machine] Fix errors emerged by fixed-hash update
* [core/state-db] Fix errors that emerged from fixed-hash update
* [core/sr-io] Fix errors that emerged from the fixed-hash update
* [core/trie] Fix errors emerged from fixed-hash updates
* [core/trie] Make use of new Hash::as_fixed_bytes_mut method in tests
* [core/sr-primitives] Fix errors emerged from updating fixed-hash
* [core/executor] Fix errors that emerged from fixed-hash update
* [core/test-runtime] Fix errors that emerged from updating fixed-hash
* [core/test-runtime] Fix an error that emerged from fixed-hash update
* [core/transaction-pool] Fix errors that emerged from updating fixed-hash
* Add From<u64> impl for hash types defined in core/primitives
* [core/client/db] Fix errors that emerged from fixed-hash update
* [core/{client/network/rpc}]: Fix errors emerged by fixed-hash update
* [node/{cli/executor/runtime}]: Fix errors emerged by updating fixed-hash
* [core/network]: Fix bug in parsing constant str
* Update Cargo.lock
- Add crunchy 0.2.1
- fixed-hash 0.2.2 => 0.3.0-beta.3
- Add static-assertions 0.2.5
- uint 0.4.1 => 0.5.0-beta.1
* [core/primitives]: Add fixed-hash/rustc-hex feature for FromStr impl
* [core/primitives] No longer provide From<u64> impl for hash types if byteorder support is not enabled
* [core/primitives] Revert to using From impl again in primitives tests
* [core/..] Fix some bugs that emerged by recent fixed-hash updates
* Update a bunch of Cargo.lock files
* [core/state-db] Re-add whitespace between attr and extern crate/mod
* [core/primitives] Fix bug in From<u64> impl for hash types using the wrong feature guard
* Implement a non generic version of child delta trie
* Use delta_trie_root in state_machine
* Expand InMemory backend to support multi-storage
* Create Consolidate trait
* Fix all crate compile and remove unused OverlayedChanges::drain
* Implement child storage root support and overlay changes
* Add child storage reader
* Add child storage writer
* Implement child storage cleaning
* Fix light backend compile
* Add all required ext functions for wasm executor
* Add ext def to io
* Add all io functions
* Fix nostd compile
* Add simple test
* Remove unnecessary vec copy in child_storage_root_transaction
* Use values_mut/for_each to make it shorter
* Use extend to shorter a for loop
* Move record_all_keys to trie so it's easier to generic them later
* space -> tab
* Remove to_owned in debug format
* Clean out all to_owned
* Break debug_trace to multiple lines
* Remove 0..
* UserError copy/paste typo
* Replace Vec::from_raw_parts by slice::from_raw_parts
* Use iter::empty()
* Wrap some long lines
* Wrap a missing line
* Remove unnecessary map
https://github.com/paritytech/substrate/pull/856#discussion_r226222663
* Call ext_free after from_raw_parts
* Fix tests in other crates
* Remove unneeded script
* Rename Substrate Demo -> Substrate
* Rename demo -> node
* Build wasm from last rename.
* Merge ed25519 into substrate-primitives
* Minor tweak
* Rename substrate -> core
* Move substrate-runtime-support to core/runtime/support
* Rename/move substrate-runtime-version
* Move codec up a level
* Rename substrate-codec -> parity-codec
* Move environmental up a level
* Move pwasm-* up to top, ready for removal
* Remove requirement of s-r-support from s-r-primitives
* Move core/runtime/primitives into core/runtime-primitives
* Remove s-r-support dep from s-r-version
* Remove dep of s-r-support from bft
* Remove dep of s-r-support from node/consensus
* Sever all other core deps from s-r-support
* Forgot the no_std directive
* Rename non-SRML modules to sr-* to avoid match clashes
* Move runtime/* to srml/*
* Rename substrate-runtime-* -> srml-*
* Move srml to top-level