EVM Node: Proper blueprints streaming from RPC nodes

In order to do that, we need for the RPC mode to follow the head of the running read-write node. In order to do that, we extract from the Observer module the logic of following the head of a remote EVM node. We use this now generic logic to keep up to date a “minimal” head information type, only consisting in the next blueprint number.

Besides, we make the Evm_services module independant from Evm_context with dependency injection: that is, the function that are used to interact with the context are now passed as argument of Evm_context.register. This way, the RPC mode can rely on ad-hoc function which do not require starting the Evm_context worker.

Manually testing the MR

Checklist

  • Document the interface of any function added or modified (see the coding guidelines)
  • Document any change to the user interface, including configuration parameters (see node configuration)
  • Provide automatic testing (see the testing guide).
  • For new features and bug fixes, add an item in the appropriate changelog (docs/protocols/alpha.rst for the protocol and the environment, CHANGES.rst at the root of the repository for everything else).
  • Select suitable reviewers using the Reviewers field below.
  • Select as Assignee the next person who should take action on that MR

Merge request reports

Loading