rems-project / cn-tutorial

7 stars 8 forks source link

Enable Coq export examples in CI #40

Open septract opened 1 month ago

septract commented 1 month ago

Huh, this diff worked, but only really by making the with_coq build the only one that's used.

Unsure why the coq build needs to be separate anyway, any thoughts @dc-mak or others?

cc @scuellar

dc-mak commented 1 month ago

Not familiar with lemma stuff unfortunately, @cp526 any thoughts?

cp526 commented 1 month ago

I think this must be because the original version of the cn-tutorial github workflow is based on the one from the Cerberus repository and that, in turn, probably has a separate opam with_coq switch to make sure most parts of Cerberus work without the Coq dependency.

For this repository I see no problem with making everything work above the Coq dependency. So, your change looks good; probably we wouldn't even need a separate with_coq opam switch.

septract commented 1 month ago

Sorry, I didn't explain this very clearly. Let me try again.

So the question @cp526 is whether this would be a problem if we did it for both cn-tutorial and cerberus repos?

I think my recommendation is we pause and figure this out once the repo split occurs. At that point, we will probably merge all the CN .yml scripts together, and separate out the cerberus CI process.

(We might even generate a release of cerberus and avoid building it altogether in the CN build process)

cp526 commented 1 month ago

RE "So the question @cp526 is whether this would be a problem if we did it for both cn-tutorial and cerberus repos?" IIUC, this would not break the Cerberus CI but make it slightly weaker: we would no longer be checking that parts of Cerberus can be built without Coq (although I'm not sure that's a big deal).

But either way, and as you say, probably easiest to do this following the repository split.