Skip to content

Bump to Rocq 9.0 minimum version - #212

Closed
miriampolzer wants to merge 1 commit into
mit-plv:masterfrom
miriampolzer:rocq-9.0-compat
Closed

Bump to Rocq 9.0 minimum version#212
miriampolzer wants to merge 1 commit into
mit-plv:masterfrom
miriampolzer:rocq-9.0-compat

Conversation

@miriampolzer

@miriampolzer miriampolzer commented Aug 26, 2026

Copy link
Copy Markdown
Contributor

Drop support for Coq <= 8.20 and transition the build system and tooling to Rocq 9.0 minimum.

  • Update Makefile and Makefile.local.common to use rocq, rocq makefile, and rocq top directly.
  • Decouple version probing from $(COQC) using ROCQ variable so that wrapper commands and compiler overrides do not break $(COQC) top.
  • Update Makefile.coq-versions-lite to use rocq --version and rocq compile -config, avoiding conflicting .coq-version strings and preventing infinite makefile remake-and-restart loops.
  • Update CI scripts (describe-system-config.sh, github-actions-make.sh, coq-opam-package.yml) to invoke rocq directly without legacy coq fallbacks.
  • Add Rocq 9.0, 9.1, and 9.2 to Docker and Opam CI matrices.
  • Remove legacy opam install coq workaround from Docker CI so that preinstalled Rocq 9.x binaries are preserved in the environment.
  • Update Debian CI package dependencies to coq, libcoq-stdlib, and libcoq-core-ocaml-dev.
  • Update coq-rewriter.opam bounds to ocaml >= 4.14.0 and coq >= 9.0~.

@miriampolzer miriampolzer changed the title Rocq 9.0 compat Bump to Rocq 9.0 minimum version Aug 26, 2026
Drop support for Coq <= 8.20 and transition the build system and
tooling to Rocq 9.0 minimum.

- Update Makefile and Makefile.local.common to use rocq, rocq makefile,
  and rocq top directly.
- Decouple version probing from $(COQC) using ROCQ variable so that
  wrapper commands and compiler overrides do not break $(COQC) top.
- Update Makefile.coq-versions-lite to use rocq --version and rocq
  compile -config, avoiding conflicting .coq-version strings and
  preventing infinite makefile remake-and-restart loops.
- Update CI scripts (describe-system-config.sh, github-actions-make.sh,
  coq-opam-package.yml) to invoke rocq directly without legacy coq
  fallbacks.
- Add Rocq 9.0, 9.1, and 9.2 to Docker and Opam CI matrices.
- Remove legacy `opam install coq` workaround from Docker CI so that
  preinstalled Rocq 9.x binaries are preserved in the environment.
- Update Debian CI package dependencies to coq, libcoq-stdlib, and
  libcoq-core-ocaml-dev.
- Update coq-rewriter.opam bounds to ocaml >= 4.14.0 and coq >= 9.0~.
Comment thread coq-rewriter.opam
"conf-findutils" {build}
"ocaml" {build & (arch = "x86_32" | arch = "x86_64" | >= "4.14.0")}
"coq" {>= "8.19~"}
"ocaml" {build & >= "4.14.0"}

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This change isn't quite right, the version bound is specifically to fix #97 . If Rocq 9 requires 4.14 already then we should just do

Suggested change
"ocaml" {build & >= "4.14.0"}
"ocaml"

but if Rocq 9 supports older OCaml than we should do

Suggested change
"ocaml" {build & >= "4.14.0"}
"ocaml" {arch = "x86_32" | arch = "x86_64" | >= "4.14.0"}

(I was incorrect to ever use build, as OCaml plugins must be recompiled when the version of OCaml changes)

Comment thread coq-rewriter.opam
"ocaml" {build & (arch = "x86_32" | arch = "x86_64" | >= "4.14.0")}
"coq" {>= "8.19~"}
"ocaml" {build & >= "4.14.0"}
"coq" {>= "9.0~"}

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Shouldn't this be split so as to not require the coq meta package?

@lukaszobernig lukaszobernig mentioned this pull request Sep 2, 2026
@lukaszobernig

Copy link
Copy Markdown
Contributor

Merged in #214, so this one can now be closed.

@JasonGross JasonGross closed this Sep 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants