Skip to content

Commit f84bd34

Browse files
2 parents 50f7fd3 + 1f3a116 commit f84bd34

File tree

2,450 files changed

+85054
-37572
lines changed

Some content is hidden

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

2,450 files changed

+85054
-37572
lines changed

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ If you are moving or deleting declarations, please include these lines at the bo
2020
(that is, before the `---`) using the following format:
2121
2222
Moves:
23-
- Vector.* -> Mathlib.Vector.*
23+
- Vector.* -> List.Vector.*
2424
- ...
2525
2626
Deletions:

.github/build.in.yml

Lines changed: 28 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,14 @@
44
### NB: and regenerate those files by manually running
55
### NB: .github/workflows/mk_build_yml.sh
66

7+
env:
8+
# Disable Lake's automatic fetching of cloud builds.
9+
# Lake's cache is currently incompatible with Mathlib's `lake exe cache`.
10+
# This is because Mathlib's Cache assumes all build aritfacts present in the build directory
11+
# are valid by-products of the Mathlib build. Build artifacts fetched from Lake's cache do
12+
# not necessarily satisfy this property.
13+
LAKE_NO_CACHE: true
14+
715
jobs:
816
# Cancels previous runs of jobs in this file
917
cancel:
@@ -119,15 +127,6 @@ jobs:
119127
run: |
120128
lake build cache
121129
122-
- name: prune ProofWidgets .lake
123-
run: |
124-
# The ProofWidgets release contains not just the `.js` (which we need in order to build)
125-
# but also `.oleans`, which may have been built with the wrong toolchain.
126-
# This removes them.
127-
# See discussion at https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/nightly-testing/near/411225235
128-
rm -rf .lake/packages/proofwidgets/.lake/build/lib
129-
rm -rf .lake/packages/proofwidgets/.lake/build/ir
130-
131130
- name: get cache
132131
id: get
133132
run: |
@@ -156,6 +155,10 @@ jobs:
156155
run: |
157156
bash -o pipefail -c "env LEAN_ABORT_ON_PANIC=1 lake build --wfail -KCI"
158157
158+
- name: print the sizes of the oleans
159+
run: |
160+
du .lake/build/lib/Mathlib || echo "This code should be unreachable"
161+
159162
- name: upload cache
160163
# We only upload the cache if the build started (whether succeeding, failing, or cancelled)
161164
# but not if any earlier step failed or was cancelled.
@@ -237,13 +240,23 @@ jobs:
237240
238241
- name: check declarations in db files
239242
run: |
240-
python3 scripts/yaml_check.py docs/100.yaml docs/overview.yaml docs/undergrad.yaml
243+
python3 scripts/yaml_check.py docs/100.yaml docs/1000.yaml docs/overview.yaml docs/undergrad.yaml
241244
lake exe check-yaml
242245
243-
- name: verify `lake exe graph` works
244-
run: |
245-
lake exe graph
246-
rm import_graph.dot
246+
- name: generate our import graph
247+
run: lake exe graph
248+
249+
- name: upload the import graph
250+
uses: actions/upload-artifact@v4
251+
with:
252+
name: import-graph
253+
path: import_graph.dot
254+
## the default is 90, but we build often, so unless there's a reason
255+
## to care about old copies in the future, just say 7 days for now
256+
retention-days: 7
257+
258+
- name: clean up the import graph file
259+
run: rm import_graph.dot
247260

248261
- name: build everything
249262
# make sure everything is available for test/import_all.lean
@@ -256,7 +269,7 @@ jobs:
256269
with:
257270
linters: gcc
258271
run:
259-
lake test
272+
lake --iofail test
260273

261274
- name: check for unused imports
262275
id: shake

.github/dependabot.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@ version: 2 # Specifies the version of the Dependabot configuration file format
33
updates:
44
# Configuration for dependency updates
55
- package-ecosystem: "github-actions" # Specifies the ecosystem to check for updates
6-
directory: "/" # Specifies the directory to check for dependencies; "/" means the root directory
6+
directories:
7+
- "/.github/*" # covers `build.in.yml` as well, which is not in `.github/workflows/` because it shouldn't be run in CI.
78
schedule:
89
# Check for updates to GitHub Actions every month
910
interval: "monthly"

