Closures now survive compacted saves
Lean 4 adds experimental closure serialization in `.olean` files, plus a small spec-db migration fix and docs cleanup.
Read the issue →Lean 4 adds experimental closure serialization in `.olean` files, plus a small spec-db migration fix and docs cleanup.
Read the issue →VC generation now tracks in-scope specs per subgoal, symbolic reducers gained new level/match fixes, and floating-point nondeterminism is blocked at compile time.
Read the issue →mvcgen' now handles typeclass method projections, lints were promoted into Lean.Linter, and parser/error polish landed too.
Read the issue →Public lint imports, linter tagging, a mvcgen kernel fix, and a build-time ban on HWASAN/MTE make up the day’s notable work.
Read the issue →New `dsimp` support in grind/sym, inline `mvcgen'` in `sym =>` blocks, better `whileM` foundations, and improved error notes.
Read the issue →New `impossible` tactic combinator lands, `simpa using` gets stricter transparency, and `using!` is introduced as the opt-in escape hatch.
Read the issue →Lean4 adds a new `SymM`-based `dsimp`, binder simplification, and reusable reduction simprocs for beta/zeta/projections.
Read the issue →Notable fixes for inductive elaboration, proof-mode metadata, and Verso docstrings, plus `#where` scope reporting and a major app elaboration perf tweak.
Read the issue →Lean4’s do-notation now handles indexed monads, while string comparison gets a faster C++ backend and path/string cleanups continue.
Read the issue →Specialized `dec` lowering lands, config-eval bootstrapping is finished, and Lake/CI get reliability fixes.
Read the issue →
May 18th, 2026 · 10 commits
+1
Major tactic refactors, cache-key fixes, better premise selection, and a CI workflow cleanup landed today.
Read the issue →Fixes a MePo ranking bug, adds expression hover message helpers, and restores correct pretty-printing under `pp.universes`.
Read the issue →Performance and API work landed across elaboration, dyadic arithmetic, byte arrays, and module serialization, plus CI and build preset cleanup.
Read the issue →Lean improves `lake shake --explain`, fixes `--plugin` parsing on Windows, and updates CI plus stage0 artifacts.
Read the issue →Major config-eval refactor plus new lints, better instance errors, recursion-fix regression coverage, and structure-instance hover upgrades.
Read the issue →ContextAsync race handling, try? testability, and clearer unused-variable warnings landed alongside a CMake fix for empty leanc args.
Read the issue →Locale-aware time formatting, a safer server wait helper, and a TZDB search-path fix headline the day.
Read the issue →New local-time APIs, a safer `withSetOptionIn`, improved empty-`by` suggestions, and several bug/CI fixes land today.
Read the issue →Lean adds HTTP serving for `trace.profiler` output and improves `grind` diagnostics; vector append lemmas now work across sizes.
Read the issue →Lean4 made `Glob.ofString?` public and added CLAUDE guidance to avoid changing a PR’s GitHub base when rebasing locally.
Read the issue →Lake now stores compiled configs in workspace-local paths, while CI pins a broken action tag to restore builds.
Read the issue →Major proof-engine upgrades landed: verifiable while/repeat loops, a new SymM-based mvcgen' tactic, plus deprecation-warning cleanup and runtime speedups.
Read the issue →Blockquotes now render in Verso docstrings, attribute loading gets stricter, LLVM 22 lands, and the runtime hardens OOM handling.
Read the issue →Renames `--clippy` to `--extra`, lets plugins declare init functions, and includes several fixes for termination errors, I/O, and crashes.
Read the issue →UInt8 gets a clearer clamp API, scoped env exports are overhauled, and release tooling/CI are updated alongside benchmark script moves.
Read the issue →Lake now awaits extra deps before module headers and meta-import artifacts are fixed; `grind` gets several invariant and proof-hint fixes.
Read the issue →Better universe matching, safer default-instance visibility, and new `.instances` type-check diagnostics landed alongside a few Sym fixes.
Read the issue →Docstring elaboration now rejects leaked metavariables consistently, and `grind`-based tactics stop wasting time on theory combination.
Read the issue →