aboutsummaryrefslogtreecommitdiff
path: root/dev/doc/changes.md
diff options
context:
space:
mode:
Diffstat (limited to 'dev/doc/changes.md')
-rw-r--r--dev/doc/changes.md38
1 files changed, 38 insertions, 0 deletions
diff --git a/dev/doc/changes.md b/dev/doc/changes.md
index 04b20c6889..eac8d86b0a 100644
--- a/dev/doc/changes.md
+++ b/dev/doc/changes.md
@@ -1,7 +1,40 @@
## Changes between Coq 8.11 and Coq 8.12
+### Code formatting
+
+- The automatic code formatting tool `ocamlformat` is enabled now for
+ the micromega codebase. Version 0.13.0 is required. See
+ `ocalmformat`'s documentation for more details on integration with
+ your editor.
+
### ML API
+Notations:
+
+- Most operators on numerals have moved to file numTok.ml.
+
+- Types `precedence`, `parenRelation`, `tolerability` in
+ `notgram_ops.ml` have been reworked. See `entry_level` and
+ `entry_relative_level` in `constrexpr.ml`.
+
+Exception handling:
+
+- Coq's custom `Backtrace` module has been removed in favor of OCaml's
+ native backtrace implementation. Please use the functions in
+ `Exninfo.capture` and `iraise` when re-raising inside an exception
+ handler.
+
+- Registration of exception printers now follows more closely OCaml's
+ API, thus:
+
+ + printers are of type `exn -> Pp.t option` [`None` == not handled]
+ + it is forbidden for exception printers to raise.
+
+- Refiner.catchable_exception is deprecated, use instead
+ CErrors.noncritical in try-with block. Note that nothing is needed in
+ tclORELSE block since the exceptions there are supposed to be
+ non-critical by construction.
+
Printers:
- Functions such as Printer.pr_lconstr_goal_style_env have been
@@ -10,6 +43,11 @@ Printers:
Constrextern.extern_constr which were taking a boolean argument for
the goal style now take instead a label.
+Implicit arguments:
+
+- The type `Impargs.implicit_kind` was removed in favor of
+ `Glob_term.binding_kind`.
+
## Changes between Coq 8.10 and Coq 8.11
### ML API