This repository has been archived by the owner on Nov 15, 2023. It is now read-only.
Remove sc_network::NetworkService::register_notifications_protocol and partially refactor Grandpa tests #7646
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
polkadot companion: paritytech/polkadot#2048
Close #6827
This PR removes the
register_notifications_protocol
method fromsc_network
.Instead of registering new protocols after the networking has started (like
register_notifications_protocol
allows), it is now mandatory to mention the protocol name inNetworkConfiguration
.This has never been done because Polkadot used to make use of this method as well, and getting rid of it would have been a bit tricky. This is no longer the case, and Polkadot does it through
NetworkConfiguration
.This change is, in my opinion, not only more correct, but will also simplify the implementation of #7374, as it guarantees the possibility to know in advance the number of notifications protocols.
Consequently, I've also removed
setup_disabled_grandpa
whose only effect is to register the protocol.This hack, where the network doesn't start until initialization of the service is complete, is still in place and is still necessary because we grab event streams (using
NetworkService::events_stream()
) during the service initialization. Callingevents_stream()
after the networking has started could lead to events being missed. This problem is covered by paritytech/polkadot-sdk#554.