diff options
Diffstat (limited to 'dev')
| -rw-r--r-- | dev/ci/user-overlays/07863-rm-sorts-contents.sh | 6 | ||||
| -rw-r--r-- | dev/ci/user-overlays/07902-ppedrot-camlp5-parser.sh | 8 | ||||
| -rw-r--r-- | dev/ci/user-overlays/07906-univs-of-constr.sh | 9 | ||||
| -rw-r--r-- | dev/ci/user-overlays/7080-herbelin-master+swapping-modules-constr-context.sh | 7 | ||||
| -rw-r--r-- | dev/ci/user-overlays/README.md | 2 | ||||
| -rw-r--r-- | dev/doc/changes.md | 50 |
6 files changed, 60 insertions, 22 deletions
diff --git a/dev/ci/user-overlays/07863-rm-sorts-contents.sh b/dev/ci/user-overlays/07863-rm-sorts-contents.sh deleted file mode 100644 index 374a614848..0000000000 --- a/dev/ci/user-overlays/07863-rm-sorts-contents.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/sh - -if [ "$CI_PULL_REQUEST" = "7863" ] || [ "$CI_BRANCH" = "rm-sorts-contents" ]; then - Elpi_CI_BRANCH=fix-sorts-contents - Elpi_CI_GITURL=https://github.com/SkySkimmer/coq-elpi.git -fi diff --git a/dev/ci/user-overlays/07902-ppedrot-camlp5-parser.sh b/dev/ci/user-overlays/07902-ppedrot-camlp5-parser.sh new file mode 100644 index 0000000000..735153ebdc --- /dev/null +++ b/dev/ci/user-overlays/07902-ppedrot-camlp5-parser.sh @@ -0,0 +1,8 @@ +_OVERLAY_BRANCH=camlp5-parser + +if [ "$CI_PULL_REQUEST" = "7902" ] || [ "$CI_BRANCH" = "$_OVERLAY_BRANCH" ]; then + + ltac2_CI_BRANCH="$_OVERLAY_BRANCH" + ltac2_CI_GITURL=https://github.com/ppedrot/ltac2 + +fi diff --git a/dev/ci/user-overlays/07906-univs-of-constr.sh b/dev/ci/user-overlays/07906-univs-of-constr.sh deleted file mode 100644 index 0716650879..0000000000 --- a/dev/ci/user-overlays/07906-univs-of-constr.sh +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/sh - -if [ "$CI_PULL_REQUEST" = "7906" ] || [ "$CI_BRANCH" = "univs-of-constr-noseff" ]; then - Equations_CI_BRANCH=fix-univs-of-constr - Equations_CI_GITURL=https://github.com/SkySkimmer/Coq-Equations.git - - Elpi_CI_BRANCH=fix-universes-of-constr - Elpi_CI_GITURL=https://github.com/SkySkimmer/coq-elpi.git -fi diff --git a/dev/ci/user-overlays/7080-herbelin-master+swapping-modules-constr-context.sh b/dev/ci/user-overlays/7080-herbelin-master+swapping-modules-constr-context.sh deleted file mode 100644 index b4d3d7e67a..0000000000 --- a/dev/ci/user-overlays/7080-herbelin-master+swapping-modules-constr-context.sh +++ /dev/null @@ -1,7 +0,0 @@ -if [ "$CI_PULL_REQUEST" = "7080" ] || [ "$CI_BRANCH" = "master+swapping-modules-constr-context" ]; then - Equations_CI_BRANCH=master+adapting-coq-pr7080 - Equations_CI_GITURL=https://github.com/herbelin/Coq-Equations.git - - Elpi_CI_BRANCH=coq-master+adapting-coq-pr7080 - Elpi_CI_GITURL=https://github.com/herbelin/coq-elpi.git -fi diff --git a/dev/ci/user-overlays/README.md b/dev/ci/user-overlays/README.md index 11e4d9ae09..d38d1b06d1 100644 --- a/dev/ci/user-overlays/README.md +++ b/dev/ci/user-overlays/README.md @@ -9,6 +9,8 @@ testing is possible. It redefines some variables from [`ci-basic-overlay.sh`](../ci-basic-overlay.sh): give the name of your branch using a `_CI_BRANCH` variable and the location of your fork using a `_CI_GITURL` variable. +The `_CI_GITURL` variable should be the URL of the repository without a +trailing `.git`. Moreover, the file contains very simple logic to test the pull request number or branch name and apply it only in this case. diff --git a/dev/doc/changes.md b/dev/doc/changes.md index cbb95625fc..4177513a18 100644 --- a/dev/doc/changes.md +++ b/dev/doc/changes.md @@ -82,11 +82,61 @@ Vernacular commands `tactics/`. In all cases adapting is a matter of changing the module name. +Primitive number parsers + +- For better modularity, the primitive parsers for positive, N and Z + have been split over three files (plugins/syntax/positive_syntax.ml, + plugins/syntax/n_syntax.ml, plugins/syntax/z_syntax.ml). + ### Unit testing The test suite now allows writing unit tests against OCaml code in the Coq code base. Those unit tests create a dependency on the OUnit test framework. +### Transitioning away from Camlp5 + +In an effort to reduce dependency on Camlp5, the use of Camlp5 GEXTEND macro +is discouraged. Most plugin writers do not need this low-level interface, but +for those who do, the transition path is somewhat straightforward. To convert +a ml4 file containing only standard OCaml with GEXTEND statements, the following +should be enough: +- replace its "ml4" extension with "mlg" +- replace GEXTEND with GRAMMAR EXTEND +- wrap every occurrence of OCaml code into braces { } + +For instance, code of the form +``` +let myval = 0 + +GEXTEND Gram + GLOBAL: my_entry; + +my_entry: +[ [ x = bar; y = qux -> do_something x y + | "("; z = LIST0 my_entry; ")" -> do_other_thing z +] ]; +END +``` +should be turned into +``` +{ +let myval = 0 +} + +GRAMMAR EXTEND Gram + GLOBAL: my_entry; + +my_entry: +[ [ x = bar; y = qux -> { do_something x y } + | "("; z = LIST0 my_entry; ")" -> { do_other_thing z } +] ]; +END +``` + +Currently mlg files can only contain GRAMMAR EXTEND statements. They do not +support TACTIC, VERNAC nor ARGUMENT EXTEND. In case you have a file containing +both kinds at the same time, it is recommended splitting it in two. + ## Changes between Coq 8.7 and Coq 8.8 ### Bug tracker |
