Skip to content

Commit 3a1f1bb

Browse files
committed
Merge branch 'master' into base_set_fold
2 parents 6843784 + 19879dd commit 3a1f1bb

File tree

1,139 files changed

+49683
-20541
lines changed

Some content is hidden

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

1,139 files changed

+49683
-20541
lines changed

.git-blame-ignore-revs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,3 +37,12 @@ c3e2cc848479ae86de5542b6ab0e75a74e9cf8c9
3737

3838
# Fix LibraryFunctions.invalidate_actions indentation
3939
5662024232f32fe74dd25c9317dee4436ecb212d
40+
41+
# Rename ctx -> man
42+
0c155e68607fede6fab17704a9a7aee38df5408e
43+
44+
# Trim trailing whitespace in BitfieldDomain
45+
d4e2a5f84ed3b7fbff89e34b2f7833de975e0671
46+
47+
# Fix BaseInvariant indentation
48+
15e7a7ebd34e9fabdd4129e97eb86830fea8395f

.gitattributes

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
# GitHub repository language overrides
2+
# https://github.com/github-linguist/linguist/blob/main/docs/overrides.md
3+
4+
# currently only dune-project is classified: https://github.com/github-linguist/linguist/pull/7126
5+
dune linguist-language=dune
6+
dune.inc linguist-language=dune
7+
8+
# avoid misclassification as Standard ML
9+
*.ml linguist-language=ocaml
10+
*.mli linguist-language=ocaml
11+
12+
# cram tests are classified as Raku/Terra/Turing, cram isn't separate language so consider them also dune
13+
*.t linguist-language=dune

.github/workflows/coverage.yml

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ jobs:
1818
os:
1919
- ubuntu-latest
2020
ocaml-compiler:
21-
- ocaml-variants.4.14.0+options,ocaml-option-flambda # matches opam lock file
21+
- ocaml-variants.4.14.2+options,ocaml-option-flambda # matches opam lock file
2222
# don't add any other because they won't be used
2323

2424
runs-on: ${{ matrix.os }}
@@ -28,25 +28,27 @@ jobs:
2828

2929
steps:
3030
- name: Checkout code
31-
uses: actions/checkout@v4
31+
uses: actions/checkout@v6
3232

3333
- name: Set up OCaml ${{ matrix.ocaml-compiler }}
3434
env:
3535
# otherwise setup-ocaml pins non-locked dependencies
3636
# https://github.com/ocaml/setup-ocaml/issues/166
3737
OPAMLOCKED: locked
38-
uses: ocaml/setup-ocaml@v2
38+
uses: ocaml/setup-ocaml@v3
3939
with:
4040
ocaml-compiler: ${{ matrix.ocaml-compiler }}
41-
opam-depext-flags: --with-test # doesn't work (https://github.com/ocaml/opam/issues/5836)
4241

43-
- name: Install graph-easy # TODO: remove if depext --with-test works
44-
if: ${{ matrix.os == 'ubuntu-latest' }}
42+
- name: Install graph-easy # TODO: remove if depext --with-test works (https://github.com/ocaml/opam/issues/5836)
43+
if: ${{ startsWith(matrix.os, 'ubuntu') }}
4544
run: sudo apt install -y libgraph-easy-perl
4645

4746
- name: Install dependencies
4847
run: opam install . --deps-only --locked --with-test
4948

49+
- name: Install os gem for operating system detection
50+
run: sudo gem install os
51+
5052
- name: Install coverage dependencies
5153
run: opam install bisect_ppx
5254

@@ -57,14 +59,18 @@ jobs:
5759
run: ./make.sh headers
5860

5961
- name: Test
60-
run: opam exec -- dune runtest --instrument-with bisect_ppx
62+
env:
63+
BISECT_FILE: ${{ github.workspace }}/_build/coverage/bisect
64+
run: |
65+
mkdir -p _build/coverage
66+
opam exec -- dune runtest --force --instrument-with bisect_ppx
6167
6268
- run: opam exec -- bisect-ppx-report send-to Coveralls
6369
env:
6470
COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }}
6571
PULL_REQUEST_NUMBER: ${{ github.event.number }}
6672

67-
- uses: actions/upload-artifact@v4
73+
- uses: actions/upload-artifact@v6
6874
if: always()
6975
with:
7076
name: suite_result

.github/workflows/docker.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ jobs:
3535

3636
steps:
3737
- name: Checkout code
38-
uses: actions/checkout@v4
38+
uses: actions/checkout@v6
3939

4040
- name: Set up Docker Buildx
4141
uses: docker/setup-buildx-action@v3 # needed for GitHub Actions Cache in build-push-action

