[tex4ht] [bug #345] regression testing is needed

Deimantas Galcius deimantas.galcius at gmail.com
Fri Dec 16 12:04:46 CET 2016

Hi Karl,

I took l3build.lua from latex3 repo on github [1].
l3build script has extra features that are irrelevant for tex4ht
- dtx processing, creating doc pdf, preparing release packages for CTAN.
What we are interested in is testing and l3build provides a good infrastructure for  testing.
I think about l3build.lua as a starting point building testing system for tex4ht:
dropping irrelevant features and adding what is needed.

l3build.lua testing focus on log file and its normalized output.
The supporting file regression-test.tex provides with macros
such as \START.. \STOP,  \OMIT ..\TIMO, that helps to get normalized output.

tex4ht testing needs to deal not with log files, but output files which may be
text files (html, xml, multiply html) and/or binary files (e.g. images).
I am not sure if it would be good idea to extend l3build to support these features.
Rather I think about a different script:
build.lua -> (run.lua)
l3build.lua -> test4ht.lua (?)
regression-test.tex -> regression-test-4ht.tex (?)

Does it sound reasonable?
Alternatively, we can always start from scratch.

[1] https://github.com/latex3/latex3/blob/master/l3build/l3build.lua

best regards, -- deimi

On 12/16/2016 01:55 AM, Karl Berry wrote:
>      build.lua is a driver file with settings for the main l3build.lua script.
> I know.  My question was whether l3build.lua is a fork (modified by you)
> or a copy of the original l3build.lua file from the l3build
> package. Which you answered below -- you made changes. Ok.
>      Probably it would be better to give  it a different name,
> build.lua -> l3test4ht.lua comes to mind.
> As for l3build.lua, it would be much better not to have it committed in
> our repository at all, but to use their installed version. We don't want
> to continually be merging new versions, and sticking with an old version
> "forever" doesn't sound good either.
>      just simple fix in l3build.lua:
>         os_diffexe  = os.getenv("diffexe") or "diff -c --strip-trailing-cr --ignore-matching-lines='<meta name=\"date\"'"
> The problem is that is not a change they can accept upstream, since it
> is tex4ht- (and HTML-) specific.
> I'm not sure if they already have a way to allow for such customization
> by a user of l3build (us). We could ask for advice.
> Another possibility that comes to mind is to change tex4ht to avoid
> generating the date line in the first place, or remove it in the
> Makefile before running l3build.
> Thanks,
> Karl


More information about the tex4ht mailing list