Releases: leanprover/lean4-nightly
Releases · leanprover/lean4-nightly
nightly-2026-02-11
Changes since nightly-2026-02-10:
Full commit log
- 9da8f5d feat: lake: record cache service in outputs (#12113)
- e5f0d62 chore: update to c++20 (#12117)
- d886be1 chore: update stage0
- 5115b8f doc: add test suite documentation to .claude/CLAUDE.md (#12421)
- c5d2796 fix: avoid unaligned pointer dereference (#12318)
- c4d85b7 chore: revert reducibility change
PartialOrder.rel(#12407) - 14b595e feat: better support for eta expanded terms in
grind(#12415) - 80257a6 doc: fix typos (#12418)
- a6ba731 chore: make
toBetaApppublic (#12416) - fc4f51d feat: pick up specs from the local context in mvcgen (#12395)
- 7d32030 feat: add
cbv_evalattribute (#12296) - bc30710 fix:
LCNF.getImpureSignature?on imported decls (#12410) - d29407b chore: remove outdated trust0 test (#12401)
- df26bea feat: upstream slice API improvements from human-eval-lean (#12352)
- 82d90b4 fix: force unfolding of the Decidable instace in Decidable.rec (#12399)
- 611337e doc: the different chunks of the pass manager (#12400)
- 7488201 refactor: port IR.SimpCase to LCNF (#12384)
nightly-2026-02-10
Changes since nightly-2026-02-09:
Full commit log
- 4cdc199 chore: revert reducibility change to HasSSubset for now (#12403)
- af2444a perf: always zeta reduce let expressions in
cbv(#12397) - 57c5efe fix: handling of
ite/diteexpressions incbvtactic (#12361) - 919721c feat:
IO.FS.Metadata.numLinks(#12277) - 9a15df5 fix:
IO.FS.removeFileshould delete read-only files on Windows (#12282) - 4401117 chore: make
simpCondpublic (#12391) - 7a8e011 test: support ite splitting and lifting through ExceptT to Sym mvcgen (#12392)
- 892475d fix: LCNF casesOnCtor can only act if type correct (#12387)
- b4a254d chore: revert "chore: CI: avoid fetching full repo in PR Release (#12309)"
- 5ba467d feat:
LawfulForwardPatternModelfor string patterns (#12360) - d2c738c feat: vector iterator (#12363)
nightly-2026-02-09
Changes since nightly-2026-02-08:
Full commit log
nightly-2026-02-08
Changes since nightly-2026-02-07:
Full commit log
- 39c26fc feat: lake: disabling the artifact cache also disables fetching (#12300)
- f2ed53a fix: expose
reduceOption(#12376) - da62a81 feat: shake: track simpset/grindset uses (#12375)
- bbf72b9 test: refine lake/tests/shake (#12374)
- ae79d14 feat: shake: track
[csimp]uses (#12351) - 2a02685 fix: make classes appear as classes rather than structures in docs (#12373)
- 4a450bf chore: update stage0
- ba9f475 perf: use Array for CNF formulas (#11832)
- 59d514d feat: more lemmas relating
Booland(d)ite(#12371) - 99b3ba1 fix: error messages from Verso docstring parser (#12372)
nightly-2026-02-07
Changes since nightly-2026-02-05:
Full commit log
- 03dc334 fix: simp
haveinSym(#12370) - 9f2f33b perf: more brave dead variable elimination (#12365)
- f5e5914 fix: placement of saveImpure (#12366)
- 64c0555 fix: parse indented Verso docstrings specially (#12331)
- 0e19692 fix: handle Verso docstrings that don't consume all the docstring (#12362)
- 4070ee3 fix: sigmaIterator benchmark (#12364)
- 6ac96ec feat: improve simp and grind rules for
PredTrans.apply(#12358) - 61d7eb2 feat: simplify iterator step unfolding (#12234)
- 76befb8 chore: remove orphaned *.expected.out files (#12357)
- 32fb1cc refactor: port IR elim_dead_vars to LCNF (#12356)
- 85899dd chore: update stage0
- 9ba41a6 feat: unfold
[reducible]class fields (part 1) (#12340) - fae768f fix: ensure
List.filterMapis alwayscsimped (#12348) - faa2619 feat: add
isBoolTrueExprandisBoolFalseExpr(#12355) - 5086a82 fix: resurrect the dead
Elab.resumetrace message (#12353) - fa7f510 test: document Sym-based mvcGen and tidy up benchmark project (#12350)
- 36dd57a feat: verification of character (predicate) patterns (#12349)
- 8b52933 test: copy shallow_add_sub_cancel into mvcgen benchmark for precompilation (#12347)
- 57a6d89 feat: verification of
BEq String.Slice(#12346) - d2176cb test: add tests and benchmarks for
cbvtactic (#12345) - 8d29c59 refactor: behavior of
inlineannotations in the compiler (#12344) - 9b7a8eb perf: improve over-applied cases in
ToLCNF(#12284) - 71e340e feat: allow Verso syntax for module docs to be controlled separately (#12329)
- f4c5f8e fix: set
data?field in eager code actions (#12332) - 6cf632b chore: update stage0
- dadc91d feat:
backward.isDefEq.respectTransparency(part 1) (#12338) - 8e56555 perf: put the compiler off the critical path (#12335)
- 52bc216 feat: basic infrastructure for verification of string patterns (#12333)
- c3779bc refactor: reset reuse pass to LCNF (#12315)
- 5345db8 feat: make
TheoremanInhabitedinstance (#12324) - 4046dd1 fix: docstring code suggestions take shadowing into account (#12321)
- 398c362 doc: improve comments around
asyncMayModify(#12270) - 2a1ba94 chore: ready shake for use on core (#12326)
- abcb57d fix: use mathlib-lean-pr-testing app for PR comments (#12323)
- f82c408 feat:
String.Slice.Subslice(#12322) - b4d4e37 chore: shake core (#12276)
- 96ef091 chore: delete dead C++ code (#12248)
- 54cba90 refactor: derive string searcher from string pattern (#12312)
nightly-2026-02-05
Changes since nightly-2026-02-04:
Full commit log
- 75d7f7e feat: add
Nat.ext_div_modandInt.ext_ediv_emod(#12258) - 5eeea8c fix: use GitHub App for Batteries/Mathlib checkout in PR release (#12320)
- 1695b94 feat: do not
simpinstances (#12244) - 7c350e3 feat: improve
instantiateExtTheoremingrind(#12319) - 0a43167 feat: implements
maxSuggestionsforgrindandsimp - b1b8e95 chore: update stage0
- d49e5d8 Revert "chore: temporarily disable proofs for bootstrap"
- 2f2a004 chore: update stage0
- 8ca8138 feat: add maxSuggestions field to Simp.Config and Grind.Config
- 9203df2 chore: update stage0
- 7b12b50 chore: temporarily disable proofs for bootstrap
- 15e4af8 chore: add explicit type for robustness under bootstrapping
- b397d46 fix: report Verso docsring parse errors (#12314)
- ff93bb6 feat: add
cbv_opaqueattribute (#12283) - e08cb95 chore: fail benchmarks if lakeprof upload fails (#12313)
- bd8c861 test: add program evaluation benchmark to
cbv(#12280) - e932871 doc: review and add docstrings for syntax operators in manual and one range statement (#12271)
- 47a18a4 feat: add experimental
cbvtactic (#12279) - 635d5c1 fix: enable custom CCPO when using module system (#12311)
- 35852a9 chore: lemmas for basic types (#12305)
- 1ed3ce2 chore: remove unused
Lean.Data.Xml(#12302) - 8a9cb6d feat:
Slice.posGEandSlice.posGT(#12301)
nightly-2026-02-04
Changes since nightly-2026-02-03:
Full commit log
- 5ec3b8c chore: update stage0
- 34620ec perf: speedup some fvar handling in LCNF (#12298)
- 7ba76bd refactor: port push_proj to LCNF (#12294)
- 00c1f0d test: create aux theorems for backward rules in SymM-based mvcgen (#12295)
- d1671aa fix: make PredTrans.apply semi-reducible (#12290)
- 3516b66 chore: two typos in the impure refactoring (#12288)
- a0cec18 chore: move test suite setup to tests/CMakeLists.txt (#12278)
- c09700d fix:
[local simp]on privately imported theorem (#12287) - b0ef99f chore: CI: bump actions/cache from 4 to 5 (#11862)
- 1fe7e50 chore: CI: bump actions/download-artifact from 6 to 7 (#11863)
- 70f4530 chore: update stage0
- 26f6bc6 feat: lambda pure conversion in LCNF (#12272)
- 2907df2 feat: one axiom per native computation (#12217)
nightly-2026-02-03
Changes since nightly-2026-02-02:
Full commit log
- e02a140 feat:
@[instance_reducible]part 2 (#12263) - 3deba60 feat: cache output universe parameter positions (#12285)
- 3ad3bac chore: update stage0
- c27ea08 fix: set
isRecursiveonly after adding the declaration (#12269) - 5d41b3b fix: avoid deadlock by not throttling workers when the task manager is shutting down (#12052)
- 240c64b chore: update stage0
- a966a19 fix: unification issue in proofs generated by
Lean.Meta.MkIffOfInductiveProp(#12219) - 3c64f6a feat: lemmas about sums of lists/arrays/vectors (#11994)
nightly-2026-02-02
Changes since nightly-2026-02-01:
Full commit log
nightly-2026-02-01
Changes since nightly-2026-01-31:
Full commit log
- ec60620 chore: update stage0
- 4606c35 feat:
@[instance_reducible](#12247) - 9f4c813 chore: cleanup test (#12262)
- 89c01c9 fix: lake: facet names in unknown facet errors (#12261)
- ce98089 fix:
IO.Process.spawnempty env var on Windows (#12220) - 6c5de54 feat: add
orElsecombinator toSym.Simp.Simproc(#12236) - 21a281b fix: bug in
instantiateRangeS'(#12260) - 7cd6b78 feat:
Std.Iter.isEmpty(#12212) - b64e5de feat: projected minima and maxima (#11938)