.github/workflows/docs.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,14 +18,14 @@ jobs:
1818
os:
1919
- ubuntu-latest
2020
ocaml-compiler:
21-
- ocaml-variants.4.14.0+options,ocaml-option-flambda # matches opam lock file
21+
- ocaml-variants.4.14.2+options,ocaml-option-flambda # matches opam lock file
2222
# don't add any other because they won't be used
2323

2424
runs-on: ${{ matrix.os }}
2525

2626
steps:
2727
- name: Checkout code
28-
uses: actions/checkout@v4
28+
uses: actions/checkout@v6
2929

3030
- name: Check for undocumented modules
3131
run: python scripts/goblint-lib-modules.py
@@ -35,7 +35,7 @@ jobs:
3535
# otherwise setup-ocaml pins non-locked dependencies
3636
# https://github.com/ocaml/setup-ocaml/issues/166
3737
OPAMLOCKED: locked
38-
uses: ocaml/setup-ocaml@v2
38+
uses: ocaml/setup-ocaml@v3
3939
with:
4040
ocaml-compiler: ${{ matrix.ocaml-compiler }}
4141

@@ -50,7 +50,7 @@ jobs:
5050
run: opam exec -- dune build @doc
5151

5252
- name: Upload artifact
53-
uses: actions/upload-pages-artifact@v3
53+
uses: actions/upload-pages-artifact@v4
5454
with:
5555
path: _build/default/_doc/_html/
5656

.github/workflows/indentation.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,12 @@ jobs:
2020

2121
steps:
2222
- name: Checkout code
23-
uses: actions/checkout@v4
23+
uses: actions/checkout@v6
2424
with:
2525
fetch-depth: 0
2626

2727
- name: Set up OCaml ${{ matrix.ocaml-compiler }}
28-
uses: ocaml/setup-ocaml@v2
28+
uses: ocaml/setup-ocaml@v3
2929
with:
3030
ocaml-compiler: ${{ matrix.ocaml-compiler }}
3131

.github/workflows/locked.yml

Lines changed: 18 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,9 @@ jobs:
1818
matrix:
1919
os:
2020
- ubuntu-latest
21-
- macos-13
21+
- macos-latest
2222
ocaml-compiler:
23-
- ocaml-variants.4.14.0+options,ocaml-option-flambda # matches opam lock file
23+
- ocaml-variants.4.14.2+options,ocaml-option-flambda # matches opam lock file
2424
# don't add any other because they won't be used
2525

2626
runs-on: ${{ matrix.os }}
@@ -30,25 +30,27 @@ jobs:
3030

3131
steps:
3232
- name: Checkout code
33-
uses: actions/checkout@v4
33+
uses: actions/checkout@v6
3434

3535
- name: Set up OCaml ${{ matrix.ocaml-compiler }}
3636
env:
3737
# otherwise setup-ocaml pins non-locked dependencies
3838
# https://github.com/ocaml/setup-ocaml/issues/166
3939
OPAMLOCKED: locked
40-
uses: ocaml/setup-ocaml@v2
40+
uses: ocaml/setup-ocaml@v3
4141
with:
4242
ocaml-compiler: ${{ matrix.ocaml-compiler }}
43-
opam-depext-flags: --with-test # doesn't work (https://github.com/ocaml/opam/issues/5836)
4443

45-
- name: Install graph-easy # TODO: remove if depext --with-test works
46-
if: ${{ matrix.os == 'ubuntu-latest' }}
44+
- name: Install graph-easy # TODO: remove if depext --with-test works (https://github.com/ocaml/opam/issues/5836)
45+
if: ${{ startsWith(matrix.os, 'ubuntu') }}
4746
run: sudo apt install -y libgraph-easy-perl
4847

4948
- name: Install dependencies
5049
run: opam install . --deps-only --locked --with-test
5150

51+
- name: Install os gem for operating system detection
52+
run: sudo gem install os
53+
5254
- name: Build
5355
run: ./make.sh nat
5456

@@ -58,7 +60,7 @@ jobs:
5860
- name: Test
5961
run: opam exec -- dune runtest
6062

61-
- uses: actions/upload-artifact@v4
63+
- uses: actions/upload-artifact@v6
6264
if: always()
6365
with:
6466
name: suite_result-${{ matrix.os }}
@@ -73,27 +75,26 @@ jobs:
7375
os:
7476
- ubuntu-latest
7577
ocaml-compiler:
76-
- ocaml-variants.4.14.0+options,ocaml-option-flambda # matches opam lock file
78+
- ocaml-variants.4.14.2+options,ocaml-option-flambda # matches opam lock file
7779
# don't add any other because they won't be used
7880

7981
runs-on: ${{ matrix.os }}
8082

8183
steps:
8284
- name: Checkout code
83-
uses: actions/checkout@v4
85+
uses: actions/checkout@v6
8486

