Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adapt the repo to new l3build infrastructure #1100

Merged
merged 12 commits into from
Dec 18, 2021
Merged

Conversation

hmenke
Copy link
Member

@hmenke hmenke commented Dec 12, 2021

Motivation for this change

There is still some stuff to do:

  • Use Island of TeX Docker images for CI. This way we don't have to worry about TeX Live caching anymore. https://gitlab.com/islandoftex/images/texlive
  • Check feasibility of l3build tag instead of our custom revisionfile
  • Check feasibility of l3build upload instead of our custom GitHub Action
  • Abstractions over lrbox. Right now the test files are a bit too LaTeX specific.

I'm leaving these for later. It's more important that we can start writing tests now.

Checklist

Please signoff your commits to explicitly state your agreement to the Developer Certificate of Origin. If that is not possible you may check the boxes below instead:

@muzimuzhi
Copy link
Member

I'm also thinking of a set of per-format pre-processors so we can write tests for one format, e.g., \pgfpicture ... \endpgfpicture and run tests for all the supported formats.

@josephwright
Copy link
Contributor

@muzimuzhi If you want to use the same tests for multiple formats, I'd suggest doing something like the d3... ones for LaTeX3: have a short wrapper .lvt file for each setup, and a .tex file which contains the 'payloads'.

@josephwright
Copy link
Contributor

On the use of lrbox: this was a demo about one way to do catcode-dependent tests. As I showed, you could just \showoutput a suitable document. I used the LaTeX construct rather than a low-level one only because I've tried to stick to documented interfaces for the 'document level' syntax.

@josephwright
Copy link
Contributor

josephwright commented Dec 13, 2021

@hmenke I looked at doing a pgf000 test (just loading), but I realise the current normalisation code doesn't like the pgf version strings. I'll look at sorting that, then will offer pgf000 and tikz000 (just checking loading). Beyond that, it would be handy to have a feeling for how you want tests dividing up. I'm sure I can manage a set of \pgf... ones based on the l3draw set.

@hmenke hmenke force-pushed the l3build branch 6 times, most recently from dd952d0 to cad89e6 Compare December 15, 2021 19:27
@hmenke hmenke marked this pull request as ready for review December 15, 2021 19:43
Copy link
Contributor

@josephwright josephwright left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've made a few comments, but I think it looks fine.

I might be tempted to rename the .lvt files to something like pgf-example and tikz-example.

.github/workflows/check.yml Outdated Show resolved Hide resolved
.github/workflows/check.yml Show resolved Hide resolved
.github/workflows/check.yml Show resolved Hide resolved
@hmenke hmenke mentioned this pull request Dec 16, 2021
@hmenke hmenke force-pushed the l3build branch 4 times, most recently from 23f3cd5 to a184ef3 Compare December 16, 2021 13:29
build.lua Outdated Show resolved Hide resolved
@hmenke hmenke force-pushed the l3build branch 2 times, most recently from 2ef6aa2 to 0e82606 Compare December 17, 2021 13:23
Signed-off-by: Henri Menke <henri@henrimenke.de>
Signed-off-by: Henri Menke <henri@henrimenke.de>
Signed-off-by: Henri Menke <henri@henrimenke.de>
Signed-off-by: Henri Menke <henri@henrimenke.de>
BREAKING CHANGE: \pgfversiondatetime and \pgfrevisiondatetime have been removed.
BREAKING CHANGE: \pgfversiondate and \pgfrevisiondate now use the format YYYY-MM-DD
BREAKING CHANGE: \pgfrevision{,date} and \pgfversion{,date} are now synonyms

Signed-off-by: Henri Menke <henri@henrimenke.de>
Signed-off-by: Henri Menke <henri@henrimenke.de>
Signed-off-by: Henri Menke <henri@henrimenke.de>
Signed-off-by: Henri Menke <henri@henrimenke.de>
Signed-off-by: Henri Menke <henri@henrimenke.de>
Signed-off-by: Henri Menke <henri@henrimenke.de>
Signed-off-by: Henri Menke <henri@henrimenke.de>
Signed-off-by: Henri Menke <henri@henrimenke.de>
@hmenke hmenke merged commit cefe1dc into pgf-tikz:master Dec 18, 2021
DominikPeters added a commit to DominikPeters/pgf-tikz-html-manual that referenced this pull request Dec 24, 2021
commit b508f8219017f5418be8c27ef639647ea2be0530
Merge: 60c5fad af5107d
Author: Dominik Peters <mail@dominik-peters.de>
Date:   Fri Dec 24 02:56:05 2021 +0100

    Merge remote-tracking branch 'upstream/master' into incoming-2021-12-24

