* core: support broadcasting consensus message to all peers
* grandpa: remove liveness oracle
* node: always start grandpa on full nodes
* core: don't check for grandpa justifications on failed block imports
* core: fix network connectivity test
* Update SRML Assets: add total supply query, refactor with specific unit tests, update assertions
* Add feature and tests to allow querying total supply
* Add assertion and tests to ensure that transfer amount is greater than or equal to one unit
* Replace broad `it_works` function test with various specific unit tests
* Fix `destroy` function by moving assertion before the action
* Fix typos `Transfered` should be `Transferred`, `requried` should be `required`
* Reference: https://hackmd.io/nr6kPD2sR4urmljtvHs0CQ?view#Assets-Module
* refactor: Order imports alphabetically
* review-fix: Replace non-zero check with shorter equivalent
* review-fix: Restore order of non-zero assertion and destroy account
* Update lib.rs
* make offline-reporting infrastructure more generic
* add a listener-trait for watching when the timestamp has been set
* prevent inclusion of empty offline reports
* add test for exclusion
* generate aura-offline reports
* ability to slash many times for being offline "multiple" times
* Logic for punishing validators for missing aura steps
* stub tests
* pave way for verification of timestamp vs slot
* alter aura import queue to wait for timestamp
* check timestamp matches seal
* do inherent check properly
* service compiles
* all tests compile
* test srml-aura logic
* aura tests pass
* everything builds
* some more final tweaks to block authorship for aura
* switch to manual delays before step
* restore substrate-consensus-aura to always std and address grumbles
* update some state roots in executor tests
* node-executor tests pass
* get most tests passing
* address grumbles
* Referendums only gett enacted after a delay; successful voters must
lock funds up until enactment.
* Build fixes.
* Configurable council enact delay, fix test builds.
* Fix spelling
* Remove TODO
* gitlab-ci.yml: upload binaries to s3
* gitlab-ci.yml: typo tag names
* gitlab-ci.yml: avoid dots in tags
* gitlab-ci.yml: try before_script
* gitlab-ci.yml: indentation
* gitlab-ci.yml: unified before_script
* gitlab-ci.yml: don't forget script
* use VERSION file
* build.sh only before builds
* git_strategy: none
* use own docker awscli image
* typo
* use artifacts folder
* enable uploads to s3 as well
* add builds.sh to tests
* Do not try to fix type display for metadata in rust.
* Fix test (adding extra space (we can see it as a canary: if at some
point quote got a better output the test will fail and js space removal
could be remove)).
* Make `decl_runtime_apis!` implement `RuntimeApiInfo` for all runtime
apis
* Make the runtime side generate the info constants as well
* Make `RuntimeApiInfo` implementation use the correct generics
* Adds a test for the runtime api info stuff
* Remove duplicated code by using block from `test-client`
* Adds `compile_fail` tests for `api_version`
* Adds documentation for `api_version`
* Make `impl_runtime_apis!` generate `RUNTIME_API_VERSIONS`
* Update documentation and tests for `RUNTIME_API_VERSIONS`
* Implement `has_api` by using the `RuntimeApiInfo`
* Make `impl_runtime_apis` check that trait identifiers are unique
* Prefix all runtime api function with the corresponding trait
So `execute_block` will be called `Core_execute_block`.
This makes it possible to have traits implement a function with the
same name.
* Rebase master
* Update after master rebase
This restores an old behavior with more checks to inform the user
about misuse.
Only the `build-spec` parameter is not accepting these flags and options.
This subcommand only works with the options specified on the main command,
this is a restriction of the current cli parse/execute design.
* `decl_storage` parsing of the macro (TODO change tool crate structure)
* Start formatting, for now use inner macro.
Still missing optional formating last part (genesis ...).
* Calling extra genesis macro
* decl_storage lines parsing.
* genesis macro as quote (need some cleaning reorg)
* dirty $crate substitute
* proc crate reorg.
* PR impl : skip usage of phantom data, it only applies in test and
council (others required it).
* Remaining macro of decl_storage, warning stringify behave sometime
oddly.
* Formatting code and some cleaning.
* Include line parsing to main struct (cannot use existing macro anymore).
* Remove genesis phantom data when there is already a field with type
parameter.
* Revert wasm files
* Remove old version of `decl_storage`.
* Fix false positive for phantom trait (additional type check on config
build).
* slight changes:
- return token errors instead of panic
- do not use useless intermediate vec
* Update srml/support/procedural/tools/derive/src/lib.rs
remove indent
Co-Authored-By: cheme <emericchevalier.pro@gmail.com>
* Switch iterations to fold, remove unused import.
* core: make block justification optional
* runtime: update wasm binaries
* core: optionally pass justification on finalize_block
* finality-grandpa: add channel to trigger authority set changes
this will allow the `BlockImport` to trigger an authority set change when
importing a change block that provides a justification (when syncing)
* finality-grandpa: move finalize_block to free function
* finality-grandpa: add GrandpaOracle for auth set liveness checking
this will be used by `BlockImport` to check whether the authority set for a
given block is still live, if the authority set isn't live then importing a
change block requires a justification.
* finality-grandpa: store justification on finalized transition blocks
* finality-grandpa: check justification on authority set change blocks
* finality-grandpa: poll grandpa liveness oracle every 10 seconds
* finality-grandpa: spawn grandpa oracle in service setup
* core: support multiple subscriptions per consensus gossip topic
* finality-grandpa: create and verify justifications
* finality-grandpa: update to local branch of grandpa
* finality-grandpa: update to finality-grandpa v0.5.0
* finality-grandpa: move grandpa oracle code
* finality-grandpa: fix canonality check
* finality-grandpa: clean up error handling
* finality-grandpa: fix canonical_at_height
* finality-grandpa: fix tests
* runtime: update wasm binaries
* core: add tests for finalizing block with justification
* finality-grandpa: improve validation of justifications
* core: remove unused IncompleteJustification block import error
* core: test multiple subscribers for same consensus gossip topic
* Revert "finality-grandpa: improve validation of justifications"
This reverts commit 51eb2c58c2219801e876af6d6c9371bdd9ff2477.
* finality-grandpa: fix commit validation
* finality-grandpa: fix commit ancestry validation
* finality-grandpa: use grandpa v0.5.1
* finality-grandpa: add docs
* finality-grandpa: fix failing test
* finality-grandpa: only allow a pending authority set change per fork
* finality-grandpa: fix validator set transition test
* CheckInherentError can now report when something would be valid
* set timestamp inherent to next valid block time
* return max timestamp for valid-after when checking
Fixes ordering of command-line arguments. `substrate --help` shows usage as substrate `[FLAGS] [OPTIONS] [SUBCOMMAND]`, where `--chain=staging` is one of the possible OPTIONS, and `build-spec` is a possible SUBCOMMAND.
The ordering should be `substrate --chain=staging build-spec` instead.
Relates to issue raised by user attente in Riot https://matrix.to/#/!HzySYSaIhtyWrwiwEV:matrix.org/$154385734133299JuBZU:matrix.parity.io
Parameters like `--dev`, `--base-path` or `--chain` were replicated
for each subcommand and were also present in the "top". This pr removes
these parameters from the subcommands.
The subcommands also ignored stuff like `--dev` as it was only read in
the top matcher, that did not look into the subcommand matchers.
Now, if you specify one of the parameters for a subcommand, you will get
an error instead of silently ignoring it.