8587
- name: Set up OCaml ${{ matrix.ocaml-compiler }}
8688
env:
8789
# otherwise setup-ocaml pins non-locked dependencies
8890
# https://github.com/ocaml/setup-ocaml/issues/166
8991
OPAMLOCKED: locked
90-
uses: ocaml/setup-ocaml@v2
92+
uses: ocaml/setup-ocaml@v3
9193
with:
9294
ocaml-compiler: ${{ matrix.ocaml-compiler }}
93-
opam-depext-flags: --with-test # doesn't work (https://github.com/ocaml/opam/issues/5836)
9495

95-
- name: Install graph-easy # TODO: remove if depext --with-test works
96-
if: ${{ matrix.os == 'ubuntu-latest' }}
96+
- name: Install graph-easy # TODO: remove if depext --with-test works (https://github.com/ocaml/opam/issues/5836)
97+
if: ${{ startsWith(matrix.os, 'ubuntu') }}
9798
run: sudo apt install -y libgraph-easy-perl
9899

99100
- name: Install spin
@@ -102,60 +103,11 @@ jobs:
102103
- name: Install dependencies
103104
run: opam install . --deps-only --locked --with-test
104105

106+
- name: Install os gem for operating system detection
107+
run: sudo gem install os
108+
105109
- name: Build
106110
run: ./make.sh nat
107111

108112
- name: Test extraction
109113
run: opam exec -- dune runtest tests/extraction
110-
111-
112-
gobview:
113-
strategy:
114-
fail-fast: false
115-
matrix:
116-
os:
117-
- ubuntu-latest
118-
ocaml-compiler:
119-
- ocaml-variants.4.14.0+options,ocaml-option-flambda # matches opam lock file
120-
# don't add any other because they won't be used
121-
node-version:
122-
- 14
123-
124-
runs-on: ${{ matrix.os }}
125-
126-
steps:
127-
- name: Checkout code
128-
uses: actions/checkout@v4
129-
130-
- name: Set up OCaml ${{ matrix.ocaml-compiler }}
131-
env:
132-
# otherwise setup-ocaml pins non-locked dependencies
133-
# https://github.com/ocaml/setup-ocaml/issues/166
134-
OPAMLOCKED: locked
135-
uses: ocaml/setup-ocaml@v2
136-
with:
137-
ocaml-compiler: ${{ matrix.ocaml-compiler }}
138-
139-
- name: Set up Node.js ${{ matrix.node-version }}
140-
uses: actions/setup-node@v4
141-
with:
142-
node-version: ${{ matrix.node-version }}
143-
144-
- name: Install dependencies
145-
run: opam install . --deps-only --locked
146-
147-
- name: Setup Gobview
148-
run: ./make.sh setup_gobview
149-
150-
- name: Build
151-
run: ./make.sh nat
152-
153-
- name: Build Gobview
154-
run: ./make.sh view
155-
156-
- name: Install selenium
157-
run: pip3 install selenium webdriver-manager
158-
159-
- name: Test Gobview
160-
run: |
161-
python3 scripts/test-gobview.py

.github/workflows/metadata.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ jobs:
1919

2020
steps:
2121
- name: Checkout code
22-
uses: actions/checkout@v4
22+
uses: actions/checkout@v6
2323

2424
- name: Validate CITATION.cff
2525
uses: docker://citationcff/cffconvert:latest
@@ -39,10 +39,10 @@ jobs:
3939

4040
steps:
4141
- name: Checkout code
42-
uses: actions/checkout@v4
42+
uses: actions/checkout@v6
4343

4444
- name: Set up Node.js ${{ matrix.node-version }}
45-
uses: actions/setup-node@v4
45+
uses: actions/setup-node@v6
4646
with:
4747
node-version: ${{ matrix.node-version }}
4848

.github/workflows/options.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,10 @@ jobs:
1515

1616
steps:
1717
- name: Checkout code
18-
uses: actions/checkout@v4
18+
uses: actions/checkout@v6
1919

2020
- name: Set up Node.js ${{ matrix.node-version }}
21-
uses: actions/setup-node@v4
21+
uses: actions/setup-node@v6
2222
with:
2323
node-version: ${{ matrix.node-version }}
2424

.github/workflows/semgrep.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,13 @@ jobs:
1616

1717
steps:
1818
- name: Checkout code
19-
uses: actions/checkout@v4
19+
uses: actions/checkout@v6
2020

2121
- name: Run semgrep
2222
run: semgrep scan --config .semgrep/ --sarif > semgrep.sarif
2323

2424
- name: Upload SARIF file to GitHub Advanced Security Dashboard
25-
uses: github/codeql-action/upload-sarif@v3
25+
uses: github/codeql-action/upload-sarif@v4
2626
with:
2727
sarif_file: semgrep.sarif
2828
if: always()

0 commit comments

Comments
 (0)