Restructure the ibc
crate
#965
Labels
O: code-hygiene
Objective: aims to improve code hygiene
O: decoupling
Objective: aims to separate concerns and cause to independent, reusable components
O: maintainability
Objective: cause to ease modification, fault corrections and improve code understanding
O: usability
Objective: aims to enhance user experience (UX) and streamline product usability
Milestone
Background
This initiative aims to optimize the organization of the
ibc
crate by decomposing it into smaller, self-contained libraries. A pivotal step in this process involved segregating our mock testing facilities into the standaloneibc-testkit
library, as detailed in this PR. By decoupling its implementation from the mainibc
crate, we've laid the groundwork for advancing this initiative.The primary objectives here are twofold: firstly, to diminish the interdependence within the codebase among various components such as ibc core, clients, and applications, and secondly, to elevate the overall usability of the implementation. The overarching aim is to empower users to selectively import specific IBC layers, mitigating potential conflicts related to dependencies or features that may arise in the context of a monolithic library.
Steps
The following steps outline the restructuring process:
Tasks
Next
Following the above steps, the next phase involves preparing a GitHub action for streamlining the release process:
Checklist
Additionally, for each added library, we should adhere to the following checklist:
contributing.md
Relevant issues
Default
impl forClientId
and move away fromtm_client_type
in unit tests #552The text was updated successfully, but these errors were encountered: