Lean 4.2.0 (2023-10-31)
-
Make
Environment.mkandEnvironment.addprivate, and addreplayas a safer alternative. -
IO.Process.outputno longer inherits the standard input of the caller. -
Do not inhibit caching of default-level
matchreduction. -
List the valid case tags when the user writes an invalid one.
-
The derive handler for
DecidableEqnow handles mutual inductive types. -
Lake: Add
postUpdate?package configuration option. Used by a package to specify some code which should be run after a successfullake updateof the package or one of its downstream dependencies. (lake#185) -
refine enow replaces the main goal with metavariables which were created during elaboration ofeand no longer captures pre-existing metavariables that occur ine(#2502).-
This is accomplished via changes to
withCollectingNewGoalsFrom, which also affectselabTermWithHoles,refine',calc(tactic), andspecialize. Likewise, all of these now only include newly-created metavariables in their output. -
Previously, both newly-created and pre-existing metavariables occurring in
ewere returned inconsistently in different edge cases, causing duplicated goals in the infoview (issue #2495), erroneously closed goals (issue #2434), and unintuitive behavior due torefine ecapturing previously-created goals appearing unexpectedly ine(no issue; see PR).
-