[latex3-commits] [git/LaTeX3-latex3-latex2e] lthooks2: renamed a few internals and turned some of them to expl3 syntax; fixed rollack in several places (hope it is ok now); changed "normalise" to "normalize" as that is what is used elsewhere (b754de49)

Frank Mittelbach frank.mittelbach at latex-project.org
Tue Aug 25 00:12:25 CEST 2020


Repository : https://github.com/latex3/latex2e
On branch  : lthooks2
Link       : https://github.com/latex3/latex2e/commit/b754de49d5e3f65c5da38120e6c2f621eb5a5799

>---------------------------------------------------------------

commit b754de49d5e3f65c5da38120e6c2f621eb5a5799
Author: Frank Mittelbach <frank.mittelbach at latex-project.org>
Date:   Tue Aug 25 00:12:25 2020 +0200

    renamed a few internals and turned some of them to expl3 syntax;
    fixed rollack in several places (hope it is ok now);
    changed "normalise" to  "normalize" as that is what is used elsewhere


>---------------------------------------------------------------

b754de49d5e3f65c5da38120e6c2f621eb5a5799
 base/ltclass.dtx                                   |   6 +-
 base/ltfilehook.dtx                                | 277 ++++++++++++++++-----
 base/lthooks.dtx                                   |  12 +-
 base/ltshipout.dtx                                 |  37 ++-
 base/testfiles-lthooks/lthooks-errors.lvt          |   2 +-
 base/testfiles-lthooks/lthooks-errors.tlg          |   2 +-
 .../tlb-latexrelease-rollback-003-often.luatex.tlg |  18 ++
 .../tlb-latexrelease-rollback-003-often.tlg        |  18 ++
 .../tlb-latexrelease-rollback-003-often.xetex.tlg  |  18 ++
 base/testfiles/tlb-rollback-004-often.luatex.tlg   |   9 +
 base/testfiles/tlb-rollback-004-often.tlg          |   9 +
 base/testfiles/tlb-rollback-004-often.xetex.tlg    |   9 +
 12 files changed, 333 insertions(+), 84 deletions(-)

diff --git a/base/ltclass.dtx b/base/ltclass.dtx
index 91ebb480..056632e6 100644
--- a/base/ltclass.dtx
+++ b/base/ltclass.dtx
@@ -33,7 +33,7 @@
 %<*driver>
 % \fi
 \ProvidesFile{ltclass.dtx}
-             [2020/08/21 v1.3o LaTeX Kernel (Class & Package Interface)]
+             [2020/08/25 v1.3o LaTeX Kernel (Class & Package Interface)]
 % \iffalse
 \documentclass{ltxdoc}
 \GetFileInfo{ltclass.dtx}
@@ -1729,14 +1729,14 @@
 %    \cs{load at onefile@withoptions}.
 %    \begin{macrocode}
        \@disable at packageload@do{\@currname.\@currext}%
-         {\@filehook at file@push
+         {\@expl@@@filehook at file@push@@
           \set at curr@file{\@currname.\@currext}%
           \@filehook at set@CurrentFile
           \load at onefile@withoptions{#2}%
 %    \end{macrocode}
 %    Now just clean up and exit.
 %    \begin{macrocode}
-          \@filehook at file@pop}%
+          \@expl@@@filehook at file@pop@@}%
        \@reset at ptions
        \expandafter\@firstofone
      \fi}%
diff --git a/base/ltfilehook.dtx b/base/ltfilehook.dtx
index c02d2b08..02156ebb 100644
--- a/base/ltfilehook.dtx
+++ b/base/ltfilehook.dtx
@@ -32,7 +32,7 @@
 %
 %    \begin{macrocode}
 \providecommand\ltfilehookversion{v1.0a}
-\providecommand\ltfilehookdate{2020/08/21}
+\providecommand\ltfilehookdate{2020/08/25}
 %    \end{macrocode}
 %
 %<*driver>
@@ -456,7 +456,6 @@
 %
 %    \begin{macrocode}
 %<@@=filehook>
-\ExplSyntaxOn
 %    \end{macrocode}
 %
 %
@@ -478,10 +477,12 @@
 %<*2ekernel|latexrelease>
 %<latexrelease>\IncludeInRelease{2020/10/01}%
 %<latexrelease>                 {\CurrentFile}{Hook management file}%
+\ExplSyntaxOn
 \tl_new:N \CurrentFile
 \tl_new:N \CurrentFilePath
 \tl_new:N \CurrentFileUsed
 \tl_new:N \CurrentFilePathUsed
+\ExplSyntaxOff
 %</2ekernel|latexrelease>
 %<latexrelease>\EndIncludeInRelease
 %    \end{macrocode}
@@ -505,17 +506,26 @@
 %
 % \subsection{\pkg{expl3} helpers}
 %
+%    \begin{macrocode}
+%</2ekernel>
+%<*2ekernel|latexrelease>
+%<latexrelease>\IncludeInRelease{2020/10/01}%
+%<latexrelease>                 {\@@_file_parse_full_name:nN}{File helpers}%
+\ExplSyntaxOn
+%    \end{macrocode}
+%
 % \begin{macro}{
 %     \@@_file_parse_full_name:nN,
 %     \@@_full_name:nn,
 %     \@@_set_curr_file_assign:nnnNN
 %   }
 %   A utility macro to trigger \pkg{expl3}'s file-parsing and lookup,
-%   and return a normalised representation of the file name.  If the
+%   and return a normalized representation of the file name.  If the
 %   queried file doesn't exist, no normalisation takes place.
 %   The output of \cs{@@_file_parse_full_name:nN} is passed on to the
 %   |#2|---a 3-argument macro that takes the \meta{path}, \meta{base},
 %   and \meta{ext} parts of the file name.
