Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
228 commits
Select commit Hold shift + click to select a range
ac22b1b
started compactsystems
Feb 12, 2025
08d543c
not there for compact
pfaffelh Feb 12, 2025
f69f095
not done yet
Feb 13, 2025
cf6a0c4
found emptyset
Feb 14, 2025
5d99e0b
added mono
Feb 14, 2025
dabe67d
compiles
pfaffelh Feb 15, 2025
911f112
dissipate
Feb 15, 2025
bbc424d
added dissipate
pfaffelh Feb 15, 2025
e2840e7
small update
pfaffelh Feb 16, 2025
960f09c
cleaning
Feb 16, 2025
ee70c17
cleaning2
Feb 16, 2025
b8ab9fe
cleaning3
Feb 16, 2025
b0ae9b5
added mono from diss
Feb 17, 2025
3dc1996
diss
Feb 21, 2025
be4d94d
Merge branch 'master' into pfaffelh_compactSystem
Feb 21, 2025
3e0004c
final?
Feb 21, 2025
a6ca197
started compact2
Feb 23, 2025
458b023
Merge branch 'master' into pfaffelh_compactSystem
Mar 8, 2025
384af74
merge master
Mar 8, 2025
3aca8b2
Merge branch 'pfaffelh_compactSystem' into pfaffelh_compactSystem2
Mar 8, 2025
3044137
update squareCylinder
Mar 11, 2025
a81f3d8
added or univ
Mar 11, 2025
de59673
Merge branch 'pfaffelh_compactSystem' into pfaffelh_compactSystem2
Mar 11, 2025
cf4a387
compactClosedSquareCylinders are a compact system
Mar 11, 2025
38a87f8
Merge branch 'master' into pfaffelh_compactSystem
Mar 11, 2025
e65a21b
Merge branch 'pfaffelh_compactSystem' into pfaffelh_compactSystem2
Mar 11, 2025
8109d51
Merge branch 'master' into pfaffelh_compactSystem2
Mar 19, 2025
59a74e1
Merge branch 'master' into pfaffelh_compactSystem
Mar 19, 2025
e274132
Merge branch 'pfaffelh_compactSystem' into pfaffelh_compactSystem2
Mar 19, 2025
16b754e
in line with pfaffelh_compactSystem2
Mar 19, 2025
8ccc3c1
Merge branch 'master' into pfaffelh_compactSystem
Apr 30, 2025
6fced3f
added iff
pfaffelh Apr 30, 2025
fb41ddf
Merge branch 'master' into pfaffelh_compactSystem
pfaffelh Apr 30, 2025
8765264
n
pfaffelh Apr 30, 2025
66d9abe
update Mathlib
May 2, 2025
22514a1
Merge branch 'master' into pfaffelh_compactSystem
May 2, 2025
acc460a
merged cs
pfaffelh May 2, 2025
0635c1c
deleted a comment
May 2, 2025
2ee5f25
linters dissipate
May 2, 2025
383923b
run mk_all
pfaffelh May 2, 2025
ab38ce2
min imports
pfaffelh May 2, 2025
0983f2f
deleted hash
May 2, 2025
a323463
update imports
May 2, 2025
870e57c
merge cs
May 2, 2025
96a19d4
deleted double thm
May 2, 2025
847fc5e
Merge branch 'master' into pfaffelh_compactSystem
May 13, 2025
eb4e37c
cs0
May 22, 2025
6ef9357
Merge branch 'master' into pfaffelh_compactSystem
May 23, 2025
2125c02
fininsh?
May 23, 2025
67549dd
Merge branch 'master' into pfaffelh_compactSystem
May 23, 2025
8f0ae63
simp normal forms
May 24, 2025
23aba97
Merge branch 'pfaffelh_compactSystem' into pfaffelh_compactSystem2
May 24, 2025
53cb102
small
May 27, 2025
7fbd0b2
sq
May 28, 2025
3cff980
need univ
May 29, 2025
82e3ac5
Revert "need univ"
May 29, 2025
de03236
Revert "sq"
May 29, 2025
ead3617
more general pi
May 30, 2025
9d9f1e7
Merge branch 'master' into pfaffelh_compactSystem
May 30, 2025
f4e235f
Merge branch 'pfaffelh_compactSystem' into pfaffelh_compactSystem2
May 30, 2025
285a883
repair dissipate
May 30, 2025
32ec3dc
Merge branch 'pfaffelh_compactSystem' into pfaffelh_compactSystem2
May 30, 2025
a708e51
dealing with comments
Jun 4, 2025
662c215
Update Mathlib.lean
pfaffelh Jun 4, 2025
6dd67ed
Update Mathlib.lean
pfaffelh Jun 4, 2025
f852653
Update Mathlib.lean
pfaffelh Jun 4, 2025
6afe611
Update Mathlib.lean
pfaffelh Jun 4, 2025
abba3bf
Update Mathlib.lean
pfaffelh Jun 4, 2025
eb54bcf
Update Mathlib.lean
pfaffelh Jun 4, 2025
3a83c6a
Update Mathlib.lean
pfaffelh Jun 4, 2025
8cd31bd
Update Mathlib.lean
pfaffelh Jun 4, 2025
81b59ae
Update Mathlib.lean
pfaffelh Jun 4, 2025
6610961
Update Mathlib.lean
pfaffelh Jun 4, 2025
7731bac
Update Mathlib.lean
pfaffelh Jun 4, 2025
1f004f5
Update Mathlib.lean
pfaffelh Jun 4, 2025
2905ef6
Update Mathlib.lean
pfaffelh Jun 4, 2025
b93d00c
Update Mathlib.lean
pfaffelh Jun 4, 2025
eac2037
Update Mathlib.lean
pfaffelh Jun 4, 2025
4a94a12
Update Mathlib.lean
pfaffelh Jun 4, 2025
57f06e0
Update Mathlib.lean
pfaffelh Jun 4, 2025
de14766
Update Mathlib.lean
pfaffelh Jun 4, 2025
3edbee2
Update Mathlib.lean
pfaffelh Jun 4, 2025
56be952
Update Mathlib.lean
pfaffelh Jun 4, 2025
1949b3b
Update Mathlib.lean
pfaffelh Jun 4, 2025
783c0c3
Update Mathlib.lean
pfaffelh Jun 7, 2025
32439d4
Update Mathlib.lean
pfaffelh Jun 7, 2025
96ef30d
fix two typos
Jun 7, 2025
4c77f31
took Mathlib from master
Jun 8, 2025
f16b9dc
mk_all
Jun 8, 2025
0d4a6df
merge compactSystem
Jun 8, 2025
fc3724f
changed deprecated
Jun 8, 2025
f6dee55
fix(CI): run dependent issues only on leanprover-community/mathlib4 (…
adomani Jun 8, 2025
904b0ea
docs(LinearAlgebra/Matrix/ToLin): fix docstring (#25571)
plp127 Jun 8, 2025
e4fa947
feat(SetTheory/Cardinal): relate nonemptiness of a set to its cardina…
b-mehta Jun 8, 2025
550cccd
feat: `Subgroup ↥(H : Subgroup G) ≃o { H' : Subgroup G // H' ≤ H }` (…
Komyyy Jun 8, 2025
0e5651c
fix(CI): avoid running mathlib4 only actions in forks (#25590)
adomani Jun 8, 2025
d227ea7
feat(Topology/Algebra/InfiniteSum/UniformOn): add congr lemmas (#25446)
CBirkbeck Jun 8, 2025
f9bb2a1
fix(CI): avoid running more mathlib4 only actions in forks (#25592)
adomani Jun 8, 2025
edcd0fa
feat(Combinatorics/SimpleGraph): introduce `ConnectedComponent.toSimp…
IvanRenison Jun 8, 2025
f86274e
feat(Bicategory/Functor/LocallyDiscrete): add `Functor.toPseudofuncto…
callesonne Jun 8, 2025
f13ef32
fix(CI): yet another action that should not run from forks (#25594)
adomani Jun 8, 2025
4a72c0e
feat(Data/PFunctor/Univariate): Generalize universe level in `PFuncto…
quangvdao Jun 8, 2025
7300105
fix(CI): prevent another emoji reaction from forks (#25598)
adomani Jun 8, 2025
b667011
chore: update Mathlib dependencies 2025-06-09 (#25610)
mathlib-bors[bot] Jun 9, 2025
65bb74e
fix: only run jobs in the fork workflow for PRs from forks (#25615)
bryangingechen Jun 9, 2025
8bd172f
chore: let bors merge PRs from forks (#25614)
bryangingechen Jun 9, 2025
29893d1
feat(GroupWithZero): monoid with zero homs to (co)products (#25466)
pechersky Jun 9, 2025
69da634
chore: deprime `induction` in `GroupTheory` (#25353)
Parcly-Taxel Jun 9, 2025
4c3f63c
feat(RepresentationTheory/*): add the bar resolution (#21738)
Jun 9, 2025
44807c3
feat(Probability): translations of gaussians are gaussian (#25532)
RemyDegenne Jun 9, 2025
da76d24
feat(Data/Fin): `Fin.castLE` on the result of a cast from `Nat` (#25083)
javra Jun 9, 2025
f941cfb
feat(Algebra/Group/Pi): add injectivity and coe lemmas (#25525)
wupr Jun 9, 2025
e4a8790
chore: update Mathlib dependencies 2025-06-09 (#25618)
mathlib-bors[bot] Jun 9, 2025
ed2d30a
fix(HahnSeries): solve `SMul Rat` diamonds, and lemmas about casts (#…
eric-wieser Jun 9, 2025
e5f8a3f
feat(MeasureTheory/Integral): the Riesz-Markov-Kakutani theorem for `…
yoh-tanimoto Jun 9, 2025
c1c4ab3
chore : Split summability results for Eisenstein series into own file…
CBirkbeck Jun 9, 2025
73699b5
feat(CategoryTheory.Abelian.Images, CategoryTheory.Limits.Preserves.S…
Jun 9, 2025
8476f50
feat(RingTheory/DedekindDomain): unramified primes does not divide di…
erdOne Jun 9, 2025
9cc1684
feat (MeasureTheory/Measure/Dirac): a point being in a measurable set…
bwehlin Jun 9, 2025
bd53dfc
feat(Finset/SymmDiff): add additional api lemmas (#25553)
b-mehta Jun 9, 2025
ceed4ed
fix: Remove lemmas from `Ring/Hom/Basic` (#25447)
linesthatinterlace Jun 9, 2025
d39aeb9
fix: run pr branch version of mk_all (#25624)
bryangingechen Jun 9, 2025
ba5f6a3
feat(SpecialFunctions/Log): more continuity and limits for logb (#18912)
b-mehta Jun 9, 2025
ab59fae
chore: update Mathlib dependencies 2025-06-09 (#25627)
mathlib-bors[bot] Jun 9, 2025
1014980
fix: add missing simps projections for ContinuousAddEquiv (#24892)
Ruben-VandeVelde Jun 9, 2025
cdac1d1
feat(Analysis/InnerProductSpace/Positive): add theorem `IsPositive.no…
IvanRenison Jun 9, 2025
67f44c7
chore: use non-deprecated function in bench_summary (#25495)
adomani Jun 9, 2025
61b7062
feat: don't use `Lean.githash` in `cache` hashing (#25639)
kim-em Jun 10, 2025
3c1ffdd
feat(FiberedCategory/HasFibers): define HasFibers class (#13611)
callesonne Jun 10, 2025
9a40e53
chore(CategoryTheory): unsimp `Mon_Class.tensorObj.one_def` (#25601)
YaelDillies Jun 10, 2025
9b42218
feat: add AlgHom.natCard_of_splits (#25253)
Ruben-VandeVelde Jun 10, 2025
2197d6c
ci: reporting success should include post build checks (#25642)
jcommelin Jun 10, 2025
2b53c37
feat(CategoryTheory): lifting properties and parametrized adjunctions…
plp127 Jun 10, 2025
df3ef7c
feat: decidable equality for `Quiver.Path` (#25623)
mattrobball Jun 10, 2025
f3a2d6d
feat: improve API for isolated zeros of analytic functions (#25643)
kebekus Jun 10, 2025
064dafb
feat(NumberField/Units): prove that a family of units is of max rank …
xroblot Jun 10, 2025
8ecf9c2
doc(MeasureTheory/Integral/Bochner): update links in docstring (#25647)
oliver-butterley Jun 10, 2025
705b200
fix(C): autolabel applies the label using curl (#25641)
adomani Jun 10, 2025
2b4256a
feat(Analysis/InnerProductSpace/Projection): add lemma `Submodule.le_…
IvanRenison Jun 10, 2025
5485e86
fix(CI): autolabel compares branch with master (#25652)
adomani Jun 10, 2025
2b21a90
feat(Analysis/InnerProductSpace): exchange range + ker (#25417)
Timeroot Jun 10, 2025
86c1306
fix(CI); autolabel correct json fields (#25661)
adomani Jun 10, 2025
11e7d35
feat: add path component of the identity in a locally path connected …
j-loreaux Jun 10, 2025
f83017b
chore: limit GITHUB_TOKEN permissions on pull_request_target workflow…
bryangingechen Jun 10, 2025
02d77f7
chore: fix spelling mistakes (#25674)
euprunin Jun 10, 2025
b98fdd3
feat: let `gcongr` deal with implications (#25534)
JovanGerb Jun 10, 2025
df6eeba
chore: split Mathlib/Topology/Algebra/RestrictedProduct (#25558)
kbuzzard Jun 10, 2025
7121e24
chore: deprecate RestrictedProduct file (#25679)
kbuzzard Jun 10, 2025
43fffd5
chore: move pointed cones, proper cones (#25251)
YaelDillies Jun 11, 2025
8e8438d
feat: if `p = a * b` is irreducible, then `a = 1` or `b = 1` (#24913)
YaelDillies Jun 11, 2025
f0b7298
feat: user activity report script (#25658)
kim-em Jun 11, 2025
ac30f79
chore(Analysis/Normed/Operator/BoundedLinearMaps): centralise one var…
grunweg Jun 11, 2025
d233a15
feat: add migrate_to_fork.py script for transitioning to fork-based w…
kim-em Jun 11, 2025
c5219f3
feat(CategoryTheory): the colimit type of a functor to types (#23339)
joelriou Jun 11, 2025
8b9e557
chore: deprecate `forall_in_swap` (#25670)
YaelDillies Jun 11, 2025
be48d33
chore: improve formatting of lists in documentation (#25655)
Ruben-VandeVelde Jun 11, 2025
06b1375
chore(Algebra/Homology): fix ComplexShape.boundaryLE_embeddingUpIntLE…
joelriou Jun 11, 2025
ceade89
fix: download oleans from main cache before fork cache (#25682)
kim-em Jun 11, 2025
270b84f
chore: silence more workflows on forks (#25685)
adomani Jun 11, 2025
eeead51
fix(bot_fix_style): use correct input name (#25678)
bryangingechen Jun 11, 2025
0941d03
feat(ModelTheory/Semantics): BoundedFormula.realize_foldr_imp (#23502)
Timeroot Jun 11, 2025
4886dc0
doc: typo fix (#25689)
js2357 Jun 11, 2025
547e60b
feat(ModelTheory/Syntax): substFunc (#23504)
Timeroot Jun 11, 2025
804fe9b
feat(GroupWithZero/WithZero): injectivity and monotonicity of `WithZe…
pechersky Jun 11, 2025
27170cc
chore(RingTheory/DedekindDomain): missing instances (#25613)
erdOne Jun 11, 2025
8f52e0c
feat(Order/CompleteLattice/Defs): add `lt_biSup_iff` (#25648)
oliver-butterley Jun 11, 2025
8752779
fix(docs/Guide.lean): typo (#25703)
Timeroot Jun 11, 2025
944fde3
chore: use `Filter.map` instead of `<$>` (#25694)
Komyyy Jun 11, 2025
c3d0049
feat: add `Batteries.Tactic.Case` to `Mathlib.Tactic.Common` (#25706)
kmill Jun 11, 2025
5e73dae
feat: add lemmas for `C(α, β)` and `α →ᵇ β` regarding `edist` and `‖·…
j-loreaux Jun 11, 2025
225d456
chore: update Mathlib dependencies 2025-06-11 (#25711)
mathlib-bors[bot] Jun 11, 2025
6d6e6b0
chore: temporarily disable workflows that break on PRs from forks (#2…
bryangingechen Jun 11, 2025
c2fef4f
fix: add missing quotes in shell code (#25713)
bryangingechen Jun 11, 2025
cf612d9
feat: a `grw` tactic for rewriting using inequalities (#8167)
JovanGerb Jun 11, 2025
af3d609
chore: remove last use of `mono` tactic (#25698)
JovanGerb Jun 11, 2025
928db47
chore: update migrate_to_fork.py (#25688)
kim-em Jun 12, 2025
98e7257
chore: migrate zulip_emoji_closed and zulip_emoji_labeling to pull_re…
bryangingechen Jun 12, 2025
a583eba
chore: update the migration script to check for necessary permissions…
mattrobball Jun 12, 2025
c63a007
chore: update the migration script to check for necessary permissions…
mattrobball Jun 12, 2025
a300ca3
feat: improvements to user_activity_report.py (#25721)
kim-em Jun 12, 2025
4dfec11
chore: disable build.yml and bors.yml on forks (#25722)
bryangingechen Jun 12, 2025
b710b1d
feat: allow contributors to remove labels with comments (#25723)
bryangingechen Jun 12, 2025
bc4a464
refactor: make `Matrix.kroneckerTMulAlgEquiv` heterogeneous (#25693)
eric-wieser Jun 12, 2025
1a9e739
feat(Algebra/Group/Even): Add missing lemmas (#20818)
artie2000 Jun 12, 2025
53e7a95
feat: check that the mathlib options exist (#25687)
adomani Jun 12, 2025
6ce4ea8
feat: is{Inducing,Embedding}_prodMkLeft (#25705)
grunweg Jun 12, 2025
9a8b56b
fix: typo in labels_from_comment.yml (#25727)
bryangingechen Jun 12, 2025
f4c6f82
feat(RingTheory/Polynomial/ContentIdeal): the content ideal of a poly…
fbarroero Jun 12, 2025
d4297c3
feat(ModelTheory): Formula.iSup and iInf (#21948)
ChrisHughes24 Jun 12, 2025
73299d8
feat: make sure that the simp normal form of equiv-like classes pushe…
sgouezel Jun 12, 2025
f36904c
feat(MeasureTheory): convolution of measures with densities (#25718)
DavidLedvinka Jun 12, 2025
0481536
fix: outdated docstring (#25717)
grunweg Jun 12, 2025
4203538
feat: interaction between ContinuousLinearMap.coprod and ContinuousLi…
Jun 12, 2025
f47b18f
refactor: redefine `ProperCone` as an `abbrev` for `ClosedSubmodule` …
YaelDillies Jun 12, 2025
50b53b5
chore(Data/Set/Basic): deprecate lemmas that abuse the `Set α := α → …
YaelDillies Jun 12, 2025
1cd5443
feat: preserve draft status when migrating PRs to fork (#25777)
kim-em Jun 12, 2025
266033f
chore(Data/Set): move very basic lemmas earlier (#25707)
artie2000 Jun 12, 2025
4744979
feat(Geometry/Euclidean/Incenter): incenters and excenters (#23752)
jsm28 Jun 12, 2025
6504ab8
feat(RingTheory/Ideal/Maximal): `ne_top_iff_exists_maximal` (#25331)
fbarroero Jun 12, 2025
c67389d
chore(Data/Finset): rename `disj_sum` -> `disjSum` and `disj_union` -…
plp127 Jun 12, 2025
f03d0c5
feat: unique differentiability over R implies unique differentiabilit…
sgouezel Jun 12, 2025
169b4eb
chore: for models with corners, weaken `transDiffeomomorph` to `trans…
sgouezel Jun 12, 2025
11cedfa
fix: documentation of `IsLocalHom` (#25686)
AntoineChambert-Loir Jun 12, 2025
bfff19c
chore: update `README.md` with new contribution process (#25810)
mattrobball Jun 12, 2025
cd991cb
feat: interactions between complete lattices and group operations (#2…
j-loreaux Jun 12, 2025
b8d7780
chore: disable scheduled workflows on forks (#25813)
bryangingechen Jun 12, 2025
a8c913e
ci: Alternative method to determine the PR metadata from forks (#25793)
Vierkantor Jun 12, 2025
1b93a70
chore(CategoryTheory/Sites/Preserves): generalize universes (#25764)
chrisflav Jun 12, 2025
0bc29b9
feat(Topology): compact open covered sets (#24689)
chrisflav Jun 12, 2025
2785257
chore: rename test of `Mathlib.Tactic.ClearExclamation` (from `Clear!…
euprunin Jun 13, 2025
5da2325
feat: add autoparams for proof fields of `Equiv` (#25350)
thorimur Jun 13, 2025
3ae4385
chore(CategoryTheory): add default tactic for `Functor.ext_of_iso` (#…
callesonne Jun 13, 2025
f3786a0
chore(Category/Theory/Whiskering): tag `[reassoc]` some lemmas about …
robin-carlier Jun 13, 2025
0b16b52
feat(Algebra/MvPolynomial): nilpotents and units (#25062)
erdOne Jun 13, 2025
772aa17
feat(CategoryTheory/Limits/Preserves): Preservations of (co)limits by…
robin-carlier Jun 13, 2025
782bbd2
feat: port Mathlib 3's `Nat.factors` norm_num extension to a `simproc…
eric-wieser Jun 13, 2025
e04170d
feat(CategoryTheory/Sites): the equalizer sheaf condition for a singl…
chrisflav Jun 13, 2025
b54343e
chore(grewrite): import `gcongr` and `grewrite` in `Tactic.Common` (#…
JovanGerb Jun 13, 2025
c59c7d2
feat(AlgebraicGeometry): locally directed gluing (#24796)
erdOne Jun 13, 2025
5b78301
feat(AlgebraicGeometry): inverse limit of nonempty quasicompact close…
erdOne Jun 13, 2025
a0f8756
feat(gcongr): tag lemmas for `Subtype.mk` (#25738)
JovanGerb Jun 13, 2025
577b0e5
feat(RepresentationTheory/GroupCohomology): extra lemmas (#25815)
Jun 13, 2025
b7f416a
feat: register more tactics for `hint` (#25828)
euprunin Jun 13, 2025
fda7248
feat(gcongr): fix pattern elaborator and @[gcongr] for lemmas introdu…
JovanGerb Jun 14, 2025
ccbd500
chore: fix capitalization of two lemmas (#25853)
sgouezel Jun 14, 2025
b64dedc
feat: improvements to RefinedDiscrTree (#11968)
JovanGerb Jun 14, 2025
3b25d79
fix(Tactic/DeprecateTo): get date from Lean (#25811)
plp127 Jun 14, 2025
be6884b
feat(NumberTheory): discriminant is norm of different (#25792)
erdOne Jun 14, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
35 changes: 27 additions & 8 deletions .github/build.in.yml
Original file line number Diff line number Diff line change
Expand Up @@ -136,9 +136,8 @@ jobs:
shell: bash # We're only building the `master` branch version of the tools, so don't need to run inside landrun.
run: |
cd master-branch
lake build cache mk_all check-yaml graph
lake build cache check-yaml graph
ls .lake/build/bin/cache
ls .lake/build/bin/mk_all
ls .lake/build/bin/check-yaml
ls .lake/packages/importGraph/.lake/build/bin/graph

Expand Down Expand Up @@ -219,13 +218,11 @@ jobs:
- name: update {Mathlib, Tactic, Counterexamples, Archive}.lean
id: mk_all
continue-on-error: true # Allow workflow to continue, outcome checked later
# This only runs `mk_all --check` from the `master-branch`, so doesn't need to be inside landrun
shell: bash
# This runs `mk_all --check` from the `pr-branch` inside landrun
run: |
cd pr-branch

echo "Running mk_all --check (from master-branch)..."
LAKE_HOME="$TOOLCHAIN_DIR" ../master-branch/.lake/build/bin/mk_all --check
echo "Running mk_all --check (from pr-branch)..."
lake exe mk_all --check

- name: begin gh-problem-match-wrap for build step
uses: leanprover-community/gh-problem-matcher-wrap@20007cb926a46aa324653a387363b52f07709845 # 2025-04-23
Expand Down Expand Up @@ -422,6 +419,7 @@ jobs:

post_steps:
name: Post-Build StepJOB_NAME
if: FORK_CONDITION
needs: [build]
runs-on: ubuntu-latest # Note these steps run on disposable GitHub runners, so no landrun sandboxing is needed.
steps:
Expand Down Expand Up @@ -503,20 +501,34 @@ jobs:

style_lint:
name: Lint styleJOB_NAME
if: FORK_CONDITION
runs-on: ubuntu-latest
steps:
- uses: leanprover-community/lint-style-action@f2e7272aad56233a642b08fe974cf09dd664b0c8 # 2025-05-22
with:
mode: check
lint-bib-file: true

build_and_lint:
name: CI Success
if: FORK_CONDITION
needs: [style_lint, post_steps]
runs-on: ubuntu-latest
steps:
- name: succeed
run: |
echo "Success: Required build and lint checks completed!"

final:
name: Post-CI jobJOB_NAME
if: FORK_CONDITION
needs: [style_lint, build, post_steps]
runs-on: ubuntu-latest
steps:
- id: PR
# This action is used to determine the PR metadata in the event of a push.
# If it is called from a PR from a fork, it will find nothing/irrelevant data.
- if: github.event_name != 'pull_request_target'
id: PR_from_push
uses: 8BitJonny/gh-get-current-pr@08e737c57a3a4eb24cec6487664b243b77eb5e36 # 3.0.0
# TODO: this may not work properly if the same commit is pushed to multiple branches:
# https://github.com/8BitJonny/gh-get-current-pr/issues/8
Expand All @@ -525,6 +537,13 @@ jobs:
# Only return if PR is still open
filterOutClosed: true

# Combine the output from the previous action with the metadata supplied by GitHub itself.
- id: PR
shell: bash
run: |
echo "number=${{ steps.PR_from_push.outputs.number || github.event.pull_request.number }}" >> $GITHUB_OUTPUT
echo "pr_labels=${{ steps.PR_from_push.outputs.pr_labels || join(github.event.pull_request.labels.*.name, ',') }}" >> $GITHUB_OUTPUT

- if: contains(steps.PR.outputs.pr_labels, 'bench-after-CI')
name: If `bench-after-CI` is present, add a `!bench` comment.
uses: GrantBirki/comment@608e41b19bc973020ec0e189ebfdae935d7fe0cc # v2.1.1
Expand Down
6 changes: 6 additions & 0 deletions .github/workflows/PR_summary.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,12 @@ name: Post PR summary comment
on:
pull_request_target:

# Limit permissions for GITHUB_TOKEN for the entire workflow
permissions:
contents: read
pull-requests: write # Only allow PR comments/labels
# All other permissions are implicitly 'none'

jobs:
build:
name: "post-or-update-summary-comment"
Expand Down
74 changes: 48 additions & 26 deletions .github/workflows/add_label_from_diff.yaml
Original file line number Diff line number Diff line change
@@ -1,42 +1,64 @@
name: Autolabel PRs

on:
pull_request:
pull_request_target:
types: [opened]
push:
paths:
- scripts/autolabel.lean
- .github/workflows/add_label_from_diff.yaml

# Limit permissions for GITHUB_TOKEN for the entire workflow
permissions:
contents: read
pull-requests: write # Only allow PR comments/labels
# All other permissions are implicitly 'none'

jobs:
add_topic_label:
name: Add topic label
runs-on: ubuntu-latest
# Don't run on forks, where we wouldn't have permissions to add the label anyway.
if: github.repository == 'leanprover-community/mathlib4'
permissions:
issues: write
checks: write
pull-requests: write
contents: read
steps:
- name: Checkout code
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
fetch-depth: 0
- name: Configure Lean
uses: leanprover/lean-action@f807b338d95de7813c5c50d018f1c23c9b93b4ec # 2025-04-24
with:
auto-config: false
use-github-cache: false
use-mathlib-cache: false
- name: lake exe autolabel
run: |
# the checkout dance, to avoid a detached head
git checkout master
git checkout -
lake exe autolabel "$NUMBER"
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GH_REPO: ${{ github.repository }}
NUMBER: ${{ github.event.number }}
- name: Checkout code
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
- name: Configure Lean
uses: leanprover/lean-action@f807b338d95de7813c5c50d018f1c23c9b93b4ec # 2025-04-24
with:
auto-config: false
use-github-cache: false
use-mathlib-cache: false
- name: lake exe autolabel
run: |
# the checkout dance, to avoid a detached head
git checkout master
git checkout -
labels="$(lake exe autolabel)"
printf '%s\n' "${labels}"
# extract
label="$(printf '%s' "${labels}" | sed -n 's=.*#\[\([^,]*\)\].*=\1=p')"
printf 'label: "%s"\n' "${label}"
if [ -n "${label}" ]
then
printf 'Applying label %s\n' "${label}"
# we use curl rather than octokit/request-action so that the job won't fail
# (and send an annoying email) if the labels don't exist
url="https://api.github.com/repos/${{ github.repository }}/issues/${{ github.event.pull_request.number }}/labels"
printf 'url: %s\n' "${url}"
jsonLabel="$(printf '{"labels":["%s"]}' "${label}")"
printf 'jsonLabel: %s\n' "${jsonLabel}"
curl --request POST \
--header 'Accept: application/vnd.github+json' \
--header 'authorization: Bearer ${{ secrets.GITHUB_TOKEN }}' \
--header 'X-GitHub-Api-Version: 2022-11-28' \
--url "${url}" \
--data "${jsonLabel}"
else
echo "There is no single label that we could apply, so we are not applying any label."
fi
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
39 changes: 29 additions & 10 deletions .github/workflows/bors.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ permissions:

jobs:
build:
if: true
if: github.repository == 'leanprover-community/mathlib4'
name: Build
runs-on: bors
outputs:
Expand Down Expand Up @@ -146,9 +146,8 @@ jobs:
shell: bash # We're only building the `master` branch version of the tools, so don't need to run inside landrun.
run: |
cd master-branch
lake build cache mk_all check-yaml graph
lake build cache check-yaml graph
ls .lake/build/bin/cache
ls .lake/build/bin/mk_all
ls .lake/build/bin/check-yaml
ls .lake/packages/importGraph/.lake/build/bin/graph

Expand Down Expand Up @@ -229,13 +228,11 @@ jobs:
- name: update {Mathlib, Tactic, Counterexamples, Archive}.lean
id: mk_all
continue-on-error: true # Allow workflow to continue, outcome checked later
# This only runs `mk_all --check` from the `master-branch`, so doesn't need to be inside landrun
shell: bash
# This runs `mk_all --check` from the `pr-branch` inside landrun
run: |
cd pr-branch

echo "Running mk_all --check (from master-branch)..."
LAKE_HOME="$TOOLCHAIN_DIR" ../master-branch/.lake/build/bin/mk_all --check
echo "Running mk_all --check (from pr-branch)..."
lake exe mk_all --check

- name: begin gh-problem-match-wrap for build step
uses: leanprover-community/gh-problem-matcher-wrap@20007cb926a46aa324653a387363b52f07709845 # 2025-04-23
Expand Down Expand Up @@ -432,6 +429,7 @@ jobs:

post_steps:
name: Post-Build Step
if: github.repository == 'leanprover-community/mathlib4'
needs: [build]
runs-on: ubuntu-latest # Note these steps run on disposable GitHub runners, so no landrun sandboxing is needed.
steps:
Expand Down Expand Up @@ -513,20 +511,34 @@ jobs:

style_lint:
name: Lint style
if: github.repository == 'leanprover-community/mathlib4'
runs-on: ubuntu-latest
steps:
- uses: leanprover-community/lint-style-action@f2e7272aad56233a642b08fe974cf09dd664b0c8 # 2025-05-22
with:
mode: check
lint-bib-file: true

build_and_lint:
name: CI Success
if: github.repository == 'leanprover-community/mathlib4'
needs: [style_lint, post_steps]
runs-on: ubuntu-latest
steps:
- name: succeed
run: |
echo "Success: Required build and lint checks completed!"

final:
name: Post-CI job
if: true
if: github.repository == 'leanprover-community/mathlib4'
needs: [style_lint, build, post_steps]
runs-on: ubuntu-latest
steps:
- id: PR
# This action is used to determine the PR metadata in the event of a push.
# If it is called from a PR from a fork, it will find nothing/irrelevant data.
- if: github.event_name != 'pull_request_target'
id: PR_from_push
uses: 8BitJonny/gh-get-current-pr@08e737c57a3a4eb24cec6487664b243b77eb5e36 # 3.0.0
# TODO: this may not work properly if the same commit is pushed to multiple branches:
# https://github.com/8BitJonny/gh-get-current-pr/issues/8
Expand All @@ -535,6 +547,13 @@ jobs:
# Only return if PR is still open
filterOutClosed: true

# Combine the output from the previous action with the metadata supplied by GitHub itself.
- id: PR
shell: bash
run: |
echo "number=${{ steps.PR_from_push.outputs.number || github.event.pull_request.number }}" >> $GITHUB_OUTPUT
echo "pr_labels=${{ steps.PR_from_push.outputs.pr_labels || join(github.event.pull_request.labels.*.name, ',') }}" >> $GITHUB_OUTPUT

- if: contains(steps.PR.outputs.pr_labels, 'bench-after-CI')
name: If `bench-after-CI` is present, add a `!bench` comment.
uses: GrantBirki/comment@608e41b19bc973020ec0e189ebfdae935d7fe0cc # v2.1.1
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/bot_fix_style.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -31,4 +31,4 @@ jobs:
with:
mode: fix
lint-bib-file: true
bot-fix-style-token: ${{ secrets.GITHUB_TOKEN }}
BOT_FIX_STYLE_TOKEN: ${{ secrets.GITHUB_TOKEN }}
39 changes: 29 additions & 10 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ permissions:

jobs:
build:
if: true
if: github.repository == 'leanprover-community/mathlib4'
name: Build
runs-on: pr
outputs:
Expand Down Expand Up @@ -153,9 +153,8 @@ jobs:
shell: bash # We're only building the `master` branch version of the tools, so don't need to run inside landrun.
run: |
cd master-branch
lake build cache mk_all check-yaml graph
lake build cache check-yaml graph
ls .lake/build/bin/cache
ls .lake/build/bin/mk_all
ls .lake/build/bin/check-yaml
ls .lake/packages/importGraph/.lake/build/bin/graph

Expand Down Expand Up @@ -236,13 +235,11 @@ jobs:
- name: update {Mathlib, Tactic, Counterexamples, Archive}.lean
id: mk_all
continue-on-error: true # Allow workflow to continue, outcome checked later
# This only runs `mk_all --check` from the `master-branch`, so doesn't need to be inside landrun
shell: bash
# This runs `mk_all --check` from the `pr-branch` inside landrun
run: |
cd pr-branch

echo "Running mk_all --check (from master-branch)..."
LAKE_HOME="$TOOLCHAIN_DIR" ../master-branch/.lake/build/bin/mk_all --check
echo "Running mk_all --check (from pr-branch)..."
lake exe mk_all --check

- name: begin gh-problem-match-wrap for build step
uses: leanprover-community/gh-problem-matcher-wrap@20007cb926a46aa324653a387363b52f07709845 # 2025-04-23
Expand Down Expand Up @@ -439,6 +436,7 @@ jobs:

post_steps:
name: Post-Build Step
if: github.repository == 'leanprover-community/mathlib4'
needs: [build]
runs-on: ubuntu-latest # Note these steps run on disposable GitHub runners, so no landrun sandboxing is needed.
steps:
Expand Down Expand Up @@ -520,20 +518,34 @@ jobs:

style_lint:
name: Lint style
if: github.repository == 'leanprover-community/mathlib4'
runs-on: ubuntu-latest
steps:
- uses: leanprover-community/lint-style-action@f2e7272aad56233a642b08fe974cf09dd664b0c8 # 2025-05-22
with:
mode: check
lint-bib-file: true

build_and_lint:
name: CI Success
if: github.repository == 'leanprover-community/mathlib4'
needs: [style_lint, post_steps]
runs-on: ubuntu-latest
steps:
- name: succeed
run: |
echo "Success: Required build and lint checks completed!"

final:
name: Post-CI job
if: true
if: github.repository == 'leanprover-community/mathlib4'
needs: [style_lint, build, post_steps]
runs-on: ubuntu-latest
steps:
- id: PR
# This action is used to determine the PR metadata in the event of a push.
# If it is called from a PR from a fork, it will find nothing/irrelevant data.
- if: github.event_name != 'pull_request_target'
id: PR_from_push
uses: 8BitJonny/gh-get-current-pr@08e737c57a3a4eb24cec6487664b243b77eb5e36 # 3.0.0
# TODO: this may not work properly if the same commit is pushed to multiple branches:
# https://github.com/8BitJonny/gh-get-current-pr/issues/8
Expand All @@ -542,6 +554,13 @@ jobs:
# Only return if PR is still open
filterOutClosed: true

# Combine the output from the previous action with the metadata supplied by GitHub itself.
- id: PR
shell: bash
run: |
echo "number=${{ steps.PR_from_push.outputs.number || github.event.pull_request.number }}" >> $GITHUB_OUTPUT
echo "pr_labels=${{ steps.PR_from_push.outputs.pr_labels || join(github.event.pull_request.labels.*.name, ',') }}" >> $GITHUB_OUTPUT

- if: contains(steps.PR.outputs.pr_labels, 'bench-after-CI')
name: If `bench-after-CI` is present, add a `!bench` comment.
uses: GrantBirki/comment@608e41b19bc973020ec0e189ebfdae935d7fe0cc # v2.1.1
Expand Down
Loading
Loading