[latex3-commits] [latex3/xfrac] main: Load expl3 explicitly only if necessary (9fb8f54)
github at latex-project.org
github at latex-project.org
Tue Feb 13 18:24:23 CET 2024
Repository : https://github.com/latex3/xfrac
On branch : main
Link : https://github.com/latex3/xfrac/commit/9fb8f54e2706c252bb29f2f1867018ca351f4fee
>---------------------------------------------------------------
commit 9fb8f54e2706c252bb29f2f1867018ca351f4fee
Author: Joseph Wright <joseph.wright at morningstar2.co.uk>
Date: Tue Feb 13 17:22:15 2024 +0000
Load expl3 explicitly only if necessary
>---------------------------------------------------------------
9fb8f54e2706c252bb29f2f1867018ca351f4fee
xfrac.dtx | 38 +++++++++++++++++++++++---------------
1 file changed, 23 insertions(+), 15 deletions(-)
diff --git a/xfrac.dtx b/xfrac.dtx
index 6cdf0da..9599821 100644
--- a/xfrac.dtx
+++ b/xfrac.dtx
@@ -24,21 +24,6 @@
% for those people who are interested.
%
%<*driver|package>
-% The version of expl3 required is tested as early as possible, as
-% some really old versions do not define \ProvidesExplPackage.
-\RequirePackage{expl3}[2018/02/21]
-%<package>\@ifpackagelater{expl3}{2018/02/21}
-%<package> {}
-%<package> {%
-%<package> \PackageError{xfrac}{Support package l3kernel too old}
-%<package> {%
-%<package> Please install an up to date version of l3kernel\MessageBreak
-%<package> using your TeX package manager or from CTAN.\MessageBreak
-%<package> \MessageBreak
-%<package> Loading xfrac will abort!%
-%<package> }%
-%<package> \endinput
-%<package> }
\RequirePackage{amstext,graphicx,l3keys2e,textcomp,xparse,xtemplate}
%</driver|package>
%<*driver>
@@ -503,6 +488,29 @@
%<@@=xfrac>
% \end{macrocode}
%
+% Load \pkg{expl3} \enquote{up-front} only if required.
+% \begin{macrocode}
+\@ifundefined{ExplLoaderFileDate}
+ {\RequirePackage{expl3}}
+ {}
+% \end{macrocode}
+%
+% Make sure that the version of \pkg{l3kernel} in use is sufficiently new.
+% We use \cs{ExplFileDate} as \cs{@ifpackagelater} doesn't work for pre-loaded
+% \pkg{expl3} in the absence of the package.
+% \begin{macrocode}
+\@ifl at t@r\ExplLoaderFileDate{2018-02-21}
+ {}
+ {%
+ \PackageError{xfrac}{Support package expl3 too old}
+ {%
+ You need to update your installation of 'l3kernel'.\MessageBreak
+ Loading~xfrac~will~abort!%
+ }%
+ \endinput
+ }%
+% \end{macrocode}
+%
% \begin{macrocode}
\ProvidesExplPackage{xfrac}{2023-10-10}{}
{L3 Experimental split-level fractions}
More information about the latex3-commits
mailing list.