+%    
 %    \begin{macrocode}
 \cs_new:Npn \@@_file_parse_full_name:nN #1
   {
@@ -535,20 +545,20 @@
 % \end{macro}
 %
 % \begin{macro}{
-%     \@filehook at if@no at extensionTF,
-%     \@filehook at drop@extension
+%     \@@_if_no_extension:nTF,
+%     \@@_drop_extension:N
 %   }
 %   Some actions depend on whether the file extension was explicitly
 %   given, and sometimes the extension has to be removed.  The macros
 %   below use \cs{@@_file_parse_full_name:nN} to split up the file name
 %   and either check if \meta{ext} (|#3|) is empty, or discard it.
 %    \begin{macrocode}
-\cs_new:Npn \@filehook at if@no at extensionTF #1
+\cs_new:Npn \@@_if_no_extension:nTF #1
   {
     \exp_args:Ne \tl_if_empty:nTF
       { \file_parse_full_name_apply:nN {#1} \use_iii:nnn }
   }
-\cs_new_protected:Npn \@filehook at drop@extension #1
+\cs_new_protected:Npn \@@_drop_extension:N #1
   {
     \tl_gset:Nx #1
       {
@@ -557,12 +567,12 @@
       }
   }
 \cs_new:Npn \@@_drop_extension_aux:nnn #1 #2 #3
-  { \tl_if_empty:nF {#1} { #1 / } #2 }
+   { \tl_if_empty:nF {#1} { #1 / } #2 }
 %    \end{macrocode}
 % \end{macro}
 %
 % \begin{macro}{\g_@@_input_file_seq,\l_@@_internal_tl}
-% \begin{macro}{\@filehook at file@push,\@filehook at file@pop}
+% \begin{macro}{\@@_file_push:,\@@_file_pop:}
 % \begin{macro}{\@@_file_pop_assign:nnnn}
 %   Yet another stack, to keep track of \cs{CurrentFile} and
 %   \cs{CurrentFilePath} with nested \cs{input}s.  At the beginning of
@@ -575,7 +585,7 @@
 %    \begin{macrocode}
 \tl_new:N \l_@@_internal_tl
 \seq_new:N \g_@@_input_file_seq
-\cs_new_protected:Npn \@filehook at file@push
+\cs_new_protected:Npn \@@_file_push:
   {
     \seq_gpush:Nx \g_@@_input_file_seq
       {
@@ -583,29 +593,35 @@
         { \CurrentFilePath     } { \CurrentFile     }
       }
   }
-\cs_new_protected:Npn \@filehook at file@pop
+\cs_new_protected:Npn \@@_file_pop:
   {
     \seq_gpop:NNTF \g_@@_input_file_seq \l_@@_internal_tl
-      { \exp_after:wN \@filehook at file@pop at assign \l_@@_internal_tl }
+      { \exp_after:wN \@@_file_pop_assign:nnnn \l_@@_internal_tl }
       {
         \msg_error:nnn { hooks } { should-not-happen }
           { Tried~to~pop~from~an~empty~file~name~stack. }
       }
   }
-\cs_new_protected:Npn \@filehook at file@pop at assign #1 #2 #3 #4
+\cs_new_protected:Npn \@@_file_pop_assign:nnnn #1 #2 #3 #4
   {
     \tl_set:Nn \CurrentFilePathUsed {#1}
     \tl_set:Nn \CurrentFileUsed {#2}
     \tl_set:Nn \CurrentFilePath {#3}
     \tl_set:Nn \CurrentFile {#4}
   }
+\ExplSyntaxOff
 %    \end{macrocode}
 % \end{macro}
 % \end{macro}
 % \end{macro}
 %    
 %    \begin{macrocode}
-\ExplSyntaxOff
+%</2ekernel|latexrelease>
+%<latexrelease>\EndIncludeInRelease
+%<*2ekernel>
+%    \end{macrocode}
+%
+%    \begin{macrocode}
 %<@@=>
 %    \end{macrocode}
 %
@@ -646,7 +662,7 @@
 \DeclareRobustCommand \InputIfFileExists[2]{%
   \IfFileExists{#1}%
     {%
-     \@filehook at file@push
+     \@expl@@@filehook at file@push@@
      \@filehook at set@CurrentFile
 %    \end{macrocode}
 %    If the file exists then \cs{CurrentFile} holds its name. But we
@@ -659,7 +675,7 @@
 %    is \emph{always} loaded for \cs{CurrentFile} which usually is the
 %    same as \cs{CurrentFileUsed}.  In the case of a file replacement,
 %    the \cs{CurrentFileUsed} holds the actual file loaded.  In any case
-%    the file names are normalised so that the hooks work on the real
+%    the file names are normalized so that the hooks work on the real
 %    file name, rather than what the user typed in.
 %
 %    \pkg{expl3}'s \cs{file_full_name:n} normalizes the file
@@ -671,7 +687,7 @@
 %    returned in \cs{CurrentFilePath}.
 %    \begin{macrocode}
       \edef\reserved at a{\@filef at und
-        \@filehook at file@pop at assign
+        \@expl@@@filehook at file@pop at assign@@nnnn
           {\CurrentFilePathUsed}%
           {\CurrentFileUsed}%
           {\CurrentFilePath}%
@@ -694,7 +710,7 @@
 %    \begin{macrocode}
       \UseHook{file/after/\CurrentFile}%
       \UseHook{file/after}%
-      \@filehook at file@pop
+      \@expl@@@filehook at file@pop@@
     }%
 }
 %<latexrelease>\EndIncludeInRelease
@@ -746,26 +762,24 @@
 % \subsection{Declaring a file substitution}
 %
 %    \begin{macrocode}
-\ExplSyntaxOn
 %<@@=filehook>
 %    \end{macrocode}
 %
-% \begin{macro}[int]{\use_ii_iii:nnn}
-%   A variant of \cs[no-index]{use_...} to discard the first of three
-%   arguments.
 %    \begin{macrocode}
-\cs_gset:Npn \use_ii_iii:nnn #1 #2 #3 {#2 #3}
+%</2ekernel>
+%<*2ekernel|latexrelease>
+%<latexrelease>\IncludeInRelease{2020/10/01}%
+%<latexrelease>                 {\@@_subst_add:nn}{Declaring file substitution}%
+\ExplSyntaxOn
 %    \end{macrocode}
-% \end{macro}
-%
 %
 %
 % \begin{macro}{\@@_subst_add:nn,\@@_subst_remove:n,
-%               \@@_subst_file_normalise:n,\@@_subst_empty_name_chk:NN}
-%   \cs{@@_substitution_add:nn} declares a file substitution by
+%               \@@_subst_file_normalize:n,\@@_subst_empty_name_chk:NN}
+%   \cs{@@_substitution_lthooadd:nn} declares a file substitution by
 %   doing a (global) definition of the form
 %   |\def|\cs{@file-subst@\meta{file}}|{|\meta{replacement}|}|.
-%   The file names are properly sanitised, and normalised with the same
+%   The file names are properly sanitised, and normalized with the same
 %   treatment done for the file hooks.  That is, a file replacement is
 %   declared by using the file name (and extension, if any) only, and
 %   the file path should not be given.  If a file name is empty it is
@@ -776,8 +790,8 @@
     \group_begin:
       \cs_set:cpx { } { \exp_not:o { \cs:w\cs_end: } }
       \int_set:Nn \tex_escapechar:D { -1 }
-      \cs_gset:cpx { @file-subst@ \@@_subst_file_normalise:n {#1} }
-        { \@@_subst_file_normalise:n {#2} }
+      \cs_gset:cpx { @file-subst@ \@@_subst_file_normalize:n {#1} }
+        { \@@_subst_file_normalize:n {#2} }
     \group_end:
   }
 \cs_new_protected:Npn \@@_subst_remove:n #1
@@ -785,10 +799,10 @@
     \group_begin:
       \cs_set:cpx { } { \exp_not:o { \cs:w\cs_end: } }
       \int_set:Nn \tex_escapechar:D { -1 }
-      \cs_undefine:c { @file-subst@ \@@_subst_file_normalise:n {#1} }
+      \cs_undefine:c { @file-subst@ \@@_subst_file_normalize:n {#1} }
     \group_end:
   }
-\cs_new:Npn \@@_subst_file_normalise:n #1
+\cs_new:Npn \@@_subst_file_normalize:n #1
   {
     \exp_after:wN \@@_subst_empty_name_chk:NN
       \cs:w \exp_after:wN \cs_end:
@@ -799,6 +813,23 @@
 %    \end{macrocode}
 % \end{macro}
 %    
+% \begin{macro}[int]{\use_ii_iii:nnn}
+%    A variant of \cs[no-index]{use_...} to discard the first of three
+%    arguments.
+%    \fmi{this should move to \pkg{expl3}}
+%    \begin{macrocode}
+\cs_gset:Npn \use_ii_iii:nnn #1 #2 #3 {#2 #3}
+%    \end{macrocode}
+% \end{macro}
+%
+%
+%    \begin{macrocode}
+\ExplSyntaxOff
+%</2ekernel|latexrelease>
+%<latexrelease>\EndIncludeInRelease
+%<*2ekernel>
+%    \end{macrocode}
+%
 %
 %
 % \begin{macro}{\declare at file@substitution}
@@ -811,8 +842,10 @@
 %<*2ekernel|latexrelease>
 %<latexrelease>\IncludeInRelease{2020/10/01}%
 %<latexrelease>                 {\declare at file@substitution}{File substitution}%
+\ExplSyntaxOn
 \cs_new_eq:NN \declare at file@substitution   \@@_subst_add:nn 
 \cs_new_eq:NN \undeclare at file@substitution \@@_subst_remove:n
+\ExplSyntaxOff
 %</2ekernel|latexrelease>
 %<latexrelease>\EndIncludeInRelease
 %    \end{macrocode}
@@ -842,7 +875,7 @@
 %
 % \begin{macro}{\set at curr@file,\@curr at file,\@curr at file@reqd}
 %   Now we hook into \cs{set at curr@file} to resolve a possible file
-%   substitution, and add \cs{@filehook at set@curr at file} at the end, after
+%   substitution, and add \cs{@expl@@@filehook at set@curr at file@@N} at the end, after
 %   \cs{@curr at file} is set.
 %
 %   A file name is built using
@@ -877,27 +910,27 @@
 %   except when we have a file substitution, in which case it holds the
 %   actual loaded file.  \cs{@curr at file} is resolved first, to check if
 %   a substitution happens.  If it doesn't,
-%   \cs{@kernel at if@file at replacedTF} short-cuts and just copies
+%   \cs{@expl@@@filehook at if@file at replaced@@TF} short-cuts and just copies
 %   \cs{@curr at file}, otherwise the full normalisation procedure is
 %   executed.
 %
-%   At this stage the file name is parsed and normalised, but if the
+%   At this stage the file name is parsed and normalized, but if the
 %   input doesn't have an extension, the default |.tex| is \emph{not}
 %   added to \cs{@curr at file} because for applications other than
 %   \cs{input} (graphics, for example) the default extension may not
 %   be |.tex|.  First check if the input has an extension, then if the
-%   input had no extension, call \cs{@filehook at drop@extension}.  In case
+%   input had no extension, call \cs{@expl@@@filehook at drop@extension@@N}.  In case
 %   of a file substitution, \cs{@curr at file} will have an extension.
 %    \begin{macrocode}
-    \@filehook at if@no at extensionTF{#1}%
+    \@expl@@@filehook at if@no at extension@@nTF{#1}%
       {\@tempswatrue}{\@tempswafalse}%
     \@kernel at make@file at csname\@curr at file
-      \@kernel at resolve@file at subst{#1}%
-    \@kernel at if@file at replacedTF
+      \@expl@@@filehook at resolve@file at subst@@w {#1}%
+    \@expl@@@filehook at if@file at replaced@@TF
       {\@kernel at make@file at csname\@curr at file@reqd
-         \@kernel at normalise@file at name{#1}%
-       \if at tempswa \@filehook at drop@extension\@curr at file@reqd \fi}%
-      {\if at tempswa \@filehook at drop@extension\@curr at file \fi
+         \@expl@@@filehook at normalize@file at name@@w{#1}%
+       \if at tempswa \@expl@@@filehook at drop@extension@@N\@curr at file@reqd \fi}%
+      {\if at tempswa \@expl@@@filehook at drop@extension@@N\@curr at file \fi
        \global\let\@curr at file@reqd\@curr at file}%
   \endgroup}
 %</2ekernel|latexrelease>
@@ -934,6 +967,15 @@
 %
 % \begin{macro}{\@filehook at set@CurrentFile}
 % \begin{macro}{\@kernel at make@file at csname,\@set at curr@file at aux}
+%
+%    \fmi{This should get internalized using \texttt{@expl@} names}
+%    \begin{macrocode}
+%</2ekernel>
+%<*2ekernel|latexrelease>
+%<latexrelease>\IncludeInRelease{2020/10/01}%
+%<latexrelease>                 {\@kernel at make@file at csname}{Make file csname}%
+%    \end{macrocode}
+%
 %    \begin{macrocode}
 \def\@kernel at make@file at csname#1#2#3{%
   \xdef#1{\expandafter\@set at curr@file at aux
@@ -948,35 +990,36 @@
     .tex\else\string#1\fi}
 %    \end{macrocode}
 %    
-%    \begin{macrocode}
-%    \end{macrocode}
-%
-%
-%   Then we call \cs{@filehook at set@curr at file} once for \cs{@curr at file}
+%   Then we call \cs{@expl@@@filehook at set@curr at file@@N} once for \cs{@curr at file}
 %   to set \cs[no-index]{CurrentFile(Path)Used} and once for
 %   \cs{@curr at file@reqd} to set \cs[no-index]{CurrentFile(Path)}.
 %   Here too the slower route is only used if a substitution happened,
-%   but here \cs{@kernel at if@file at replacedTF} can't be used because the
+%   but here \cs{@expl@@@filehook at if@file at replaced@@TF} can't be used because the
 %   flag is reset at the \cs{endgroup} above, so we check if
 %   \cs{@curr at file} and \cs{@curr at file@reqd} differ.  This macro is
 %   issued separate from \cs{set at curr@file} because it changes
 %   \cs{CurrentFile}, and side-effects would quickly get out of control.
 %    \begin{macrocode}
 \def\@filehook at set@CurrentFile{%
-  \@filehook at set@curr at file{\@curr at file}%
+  \@expl@@@filehook at set@curr at file@@N{\@curr at file}%
     \CurrentFileUsed\CurrentFilePathUsed
   \ifx\@curr at file@reqd\@curr at file
     \let\CurrentFile\CurrentFileUsed
     \let\CurrentFilePath\CurrentFilePathUsed
   \else
-    \@filehook at set@curr at file{\@curr at file@reqd}%
+    \@expl@@@filehook at set@curr at file@@N{\@curr at file@reqd}%
       \CurrentFile\CurrentFilePath
   \fi}
+%</2ekernel|latexrelease>
+%<latexrelease>\EndIncludeInRelease
+%<*2ekernel>
 %    \end{macrocode}
 % \end{macro}
 % \end{macro}
 %
-% \begin{macro}{\@filehook at set@curr at file,
+%
+%
+% \begin{macro}{\@@_set_curr_file:N,
 %               \@@_set_curr_file:nNN,
 %               \@@_set_curr_file_assign:nnnNN}
 %   When inputting a file, \cs{set at curr@file} does a file lookup
@@ -989,10 +1032,17 @@
 %   \texttt{file.tex} end up as \texttt{file.tex} in \cs{CurrentFile}).
 %   The path is returned in \cs{CurrentFilePath}, in case it's needed.
 %    \begin{macrocode}
+%</2ekernel>
+%<*2ekernel|latexrelease>
+%<latexrelease>\IncludeInRelease{2020/10/01}%
+%<latexrelease>                 {@@_set_curr_file:N}{Set curr file}%
 \ExplSyntaxOn
 %<@@=filehook>
-\cs_new_protected:Npn \@filehook at set@curr at file #1
-  { \exp_args:NV \@@_set_curr_file:nNN #1 }
+\cs_new_protected:Npn \@@_set_curr_file:N #1
+   { \exp_args:NV \@@_set_curr_file:nNN #1 }
+%    \end{macrocode}
+%    
+%    \begin{macrocode}
 \cs_new_protected:Npn \@@_set_curr_file:nNN #1
   {
     \@@_file_parse_full_name:nN {#1}
@@ -1003,20 +1053,32 @@
     \str_set:Nn #5 {#1}
     \str_set:Nn #4 {#2#3}
   }
+\ExplSyntaxOff
+%</2ekernel|latexrelease>
+%<latexrelease>\EndIncludeInRelease
+%<*2ekernel>
 %    \end{macrocode}
 % \end{macro}
 %
+%
+%
+%
 % \subsection{Replacing a file and detecting loops}
 %
-% \begin{macro}{\@kernel at resolve@file at subst}
-% \begin{macro}{\@kernel at normalise@file at name}
+% \begin{macro}{\@@_resolve_file_subst:w}
+% \begin{macro}{\@@_normalize_file_name:w}
 % \begin{macro}{\@@_file_name_compose:nnn}
 %   Start by sanitising the file with \cs{@@_file_parse_full_name:nN}
 %   then do \cs{@@_file_subst_begin:nnn}\Arg{path}\Arg{name}\Arg{ext}.
 %    \begin{macrocode}
-\cs_new:Npn \@kernel at resolve@file at subst #1 \@nil
+%</2ekernel>
+%<*2ekernel|latexrelease>
+%<latexrelease>\IncludeInRelease{2020/10/01}%
+%<latexrelease>                 {\@@_resolve_file_subst:w}{Replace files detect loops}%
+\ExplSyntaxOn
+\cs_new:Npn \@@_resolve_file_subst:w #1 \@nil
   { \@@_file_parse_full_name:nN {#1} \@@_file_subst_begin:nnn }
-\cs_new:Npn \@kernel at normalise@file at name #1 \@nil
+\cs_new:Npn \@@_normalize_file_name:w #1 \@nil
   { \@@_file_parse_full_name:nN {#1} \@@_file_name_compose:nnn }
 \cs_new:Npn \@@_file_name_compose:nnn #1 #2 #3
   { \tl_if_empty:nF {#1} { #1 / } #2#3 }
@@ -1025,7 +1087,7 @@
 % \end{macro}
 %
 % \begin{macro}{flag @@_file_replaced}
-% \begin{macro}{\@kernel at if@file at replacedTF}
+% \begin{macro}{\@@_if_file_replaced:TF}
 %   Since the file replacement is done expandably in a \cs{csname}, use
 %   a flag to remember if a substitution happened.  We use this in
 %   \cs{set at curr@file} to short-circuit some of it in case no
@@ -1033,8 +1095,8 @@
 %   optimising).
 %    \begin{macrocode}
 \flag_new:n { @@_file_replaced }
-\cs_new:Npn \@kernel at if@file at replacedTF #1 #2
-  { \flag_if_raised:nTF { @@_file_replaced } {#1} {#2} }
+\cs_new:Npn \@@_if_file_replaced:TF #1 #2
+   { \flag_if_raised:nTF { @@_file_replaced } {#1} {#2} }
 %    \end{macrocode}
 % \end{macro}
 % \end{macro}
@@ -1052,9 +1114,16 @@
     \@@_file_subst_tortoise_hare:nn { #2#3 } { #2#3 }
       { \@@_file_name_compose:nnn {#1} {#2} {#3} }
   }
+\ExplSyntaxOff
+%</2ekernel|latexrelease>
+%<latexrelease>\EndIncludeInRelease
+%<*2ekernel>
 %    \end{macrocode}
 % \end{macro}
 %
+%
+%
+%
 % \subsubsection{The Tortoise and Hare algorithm}
 %
 % \begin{macro}{\@@_file_subst_tortoise_hare:nn}
@@ -1094,6 +1163,11 @@
 %   algorithm will end;  otherwise it will run until the Hare reaches
 %   the same spot as the tortoise and a loop is detected.
 %    \begin{macrocode}
+%</2ekernel>
+%<*2ekernel|latexrelease>
+%<latexrelease>\IncludeInRelease{2020/10/01}%
+%<latexrelease>                 {\@@_file_subst_tortoise_hare:nn}{Tortoise and Hare}%
+\ExplSyntaxOn
 \cs_new:Npn \@@_file_subst_tortoise_hare:nn #1 #2 #3
   {
     \cs_if_exist:cTF { @file-subst@ #2 }
@@ -1159,10 +1233,16 @@
 %
 %    \begin{macrocode}
 \ExplSyntaxOff
-%<@@=>
+%</2ekernel|latexrelease>
+%<latexrelease>\EndIncludeInRelease
+%<*2ekernel>
 %    \end{macrocode}
 %    
 %
+%    \begin{macrocode}
+%<@@=>
+%    \end{macrocode}
+%
 %
 % \subsection{Preventing a package from loading}
 %
@@ -1219,8 +1299,6 @@
 %
 %
 %
-%
-%
 % \subsection{High-level interfaces for \LaTeX{}}
 %
 %    None so far and the general feeling for now is that the hooks are
@@ -1232,13 +1310,84 @@
 %
 % \subsection{Internal commands needed elsewhere}
 %
-%    None so far.
+%    Here we set up a few horrible (but consistent) \LaTeXe{} names to
+%    allow for internal commands to be used outside this module (and
+%    in parts that still use \LaTeXe{} syntax. We have to unset the
+%    \texttt{@\/@} since we want double ``at'' sign in place of double
+%    underscores.
+%
 %    \begin{macrocode}
 %<@@=>
 %    \end{macrocode}
 % 
 %    \begin{macrocode}
 %</2ekernel>
+%<*2ekernel|latexrelease>
+%<latexrelease>\IncludeInRelease{2020/10/01}%
+%<latexrelease>   {\@expl@@@filehook at if@no at extension@@nTF}{2e tmp interfaces}%
+\ExplSyntaxOn
+%    \end{macrocode}
+%    
+%    \begin{macrocode}
+\cs_new_eq:NN \@expl@@@filehook at if@no at extension@@nTF
+              \__filehook_if_no_extension:nTF
+%    \end{macrocode}
+%
+%    \begin{macrocode}
+\cs_new_eq:NN \@expl@@@filehook at set@curr at file@@N
+              \__filehook_set_curr_file:N
+%    \end{macrocode}
+%    
+%    \begin{macrocode}
+\cs_new_eq:NN \@expl@@@filehook at resolve@file at subst@@w
+              \__filehook_resolve_file_subst:w
+%    \end{macrocode}
+%
+%    \begin{macrocode}
+\cs_new_eq:NN \@expl@@@filehook at normalize@file at name@@w
+              \__filehook_normalize_file_name:w
+%    \end{macrocode}
+%    
+%    \begin{macrocode}
+\cs_new_eq:NN \@expl@@@filehook at if@file at replaced@@TF
+              \__filehook_if_file_replaced:TF
+
+%    \end{macrocode}
+%    
+%    \begin{macrocode}
+\cs_new_eq:NN \@expl@@@filehook at drop@extension@@N
+              \__filehook_drop_extension:N
+%    \end{macrocode}
+%    
+%    \begin{macrocode}
+\cs_new_eq:NN \@expl@@@filehook at file@push@@ 
+               \__filehook_file_push:
+%    \end{macrocode}
+%    
+%    \begin{macrocode}
+\cs_new_eq:NN \@expl@@@filehook at file@pop@@
+              \__filehook_file_pop:
+%    \end{macrocode}
+%    
+%    \begin{macrocode}
+\cs_new_eq:NN \@expl@@@filehook at file@pop at assign@@nnnn
+              \__filehook_file_pop_assign:nnnn
+%    \end{macrocode}
+%    
+%
+%    \begin{macrocode}
+\ExplSyntaxOff
+%    \end{macrocode}
+%    
+%    \begin{macrocode}
+%</2ekernel|latexrelease>
+%<latexrelease>\EndIncludeInRelease
+%<*2ekernel>
+%    \end{macrocode}
+%
+%    This ends the kernel code in this file.
+%    \begin{macrocode}
+%</2ekernel>
 %    \end{macrocode}
 %
 %
diff --git a/base/lthooks.dtx b/base/lthooks.dtx
index 1b94bc31..fbbcac62 100644
--- a/base/lthooks.dtx
+++ b/base/lthooks.dtx
@@ -32,7 +32,7 @@
 %
 %    \begin{macrocode}
 \def\lthooksversion{v1.0a}
-\def\lthooksdate{2020/08/21}
+\def\lthooksdate{2020/08/25}
 %    \end{macrocode}
 %
 %<*driver>
@@ -2050,7 +2050,7 @@
     \@@_if_file_hook:wTF #1 / / \s_@@_mark
       {
         \exp_args:Ne \@@_try_declaring_generic_hook_split:nNNnn
-          { \exp_args:Ne \@@_file_hook_normalise:n {#1} }
+          { \exp_args:Ne \@@_file_hook_normalize:n {#1} }
       }
       { \@@_try_declaring_generic_hook_split:nNNnn {#1} }
   }
@@ -2131,16 +2131,16 @@
 %    \end{macrocode}
 % \end{macro}
 %
-% \begin{macro}[EXP]{\@@_file_hook_normalise:n}
+% \begin{macro}[EXP]{\@@_file_hook_normalize:n}
 % \begin{macro}[EXP]{\@@_strip_double_slash:n,\@@_strip_double_slash:w}
 %   When a file-specific hook is found, before being declared it is
-%   lightly normalized by \cs{@@_file_hook_normalise:n}.  The current
+%   lightly normalized by \cs{@@_file_hook_normalize:n}.  The current
 %   implementation just replaces two consecutive slashes (|//|) by a
 %   single one, to cope with simple cases where the user did something
 %   like \verb|\def\input at path{{./mypath/}}|, in which case a hook would
 %   have to be \verb|\AddToHook{file/after/./mypath//file.tex}|.
 %    \begin{macrocode}
-\cs_new:Npn \@@_file_hook_normalise:n #1
+\cs_new:Npn \@@_file_hook_normalize:n #1
   { \@@_strip_double_slash:n {#1} }
 \cs_new:Npn \@@_strip_double_slash:n #1
   { \@@_strip_double_slash:w #1 // \s_@@_mark }
@@ -3384,7 +3384,7 @@
     \@@_if_file_hook:wTF #1 / / \s_@@_mark
       {
         \exp_args:Ne \@@_if_exist_use:n
-          { \exp_args:Ne \@@_file_hook_normalise:n {#1} }
+          { \exp_args:Ne \@@_file_hook_normalize:n {#1} }
       }
       { \@@_if_exist_use:n {#1} } % file/ generic hook (e.g. file/before)
   }
diff --git a/base/ltshipout.dtx b/base/ltshipout.dtx
index 58f0615f..992e3972 100644
--- a/base/ltshipout.dtx
+++ b/base/ltshipout.dtx
@@ -32,7 +32,7 @@
 %
 %    \begin{macrocode}
 \providecommand\ltshipoutversion{v1.0a}
-\providecommand\ltshipoutdate{2020/08/21}
+\providecommand\ltshipoutdate{2020/08/25}
 %    \end{macrocode}
 %
 %<*driver>
@@ -1430,15 +1430,19 @@
 %    \end{macrocode}
 %  \end{macro}
 %
+%    \begin{macrocode}
+\ExplSyntaxOff
+%</2ekernel|latexrelease>
+%<latexrelease>\EndIncludeInRelease
+%    \end{macrocode}
 %
 %
 %    Rolling back here doesn't undefine the interface commands as they
 %    may be used in packages without rollback functionality. So we
 %    just make them do nothing which may or may not work depending on
 %    the code usage.
+%    
 %    \begin{macrocode}
-%</2ekernel|latexrelease>
-%<latexrelease>\EndIncludeInRelease
 %<latexrelease>\IncludeInRelease{0000/00/00}%
 %<latexrelease>                 {\shipout}{The hook management (shipout)}%
 %<latexrelease>\expandafter\let\expandafter\shipout\csname tex_shipout:D\endcsname
@@ -1518,15 +1522,15 @@
 %    This package has only one public command to simulating it is easy
 %    and actually sensible to provide as part of the kernel.
 %    \begin{macrocode}
+%</2ekernel>
+%<*2ekernel|latexrelease>
+%<latexrelease>\IncludeInRelease{2020/10/01}%
+%<latexrelease>                 {\AtEndDvi}{atenddvi emulation}%
+\ExplSyntaxOn
 \cs_new:Npn \AtEndDvi {\AddToHook{shipout/lastpage}}
-%    \end{macrocode}
-%  \end{macro}
-%
-%    \begin{macrocode}
 \ExplSyntaxOff
 %    \end{macrocode}
-%    
-%    As the package is integrate we prevent loading:
+%    As the package is integrate we prevent loading (no need to roll that back):
 %    \begin{macrocode}
 \disable at package@load{atenddvi}
    {\PackageWarning{atenddvi}
@@ -1537,6 +1541,21 @@
       Found on}}
 %    \end{macrocode}
 %
+%    \begin{macrocode}
+%</2ekernel|latexrelease>
+%    \end{macrocode}
+%    
+%    \begin{macrocode}
+%<latexrelease>\EndIncludeInRelease
+%<latexrelease>\IncludeInRelease{0000/00/00}%
+%<latexrelease>                 {\AtEndDvi}{atenddvi emulation}%
+%<latexrelease>\let \AtEndDvi \@undefined
+%<latexrelease>\EndIncludeInRelease
+%<*2ekernel>
+%    \end{macrocode}
+%  \end{macro}
+%
+%    
 %
 %    \begin{macrocode}
 %</2ekernel>
diff --git a/base/testfiles-lthooks/lthooks-errors.lvt b/base/testfiles-lthooks/lthooks-errors.lvt
index 68523490..7beac3bc 100644
--- a/base/testfiles-lthooks/lthooks-errors.lvt
+++ b/base/testfiles-lthooks/lthooks-errors.lvt
@@ -28,7 +28,7 @@
 \ShowHook{xxx}
 
 \makeatletter
-\@filehook at file@pop
+\@expl@@@filehook at file@pop@@
 
 \ExplSyntaxOn
 \__hook_curr_name_pop:
diff --git a/base/testfiles-lthooks/lthooks-errors.tlg b/base/testfiles-lthooks/lthooks-errors.tlg
index c4fa1748..307c0e93 100644
--- a/base/testfiles-lthooks/lthooks-errors.tlg
+++ b/base/testfiles-lthooks/lthooks-errors.tlg
@@ -36,7 +36,7 @@ The hook 'xxx':
 (hooks)                Please report at https://github.com/latex3/latex2e.
 Type <return> to continue.
  ...                                              
-l. ...\@filehook at file@pop
+l. ...\@expl@@@filehook at file@pop@@
 LaTeX does not know anything more about this error, sorry.
 Try typing <return> to proceed.
 If that doesn't work, type X <return> to quit.
diff --git a/base/testfiles/tlb-latexrelease-rollback-003-often.luatex.tlg b/base/testfiles/tlb-latexrelease-rollback-003-often.luatex.tlg
index 2bd5304a..ff1cc015 100644
--- a/base/testfiles/tlb-latexrelease-rollback-003-often.luatex.tlg
+++ b/base/testfiles/tlb-latexrelease-rollback-003-often.luatex.tlg
@@ -166,19 +166,28 @@ Skipping: [....-..-..] Make commands robust on input line ....
 Applying: [....-..-..] Make commands robust on input line ....
 Skipping: [....-..-..] Hook management file on input line ....
 Applying: [....-..-..] Hook management file on input line ....
+Skipping: [....-..-..] File helpers on input line ....
 Skipping: [....-..-..] Hook management (files) on input line ....
 Skipping: [....-..-..] Hook management (files) on input line ....
 Applying: [....-..-..] Hook management (files) on input line ....
+Skipping: [....-..-..] Declaring file substitution on input line ....
 Skipping: [....-..-..] File substitution on input line ....
 Applying: [....-..-..] File substitution on input line ....
 Skipping: [....-..-..] Setting current file name on input line ....
 Skipping: [....-..-..] Setting current file name on input line ....
 Applying: [....-..-..] Setting current file name on input line ....
+Skipping: [....-..-..] Make file csname on input line ....
+Skipping: [....-..-..] Set curr file on input line ....
+Skipping: [....-..-..] Replace files detect loops on input line ....
+Skipping: [....-..-..] Tortoise and Hare on input line ....
 Skipping: [....-..-..] Disable packages on input line ....
 Applying: [....-..-..] Disable packages on input line ....
+Skipping: [....-..-..] 2e tmp interfaces on input line ....
 Skipping: [....-..-..] Hook mangement (shipout) on input line ....
 Applying: [....-..-..] The hook management (shipout) on input line ....
 LaTeX Info: Redefining \AtBeginDvi on input line ....
+Skipping: [....-..-..] atenddvi emulation on input line ....
+Applying: [....-..-..] atenddvi emulation on input line ....
 Skipping: [....-..-..] Extended float list on input line ....
 Applying: [....-..-..] Extended float list on input line ....
 Skipping: [....-..-..] Check depth of page on input line ....
@@ -598,20 +607,29 @@ LaTeX Info: Redefining \markright on input line ....
 Already applied: [....-..-..] Make commands robust on input line ....
 Skipping: [....-..-..] Hook management file on input line ....
 Applying: [....-..-..] Hook management file on input line ....
+Skipping: [....-..-..] File helpers on input line ....
 Skipping: [....-..-..] Hook management (files) on input line ....
 Applying: [....-..-..] Hook management (files) on input line ....
 LaTeX Info: Redefining \InputIfFileExists on input line ....
 Already applied: [....-..-..] Hook management (files) on input line ....
+Skipping: [....-..-..] Declaring file substitution on input line ....
 Skipping: [....-..-..] File substitution on input line ....
 Applying: [....-..-..] File substitution on input line ....
 Skipping: [....-..-..] Setting current file name on input line ....
 Applying: [....-..-..] Setting current file name on input line ....
 Already applied: [....-..-..] Setting current file name on input line ....
+Skipping: [....-..-..] Make file csname on input line ....
+Skipping: [....-..-..] Set curr file on input line ....
+Skipping: [....-..-..] Replace files detect loops on input line ....
+Skipping: [....-..-..] Tortoise and Hare on input line ....
 Skipping: [....-..-..] Disable packages on input line ....
 Applying: [....-..-..] Disable packages on input line ....
+Skipping: [....-..-..] 2e tmp interfaces on input line ....
 Skipping: [....-..-..] Hook mangement (shipout) on input line ....
 Applying: [....-..-..] The hook management (shipout) on input line ....
 LaTeX Info: Redefining \AtBeginDvi on input line ....
+Skipping: [....-..-..] atenddvi emulation on input line ....
+Applying: [....-..-..] atenddvi emulation on input line ....
 Applying: [....-..-..] Extended float list on input line ....
 \bx at S=\insert...
 \bx at T=\insert...
diff --git a/base/testfiles/tlb-latexrelease-rollback-003-often.tlg b/base/testfiles/tlb-latexrelease-rollback-003-often.tlg
index 2d3824d6..0f79680a 100644
--- a/base/testfiles/tlb-latexrelease-rollback-003-often.tlg
+++ b/base/testfiles/tlb-latexrelease-rollback-003-often.tlg
@@ -164,19 +164,28 @@ Skipping: [....-..-..] Make commands robust on input line ....
 Applying: [....-..-..] Make commands robust on input line ....
 Skipping: [....-..-..] Hook management file on input line ....
 Applying: [....-..-..] Hook management file on input line ....
+Skipping: [....-..-..] File helpers on input line ....
 Skipping: [....-..-..] Hook management (files) on input line ....
 Skipping: [....-..-..] Hook management (files) on input line ....
 Applying: [....-..-..] Hook management (files) on input line ....
+Skipping: [....-..-..] Declaring file substitution on input line ....
 Skipping: [....-..-..] File substitution on input line ....
 Applying: [....-..-..] File substitution on input line ....
 Skipping: [....-..-..] Setting current file name on input line ....
 Skipping: [....-..-..] Setting current file name on input line ....
 Applying: [....-..-..] Setting current file name on input line ....
+Skipping: [....-..-..] Make file csname on input line ....
+Skipping: [....-..-..] Set curr file on input line ....
+Skipping: [....-..-..] Replace files detect loops on input line ....
+Skipping: [....-..-..] Tortoise and Hare on input line ....
 Skipping: [....-..-..] Disable packages on input line ....
 Applying: [....-..-..] Disable packages on input line ....
+Skipping: [....-..-..] 2e tmp interfaces on input line ....
 Skipping: [....-..-..] Hook mangement (shipout) on input line ....
 Applying: [....-..-..] The hook management (shipout) on input line ....
 LaTeX Info: Redefining \AtBeginDvi on input line ....
+Skipping: [....-..-..] atenddvi emulation on input line ....
+Applying: [....-..-..] atenddvi emulation on input line ....
 Skipping: [....-..-..] Extended float list on input line ....
 Applying: [....-..-..] Extended float list on input line ....
 Skipping: [....-..-..] Check depth of page on input line ....
@@ -590,20 +599,29 @@ LaTeX Info: Redefining \markright on input line ....
 Already applied: [....-..-..] Make commands robust on input line ....
 Skipping: [....-..-..] Hook management file on input line ....
 Applying: [....-..-..] Hook management file on input line ....
+Skipping: [....-..-..] File helpers on input line ....
 Skipping: [....-..-..] Hook management (files) on input line ....
 Applying: [....-..-..] Hook management (files) on input line ....
 LaTeX Info: Redefining \InputIfFileExists on input line ....
 Already applied: [....-..-..] Hook management (files) on input line ....
+Skipping: [....-..-..] Declaring file substitution on input line ....
 Skipping: [....-..-..] File substitution on input line ....
 Applying: [....-..-..] File substitution on input line ....
 Skipping: [....-..-..] Setting current file name on input line ....
 Applying: [....-..-..] Setting current file name on input line ....
 Already applied: [....-..-..] Setting current file name on input line ....
+Skipping: [....-..-..] Make file csname on input line ....
+Skipping: [....-..-..] Set curr file on input line ....
+Skipping: [....-..-..] Replace files detect loops on input line ....
+Skipping: [....-..-..] Tortoise and Hare on input line ....
 Skipping: [....-..-..] Disable packages on input line ....
 Applying: [....-..-..] Disable packages on input line ....
+Skipping: [....-..-..] 2e tmp interfaces on input line ....
 Skipping: [....-..-..] Hook mangement (shipout) on input line ....
 Applying: [....-..-..] The hook management (shipout) on input line ....
 LaTeX Info: Redefining \AtBeginDvi on input line ....
+Skipping: [....-..-..] atenddvi emulation on input line ....
+Applying: [....-..-..] atenddvi emulation on input line ....
 Applying: [....-..-..] Extended float list on input line ....
 \bx at S=\insert...
 \bx at T=\insert...
diff --git a/base/testfiles/tlb-latexrelease-rollback-003-often.xetex.tlg b/base/testfiles/tlb-latexrelease-rollback-003-often.xetex.tlg
index 7bbd6b2f..7ffe60b4 100644
--- a/base/testfiles/tlb-latexrelease-rollback-003-often.xetex.tlg
+++ b/base/testfiles/tlb-latexrelease-rollback-003-often.xetex.tlg
@@ -164,19 +164,28 @@ Skipping: [....-..-..] Make commands robust on input line ....
 Applying: [....-..-..] Make commands robust on input line ....
 Skipping: [....-..-..] Hook management file on input line ....
 Applying: [....-..-..] Hook management file on input line ....
+Skipping: [....-..-..] File helpers on input line ....
 Skipping: [....-..-..] Hook management (files) on input line ....
 Skipping: [....-..-..] Hook management (files) on input line ....
 Applying: [....-..-..] Hook management (files) on input line ....
+Skipping: [....-..-..] Declaring file substitution on input line ....
 Skipping: [....-..-..] File substitution on input line ....
 Applying: [....-..-..] File substitution on input line ....
 Skipping: [....-..-..] Setting current file name on input line ....
 Skipping: [....-..-..] Setting current file name on input line ....
 Applying: [....-..-..] Setting current file name on input line ....
+Skipping: [....-..-..] Make file csname on input line ....
+Skipping: [....-..-..] Set curr file on input line ....
+Skipping: [....-..-..] Replace files detect loops on input line ....
+Skipping: [....-..-..] Tortoise and Hare on input line ....
 Skipping: [....-..-..] Disable packages on input line ....
 Applying: [....-..-..] Disable packages on input line ....
+Skipping: [....-..-..] 2e tmp interfaces on input line ....
 Skipping: [....-..-..] Hook mangement (shipout) on input line ....
 Applying: [....-..-..] The hook management (shipout) on input line ....
 LaTeX Info: Redefining \AtBeginDvi on input line ....
+Skipping: [....-..-..] atenddvi emulation on input line ....
+Applying: [....-..-..] atenddvi emulation on input line ....
 Skipping: [....-..-..] Extended float list on input line ....
 Applying: [....-..-..] Extended float list on input line ....
 Skipping: [....-..-..] Check depth of page on input line ....
@@ -599,20 +608,29 @@ LaTeX Info: Redefining \markright on input line ....
 Already applied: [....-..-..] Make commands robust on input line ....
 Skipping: [....-..-..] Hook management file on input line ....
 Applying: [....-..-..] Hook management file on input line ....
+Skipping: [....-..-..] File helpers on input line ....
 Skipping: [....-..-..] Hook management (files) on input line ....
 Applying: [....-..-..] Hook management (files) on input line ....
 LaTeX Info: Redefining \InputIfFileExists on input line ....
 Already applied: [....-..-..] Hook management (files) on input line ....
+Skipping: [....-..-..] Declaring file substitution on input line ....
 Skipping: [....-..-..] File substitution on input line ....
 Applying: [....-..-..] File substitution on input line ....
 Skipping: [....-..-..] Setting current file name on input line ....
 Applying: [....-..-..] Setting current file name on input line ....
 Already applied: [....-..-..] Setting current file name on input line ....
+Skipping: [....-..-..] Make file csname on input line ....
+Skipping: [....-..-..] Set curr file on input line ....
+Skipping: [....-..-..] Replace files detect loops on input line ....
+Skipping: [....-..-..] Tortoise and Hare on input line ....
 Skipping: [....-..-..] Disable packages on input line ....
 Applying: [....-..-..] Disable packages on input line ....
+Skipping: [....-..-..] 2e tmp interfaces on input line ....
 Skipping: [....-..-..] Hook mangement (shipout) on input line ....
 Applying: [....-..-..] The hook management (shipout) on input line ....
 LaTeX Info: Redefining \AtBeginDvi on input line ....
+Skipping: [....-..-..] atenddvi emulation on input line ....
+Applying: [....-..-..] atenddvi emulation on input line ....
 Applying: [....-..-..] Extended float list on input line ....
 \bx at S=\insert...
 \bx at T=\insert...
diff --git a/base/testfiles/tlb-rollback-004-often.luatex.tlg b/base/testfiles/tlb-rollback-004-often.luatex.tlg
index 78eb0581..a8aecfb5 100644
--- a/base/testfiles/tlb-rollback-004-often.luatex.tlg
+++ b/base/testfiles/tlb-rollback-004-often.luatex.tlg
@@ -220,20 +220,29 @@ LaTeX Info: Redefining \markright on input line ....
 Already applied: [....-..-..] Make commands robust on input line ....
 Skipping: [....-..-..] Hook management file on input line ....
 Applying: [....-..-..] Hook management file on input line ....
+Skipping: [....-..-..] File helpers on input line ....
 Skipping: [....-..-..] Hook management (files) on input line ....
 Applying: [....-..-..] Hook management (files) on input line ....
 LaTeX Info: Redefining \InputIfFileExists on input line ....
 Already applied: [....-..-..] Hook management (files) on input line ....
+Skipping: [....-..-..] Declaring file substitution on input line ....
 Skipping: [....-..-..] File substitution on input line ....
 Applying: [....-..-..] File substitution on input line ....
 Skipping: [....-..-..] Setting current file name on input line ....
 Applying: [....-..-..] Setting current file name on input line ....
 Already applied: [....-..-..] Setting current file name on input line ....
+Skipping: [....-..-..] Make file csname on input line ....
+Skipping: [....-..-..] Set curr file on input line ....
+Skipping: [....-..-..] Replace files detect loops on input line ....
+Skipping: [....-..-..] Tortoise and Hare on input line ....
 Skipping: [....-..-..] Disable packages on input line ....
 Applying: [....-..-..] Disable packages on input line ....
+Skipping: [....-..-..] 2e tmp interfaces on input line ....
 Skipping: [....-..-..] Hook mangement (shipout) on input line ....
 Applying: [....-..-..] The hook management (shipout) on input line ....
 LaTeX Info: Redefining \AtBeginDvi on input line ....
+Skipping: [....-..-..] atenddvi emulation on input line ....
+Applying: [....-..-..] atenddvi emulation on input line ....
 Applying: [....-..-..] Extended float list on input line ....
 \bx at S=\insert...
 \bx at T=\insert...
diff --git a/base/testfiles/tlb-rollback-004-often.tlg b/base/testfiles/tlb-rollback-004-often.tlg
index aa1e605b..ceb14d9b 100644
--- a/base/testfiles/tlb-rollback-004-often.tlg
+++ b/base/testfiles/tlb-rollback-004-often.tlg
@@ -218,20 +218,29 @@ LaTeX Info: Redefining \markright on input line ....
 Already applied: [....-..-..] Make commands robust on input line ....
 Skipping: [....-..-..] Hook management file on input line ....
 Applying: [....-..-..] Hook management file on input line ....
+Skipping: [....-..-..] File helpers on input line ....
 Skipping: [....-..-..] Hook management (files) on input line ....
 Applying: [....-..-..] Hook management (files) on input line ....
 LaTeX Info: Redefining \InputIfFileExists on input line ....
 Already applied: [....-..-..] Hook management (files) on input line ....
+Skipping: [....-..-..] Declaring file substitution on input line ....
 Skipping: [....-..-..] File substitution on input line ....
 Applying: [....-..-..] File substitution on input line ....
 Skipping: [....-..-..] Setting current file name on input line ....
 Applying: [....-..-..] Setting current file name on input line ....
 Already applied: [....-..-..] Setting current file name on input line ....
+Skipping: [....-..-..] Make file csname on input line ....
+Skipping: [....-..-..] Set curr file on input line ....
+Skipping: [....-..-..] Replace files detect loops on input line ....
+Skipping: [....-..-..] Tortoise and Hare on input line ....
 Skipping: [....-..-..] Disable packages on input line ....
 Applying: [....-..-..] Disable packages on input line ....
+Skipping: [....-..-..] 2e tmp interfaces on input line ....
 Skipping: [....-..-..] Hook mangement (shipout) on input line ....
 Applying: [....-..-..] The hook management (shipout) on input line ....
 LaTeX Info: Redefining \AtBeginDvi on input line ....
+Skipping: [....-..-..] atenddvi emulation on input line ....
+Applying: [....-..-..] atenddvi emulation on input line ....
 Applying: [....-..-..] Extended float list on input line ....
 \bx at S=\insert...
 \bx at T=\insert...
diff --git a/base/testfiles/tlb-rollback-004-often.xetex.tlg b/base/testfiles/tlb-rollback-004-often.xetex.tlg
index 2b620bde..d19157ed 100644
--- a/base/testfiles/tlb-rollback-004-often.xetex.tlg
+++ b/base/testfiles/tlb-rollback-004-often.xetex.tlg
@@ -218,20 +218,29 @@ LaTeX Info: Redefining \markright on input line ....
 Already applied: [....-..-..] Make commands robust on input line ....
 Skipping: [....-..-..] Hook management file on input line ....
 Applying: [....-..-..] Hook management file on input line ....
+Skipping: [....-..-..] File helpers on input line ....
 Skipping: [....-..-..] Hook management (files) on input line ....
 Applying: [....-..-..] Hook management (files) on input line ....
 LaTeX Info: Redefining \InputIfFileExists on input line ....
 Already applied: [....-..-..] Hook management (files) on input line ....
+Skipping: [....-..-..] Declaring file substitution on input line ....
 Skipping: [....-..-..] File substitution on input line ....
 Applying: [....-..-..] File substitution on input line ....
 Skipping: [....-..-..] Setting current file name on input line ....
 Applying: [....-..-..] Setting current file name on input line ....
 Already applied: [....-..-..] Setting current file name on input line ....
+Skipping: [....-..-..] Make file csname on input line ....
+Skipping: [....-..-..] Set curr file on input line ....
+Skipping: [....-..-..] Replace files detect loops on input line ....
+Skipping: [....-..-..] Tortoise and Hare on input line ....
 Skipping: [....-..-..] Disable packages on input line ....
 Applying: [....-..-..] Disable packages on input line ....
+Skipping: [....-..-..] 2e tmp interfaces on input line ....
 Skipping: [....-..-..] Hook mangement (shipout) on input line ....
 Applying: [....-..-..] The hook management (shipout) on input line ....
 LaTeX Info: Redefining \AtBeginDvi on input line ....
+Skipping: [....-..-..] atenddvi emulation on input line ....
+Applying: [....-..-..] atenddvi emulation on input line ....
 Applying: [....-..-..] Extended float list on input line ....
 \bx at S=\insert...
 \bx at T=\insert...





More information about the latex3-commits mailing list.