commit af5107d
Merge: 8ec2edb 9cd4037
Author: Henri Menke <henri@henrimenke.de>
Date:   Wed Dec 22 20:10:40 2021 +0100

    Merge pull request pgf-tikz#1117 from muzimuzhi/dv-line-end

    fix(dv): Suppress white space at line end

commit 8ec2edb
Author: Henri Menke <henri@henrimenke.de>
Date:   Wed Dec 22 20:08:15 2021 +0100

    docs: add read-only link to Matrix channel

    Signed-off-by: Henri Menke <henri@henrimenke.de>

commit 9cd4037
Author: muzimuzhi <muzimuzhi@gmail.com>
Date:   Mon Dec 20 09:54:20 2021 +0800

    fix(dv): Suppress white space at line end pgf-tikz#1112

    Signed-off-by: muzimuzhi <muzimuzhi@gmail.com>

commit 1ad8f6e
Author: Henri Menke <henri@henrimenke.de>
Date:   Sun Dec 19 16:04:47 2021 +0100

    fix(tests): set \showbox parameters explicitly

    Signed-off-by: Henri Menke <henri@henrimenke.de>

commit 2bff7c6
Merge: 5125df8 5fa45b6
Author: Henri Menke <henri@henrimenke.de>
Date:   Sun Dec 19 10:58:10 2021 +0100

    Merge pull request pgf-tikz#1114 from muzimuzhi/archive-failed

    feat(ci): Archive failed test output

commit 5125df8
Merge: cefe1dc 7c1cbda
Author: Henri Menke <henri@henrimenke.de>
Date:   Sun Dec 19 10:57:45 2021 +0100

    Merge pull request pgf-tikz#1111 from muzimuzhi/job-names

    style(ci): Use descriptive job ids

commit 5fa45b6
Author: muzimuzhi <muzimuzhi@gmail.com>
Date:   Sun Dec 19 09:37:36 2021 +0800

    feat(ci): Archive failed test output

    Signed-off-by: muzimuzhi <muzimuzhi@gmail.com>

commit 7c1cbda
Author: muzimuzhi <muzimuzhi@gmail.com>
Date:   Sat Dec 18 21:15:43 2021 +0800

    style(ci): Use descriptive job ids

    Signed-off-by: muzimuzhi <muzimuzhi@gmail.com>

commit cefe1dc
Merge: 065c015 99cd9eb
Author: Henri Menke <henri@henrimenke.de>
Date:   Sat Dec 18 13:07:31 2021 +0100

    Merge pull request pgf-tikz#1100 from hmenke/l3build

    Adapt the repo to new l3build infrastructure

commit 99cd9eb
Author: Henri Menke <henri@henrimenke.de>
Date:   Fri Dec 17 18:13:34 2021 +0100

    docs: mention CHANGELOG in PR template

    Signed-off-by: Henri Menke <henri@henrimenke.de>

commit 16b22cf
Author: Henri Menke <henri@henrimenke.de>
Date:   Fri Dec 17 17:37:55 2021 +0100

    refactor(ci): use GitHub Script to upload release assets

    Signed-off-by: Henri Menke <henri@henrimenke.de>

commit c4de62c
Author: Henri Menke <henri@henrimenke.de>
Date:   Fri Dec 17 13:48:49 2021 +0100

    refactor(ci): generate RELEASE_NOTES.md from CHANGELOG.md

    Signed-off-by: Henri Menke <henri@henrimenke.de>

commit 663534a
Author: Henri Menke <henri@henrimenke.de>
Date:   Fri Dec 17 12:08:01 2021 +0100

    refactor: use the “Keep a Changelog” format

    Signed-off-by: Henri Menke <henri@henrimenke.de>

commit addcd67
Author: Henri Menke <henri@henrimenke.de>
Date:   Thu Dec 16 20:24:34 2021 +0100

    refactor(ci): use uploadconfig.note_file

    Signed-off-by: Henri Menke <henri@henrimenke.de>

