* client/finality-grandpa/src/until_imported: Refactor schedule_wait
Previously `BlockUntilImported::schedule_wait` took two closures, one to
report ready items and one to report items to await. None of the implementors of
`BlockUntilImported` call both closures. From a symantic perspective it
would as well not make sense to both await something and state that it
is ready.
Instead with this commit `BlockUntilImported::schedule_wait` simply
returns whether the given item needs waiting or is ready to be passed
on.
This reduces complexity by:
- Removing side effects through the two closures.
- Reducing borrowing given that `UntilImported` `ready` and `pending`
don't need to be borrowed from within the two closures.
- Removes the need for trait bounds for the two closures.
* client/finality-grandpa/src/until_imported: Fix comments
Co-Authored-By: André Silva <andre.beat@gmail.com>
Co-authored-by: André Silva <andre.beat@gmail.com>
* Improve sc-network's documentation for network protocols
* Add note about protocol id
* Apply suggestions from code review
Co-Authored-By: Max Inden <mail@max-inden.de>
Co-authored-by: Max Inden <mail@max-inden.de>
* contracts: Remove OnKilledAccount implementation
Contracts now longer rely on this callback to tell them when they
are removed. Instead, they can only self destruct using `ext_terminate`.
* Fix account removal test
* Fix account storage removal
* Make AccountId32 hashable
* Only implement Hash in std
Co-Authored-By: Nikolay Volf <nikvolf@gmail.com>
Co-authored-by: Nikolay Volf <nikvolf@gmail.com>
* Check for url validity when creating TelemetryEndpoints
* Update code that used TelemetryEndpoints::new()
* Update commennts that referred to TelemetryEndpoints::new()
* Add tests for telemetry
* Fix typo and fix code in docs
* Return error on failing to override telemetry
* Use expect instead of suppressing errors on must-be-valid telemetry endpoints
* Update telemetry unit tests to use expect instead of unwrap
* Implement custom deserializer for TelemetryEndpoints
* Fix typo
* Apply suggestions from code review
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
* Adds a SigningContext type
* Bump spec versions
* Fixes requested changes
* Bump ParachainHost api_version and guard signing_context call
* Improve error message
* If there is no signing_context api use default value
Co-authored-by: Robert Habermeier <rphmeier@gmail.com>
* client/finality-grandpa/src/until_imported: Refactor BlockGlobalMessage
`BlockGlobalMessage` owns an `inner` which contains (1) a count for the
amount of outstanding blocks to be waited on and (2) the message itself.
Given that both is already wrapped in an `Arc` there is no need to keep
track of the outstanding blocks, given that it simply corresponds to the
amount of strong reference counts on the `Arc` itself.
This commit removes the atomic counter within `inner` and piggy backs on
the `Arc` reference counter instead.
* client/finality-grandpa/src/until_imported: Remove useless match
* client/finality-grandpa/src/until_imported.rs: Remove unused var
Co-Authored-By: André Silva <andre.beat@gmail.com>
* client/finality-grandpa/src/until_imported: Address comment suggestion
Co-authored-by: André Silva <andre.beat@gmail.com>
* Init
* Fix execute.
* Duplicate macro for instances temporarilly
* Add propose.
* Add vote, close.
* Propose from own module
* Add old members to set_members.
* Add previous proposals to propose.
* Compress a bit the macro.
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
* use versioning for deprecated api, remove deprecated api from regular verification
* Update primitives/core/src/sr25519.rs
* add test to transaction pool
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
Currently when we connect to a bootnode and it returns a different peer
id, than the one we provided, we disconnect silently. This pr changes
the behavior to printing an error when a bootnode returns a different
peer id than the provided one.