* Refactor decl_storage a bit to allow easier impl of linked map.
* A bunch of refactorings for storage generation.
- Rename StorageMap and ChildrenStorageMap to avoid confusion with generator::StorageMap.
- Separate implementation from the procedural macro code to clean it up.
- Make sure that genesis is initialised using the `StorageValue/StorageMap`
generated implementations instead of going RAW.
* WiP: Writing test.
* Basic implementation.
* Implement enumeration.
* Fix non-std issues.
* fix warning
* Fix test-client.
* Address review grumbles - part 1
* Avoid cloning the key, relax Storage requirements.
* Rebuild runtime.
* Remove dangling todo.
* Refactor head setting operation to a separate function
* Fix commit issue and implement set_head standalone in db
* Add standalone set head operations
* Address grumbles
* Change number_and_hash_to_lookup key in light mod to take reference
* Fix bug in set head commit
* Add a convenience fn
* Fix a deadlock
* Fix missing argument
* fix: adds new execution strategy nativeElseWasm and replace nativeWhenPossible with it
* feat: adds cmd line params for execution strategies
* fix: uses of cmd line execution strategies
* chore: remove white spaces
* chore: remove println
* chore: remove whitespace
* fix: generating functions with context
* feat: add function to generate with_context declarations
* fix: add implementation for with_context function calls
* fix: add execution context to call_api_at function
* fix: making use of context to select strategy for block_builder
* chore: cleaning up
* fix: merging issues
* fix tests
* add wasm files
* chore: small doc for context fields
* chore: delete redundant docs
* fix: use full path for ExecutionContext
* fix: add context functions from inside fold_item_impl
* chore: remove clone
* fix: moving generative function to utils, remove unused imports
* fix: add missing full path for ExecutionContext
* fix: merge issues
* update wasm files
* fix: update to keep up with changes in master
* chore: remove unused functions, clean up
* fix test
* fix grumbles
* fix: add more tests
* fix: some refactorings
* feat: add execution strategy to call
* chore: small improvements
* fix: add message to panic
* fix tests
* Rework how a runtime api calls into the runtime
Now we generate a default implementation for each api call that calls
a generated method `method_runtime_api_impl`. This newly generated
method is the one that will be implemented by the `impl_runtime_apis`
macro in the runtime for the client side.
* Support `changed_in` to change runtime api function signatures
* Update documentation
* Fixes tests
* Implement checking the api version with a predicate
* Make the implementation backwards compatible with CC
* Update wasm files after merge
* Check for wasm runtime differences by building master and current branch
* Update spec_version and wasm files
* Fixes
* Revert my changes
* Remove `patch.crates-io` from test-runtime
* Limit block size in runtime,
* Add test for basic authorship.
* Store length of extrinsics instead of computing it.
* Don't rely on note_extrinsic
* Use hashed version of storage and write test.
* Recompile runtime.
* make genesis state available on light client
* RemoteOrLocalCallExecutor
* code_is_executed_locally_or_remotely
* OnDemandOrGenesisState tests
* some comments
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.
* Allow runtime to return more detailed transaction validation errors.
* Re-use ApplyError codes and update test-runtime.
* Fix pool tests.
* Revert using Compact for validity.
* Add ClientImportOperation and remove an unused enum
* set_aux to insert_aux so that it can be called multiple times
* [WIP] All basic designs of lock_import_and_run
* [WIP] `apply_block` and `apply_aux` implementation
* Update client db with the new interface
* Always make sure we reset importing_block back to None
* Address grumbles
`apply_block` should be pub
* Add comments on insert_aux
* Fix compile
* Fix warnings in substrate
* More warnings removed and wasm updated
* Fixes error on stable and grumbles
* Update wasm files
* Add links to the github issue for replacing `error-chain`
* Implement new inherent data
* Fixes compilation on wasm
* Fixes after rebase
* Switch back to generate inherent stuff by macro
* Update after rebase
* Apply suggestions from code review
Co-Authored-By: bkchr <bkchr@users.noreply.github.com>
* Fix compilation after rebase
* Address grumbles
* Remove `InherentDataProviders` from `Client`
* Update wasm files after rebase
* Address grumbles
* Fixes compilation after latest merge
* Last fix
* Add simple benchmark for the runtime api
* Make the executor support native calls
* Some documentation
* Hide behind `feature = "std"`
* Rework the native calls
* Make all tests compile again
* Make every parameter using the Block serialized/deserialized in the native call
* Forward `UnwindSafe` requirement
* Remove debug stuff
* Add some documentation
* Fixes warnings
* Fixes errors after master rebase
* Fixes compilation after master rebase
* Fixes compilation after rebase
* fix: temporal modification to make revert works for non finalized blocks
* fix: print info when the number of blocks asked to revert is higher than the number of reversible blocks
* fix: remove function get_db_path_for_subcommand and remove it from all subcommands
* fix: revert only non finalized blocks
* fix: improve printed information for revert command
* fix: new wasm file
* chore: remove unused parameter
* fix: revert log logic
* fix: subcommands should take sub_matches instead of matches
* fix: removing confusing message
* impl Compact<> and HasCompact for Permill Perbill
* update parity-codec to 2.2
* add Cargo.lock
* add lock and build for runtime
* rebuild Cargo.lock after rebase
* fix: set edition to 2018 in Cargo.toml.
* fix: refactor function to make use of NLL.
* fix: result of applying 'cargo fix --edition' command.
* fix: removes extern crate
* fix: remove module uses from lib.rs
* fix: tests imports
* grandpa finality proof
* prove GrandpaApi::grandpa_authorities using parent block + some docs
* create justification when consensus data is changed
* generate justifications periodically
* test for ConsensusChanges
* BlockAuthorityId convenience type
* Rename AuthorityId -> Ed25519AuthorityId to make it more precise
* Generalize AuthorityId up to substrate-client
* Fix in client-db
* rename: BlockAuthorityId -> AuthorityIdFor
* typo: should be digest item
* Fix test-runtime authorityId mismatch
One states that AuthorityId is u64 while the other states that it's Ed25519AuthorityId.
* Fix more u64 - Ed25519AuthorityId mismatch
* Fix compile of most of the srml modules
* Continue to pin aura and grandpa with ed25519 and fix compile
* Add MaybeHash trait
* Fix node-runtime compile
* Fix network tests