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

Move the collection backend from tripper to DLite #656

Open
jesper-friis opened this issue Sep 29, 2023 · 0 comments
Open

Move the collection backend from tripper to DLite #656

jesper-friis opened this issue Sep 29, 2023 · 0 comments
Assignees
Labels
question Further information is requested

Comments

@jesper-friis
Copy link
Collaborator

jesper-friis commented Sep 29, 2023

Tripper and DLite are independent packages (meaning that pip install tripper does not install DLite and pip install dlite-python does not install tripper).

However, pip install tripper[testing] do depend on DLite (since the collection backend uses DLite), likewise does pip install dlite-python[mappings] depend on tripper. Hence, there is a very weak (or maybe non-existing, depending how you see it) circular dependency between tripper and DLite.

Question: Is this really an issue?

If the answer is yes, it can be resolved by moving the collection backend from tripper to DLite. In that case, use entry points to register collection as an external tripper backend. See https://github.com/EMMC-ASBL/tripper/blob/master/docs/backend_discovery.md#installed-backend-package.

Personally, I don't see this as a real issue. The problem with circular dependencies is that it can lead to tight coupling between modules, which would restrict code reuse and make long-term code maintenance more challenging. But in this case the circular dependency is very weak (or maybe non-existing), since it is only present when requiring extra dependencies.

@jesper-friis jesper-friis added the question Further information is requested label Sep 29, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

2 participants