[go: up one dir, main page]

SCORU/Node,Client: move modules to libraries

Context

This MR organizes the modules for the rollup node and clients into three libraries:

  • lib_sc_rollup_node: code that provides functionality to the rollup node
  • lib_sc_rollup_client: code that provides functionality to the rollup client
  • lib_sc_rollup: modules that are used both in the node and client

This separation will allow to more easily write unit tests for the various components and functions.

📄 Design document

The following graph shows the dependencies between the modules. The red nodes denote modules that depend on the store or context. We explicitly want these to not appear in the client.

scoru_depend

The following graph shows the chosen separation for the libraries. Note that the white modules could have gone to the common library (strictly based on dependency relations), but some of them only make sense in the context of the node or the client.

scoru_depend_split

Fixes #4560 (closed).

Manually testing the MR

  • Refactoring only, check CI.
  • There shouldn't be any change to lib_protocol (in particular the tests subdirectory).
Edited by Alain Mebsout

Merge request reports

Loading