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 OpamSWHID and its dependency towards the swhid_core library from opam-core to opam-format #6415

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

kit-ty-kate
Copy link
Member

This is a starting point for a broader discussion about the goal of each opam libraries and in particular opam-core.

In my opinion OpamSWHID isn't really useful outside of the context of opam-format and moving it there allows us to avoid an unnecessary dependency towards swhid_core in `opam-core.

However we can also question ourselves on whether opam-core itself is a useful library to have on its own. As far as i know, no-one uses it without also using opam-format so maybe merging the two could be envisioned.

Another question could also be "what is our threshold for generic things to put into opam-core vs. the other library?". For example #5892 leaves OpamSystem.patch where it was but now a new dependency is required, but this function is only used in opam-repository so it could be better to just move it to that library instead.

So far after thinking about it a little i'm thinking that we could merge opam-core into opam-format then that leaves:

  • opam-client for UI and commands stuff
  • opam-state for the low-level internals
  • opam-repository for things related to fetching and repository composition
  • opam-solver for solver stuff
  • opam-format as a base (format and all the generic modules)

@kit-ty-kate kit-ty-kate added the PR: WIP Not for merge at this stage label Mar 11, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
PR: WIP Not for merge at this stage
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant