From 7f52ca16c0ea17cc388c9c9d07e5c46c9e56ba14 Mon Sep 17 00:00:00 2001 From: Hendrik Tews Date: Sun, 31 Jan 2021 22:23:18 +0100 Subject: new github action for make magic This action checks that - make -C doc magic works - the manual is currently up-to-date The second check fails when somebody changes variable or function documentation of something that appears in one of the manuals without updating the manuals at the same time. Further, it fails when emacs changes such that the function `texi-docstring-magic' produces different output. --- .github/workflows/test.yml | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) (limited to '.github') diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 15c8d3c7..199c3539 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -45,6 +45,37 @@ jobs: run: sudo apt-get update -y -q && sudo DEBIAN_FRONTEND=noninteractive apt-get install -y -q --no-install-recommends texinfo - run: make doc.info + # Check that the texinfo sources of the manual can be updated + # with the documentation strings for variables and functions in + # the source code and that the manual is actually up-to-date. + # If the final git diff fails, then somebody forgot to update + # the manuals with ``make -C doc magic'' after changing a + # variable or function documentation that appears in one of the + # manuals. + check-doc-magic: + runs-on: ubuntu-latest + + strategy: + matrix: + emacs_version: + # I don't think we need to check with all emacs + # versions. The latest two should be enough, maybe even + # only the latest one. + - 26.3 + - 27.1 + fail-fast: false + + steps: + - uses: actions/checkout@v2 + + - uses: purcell/setup-emacs@master + with: + version: ${{ matrix.emacs_version }} + + - run: emacs --version + - run: make -C doc magic + - run: git diff --exit-code + test: runs-on: ubuntu-latest -- cgit v1.2.3