.github/workflows/PR_summary.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ on:
55

66
jobs:
77
build:
8+
name: "post-or-update-summary-comment"
89
runs-on: ubuntu-latest
910

1011
steps:

.github/workflows/add_label_from_comment.yml

Lines changed: 0 additions & 60 deletions
This file was deleted.

.github/workflows/add_label_from_review.yml

Lines changed: 0 additions & 62 deletions
This file was deleted.

.github/workflows/add_label_from_review_comment.yml

Lines changed: 0 additions & 62 deletions
This file was deleted.

.github/workflows/bench_summary_comment.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ jobs:
2727
run: |
2828
{
2929
cat scripts/bench_summary.lean
30-
printf $'run_cmd BenchAction.addBenchSummaryComment %s "leanprover-community/mathlib4"' "${PR}"
30+
printf $'run_cmd BenchAction.addBenchSummaryComment %s "leanprover-community/mathlib4" %s' "${PR}" "${{ github.run_id }}"
3131
} |
3232
lake env lean --stdin
3333
env:

.github/workflows/bors.yml

Lines changed: 28 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,14 @@ on:
1414

1515
name: continuous integration (staging)
1616

17+
env:
18+
# Disable Lake's automatic fetching of cloud builds.
19+
# Lake's cache is currently incompatible with Mathlib's `lake exe cache`.
20+
# This is because Mathlib's Cache assumes all build aritfacts present in the build directory
21+
# are valid by-products of the Mathlib build. Build artifacts fetched from Lake's cache do
22+
# not necessarily satisfy this property.
23+
LAKE_NO_CACHE: true
24+
1725
jobs:
1826
# Cancels previous runs of jobs in this file
1927
cancel:
@@ -129,15 +137,6 @@ jobs:
129137
run: |
130138
lake build cache
131139
132-
- name: prune ProofWidgets .lake
133-
run: |
134-
# The ProofWidgets release contains not just the `.js` (which we need in order to build)
135-
# but also `.oleans`, which may have been built with the wrong toolchain.
136-
# This removes them.
137-
# See discussion at https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/nightly-testing/near/411225235
138-
rm -rf .lake/packages/proofwidgets/.lake/build/lib
139-
rm -rf .lake/packages/proofwidgets/.lake/build/ir
140-
141140
- name: get cache
142141
id: get
143142
run: |
@@ -166,6 +165,10 @@ jobs:
166165
run: |
167166
bash -o pipefail -c "env LEAN_ABORT_ON_PANIC=1 lake build --wfail -KCI"
168167
168+
- name: print the sizes of the oleans
169+
run: |
170+
du .lake/build/lib/Mathlib || echo "This code should be unreachable"
171+
169172
- name: upload cache
170173
# We only upload the cache if the build started (whether succeeding, failing, or cancelled)
171174
# but not if any earlier step failed or was cancelled.
@@ -247,13 +250,23 @@ jobs:
247250
248251
- name: check declarations in db files
249252
run: |
250-
python3 scripts/yaml_check.py docs/100.yaml docs/overview.yaml docs/undergrad.yaml
253+
python3 scripts/yaml_check.py docs/100.yaml docs/1000.yaml docs/overview.yaml docs/undergrad.yaml
251254
lake exe check-yaml
252255
253-
- name: verify `lake exe graph` works
254-
run: |
255-
lake exe graph
256-
rm import_graph.dot
256+
- name: generate our import graph
257+
run: lake exe graph
258+
259+
- name: upload the import graph
260+
uses: actions/upload-artifact@v4
261+
with:
262+
name: import-graph
263+
path: import_graph.dot
264+
## the default is 90, but we build often, so unless there's a reason
265+
## to care about old copies in the future, just say 7 days for now
266+
retention-days: 7
267+
268+
- name: clean up the import graph file
269+
run: rm import_graph.dot
257270

258271
- name: build everything
259272
# make sure everything is available for test/import_all.lean
@@ -266,7 +279,7 @@ jobs:
266279
with:
267280
linters: gcc
268281
run:
269-
lake test
282+
lake --iofail test
270283

271284
- name: check for unused imports
272285
id: shake

0 commit comments

Comments
 (0)