Refactor/substrate state machine generic (#553)
* Genric over hasher * WIP start adding NodeCodec * Add codec to TrieBackend * Typechecks * Fix error type * Cleanup * Tests build (and fail) * Fix tests: don't use MemoryDB::default() * Lockfile * Address grumbles * Teach environmental! about generics * Add Finder artifacts * whitespace * Add a toy impl of Hasher and plug it in to Externalities * Use `uint` and `fixed-hash` from `parity-common` Remove unused U512 Add test to ensure H256 impls heapsizeof * lock file updates * Make hashes Encodable/Decodable * lock file updates * Impl FromIterator for TestExternalities so we can collect() and use map! * Use rustc-hex from crates Use rlp from master so dependencies do not mess up the scope * Fix tests in runtime-io * lockfile shenanigans * Add a BlakeHasher impl * Use BlakeHasher in runtime-io * lockfile updates * ws * Add a Blake2/RLP-flavoured NodeCodec * Use Blake-flavoured Hasher and NodeCodec * lockfile * Implement PartialEq and Default for TestExternalities * Add note about limitations of environmental! * Make it compile, but this is probably broken * Derive Debug so tests in executor can work * Make executor use BlakeHasher * ws * WIP make client generic * typechecks * cleanup * client tests pass * Fix client/db * cleanup * Fix network * Fix rpc * Fix service * Make TestExternalities work better au lieu d'un HashMap * Fix tests in council * Fix tests in contract * Fix tests in council * Fix democracy * Add comment about odd-looking reexports in tests * Don't need to load branch * Fix staking * Fix session * Some polkadot fixes and lockfile * Fix executive * fixup lockfile * Fix polkadot/api * Fix polkadot/service * Fix polkadot/runtime tests * Fix tests in test-runtime * Test fixes * Fix missing component in the `std` feature * Use PhantomData and Result from core * Fix paths Use core * load heapsize on wasm * implement `HeapSizeOf` for wasm * Add toy impl of `blake2_256` for no_std * lockfile * Use kvdb* from parity-common and fix errors * rebuilt lockfile * Add dummy impl of `on_advance_round` for rhododendron::Context * Fix build after merge * Add HeapSizeOf bound where needed * Sort out dependencies for no_std * Add HeapSizeOf bound where needed * use temp branch pending PR merges * Remove unneeded tests * Lock file and wasm artifacts * lockfile * Use magic commit for libp2p * Cleanup * Implement blake2_256 for no_std * Back on parity-common master * missing type params * Update Cargo.lock * whitespace * Rename concrete Rlp node codec "RlpCodec" and use everywhere Implement a Keccak-flavoured Rlp NodeCodec and use everywhere Add a KeccakHasher * Switch to use KeccakHasher * Lock file and runtimes * fixup lockfile * Fix outstanding issue using concrete types (thanks @gnunicorn) * Cleanup * More cleanup * Comment out Blake2 Hasher * implement ext_keccak256 * Address todo: FetchChecker is generic * all tests passing
Showing
- substrate/.gitignore 1 addition, 1 deletionsubstrate/.gitignore
- substrate/Cargo.lock 214 additions, 206 deletionssubstrate/Cargo.lock
- substrate/demo/executor/src/lib.rs 19 additions, 10 deletionssubstrate/demo/executor/src/lib.rs
- substrate/polkadot/api/src/full.rs 6 additions, 5 deletionssubstrate/polkadot/api/src/full.rs
- substrate/polkadot/api/src/light.rs 4 additions, 3 deletionssubstrate/polkadot/api/src/light.rs
- substrate/polkadot/availability-store/Cargo.toml 3 additions, 3 deletionssubstrate/polkadot/availability-store/Cargo.toml
- substrate/polkadot/availability-store/src/lib.rs 3 additions, 18 deletionssubstrate/polkadot/availability-store/src/lib.rs
- substrate/polkadot/executor/Cargo.toml 1 addition, 0 deletionssubstrate/polkadot/executor/Cargo.toml
- substrate/polkadot/executor/src/lib.rs 1 addition, 0 deletionssubstrate/polkadot/executor/src/lib.rs
- substrate/polkadot/runtime/src/parachains.rs 10 additions, 8 deletionssubstrate/polkadot/runtime/src/parachains.rs
- substrate/polkadot/runtime/wasm/Cargo.lock 61 additions, 226 deletionssubstrate/polkadot/runtime/wasm/Cargo.lock
- substrate/polkadot/runtime/wasm/target/wasm32-unknown-unknown/release/polkadot_runtime.compact.wasm 0 additions, 0 deletions...m32-unknown-unknown/release/polkadot_runtime.compact.wasm
- substrate/polkadot/runtime/wasm/target/wasm32-unknown-unknown/release/polkadot_runtime.wasm 0 additions, 0 deletions...rget/wasm32-unknown-unknown/release/polkadot_runtime.wasm
- substrate/polkadot/service/src/lib.rs 9 additions, 8 deletionssubstrate/polkadot/service/src/lib.rs
- substrate/polkadot/transaction-pool/src/lib.rs 4 additions, 6 deletionssubstrate/polkadot/transaction-pool/src/lib.rs
- substrate/substrate/client/Cargo.toml 4 additions, 0 deletionssubstrate/substrate/client/Cargo.toml
- substrate/substrate/client/db/Cargo.toml 5 additions, 7 deletionssubstrate/substrate/client/db/Cargo.toml
- substrate/substrate/client/db/src/lib.rs 23 additions, 18 deletionssubstrate/substrate/client/db/src/lib.rs
- substrate/substrate/client/db/src/utils.rs 4 additions, 8 deletionssubstrate/substrate/client/db/src/utils.rs
- substrate/substrate/client/src/backend.rs 30 additions, 8 deletionssubstrate/substrate/client/src/backend.rs
Please register or sign in to comment