Skip to content

Commit

Permalink
Merge pull request #466 from latex3/hotfix/gh463
Browse files Browse the repository at this point in the history
Hotfix/gh463
  • Loading branch information
FrankMittelbach committed Jan 7, 2021
2 parents 3ec488b + aa6deab commit ac4e176
Show file tree
Hide file tree
Showing 20 changed files with 1,893 additions and 753 deletions.
8 changes: 8 additions & 0 deletions base/changes.txt
Expand Up @@ -10,6 +10,14 @@ are not part of the distribution.
All changes above are only part of the development branch for the next release.
================================================================================

2021-01-07 Phelype Oleinik <phelype.oleinik@latex-project.org>

* ltfilehook.dtx:
Undefine \@expl@@@filehook@file@pop@@ to avoid error when rolling back (gh/463).

* lthooks.dtx:
Modified internal copies of l3tl commands to avoid errors with l3debug (gh/463).

#########################
# 2020-10-01 PL 4 Release
#########################
Expand Down
18 changes: 15 additions & 3 deletions base/ltfilehook.dtx
Expand Up @@ -31,8 +31,8 @@
%%% From File: ltfilehook.dtx
%
% \begin{macrocode}
\providecommand\ltfilehookversion{v1.0d}
\providecommand\ltfilehookdate{2020/11/24}
\providecommand\ltfilehookversion{v1.0e}
\providecommand\ltfilehookdate{2021/01/07}
% \end{macrocode}
%
%<*driver>
Expand Down Expand Up @@ -1488,10 +1488,22 @@
% \begin{macrocode}
\ExplSyntaxOff
% \end{macrocode}
%
%
% This one specifically has to be undefined because it is left over in
% the input stream from \cs{InputIfFileExists} and executed when
% \pkg{latexrelease} is loaded. It cannot be \cs{let} to \cs{@undefined}
% otherwise it would error as well, so it is \cs{let} to \cs{relax} to
% be silently ignored when loading \cs{latexrelease}.
% \changes{v1.0e}{2021/01/07}{Added rollback for this case to avoid
% spurious errors (part of gh/463)}
% \begin{macrocode}
%</2ekernel|latexrelease>
%<latexrelease>\EndIncludeInRelease
%<latexrelease>
%<latexrelease>\IncludeInRelease{0000/00/00}%
%<latexrelease> {\@expl@@@filehook@if@no@extension@@nTF}{2e tmp interfaces}%
%<latexrelease>\let\@expl@@@filehook@file@pop@@\relax
%<latexrelease>\EndIncludeInRelease
%<*2ekernel>
% \end{macrocode}
%
Expand Down
85 changes: 65 additions & 20 deletions base/lthooks.dtx
Expand Up @@ -31,8 +31,8 @@
%%% From File: lthooks.dtx
%
% \begin{macrocode}
\def\lthooksversion{v1.0g}
\def\lthooksdate{2020/12/18}
\def\lthooksversion{v1.0h}
\def\lthooksdate{2021/01/07}
% \end{macrocode}
%
%<*driver>
Expand Down Expand Up @@ -1873,35 +1873,80 @@
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{\@@_tl_set:Nn,\@@_tl_set:cn,\@@_tl_set:cx}
% \begin{macro}{\@@_tl_gset:Nn,\@@_tl_gset:cn,\@@_tl_gset:co,\@@_tl_gset:cx}
% \begin{macro}{\@@_tl_gput_right:Nn,\@@_tl_gput_right:No,\@@_tl_gput_right:cn}
% \begin{macro}{\@@_tl_gput_left:Nn,\@@_tl_gput_left:No}
% \begin{macro}{\@@_tl_gclear:N,\@@_tl_gclear:c}
% \begin{macro}{\@@_tl_gset_eq:NN}
% \begin{macro}{\@@_tl_set:Nn,\@@_tl_set:Nx,
% \@@_tl_set:cn,\@@_tl_set:cx}
% Private copies of a few \pkg{expl3} functions. \pkg{l3debug} will
% only add debugging to the public names, not to these copies, so we
% don't have to use \cs{debug_suspend:} and \cs{debug_resume:}
% everywhere.
%
% Functions like \cs{@@_tl_set:Nn} have to be redefined, rather than
% copied because in \pkg{expl3} they use
% \cs[no-index]{__kernel_tl_(g)set:Nx}, which is also patched by
% \pkg{l3debug}.
% \changes{v1.0h}{2021/01/07}{Manually define some \pkg{l3tl} commands
% to work around \pkg{expl3} changes}
% \begin{macrocode}
\cs_new_eq:NN \@@_tl_set:Nn \tl_set:Nn
\cs_generate_variant:Nn \@@_tl_set:Nn { cn, cx }
\cs_new_eq:NN \@@_tl_gset:Nn \tl_gset:Nn
\cs_generate_variant:Nn \@@_tl_gset:Nn { cn, co, cx }
\cs_new_eq:NN \@@_tl_gput_right:Nn \tl_gput_right:Nn
\cs_generate_variant:Nn \@@_tl_gput_right:Nn { No, cn }
\cs_new_eq:NN \@@_tl_gput_left:Nn \tl_gput_left:Nn
\cs_generate_variant:Nn \@@_tl_gput_left:Nn { No }
\cs_new_protected:Npn \@@_tl_gclear:N #1
{ \@@_tl_gset_eq:NN #1 \c_empty_tl }
\cs_generate_variant:Nn \@@_tl_gclear:N { c }
\cs_new_eq:NN \@@_tl_gset_eq:NN \tl_gset_eq:NN
\cs_new_protected:Npn \@@_tl_set:Nn #1#2
{ \cs_set_nopar:Npx #1 { \__kernel_exp_not:w {#2} } }
\cs_new_protected:Npn \@@_tl_set:Nx #1#2
{ \cs_set_nopar:Npx #1 {#2} }
\cs_generate_variant:Nn \@@_tl_set:Nn { c }
\cs_generate_variant:Nn \@@_tl_set:Nx { c }
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{\@@_tl_gset:Nn,\@@_tl_gset:No,\@@_tl_gset:Nx,
% \@@_tl_gset:cn,\@@_tl_gset:co,\@@_tl_gset:cx}
% Same as above.
% \begin{macrocode}
\cs_new_protected:Npn \@@_tl_gset:Nn #1#2
{ \cs_gset_nopar:Npx #1 { \__kernel_exp_not:w {#2} } }
\cs_new_protected:Npn \@@_tl_gset:No #1#2
{ \cs_gset_nopar:Npx #1 { \__kernel_exp_not:w \exp_after:wN {#2} } }
\cs_new_protected:Npn \@@_tl_gset:Nx #1#2
{ \cs_gset_nopar:Npx #1 {#2} }
\cs_generate_variant:Nn \@@_tl_gset:Nn { c }
\cs_generate_variant:Nn \@@_tl_gset:No { c }
\cs_generate_variant:Nn \@@_tl_gset:Nx { c }
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{\@@_tl_gput_right:Nn,\@@_tl_gput_right:No,\@@_tl_gput_right:cn}
% Same as above.
% \begin{macrocode}
\cs_new_protected:Npn \@@_tl_gput_right:Nn #1#2
{ \@@_tl_gset:Nx #1 { \__kernel_exp_not:w \exp_after:wN { #1 #2 } } }
\cs_generate_variant:Nn \@@_tl_gput_right:Nn { No, cn }
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{\@@_tl_gput_left:Nn,\@@_tl_gput_left:No}
% Same as above.
% \begin{macrocode}
\cs_new_protected:Npn \@@_tl_gput_left:Nn #1#2
{
\@@_tl_gset:Nx #1
{ \__kernel_exp_not:w {#2} \__kernel_exp_not:w \exp_after:wN {#1} }
}
\cs_generate_variant:Nn \@@_tl_gput_left:Nn { No }
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{\@@_tl_gset_eq:NN}
% Same as above.
% \begin{macrocode}
\cs_new_eq:NN \@@_tl_gset_eq:NN \tl_gset_eq:NN
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{\@@_tl_gclear:N,\@@_tl_gclear:c}
% Same as above.
% \begin{macrocode}
\cs_new_protected:Npn \@@_tl_gclear:N #1
{ \@@_tl_gset_eq:NN #1 \c_empty_tl }
\cs_generate_variant:Nn \@@_tl_gclear:N { c }
% \end{macrocode}
% \end{macro}
%
%
Expand Down
2 changes: 2 additions & 0 deletions base/testfiles/tlb-latexrelease-rollback-003-often.luatex.tlg
Expand Up @@ -393,6 +393,7 @@ 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 ....
Applying: [....-..-..] 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 ....
Expand Down Expand Up @@ -885,6 +886,7 @@ 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 ....
Applying: [....-..-..] 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 ....
Expand Down
2 changes: 2 additions & 0 deletions base/testfiles/tlb-latexrelease-rollback-003-often.tlg
Expand Up @@ -387,6 +387,7 @@ 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 ....
Applying: [....-..-..] 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 ....
Expand Down Expand Up @@ -869,6 +870,7 @@ 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 ....
Applying: [....-..-..] 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 ....
Expand Down
2 changes: 2 additions & 0 deletions base/testfiles/tlb-latexrelease-rollback-003-often.xetex.tlg
Expand Up @@ -387,6 +387,7 @@ 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 ....
Applying: [....-..-..] 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 ....
Expand Down Expand Up @@ -878,6 +879,7 @@ 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 ....
Applying: [....-..-..] 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 ....
Expand Down
1 change: 1 addition & 0 deletions base/testfiles/tlb-rollback-004-often.luatex.tlg
Expand Up @@ -765,6 +765,7 @@ 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 ....
Applying: [....-..-..] 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 ....
Expand Down
1 change: 1 addition & 0 deletions base/testfiles/tlb-rollback-004-often.tlg
Expand Up @@ -753,6 +753,7 @@ 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 ....
Applying: [....-..-..] 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 ....
Expand Down
1 change: 1 addition & 0 deletions base/testfiles/tlb-rollback-004-often.xetex.tlg
Expand Up @@ -754,6 +754,7 @@ 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 ....
Applying: [....-..-..] 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 ....
Expand Down
2 changes: 1 addition & 1 deletion base/testfiles/tlb-syntonly-001.luatex.tlg
Expand Up @@ -9,7 +9,7 @@ Package fixltx2e Warning: fixltx2e is not required with releases after 2015
Already applied: [....-..-..] Old fixltx2e package on input line ....
) (syntonly.sty
Package: syntonly ....-..-.. v... Standard LaTeX2e package
warning (font): lua-loaded font '25' with name 'dummy' has no characters
warning (font): lua-loaded font '23' with name 'dummy' has no characters
)
\output=\toks...
Author: Frank Mittelbach
Expand Down

0 comments on commit ac4e176

Please sign in to comment.