[latex3-commits] [git/LaTeX3-latex3-latex2e] earlier-expl3: Make unavailable expl3 a fatal error (4eb812cd)

PhelypeOleinik tex.phelype at gmail.com
Tue Jun 9 16:33:44 CEST 2020


Repository : https://github.com/latex3/latex2e
On branch  : earlier-expl3
Link       : https://github.com/latex3/latex2e/commit/4eb812cd25b7d06e28f82175e2759e4fc2768f49

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

commit 4eb812cd25b7d06e28f82175e2759e4fc2768f49
Author: PhelypeOleinik <tex.phelype at gmail.com>
Date:   Tue Jun 9 11:33:44 2020 -0300

    Make unavailable expl3 a fatal error
    
    l3kernel is now in collection-latex and an update to expl3 triggers format rebuild, so it is safe to assume that expl3 is available.


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

4eb812cd25b7d06e28f82175e2759e4fc2768f49
 base/ltexpl.dtx | 36 ++++++++++++++++++++++++++++++------
 1 file changed, 30 insertions(+), 6 deletions(-)

diff --git a/base/ltexpl.dtx b/base/ltexpl.dtx
index 99b315dd..bca999f4 100644
--- a/base/ltexpl.dtx
+++ b/base/ltexpl.dtx
@@ -140,15 +140,39 @@
           >0 %
           \expandafter\@firstofone
         \else
-          \message{Skipping expl3-dependent extensions}%
-%<2ekernel>          \expandafter\endinput
-%<latexrelease>          \expandafter\@gobble
+%    \end{macrocode}
+%
+% In \texttt{2ekernel} mode, an error is fatal and building the format
+% is aborted. Use \verb=\batchmode \read -1 to \tokenlist=, which errors
+% with
+% \verb=! Emergency stop. (cannot \read from terminal in nonstop modes)=
+% and aborts the \TeX{} run.  In \texttt{latexrelease} mode, raise an
+% error and do nothing.  Both ways, the error message shows the minimum
+% \textsf{expl3} engine requirements.
+%    \begin{macrocode}
+%<2ekernel>          \def~{ }\def\MessageBreak{^^J~~~~~~~~~~~~~~~}%
+%<2ekernel>          \errmessage{LaTeX Error:
+%<latexrelease>          \@latex at error{%
+            LaTeX requires the e-TeX primitives and additional\MessageBreak
+            functionality available in the engines:\MessageBreak
+              - pdfTeX v1.40\MessageBreak
+              - XeTeX v0.99992\MessageBreak
+              - LuaTeX v0.95\MessageBreak
+              - e-(u)pTeX mid-2012\MessageBreak
+            or later%
+%<latexrelease>          }\@ehd \expandafter\@gobble
+%<2ekernel>          }\batchmode \read -1 to \reserved at a
         \fi
       }
       {%
-        \message{Skipping expl3-dependent extensions}%
-%<2ekernel>        \endinput
-%<latexrelease>        \@gobble
+%<*2ekernel>
+        \errmessage{LaTeX requires expl3}%
+        \batchmode \read -1 to \reserved at a
+%</2ekernel>
+%<*latexrelease>
+        \@latex at error{LaTeX requires expl3}\@ehd
+        \@gobble
+%</latexrelease>
       }%
       {%
         \input expl3.ltx





More information about the latex3-commits mailing list.