Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve library modularity and runtime separation #4028

Closed
jimmarino opened this issue Mar 21, 2024 · 0 comments · Fixed by #4077
Closed

Improve library modularity and runtime separation #4028

jimmarino opened this issue Mar 21, 2024 · 0 comments · Fixed by #4077
Assignees
Labels
enhancement New feature or request refactoring Cleaning up code and dependencies

Comments

@jimmarino
Copy link
Contributor

Overview

This issue is an umbrella issue for refactoring the codebase to improve library modularity and better separate the runtime subsystem from core connector services.

The connector-spi and connector-core modules have grown too large and have introduced a web of dependencies and tangles into the codebase. These dependencies will be cleaned up by introducing specific spi modules and library modules (suffixed with -lib) containing shared implementations.

The goals of this PR are:

Improve visibility boundaries

  • SPI Modules define extension points, generally do not contain implementations
  • Lib Modules contain implementations and other code that may be reused by multiple extensions
  • Extensions contain implementations that should not be shared with other modules. Features these implementations provide may be accessed by other extensions via the SPI

Separate the runtime subsystem from connector services

  • Make it possible to boot an EDC runtime without connector services. This will streamline downstream repositories such as Identity Hub and other projects that use the EDC as a lightweight runtime.

Which Areas Would Be Affected?

The entire code base

Why Is the Feature Desired?

Modularity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request refactoring Cleaning up code and dependencies
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant