Skip to content

Commit d30a589

Browse files
Merge branch 'rocq-prover:master' into refactor-vector
2 parents d2f675b + 3b915a2 commit d30a589

File tree

536 files changed

+15086
-15107
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

536 files changed

+15086
-15107
lines changed

.github/workflows/alpine.yml

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,17 @@ jobs:
3535
with:
3636
branch: ${{ matrix.alpine }}
3737
extra-repositories: https://dl-cdn.alpinelinux.org/alpine/edge/testing
38-
packages: rocq dune
39-
- name: dune build -p rocq-stdlib
38+
packages: rocq dune bash python3 graphviz make findutils diffutils grep rsync
39+
- name: 'dune build @stdlib-html # depends on stdlib'
4040
shell: alpine.sh {0}
41-
run: dune build -p rocq-stdlib
41+
run: 'dune build @stdlib-html # depends on stdlib'
42+
- name: 'find _build/default/doc/stdlib/html/ -iname "*\**" -print -delete # for upload-artifact'
43+
shell: alpine.sh {0}
44+
run: 'find _build/default/doc/stdlib/html/ -iname "*\**" -print -delete # for upload-artifact'
45+
- uses: actions/upload-artifact@v4
46+
with:
47+
name: stdlib-html
48+
path: _build/default/doc/stdlib/html
49+
- name: Check for duplicate files
50+
shell: alpine.sh {0}
51+
run: dev/tools/check-duplicate-files.sh

.github/workflows/basic-checks.yml

Lines changed: 0 additions & 16 deletions
This file was deleted.
Lines changed: 1249 additions & 4250 deletions
Large diffs are not rendered by default.

.github/workflows/nix-action-rocq-9.2.yml

Lines changed: 5149 additions & 0 deletions
Large diffs are not rendered by default.

.github/workflows/nix-action-rocq-master.yml

Lines changed: 1289 additions & 1538 deletions
Large diffs are not rendered by default.

.gitignore

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -157,12 +157,14 @@ bin
157157
# generated by dune build -p
158158
*.install
159159

160+
# generated by /theories/All.sh in make-based build
161+
/theories/All.v
162+
160163
.dune-stamp
161164
theories/dune
162165
user-contrib/Ltac2/dune
163166
/test-suite/test_suite_config.inc
164167

165168
.wrappers
166-
rocq-stdlib-doc.opam
167169
doc/stdlib/Library.fdb_latexmk
168170
doc/stdlib/Library.fls

.nix/config.nix

Lines changed: 129 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -35,25 +35,25 @@ with builtins; with (import <nixpkgs> {}).lib;
3535
# cachix.coq = {};
3636
cachix.math-comp = {};
3737
cachix.coq-community = {};
38-
38+
3939
## If you have write access to one of these caches you can
4040
## provide the auth token or signing key through a secret
4141
## variable on GitHub. Then, you should give the variable
4242
## name here. For instance, coq-community projects can use
4343
## the following line instead of the one above:
4444
# cachix.coq-community.authToken = "CACHIX_AUTH_TOKEN";
4545
cachix.coq.authToken = "CACHIX_AUTH_TOKEN";
46-
46+
4747
## Or if you have a signing key for a given Cachix cache:
4848
# cachix.my-cache.signingKey = "CACHIX_SIGNING_KEY"
49-
49+
5050
## Note that here, CACHIX_AUTH_TOKEN and CACHIX_SIGNING_KEY
5151
## are the names of secret variables. They are set in
5252
## GitHub's web interface.
5353

5454
## select an entry to build in the following `bundles` set
5555
## defaults to "default"
56-
default-bundle = "rocq-9.0";
56+
default-bundle = "rocq-9.1";
5757

5858
## write one `bundles.name` attribute set per
5959
## alternative configuration
@@ -116,7 +116,6 @@ with builtins; with (import <nixpkgs> {}).lib;
116116
"coqprime"
117117
"coquelicot"
118118
"coqutil"
119-
"coq-elpi"
120119
"ExtLib"
121120
"coq-hammer"
122121
"coq-hammer-tactics"
@@ -145,12 +144,14 @@ with builtins; with (import <nixpkgs> {}).lib;
145144
"mathcomp-algebra"
146145
"mathcomp-algebra-tactics"
147146
"mathcomp-analysis"
147+
"mathcomp-boot"
148148
"mathcomp-bigenough"
149149
"mathcomp-character"
150150
"mathcomp-classical"
151151
"mathcomp-field"
152152
"mathcomp-fingroup"
153153
"mathcomp-finmap"
154+
"mathcomp-order"
154155
"mathcomp-reals"
155156
"mathcomp-solvable"
156157
"mathcomp-ssreflect"
@@ -162,12 +163,12 @@ with builtins; with (import <nixpkgs> {}).lib;
162163
"paco"
163164
"paramcoq-test"
164165
"parsec"
165-
"perennial"
166166
"QuickChick"
167167
"quickchick-test"
168168
"relation-algebra"
169169
"rewriter"
170170
"riscvcoq"
171+
"rocq-lean-import"
171172
"rupicola"
172173
"sf"
173174
"simple-io"
@@ -177,7 +178,7 @@ with builtins; with (import <nixpkgs> {}).lib;
177178
"unicoq"
178179
"Verdi"
179180
"VerdiRaft"
180-
"vst"
181+
"VST"
181182
];
182183
coq-master = [
183184
"dpdgraph-test"
@@ -193,74 +194,165 @@ with builtins; with (import <nixpkgs> {}).lib;
193194
"metarocq"
194195
"metarocq-test"
195196
];
197+
# To lighten the CI on released version, don't test reverse dependencies
198+
# of Stdlib that take >= 5 min of CI (and their reverse dependencies)
199+
lighten-released = [
200+
"bedrock2"
201+
"category-theory"
202+
"CoLoR"
203+
"coq-performance-tests"
204+
"coq-tools"
205+
"corn"
206+
"cross-crypto"
207+
"engine-bench"
208+
"fiat-crypto"
209+
"fiat-crypto-ocaml"
210+
"iris"
211+
"iris-examples"
212+
"metacoq"
213+
"metacoq-common"
214+
"metacoq-erasure"
215+
"metacoq-erasure-plugin"
216+
"metacoq-pcuic"
217+
"metacoq-quotation"
218+
"metacoq-safechecker"
219+
"metacoq-safechecker-plugin"
220+
"metacoq-template-coq"
221+
"metacoq-template-pcuic"
222+
"metacoq-translations"
223+
"metacoq-utils"
224+
"metarocq"
225+
"metarocq-erasure"
226+
"metarocq-erasure-plugin"
227+
"metarocq-pcuic"
228+
"metarocq-quotation"
229+
"metarocq-safechecker"
230+
"metarocq-safechecker-plugin"
231+
"metarocq-template-pcuic"
232+
"metarocq-test"
233+
"rewriter"
234+
"riscvcoq"
235+
"rupicola"
236+
"VerdiRaft"
237+
];
196238
coq-common-bundles = listToAttrs (forEach master (p:
197239
{ name = p; value.override.version = "master"; }))
198240
// listToAttrs (forEach coq-master (p:
199241
{ name = p; value.override.version = "coq-master"; }))
200242
// listToAttrs (forEach main (p:
201243
{ name = p; value.override.version = "main"; }))
202244
// {
203-
coq-elpi.override.elpi-version = "2.0.7";
204-
fiat-crypto-legacy.override.version = "sp2019latest";
245+
coq-elpi.override.version = "master";
246+
coq-elpi.override.elpi-version = "3.4.2";
205247
tlc.override.version = "master-for-coq-ci";
206248
smtcoq-trakt.override.version = "with-trakt-coq-master";
207249
coq-tools.override.version = "proux01:coq_19955";
208250
stdlib-refman-html.job = true;
251+
iris-examples.job = false; # Currently broken
209252
jasmin.job = false; # Currently broken, c.f., https://github.com/rocq-prover/rocq/pull/20589
253+
ElmExtraction.job = false; # not in Rocq CI
254+
RustExtraction.job = false; # not in Rocq CI
255+
interval.job = false; # not in Rocq CI
256+
parseque.job = false; # not in Rocq CI
257+
LibHyps.job = false; # not in Rocq CI
210258
# To add a simple overlay applying to all bundles,
211-
# add below a line like
259+
# add, just below this comment, a line like
212260
#<package>.override.version = "<github_login>:<branch>";
213261
# where
214262
# * <package> will typically be one of the strings above (without the quotes)
215263
# or look at https://github.com/NixOS/nixpkgs/tree/master/pkgs/development/coq-modules
216264
# for a complete list of Coq packages available in Nix
217265
# * <github_login>:<branch> is such that this will use the branch <branch>
218266
# from https://github.com/<github_login>/<repository>
267+
sf.job = false; # temporarily disactivated in Rocq CI
268+
trakt.job = false; # temporarily disactivated in Rocq CI
269+
smtcoq-trakt.job = false; # temporarily disactivated in Rocq CI
219270
};
220271
common-bundles = {
221272
bignums.override.version = "master";
222273
rocq-elpi.override.version = "master";
223-
rocq-elpi.override.elpi-version = "2.0.7";
274+
rocq-elpi.override.elpi-version = "3.4.2";
224275
rocq-elpi-test.override.version = "master";
225-
stdlib-html.job = true;
226-
stdlib-test.job = true;
227-
stdlib-subcomponents.job = true;
276+
hierarchy-builder.override.version = "master";
228277
};
229278
in {
230279
"rocq-master" = { rocqPackages = common-bundles // {
231280
rocq-core.override.version = "master";
281+
stdlib-test.job = true;
232282
}; coqPackages = coq-common-bundles // {
233283
coq.override.version = "master";
234284
}; };
235-
"rocq-9.0" = { rocqPackages = common-bundles // {
236-
rocq-core.override.version = "9.0.0";
285+
"rocq-9.2" = { rocqPackages = common-bundles // {
286+
rocq-core.override.version = "9.2";
287+
# check that we compile without warnings on last release of Rocq
288+
stdlib-warnings.job = true;
289+
# plugin pins, from v9.2 branch of Rocq
290+
bignums.override.version = "30a45625546da0a88db8689a8009d580aa3f557f";
291+
stdlib-test.job = false;
237292
}; coqPackages = coq-common-bundles // {
238-
coq.override.version = "9.0.0";
239-
# plugin pins, from v9.0 branch of Coq
240-
aac-tactics.override.version = "109af844f39bf541823271e45e42e40069f3c2c4";
293+
coq.override.version = "9.2";
294+
# plugin pins, from v9.2 branch of Rocq
295+
aac-tactics.override.version = "4f796a7b0ee88330162727fc6ea988a7e0ea46e3";
241296
atbr.override.version = "47ac8fb6bf244d9a4049e04c01e561191490f543";
242-
itauto.override.version = "c13c6b4a0070ecc3ae8ea9755a1d6a163d123127";
243-
bignums.override.version = "cc2d9ee990e4cfebe5f107d8357198baa526eded";
244-
coinduction.override.version = "09caaf1f809e3e91ebba05bc38cef6de83ede3b3";
245-
dpdgraph-test.override.version = "74ced1b11a8df8d4c04c3829fcf273aa63d2c493";
246-
coq-hammer.override.version = "31442e8178a5d85a9f57a323b65bf9f719ded8ec";
247-
coq-hammer-tactics.override.version = "31442e8178a5d85a9f57a323b65bf9f719ded8ec";
248-
equations.override.version = "1.3.1+9.0";
297+
bignums.override.version = "30a45625546da0a88db8689a8009d580aa3f557f";
298+
itauto.job = false; # broken
299+
coinduction.override.version = "9502ae09e9f87518330f37c08bc19a8c452dcd91";
300+
dpdgraph-test.override.version = "7a0fba21287dd8889c55e6611f8ba219d012b81b";
301+
coq-hammer.override.version = "1d581299c2a85af175b53bd35370ea074af922ec";
302+
coq-hammer-tactics.override.version = "1d581299c2a85af175b53bd35370ea074af922ec";
303+
equations.override.version = "757662b9c875d7169a07b861d48e82157520ab1a";
249304
equations-test.job = false;
250305
fiat-parsers.job = false; # broken
251-
metarocq.override.version = "1.4-9.0";
252-
metarocq-test.override.version = "v1.4-9.0";
253-
mtac2.override.version = "1cdb2cb628444ffe9abc6535f6d2e11004de7fc1";
254-
paramcoq-test.override.version = "32609ca4a9bf4a0e456a855ea5118d8c00cda6be";
255-
perennial.job = false; # broken
256-
relation-algebra.override.version = "7966d1a7bb524444120c56c3474717bcc91a5215";
257-
rewriter.override.version = "30c8507c1e30626b2aa1e15c0aa7c23913da033c";
306+
metarocq.override.version = "e8f8078e756cc378b830eb5a8e4637df43d481af";
307+
metarocq-test.override.version = "e8f8078e756cc378b830eb5a8e4637df43d481af";
308+
mtac2.override.version = "fe8b6049835caa793436e277a64ee7e4910f7b04";
309+
paramcoq-test.override.version = "f8026210f37faf6c4031de24ada9fdded29d67e5";
310+
relation-algebra.override.version = "ba3db5783060d9e25d1db5e377fc9d71338a5160";
311+
rewriter.override.version = "dd37fb28ed7f01a3b7edc0675a86b95dd3eb1545";
312+
rocq-lean-import.override.version = "b8291b9dae4f5ed780112e95eea484e435199b46";
313+
smtcoq.override.version = "cff0a8cdb7c73b6c59965a749a4304f3c4ac01bf";
314+
# smtcoq-trakt.override.version = "9392f7446a174b770110445c155a07b183cdca3d";
315+
stalmarck-tactic.override.version = "d32acd3c477c57b48dd92bdd96d53fb8fa628512";
316+
unicoq.override.version = "d52374ca86e3885197f114555e742420fa9bbe94";
317+
waterproof.override.version = "99ad6ff78fa700c84ba0cb1d1bda27d8e0f11e1a";
318+
compcert.job = false; # broken
319+
VST.job = false; # depends on compcert
320+
} // listToAttrs (forEach lighten-released (p:
321+
{ name = p; value.job = false; })); };
322+
"rocq-9.1" = { rocqPackages = common-bundles // {
323+
rocq-core.override.version = "9.1";
324+
# plugin pins, from v9.1 branch of Rocq
325+
bignums.override.version = "9f9855536bd4167af6986f826819e32354b7da22";
326+
stdlib-test.job = false;
327+
}; coqPackages = coq-common-bundles // {
328+
coq.override.version = "9.1";
329+
# plugin pins, from v9.1 branch of Rocq
330+
aac-tactics.override.version = "e68d028cef838f5821d184fed0caea9eedd5538a";
331+
atbr.override.version = "47ac8fb6bf244d9a4049e04c01e561191490f543";
332+
bignums.override.version = "9f9855536bd4167af6986f826819e32354b7da22";
333+
itauto.job = false; # broken
334+
coinduction.override.version = "823b424778feff8fbd9759bc3a044435ea4902d1";
335+
dpdgraph-test.override.version = "7817def06d4e3abc2e54a2600cf6e29d63d58b8a";
336+
coq-hammer.override.version = "8649603dcbac5d92eaf1319a6b7cdfc65cdd804b";
337+
coq-hammer-tactics.override.version = "8649603dcbac5d92eaf1319a6b7cdfc65cdd804b";
338+
equations.override.version = "2137c8e7081f2d47ab903de0cc09fd6a05bfab01";
339+
equations-test.job = false;
340+
fiat-parsers.job = false; # broken
341+
metarocq.override.version = "2995003b88f3812e5649cfdd0f9a4c44ceaf0700";
342+
metarocq-test.override.version = "2995003b88f3812e5649cfdd0f9a4c44ceaf0700";
343+
mtac2.override.version = "bcbefa79406fc113f878eb5f89758de241d81433";
344+
paramcoq-test.override.version = "937537d416bc5f7b81937d4223d7783d0e687239";
345+
relation-algebra.override.version = "4db15229396abfd8913685be5ffda4f0fdb593d9";
346+
rewriter.override.version = "9496defb8b236f442d11372f6e0b5e48aa38acfc";
347+
rocq-lean-import.override.version = "c3546102f242aaa1e9af921c78bdb1132522e444";
258348
smtcoq.override.version = "5c6033c906249fcf98a48b4112f6996053124514";
259-
smtcoq-trakt.override.version = "9392f7446a174b770110445c155a07b183cdca3d";
349+
# smtcoq-trakt.override.version = "9392f7446a174b770110445c155a07b183cdca3d";
260350
stalmarck-tactic.override.version = "d32acd3c477c57b48dd92bdd96d53fb8fa628512";
261-
unicoq.override.version = "a9b72f755539c0b3280e38e778a09e2b7519a51a";
262-
waterproof.override.version = "443f794ddc102309d00f1d512ab50b84fdc261aa";
351+
unicoq.override.version = "28ec18aef35877829535316fc09825a25be8edf1";
352+
waterproof.override.version = "dd712eb0b7f5c205870dbd156736a684d40eeb9a";
263353
compcert.job = false; # broken
264-
}; };
354+
VST.job = false; # depends on compcert
355+
} // listToAttrs (forEach lighten-released (p:
356+
{ name = p; value.job = false; })); };
265357
};
266358
}

.nix/coq-nix-toolbox.nix

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
"52aaa743836510268bf94deb898de0f8bd0501be"
1+
"60810ce1d3e73bece989ce9b9c42d9452c1d54a5"

0 commit comments

Comments
 (0)