commit e81f96c
Author: Henri Menke <henri@henrimenke.de>
Date:   Wed Dec 15 20:22:15 2021 +0100

    refactor(tests): more format agnostic constructs

    Signed-off-by: Henri Menke <henri@henrimenke.de>

commit cfc4c1d
Author: Henri Menke <henri@henrimenke.de>
Date:   Wed Dec 15 20:05:03 2021 +0100

    chore: remove unused scripts

    Signed-off-by: Henri Menke <henri@henrimenke.de>

commit 9efb7e4
Author: Henri Menke <henri@henrimenke.de>
Date:   Wed Dec 15 19:26:19 2021 +0100

    refactor(ci)!: use l3build tagfiles

    BREAKING CHANGE: \pgfversiondatetime and \pgfrevisiondatetime have been removed.
    BREAKING CHANGE: \pgfversiondate and \pgfrevisiondate now use the format YYYY-MM-DD
    BREAKING CHANGE: \pgfrevision{,date} and \pgfversion{,date} are now synonyms

    Signed-off-by: Henri Menke <henri@henrimenke.de>

commit cb61a38
Author: Henri Menke <henri@henrimenke.de>
Date:   Mon Dec 13 21:46:21 2021 +0100

    refactor(ci): use l3build CTAN upload

    Signed-off-by: Henri Menke <henri@henrimenke.de>

commit ac109f3
Author: Henri Menke <henri@henrimenke.de>
Date:   Sun Dec 12 17:12:19 2021 +0100

    refactor(ci): use IoT Docker image

    Signed-off-by: Henri Menke <henri@henrimenke.de>

commit 379196c
Author: Henri Menke <henri@henrimenke.de>
Date:   Sun Dec 12 15:36:48 2021 +0100

    refactor(doc): mention l3build instead of build.lua [ci skip]

    Signed-off-by: Henri Menke <henri@henrimenke.de>

commit 50267ec
Author: Henri Menke <henri@henrimenke.de>
Date:   Sat Dec 11 20:56:39 2021 +0100

    refactor(ci): split workflows

    Signed-off-by: Henri Menke <henri@henrimenke.de>

commit 065c015
Merge: a46375c 4b1d5b7
Author: Henri Menke <henri@henrimenke.de>
Date:   Fri Dec 17 17:07:08 2021 +0100

    Merge pull request pgf-tikz#1110 from jkugelman/manual-typo

    fix(docs): unswap x/y coordinates in description

commit 4b1d5b7
Author: John Kugelman <john@kugelman.name>
Date:   Fri Dec 17 10:51:48 2021 -0500

    fix(docs): unswap x/y coordinates in description

    Signed-off-by: John Kugelman <john@kugelman.name>

commit a46375c
Author: Henri Menke <henri@henrimenke.de>
Date:   Thu Dec 16 10:47:36 2021 +0100

    chore: remove experiments/ folder

    Signed-off-by: Henri Menke <henri@henrimenke.de>

commit 475b536
Merge: 28b9756 5d099a8
Author: Henri Menke <henri@henrimenke.de>
Date:   Thu Dec 16 08:11:55 2021 +0100

    Merge pull request pgf-tikz#1108 from hmenke/flatten

    Flatten the loading hierarchy

commit 5d099a8
Author: Henri Menke <henri@henrimenke.de>
Date:   Wed Dec 15 21:40:48 2021 +0100

    refactor(pgfcore): replace nested \protect by \protected\def

    Signed-off-by: Henri Menke <henri@henrimenke.de>

commit 17352e2
Author: Henri Menke <henri@henrimenke.de>
Date:   Wed Dec 15 21:39:20 2021 +0100

    refactor: Simplify loading by delegating to top-level files

    Signed-off-by: Henri Menke <henri@henrimenke.de>

commit 28b9756
Author: Gábor Braun <gabor.braun@uni-duisburg-essen.de>
Date:   Sat Nov 27 17:52:38 2021 +0100

    fix(docs): some extra, missing or misspelled words in documentation.

    Signed-off-by: Gábor Braun <gabor.braun@uni-duisburg-essen.de>

commit 724f452
Author: Gábor Braun <gabor.braun@uni-duisburg-essen.de>
Date:   Sun Nov 28 19:49:15 2021 +0100

    fix(docs): Update Debian installation instructions.

    Signed-off-by: Gábor Braun <gabor.braun@uni-duisburg-essen.de>

