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

Packages should list the compatible Coq version(s) everywhere #11

Open
palmskog opened this issue Dec 25, 2024 · 2 comments
Open

Packages should list the compatible Coq version(s) everywhere #11

palmskog opened this issue Dec 25, 2024 · 2 comments
Labels
enhancement New feature or request packages About the Rocq Opam Packages

Comments

@palmskog
Copy link
Contributor

Due to so many Coq opam archive packages being old, and therefore not compatible with recent Coq, every listing of a package should reasonably include the Coq version constraint (if there is one, e.g., packages depending on coq-mathcomp-ssreflect sometimes do not add this).

@palmskog palmskog added packages About the Rocq Opam Packages enhancement New feature or request labels Dec 25, 2024
@gares
Copy link
Member

gares commented Dec 30, 2024

At least for packages in the mathcomp main repo, there was a deliberate choice to delegate this task to the root package, that (used to be) the only one really tied to a Coq version because of its .ml code. That code is now gone, so we may reconsider that policy.

But I think that using opam's meta data for this specific task (telling a user if package X works with Coq version V) is a not ideal.
If a package X declares compat with version V, we are not systematically amending packages if the package happens to be also compatible with V+1. Ideally a bot would do that. The converse also holds, if we stop putting an upper bound and no bot tells us that some upper bound should be put, we will end up claiming something false.

@silene
Copy link

silene commented Jan 7, 2025

I think we could use a conservative approach, that is, display the upper bound on Coq only if it exists. For instance, the following tells which Coq version is required, and if it differs from the most recent release, then it could be displayed.

opam install --dry-run --update-invariant coq-foobar | grep -e "install *coq "

(I am not necessarily suggesting to do it that way. It would presumably be more robust to write a small OCaml script that uses the API of Opam.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request packages About the Rocq Opam Packages
Projects
None yet
Development

No branches or pull requests

3 participants