@DavidCarlisle We could change in l3build without impacting on the 2e repo: the latter uses it's own test2e.tex definition
@DavidCarlisle I wonder if it was to do with @UlrikeFischer's need to use Windows files - but as they are all generated files, I don't see where the issue comes from
@JosephWright yes my thought was to blame @UlrikeFischer's tests but like you I couldn't see a workflow where this would show up
@cfr as you see from the above, it may be that we can blame Frank or Joseph or Ulrike, but the important thing to take away from your question is: don't blame me.
@cfr Could you log an issue about \SHOWFILE with an example of the issue - best to discuss there rather than here or on the team list (not visible to others)
@cfr ?
@cfr (@DavidCarlisle, @UlrikeFischer) I will though also prod Frank directly
@cfr but why are the ^^M a problem for you? I saw them too in some texts (e.g. when I show the created mathml in some tests) but I simply ignore them. From a point of the test the only thing that matters are changes ,
@Skillmon I want something that vaguely works before I check it in: I get the feeling there will be several rounds of refinement (\beamer@masterdecode does various things, and I'm getting the sense they might need to be separated out, at least outside of the 'innards' of reading overlays)
@JosephWright the problem (and advantage) most likely is that I don't know the innards of beamer and only the macroscopic behaviour, so I'd implement something most likely completely different on the architecture side that only behaves similar from the users' perspective
@Skillmon Don't worry - the plan as it stands it more about the user behaviour than the inners, and even then some of the user behaviour (some aspects I think don’t make sense to carry forward for a new class)
For overlays, I will try to get something similar to the current parser, but I am writing from scatch
(remember that I'm part of the xbeamer "team", so I know that the plan is to implement user behaviour, not innards, I'm just one of the guys interested in the project who knows almost nothing of the beamer innards, unlike you and @samcarter)
So for me it comes quite naturally that I don't (re)implement some internal structures because I simply don't know beamer's
@UlrikeFischer er ... mostly because I didn't expect them. and I didn't realise l3build rewrites a tlg for lua, so not only I had differences I didn't expect at all, but I also have engine differences I didn't expect, including weird characters showing up for xetex and pdftex, but not luatex. and these are showing up in the logged content of .memos, which are identified by checksum, so could not figure out where things diverged. (actually, I still don't know why I now need different tlgs.)
@JosephWright but is it an issue or just user ignorance?
@JosephWright does the doc say anywhere that l3build writes an additional .luatex.tlg if there is only .tlg? it talks about additional normalisation for lua, but I interpreted that to mean additional changes to .luatex.log.
@cfr That's not LuaTeX-specific - we need to write a .<engine>.tlg for any case where you do l3build save -e<engine> <test>, as that's how we handle engine variations
@cfr The standard 'extra normalisation' does indeed mean what we do for the .log in a LuaTeX run, to get the standard .tlg files to support as many engines as possible
@JosephWright you were going to look at it, but for now I just duplicate code from l3build and use @DavidCarlisle's hack to avoid the text files being copied twice by ctan.
@cfr Oh, no,maybe we do only do this for LuaTeX - key is this is just an implementation detail to allow us to use the same .tlg files for LuaTeX and other engines - what's the issue for you?
@JosephWright it is confusing if you don't expect it. I could not figure out where the additional .tlg came from. I do not like files to appear on my system which I do not expect. If I get changes I almost always run diff on the normalised log and tlg directly, because I get more information that way and in a format I understand better. so then I notice what is in the directory and I try to figure out where this extra file has come from ....
@cfr The whole of the build tree is meant to be scratch stuff - we don't document the whole copy approach, just that it happens, for example
@cfr To enable us to run diff/fc, we need a file to compare against, so for LuaTeX we need a modified copy of the std .tlg - there's no other way to pull this off
@JosephWright yes, but you explicitly tell users to look at diffs if tests fail, so it matters if you are diffing files other than they have reason to expect.
@JosephWright I'm not suggesting you not do it. only that I think it would be helpful to say so when you explain the additional normalisation done for luatex.
@JosephWright but the content of a diff is a function of the files being compared. suppose somebody wants more context, for example, in order to figure out why something changed. the obvious thing to do is to run diff on luatex.log and the tlg. (this is essentially what I do to get a comparison in standard diff format.)
@cfr Er, I guess we work differently: my obvious thing to do is take the .lvt, copy it into my scratch test.tex file, run that, then look manually at the log
@JosephWright I hardly ever do that. for one thing, I already have a copy of the raw log in many cases. but, also, often I don't need that much. I just need a bit more than the .diff has.
@cfr I suspect this partly reflects the fact I treat l3build largely as a black-box - in part as on GitHub we can't get the info directly, and that's usually where problems come up for me :)
@JosephWright I guess I'm with @cfr here I always look at the generated logs in build (and rarely use -save as if a test fails and I want to update the tlg I just copy the foo.luatex.log file from build area to testfiles/foo.luatex.tlg