commit 0b05234
Author: Gábor Braun <gabor.braun@uni-duisburg-essen.de>
Date:   Sat Nov 27 16:58:56 2021 +0100

    fix(docs): Emacs local variables in manual.

    Specify main file with no path (meaning in the same directory),
    which is independent of developer's environment.

    Remove wrong encoding specification.

    Signed-off-by: Gábor Braun <gabor.braun@uni-duisburg-essen.de>

commit e6a9a78
Merge: c8ee2d9 b30b657
Author: Henri Menke <henri@henrimenke.de>
Date:   Tue Dec 14 10:07:04 2021 +0100

    Merge pull request pgf-tikz#1099 from muzimuzhi/no-missing-char

    Resolve all `Missing character` reports in manual

commit b30b657
Author: muzimuzhi <muzimuzhi@gmail.com>
Date:   Sun Dec 12 23:29:48 2021 +0800

    style: Comment has to go after the correct set of braces

    Co-authored-by: Henri Menke <henri@henrimenke.de>

commit 01aedc4
Author: muzimuzhi <muzimuzhi@gmail.com>
Date:   Sun Dec 12 21:39:18 2021 +0800

    docs: Promote `Missing character` to errors

    Signed-off-by: muzimuzhi <muzimuzhi@gmail.com>

commit 1e202a6
Author: muzimuzhi <muzimuzhi@gmail.com>
Date:   Sun Dec 12 21:38:34 2021 +0800

    docs: Remove superfluous `;` and `]`

    Signed-off-by: muzimuzhi <muzimuzhi@gmail.com>

commit 6d90ef5
Author: muzimuzhi <muzimuzhi@gmail.com>
Date:   Sun Dec 12 21:34:00 2021 +0800

    fix(shapes): Wrap box content in `\pgfinterruptpicture`

    This eliminates "Missing character" reports for `logicgates` shapes when
    their gate symbols are typeset in text mode, e.g.,
        nand gate IEC symbol=\color{black!30}\char`\&
    in engines other than LuaTeX.

    Signed-off-by: muzimuzhi <muzimuzhi@gmail.com>

commit cec1ee1
Author: muzimuzhi <muzimuzhi@gmail.com>
Date:   Sun Dec 12 21:28:12 2021 +0800

    fix(shapes): Remove superfluous `;` for shape `arrow box`

    Signed-off-by: muzimuzhi <muzimuzhi@gmail.com>

commit e138ac7
Author: muzimuzhi <muzimuzhi@gmail.com>
Date:   Sun Dec 12 21:25:38 2021 +0800

    fix(animations): Remove superfluous `/utils/exec`

    This eliminates "Missing character" reports for `/utils/exec`, char by char.

    Signed-off-by: muzimuzhi <muzimuzhi@gmail.com>

commit b65eddd
Author: muzimuzhi <muzimuzhi@gmail.com>
Date:   Sun Dec 12 21:20:58 2021 +0800

    fix(animations): Gobble `\pgf@stop` when parsing finishes

    This eliminates "Missing character" reports for `pgf@stop`, char by char.

    Signed-off-by: muzimuzhi <muzimuzhi@gmail.com>

commit 81f63ab
Author: muzimuzhi <muzimuzhi@gmail.com>
Date:   Sun Dec 12 21:19:58 2021 +0800

    fix(sys): Add missing `\pgf@sys@tonumber` before `<dimen>`

    Signed-off-by: muzimuzhi <muzimuzhi@gmail.com>

commit 00ef2e1
Author: muzimuzhi <muzimuzhi@gmail.com>
Date:   Sat Dec 11 04:08:01 2021 +0800

    fix(animations): Add missing `\pgf@sys@tonumber` before `<dimen>`

    "Private" implementations of `pgfmath` functions only accept unit-less
    numbers as their arguments, e.g.,
        \pgfmathadd@{1.0}{1.0}
    So every dimension used as their argument must be prefixed by a `\pgf@sys@tonumber`, e.g.,
        \pgfmathadd@{\pgf@sys@tonumber\pgf@x}{\pgf@sys@tonumber\pgf@y}

    This eliminates "Missing character" reports for `p` and `t`.

    Signed-off-by: muzimuzhi <muzimuzhi@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants