[DO NOT MERGE] Port to Rocq master#91
Conversation
|
I'd be happy to put WasmCert in the CI. IMO having a separate There's currently a small blocker on the parser combinators library (Parseque) which has yet been upgraded to 9.1 (merely an opam release issue). I guess that means Parseque needs to brought into the CI as well (@womeier ). |
|
the current release of rocq-parseque (version 0.3.0) is already compatible with Rocq 9.1, just need to wait for rocq-prover/opam#3690 to be merged. is there anything else I should do? |
|
@womeier is parseque#master also compatible with Rocq master? |
|
If so, could you add |
yes! The PR is ready I think: rocq-prover/opam#3691 |
It does have an image tagged 'dev' following Rocq's master. There seems to be only a limited amount of ML code here, and nothing relying on Rocq's API, right? If so I think you can expect little breakage from working directly on Rocq's master (in the CI at least), but having a separate rocq-master branch also has its advantages if anything not backward compatible is done on Rocq's master. Do as you prefer, just tell me which branch I should point to for the coq-wasm.dev package :) |
|
We can then undraft rocq-prover/opam#3693 |
|
Thanks -- I'll make a Upd: made a |
|
Coming back to this. Thanks for the changes, I'll try to merge the dev package now. |
|
@raoxiaojia sorry to bother you, but it seems some changes in rocq#master broke the rocq-master branch: https://gitlab.inria.fr/coq/opam-repositories/-/jobs/7465369 |
Thanks for the message! I'll take a look when I get home later today. |
This is quite weird, we don't even have any |
Oh, hmm, the actual issue was menhir.20250912 no longer compiling under Rocq.dev -- it is That probably means I'll need to merge #93 into master (and then into rocq-master) first, because menhir had a conflict with compcert. #93 drops the dependency on compcert (since we only need the numeric files which they release under a more permissive license), so I can then remove the cap on menhir's version. compcert also used to block ocaml 5 (unsure about its current status), so dropping the dependency seems like a good move. |
|
Hmm I noticed that the CI fails on that branch. I'm not sure how meaningful/accurate it is given that it's on Rocq-dev, but the errors seem believable. I'll take a look later today. |
|
Ah right, my bad, I could have catched it was menhir indeed! |
|
@mattam82 Rocq-master now compiles on CI (with rocq-dev). This should mean that the opam merge should work as well (the opam dependencies might need an update due to the changes). Let me know if there's anything I can do to unblock further. I might not have much time to look at this until early July (popl deadline), but will keep track in case there's something simple I can fix. |
This PR adapts the proof scripts to latest Rocq / mathcomp master. I propose it because I would like to put CertiRocq in the CI, which has a Wasm backend relying on WasmCert. That would hence mean putting WasmCert in the CI as well. Are you ok/interested in that? The usual setup for Rocq projects in Rocq's CI is to have the
masterbranch follow Rocq master, with potentially different branches like 9.0, 9.1 etc if code needs to be version specific. One can also use a specific e.g.rocq-masterbranch solely used for the Rocq CI, and periodically update it from one's master branch that rather depends on a released Rocq (easier for contributors). For these particular changes (due to SsrOldRewriteOrder changing in mathcomp master and the upcoming mathcomp release), I think it should be backwards compat (although therewritechange in contexts.v seems a bit more subtle).