summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/latex')
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/expl3.dtx10
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3.ins2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3basics.dtx39
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3bitset.dtx85
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3box.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx4
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3cctab.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3clist.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx4
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3color.dtx4
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3debug.dtx6
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx22
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3doc.dtx151
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3expan.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3file.dtx190
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3flag.dtx4
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx8
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx4
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx8
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx4
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx8
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx8
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3fp-functions.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx8
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx8
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx8
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx4
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3fp-symbolic.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx8
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx8
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3fp-types.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3fp.dtx4
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx4
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3int.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx4
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx4
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3keys.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3legacy.dtx4
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx4
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3msg.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3names.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3pdf.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3prg.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3prop.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3quark.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3regex.dtx4
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3seq.dtx4
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3skip.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3sort.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3str-convert.dtx4
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3str.dtx10
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3sys.dtx4
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3text-case.dtx4
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3text-map.dtx4
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3text-purify.dtx4
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3text.dtx4
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx4
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3tl-build.dtx4
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3tl.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3token.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx4
63 files changed, 390 insertions, 335 deletions
diff --git a/Master/texmf-dist/source/latex/l3kernel/expl3.dtx b/Master/texmf-dist/source/latex/l3kernel/expl3.dtx
index 835b29d525b..7c6ffe952be 100644
--- a/Master/texmf-dist/source/latex/l3kernel/expl3.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/expl3.dtx
@@ -24,7 +24,7 @@
%
%<*driver|generic|package|2ekernel>
%</driver|generic|package|2ekernel>
-\def\ExplFileDate{2023-12-08}%
+\def\ExplFileDate{2023-12-11}%
%<*driver>
\documentclass[full]{l3doc}
\usepackage{graphicx}
@@ -39,7 +39,7 @@
% \begin{itemize}\def\makelabel##1{\hss\llap{\bfseries##1}}}{\end{itemize}}
%
% \title{^^A
-% The \textsf{expl3} package and \LaTeX3 programming^^A
+% The \pkg{expl3} package and \LaTeX3 programming^^A
% }
%
% \author{^^A
@@ -51,7 +51,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
@@ -1437,12 +1437,12 @@
% an older version of the kernel, so we \emph{must} patch.
%
% In \texttt{package} mode, if these commands exist, then we are using
-% a version of \LaTeXe{} with \textsf{expl3} preloaded (any version)
+% a version of \LaTeXe{} with \pkg{expl3} preloaded (any version)
% and in any case patching is already done or the macros are in the
% format itself, so nothing to do.
% But if in \texttt{package} mode these macros don't exist, we have an
% even older version of \LaTeXe{} which doesn't even have
-% \textsf{expl3} preloaded, so patching is necessary.
+% \pkg{expl3} preloaded, so patching is necessary.
%
% All this means that in both \texttt{2ekernel} and \texttt{package}
% mode we have to check whether \cs{@expl@sys@load@backend@@@@}
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3.ins b/Master/texmf-dist/source/latex/l3kernel/l3.ins
index 248017ba2f1..7f1d882f8cd 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3.ins
+++ b/Master/texmf-dist/source/latex/l3kernel/l3.ins
@@ -152,6 +152,8 @@ and all files in that bundle must be distributed together.
\generate{\file{l3names.def} {\from{l3names.dtx} {names}}}
+\generate{\file{l3bitset.sty} {\from{l3bitset.dtx} {stub}}}
+
% Lua code
\def\MetaPrefix{--}
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx b/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx
index d4f447287ba..716edf4c7c7 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
@@ -1417,7 +1417,7 @@
% \end{macro}
%
% \begin{macro}[EXP]{\exp_after:wN, \exp_not:N, \exp_not:n}
-% The five |\exp_| functions are used in the \textsf{l3expan} module
+% The five |\exp_| functions are used in the \pkg{l3expan} module
% where they are described.
% \begin{macrocode}
\tex_let:D \exp_after:wN \tex_expandafter:D
@@ -1448,7 +1448,7 @@
% \begin{macro}{\scan_stop:, \group_begin:, \group_end:}
% The next three are basic functions for which there also exist
% versions that are safe inside alignments. These safe versions are
-% defined in the \textsf{l3prg} module.
+% defined in the \pkg{l3prg} module.
% \begin{macrocode}
\tex_let:D \scan_stop: \tex_relax:D
\tex_let:D \group_begin: \tex_begingroup:D
@@ -1513,10 +1513,10 @@
%
% \begin{variable}{\c_zero_int}
% We need the constant \cs{c_zero_int}
-% which is used by some functions in the \textsf{l3alloc} module. The
-% rest are defined in the \textsf{l3int} module -- at least for the
+% which is used by some functions in current module. The
+% rest are defined in the \pkg{l3int} module -- at least for the
% ones that can be defined with \cs{tex_chardef:D} or
-% \cs{tex_mathchardef:D}. For other constants the \textsf{l3int} module is
+% \cs{tex_mathchardef:D}. For other constants the \pkg{l3int} module is
% required but it can't be used until the allocation has been set
% up properly!
% \begin{macrocode}
@@ -1525,8 +1525,8 @@
% \end{variable}
%
% \begin{variable}{\c_max_register_int}
-% This is here as this particular integer is needed both in package
-% mode and to bootstrap \pkg{l3alloc}, and is documented in \pkg{l3int}.
+% This is here as this particular integer is needed in modules
+% loaded before \pkg{l3int}, and is documented in \pkg{l3int}.
% \LuaTeX{} and those which contain parts of the Omega extensions have
% more registers available than \eTeX{}.
% \begin{macrocode}
@@ -2316,7 +2316,7 @@
%<@@=cs>
% \end{macrocode}
%
-% \begin{function}{\@@_count_signature:N}
+% \begin{function}[EXP]{\@@_count_signature:N}
% \begin{syntax}
% \cs{@@_count_signature:N} \meta{function}
% \end{syntax}
@@ -2327,27 +2327,6 @@
% the marker value $-1$.
% \end{function}
%
-% \begin{function}[EXP]{\@@_get_function_name:N}
-% \begin{syntax}
-% \cs{@@_get_function_name:N} \meta{function}
-% \end{syntax}
-% Splits the \meta{function} into the \meta{name} (\emph{i.e.}~the part
-% before the colon) and the \meta{signature} (\emph{i.e.}~after the colon).
-% The \meta{name} is then left in the input stream without the escape
-% character present made up of tokens with category code $12$
-% (other).
-% \end{function}
-%
-% \begin{function}[EXP]{\@@_get_function_signature:N}
-% \begin{syntax}
-% \cs{@@_get_function_signature:N} \meta{function}
-% \end{syntax}
-% Splits the \meta{function} into the \meta{name} (\emph{i.e.}~the part
-% before the colon) and the \meta{signature} (\emph{i.e.}~after the colon).
-% The \meta{signature} is then left in the input stream made up of
-% tokens with category code $12$ (other).
-% \end{function}
-%
% \begin{function}{\@@_tmp:w}
% Function used for various short-term usages, for instance defining
% functions whose definition involves tokens which are hard to insert
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3bitset.dtx b/Master/texmf-dist/source/latex/l3kernel/l3bitset.dtx
index 101a2aa4143..545d7c3357f 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3bitset.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3bitset.dtx
@@ -30,7 +30,7 @@
%</driver>
% \fi
% \title{^^A
-% The \pkg{l3bitset} package \\ Bitsets ^^A
+% The \pkg{l3bitset} package\\ Bitsets^^A
% }
%
% \author{^^A
@@ -42,7 +42,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
@@ -73,15 +73,15 @@
%
% \section{Creating bitsets}
%
-% \begin{function}[added = 2021-01-26,updated=2020-12-29]
+% \begin{function}[added = 2023-11-15]
% {\bitset_new:N,\bitset_new:c,\bitset_new:Nn, \bitset_new:cn}
% \begin{syntax}
% \cs{bitset_new:N} \meta{bitset var} \\
% \cs{bitset_new:Nn} \meta{bitset var}
-% \{
-% \meta{name1} |=| \meta{index1} |,|
-% \meta{name2} |=| \meta{index2} |,| \ldots{}
-% \}
+% ~~\{
+% ~~~~\meta{name1} |=| \meta{index1} |,|
+% ~~~~\meta{name2} |=| \meta{index2} |,| \ldots{}
+% ~~\}
% \end{syntax}
% Creates a new \meta{bitset var} or raises an error if the name is already taken.
% The declaration is global. The \meta{bitset var} is initially $0$.
@@ -112,14 +112,14 @@
% can be extended or changed with the next function.
% \end{function}
%
-% \begin{function}[added = 2021-01-26]
+% \begin{function}[added = 2023-11-15]
% {\bitset_addto_named_index:Nn}
% \begin{syntax}
% \cs{bitset_addto_named_index:Nn} \meta{bitset var}
-% \{
-% \meta{name1} |=| \meta{index1} |,|
-% \meta{name2} |=| \meta{index2} |,| \ldots{}
-% \}
+% ~~\{
+% ~~~~\meta{name1} |=| \meta{index1} |,|
+% ~~~~\meta{name2} |=| \meta{index2} |,| \ldots{}
+% ~~\}
% \end{syntax}
% This extends or changes the name--index pairs for \meta{bitset var}
% globally as described for \cs{bitset_new:Nn}.
@@ -152,7 +152,7 @@
% \bitset_set_true:Nn \l_pdfannot_F_bitset {3}
% \end{verbatim}
%
-% \begin{function}[EXP, pTF,added = 2021-01-26]
+% \begin{function}[EXP, pTF,added = 2023-11-15]
% {\bitset_if_exist:N, \bitset_if_exist:c}
% \begin{syntax}
% \cs{bitset_if_exist_p:N} \meta{bitset var}
@@ -163,14 +163,13 @@
%
% \section{Setting and unsetting bits}
%
-% \begin{function}[added = 2021-01-26]
+% \begin{function}[added = 2023-11-15]
% {
% \bitset_set_true:Nn, \bitset_set_true:cn,
% \bitset_gset_true:Nn, \bitset_gset_true:cn
% }
% \begin{syntax}
-% \cs{bitset_set_true:Nn} \meta{bitset var} \Arg{name}\\
-% \cs{bitset_gset_true:Nn} \meta{bitset var} \Arg{name}
+% \cs{bitset_set_true:Nn} \meta{bitset var} \Arg{name}
% \end{syntax}
% This sets the bit of the index position represented by \Arg{name} to $1$.
% \Arg{name} should be either one of the predeclared names
@@ -179,14 +178,13 @@
% If needed the length of the bit vector is enlarged.
% \end{function}
%
-% \begin{function}[added = 2021-01-26]
+% \begin{function}[added = 2023-11-15]
% {
% \bitset_set_false:Nn, \bitset_set_false:cn,
-% \bitset_gset_false:Nn, \bitset_set_false:cn
+% \bitset_gset_false:Nn, \bitset_gset_false:cn
% }
% \begin{syntax}
-% \cs{bitset_set_false:Nn} \meta{bitset var} \Arg{name}\\
-% \cs{bitset_gset_false:Nn} \meta{bitset var} \Arg{name}
+% \cs{bitset_set_false:Nn} \meta{bitset var} \Arg{name}
% \end{syntax}
% This unsets the bit of the index position represented by \Arg{name} (sets
% it to $0$).
@@ -199,21 +197,20 @@
% by \cs{bitset_show:N}.
% \end{function}
%
-% \begin{function}[added = 2021-01-26]
+% \begin{function}[added = 2023-11-15]
% {\bitset_clear:N,\bitset_clear:c,\bitset_gclear:N,\bitset_gclear:c}
% \begin{syntax}
-% \cs{bitset_clear:N} \meta{bitset var} \\
-% \cs{bitset_gclear:N} \meta{bitset var}
+% \cs{bitset_clear:N} \meta{bitset var}
% \end{syntax}
% This resets the bitset to the initial state. The declared names are not changed.
% \end{function}
%
% \section{Using bitsets}
%
-% \begin{function}[EXP,added = 2021-01-26]
+% \begin{function}[EXP,added = 2023-11-15]
% {\bitset_item:Nn, \bitset_item:cn}
% \begin{syntax}
-% \cs{bitset_item:Nn} \meta{bitset var} \Arg{name}
+% \cs{bitset_item:Nn} \meta{bitset var} \Arg{name}
% \end{syntax}
% \cs{bitset_item:Nn} outputs \texttt{1} if the bit with
% the index number represented by \Arg{name} is set and \texttt{0} otherwise.
@@ -221,7 +218,7 @@
% |1|, |2|, |3|, \ldots, or one of the names added manually.
% \end{function}
%
-% \begin{function}[EXP,added = 2021-01-26]
+% \begin{function}[EXP,added = 2023-11-15]
% {\bitset_to_bin:N, \bitset_to_bin:c}
% \begin{syntax}
% \cs{bitset_to_bin:N} \meta{bitset var}
@@ -230,7 +227,8 @@
% a binary (string) number in the input stream.
% If no bit has been set yet, the output is zero.
% \end{function}
-% \begin{function}[EXP,added = 2021-01-26]
+%
+% \begin{function}[EXP,added = 2023-11-15]
% {\bitset_to_arabic:N, \bitset_to_arabic:c}
% \begin{syntax}
% \cs{bitset_to_arabic:N} \meta{bitset var}
@@ -242,7 +240,7 @@
% based on \cs{fp_eval:n} otherwise.
% \end{function}
%
-% \begin{function}[added = 2021-01-26]
+% \begin{function}[added = 2023-11-15]
% {\bitset_show:N, \bitset_show:c}
% \begin{syntax}
% \cs{bitset_show:N} \meta{bitset var}
@@ -250,7 +248,7 @@
% Displays the binary and decimal value of the \meta{bitset var} on the terminal,
% \end{function}
%
-% \begin{function}[added = 2021-01-26]
+% \begin{function}[added = 2023-11-15]
% {\bitset_log:N, \bitset_log:c}
% \begin{syntax}
% \cs{bitset_log:N} \meta{bitset var}
@@ -272,15 +270,6 @@
%<@@=bitset>
% \end{macrocode}
%
-% Transitional support.
-% \begin{macrocode}
-\cs_if_exist:NT \@expl@finalise@setup@@@@
- {
- \tl_gput_right:Nn \@expl@finalise@setup@@@@
- { \disable@package@load { l3bitset } { } }
- }
-% \end{macrocode}
-%
% A bitset is a string variable.
% \begin{macro}{\bitset_new:N, \bitset_new:c}
% \begin{macro}{\bitset_new:Nn, \bitset_new:cn}
@@ -337,8 +326,7 @@
\prg_new_eq_conditional:NNn
\bitset_if_exist:N \str_if_exist:N { p , T , F , TF }
\prg_new_eq_conditional:NNn
- \bitset_if_exist:c \str_if_exist:c
- { p , T , F , TF }
+ \bitset_if_exist:c \str_if_exist:c { p , T , F , TF }
% \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_set_true:Nn, \@@_gset_true:Nn, \@@_set_false:Nn, \@@_gset_false:Nn}
@@ -418,6 +406,8 @@
% {
% \bitset_set_true:Nn, \bitset_set_true:cn,
% \bitset_gset_true:Nn, \bitset_gset_true:cn,
+% \bitset_set_false:Nn, \bitset_set_false:cn,
+% \bitset_gset_false:Nn, \bitset_gset_false:cn
% }
% \begin{macro}{\@@_set_aux:NNn}
% The user commands must first translate the argument to an index number.
@@ -599,6 +589,21 @@
%</package>
% \end{macrocode}
%
+% \subsection{Stub package}
+%
+% \begin{macrocode}
+%<*stub>
+% \end{macrocode}
+%
+% \begin{macrocode}
+\ProvidesExplPackage{l3bitset}{2023-12-11}{}
+ {L3 Experimental bitset support}
+% \end{macrocode}
+%
+% \begin{macrocode}
+%</stub>
+% \end{macrocode}
+%
% \end{implementation}
%
% \PrintIndex
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx b/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx
index 169279638c7..1b9a6e18e6c 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3box.dtx b/Master/texmf-dist/source/latex/l3kernel/l3box.dtx
index 62c6ea7379f..25de02e6fb5 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3box.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3box.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx b/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx
index 2ebb8a93444..044f23b41d5 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx
@@ -31,7 +31,7 @@
% \fi
%
% \title{^^A
-% The \textsf{l3candidates} package\\ Experimental additions to
+% The \pkg{l3candidates} package\\ Experimental additions to
% \pkg{l3kernel}^^A
% }
%
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3cctab.dtx b/Master/texmf-dist/source/latex/l3kernel/l3cctab.dtx
index 3806feffa19..03e6b6f8b52 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3cctab.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3cctab.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx b/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx
index 966de0333ef..4783ba761f4 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx b/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx
index 576a11d47b2..217fd933c2a 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx
@@ -31,7 +31,7 @@
% \fi
%
% \title{^^A
-% The \textsf{l3coffins} package\\ Coffin code layer^^A
+% The \pkg{l3coffins} package\\ Coffin code layer^^A
% }
%
% \author{^^A
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3color.dtx b/Master/texmf-dist/source/latex/l3kernel/l3color.dtx
index fa8508262aa..2fa59821b4e 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3color.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3color.dtx
@@ -31,7 +31,7 @@
% \fi
%
% \title{^^A
-% The \textsf{l3color} package\\ Color support^^A
+% The \pkg{l3color} package\\ Color support^^A
% }
%
% \author{^^A
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3debug.dtx b/Master/texmf-dist/source/latex/l3kernel/l3debug.dtx
index ad908c22fa1..884ecdf6ac8 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3debug.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3debug.dtx
@@ -31,7 +31,7 @@
% \fi
%
% \title{^^A
-% The \textsf{l3debug} package\\ Debugging support^^A
+% The \pkg{l3debug} package\\ Debugging support^^A
% }
%
% \author{^^A
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
@@ -128,7 +128,7 @@
%
% Standard file identification.
% \begin{macrocode}
-\ProvidesExplFile{l3debug.def}{2023-12-08}{}{L3 Debugging support}
+\ProvidesExplFile{l3debug.def}{2023-12-11}{}{L3 Debugging support}
% \end{macrocode}
%
% \begin{variable}{\s_@@_stop}
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx b/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx
index 03380199007..f046e4a2634 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
@@ -449,6 +449,10 @@
%
% \subsection{Deprecated \pkg{l3file} functions}
%
+% \begin{macrocode}
+%<@@=file>
+% \end{macrocode}
+%
% \begin{macro}[deprecated]
% {
% \iow_shipout_x:Nn, \iow_shipout_x:Nx,
@@ -501,6 +505,10 @@
%
% \subsection{Deprecated \pkg{l3pdf} functions}
%
+% \begin{macrocode}
+%<@@=pdf>
+% \end{macrocode}
+%
% \begin{variable}[deprecated]{\g_@@_object_prop}
% For tracking objects.
% \begin{macrocode}
@@ -599,6 +607,10 @@
%
% \subsection{Deprecated \pkg{l3seq} functions}
%
+% \begin{macrocode}
+%<@@=seq>
+% \end{macrocode}
+%
% \begin{macro}[deprecated]{\seq_indexed_map_inline:Nn}
% \begin{macro}[EXP, deprecated]{ \seq_indexed_map_function:NN}
% \begin{macrocode}
@@ -641,6 +653,10 @@
%
% \subsection{Deprecated \pkg{l3text} functions}
%
+% \begin{macrocode}
+%<@@=text>
+% \end{macrocode}
+%
% \begin{macro}[EXP, deprecated]{\text_titlecase:n}
% \begin{macro}[EXP, deprecated]{\text_titlecase:nn}
% \begin{macrocode}
@@ -715,6 +731,10 @@
%
% \subsection{Deprecated \pkg{l3token} functions}
%
+% \begin{macrocode}
+%<@@=char>
+% \end{macrocode}
+%
% \begin{macro}[EXP, deprecated]{\char_to_utfviii_bytes:n}
% \begin{macrocode}
\__kernel_patch_deprecation:nnNNpn { 2022-10-09 } { [ \codepoint_generate:nn ] }
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx b/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx
index b6f98aa3664..983df56fab5 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx
@@ -57,11 +57,10 @@ and all files in that bundle must be distributed together.
%</driver>
%
%<*driver|class>
-\RequirePackage{expl3,calc}
+\RequirePackage{calc}
%</driver|class>
%
%<*driver>
-\ProvidesFile{l3doc.dtx}[2023/08/09 L3 Experimental documentation class]
\documentclass{l3doc}
\usepackage{framed}
\begin{document}
@@ -72,7 +71,7 @@ and all files in that bundle must be distributed together.
% This isn't included in the typeset documentation because it's a bit
% ugly:
%<*class>
-\ProvidesExplClass{l3doc}{2023-08-09}{}
+\ProvidesExplClass{l3doc}{2023-12-11}{}
{L3 Experimental documentation class}
%</class>
% \fi
@@ -85,7 +84,7 @@ and all files in that bundle must be distributed together.
% require you to do updates, if the class changes.}}
%
% \author{\Team}
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
% \maketitle
% \tableofcontents
%
@@ -221,6 +220,56 @@ and all files in that bundle must be distributed together.
% Latin Modern fonts. To prevent this, use the class option
% |cm-default|.
%
+% \subsection{Class options}
+%
+% The class recognises a number of options, some of which are generally
+% useful and some of which are aimed squarely at use by the kernel team only.
+%
+% \DescribeOption{full}
+% \DescribeOption{onlydoc}
+% When the \texttt{full} option is set (the standard setting), both the
+% documentation and implementation parts of the source are typeset. If on the
+% other hand the \texttt{onlydoc} option is set, only the documentation part
+% is typeset.
+%
+% \DescribeOption{lm-default}
+% Selects whether the standard font set up is Latin Modern in the \texttt{T1}
+% encoding (the standard setting) or leaves the font setup unchanged.
+%
+% \DescribeOption{kernel}
+% Determines whether \pkg{l3doc} treats |\__kernel_| commands and
+% |\(c|g|l)__kernel_| variables as allowable in code. In general,
+% \emph{no} internal material from outside the current module is allowed.
+% However, for bootstrapping the \pkg{expl3} kernel, a small number of
+% cross-module functions are needed. To suppress the error message that
+% would otherwise arise, the class option \texttt{kernel} may be given.
+%
+% \DescribeOption{check}
+% When the \texttt{check} option is given, the class will record all commands
+% defined and documented in a \texttt{\meta{name}.cmds} file. This will show
+% which are both documented and defined, which are only documented and which
+% are only defined. (Here, \enquote{defined} means listed using a
+% \texttt{macro} or \texttt{variable} environment in the implementation part of
+% the source file).
+%
+% \DescribeOption{checktest}
+% When \texttt{checktest} is given as an option, the class will check that each
+% function entry in the implementation part of the source is marked using
+% \cs{UnitTest}.
+%
+% \DescribeOption{show-notes}
+% \DescribeOption{hide-notes}
+% These complementary options determine if the information given using the
+% \cs{NB} and \cs{NOTE} commands is printed.
+%
+% \DescribeOption{cs-break}
+% \DescribeOption{cs-break-nohyphen}
+% The commands \cs{cmd} and \cs{cs} allow hyphenation of control sequences
+% after (most) underscores. By default, a hyphen is used to mark the
+% hyphenation, but this can be changed with the \texttt{cs-break-nohyphen}
+% class option. To disable hyphenation of control sequences entirely, use
+% \texttt{cs-break = false}.
+%
% \subsection{Partitioning documentation and implementation}
%
% \pkg{doc} uses the \cs{OnlyDocumentation}/\cs{AlsoImplementation}
@@ -299,7 +348,8 @@ and all files in that bundle must be distributed together.
% These commands allow hyphenation of control sequences after (most) underscores.
% By default, a hyphen is used to mark the hyphenation, but this can be changed with
% the \texttt{cs-break-nohyphen} class option.
-% To disable hyphenation of control sequencies entirely, use \texttt{cs-break-off}.
+% To disable hyphenation of control sequences entirely, use
+% \texttt{cs-break = false}.
% \end{function}
%
%
@@ -1385,67 +1435,36 @@ and all files in that bundle must be distributed together.
% \subsection{Options and configuration}
%
% \begin{macrocode}
-\DeclareOption { a5paper } { \@latexerr { Option~not~supported } { } }
-% \end{macrocode}
-%
-% \begin{macrocode}
-\DeclareOption { full }
+\DeclareKeys [ l3doc / options ]
{
- \bool_gset_true:N \g_@@_typeset_documentation_bool
- \bool_gset_true:N \g_@@_typeset_implementation_bool
- }
-\DeclareOption { onlydoc }
- {
- \bool_gset_true:N \g_@@_typeset_documentation_bool
- \bool_gset_false:N \g_@@_typeset_implementation_bool
- }
-% \end{macrocode}
-%
-% \begin{macrocode}
-\DeclareOption { check }
- { \bool_gset_true:N \g_@@_checkfunc_bool }
-\DeclareOption { nocheck }
- { \bool_gset_false:N \g_@@_checkfunc_bool }
-% \end{macrocode}
-%
-% \begin{macrocode}
-\DeclareOption { checktest }
- { \bool_gset_true:N \g_@@_checktest_bool }
-\DeclareOption { nochecktest }
- { \bool_gset_false:N \g_@@_checktest_bool }
-% \end{macrocode}
-%
-% \begin{macrocode}
-\DeclareOption { kernel }
- { \bool_gset_true:N \g_@@_kernel_bool }
-\DeclareOption { stdmodule }
- { \bool_gset_false:N \g_@@_kernel_bool }
-% \end{macrocode}
-%
-% \begin{macrocode}
-\DeclareOption { cm-default }
- { \bool_gset_false:N \g_@@_lmodern_bool }
-\DeclareOption { lm-default }
- { \bool_gset_true:N \g_@@_lmodern_bool }
-% \end{macrocode}
-%
-% \begin{macrocode}
-\DeclareOption { cs-break-off }
- { \bool_gset_false:N \g_@@_cs_break_bool }
-\DeclareOption { cs-break-nohyphen }
- { \PassOptionsToPackage{nohyphen}{underscore} }
-% \end{macrocode}
-%
-% \begin{macrocode}
-\DeclareOption { show-notes }
- { \bool_gset_true:N \g_@@_show_notes_bool }
-\DeclareOption { hide-notes }
- { \bool_gset_false:N \g_@@_show_notes_bool }
-% \end{macrocode}
-%
-% \begin{macrocode}
-\DeclareOption* { \PassOptionsToClass { \CurrentOption } { article } }
-\ExecuteOptions { full, kernel, nocheck, nochecktest, lm-default }
+ a5paper .code:n = \@latexerr { Option~not~supported } { } ,
+ full .code:n =
+ {
+ \bool_gset_true:N \g_@@_typeset_documentation_bool
+ \bool_gset_true:N \g_@@_typeset_implementation_bool
+ } ,
+ onlydoc .code:n =
+ {
+ \bool_gset_true:N \g_@@_typeset_documentation_bool
+ \bool_gset_false:N \g_@@_typeset_implementation_bool
+ } ,
+ check .bool_gset:N = \g_@@_checkfunc_bool ,
+ checktest .bool_gset:N = \g_@@_checktest_bool ,
+ kernel .bool_gset:N = \g_@@_kernel_bool ,
+ stdmodule .bool_gset_inverse:N = \g_@@_kernel_bool ,
+ lm-default .bool_gset:N = \g_@@_lmodern_bool ,
+ cs-break .bool_gset_inverse:N = \g_@@_cs_break_bool ,
+ cs-break-nohyphen .code:n = \PassOptionsToPackage{nohyphen}{underscore} ,
+ show-notes .bool_gset:N = \g_@@_show_notes_bool,
+ hide-notes .bool_gset_inverse:N = \g_@@_show_notes_bool
+ }
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareUnknownKeyHandler [ l3doc / options ]
+ { \PassOptionsToClass { \CurrentOption } { article } }
+\SetKeys [ l3doc / options ]
+ { full , kernel , check = false , checktest = false , lm-default }
\PassOptionsToClass { a4paper } { article }
% \end{macrocode}
%
@@ -1467,7 +1486,7 @@ and all files in that bundle must be distributed together.
% \end{macrocode}
%
% \begin{macrocode}
-\ProcessOptions
+\ProcessKeyOptions [ l3doc / options ]
% \end{macrocode}
%
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx b/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx
index ebf9af795f5..0d21cb48330 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx
@@ -63,7 +63,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3expan.dtx b/Master/texmf-dist/source/latex/l3kernel/l3expan.dtx
index 36fb87f2acc..e4b8a9967d1 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3expan.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3expan.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3file.dtx b/Master/texmf-dist/source/latex/l3kernel/l3file.dtx
index 8545a839473..d33fe899d8d 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3file.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3file.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
@@ -673,7 +673,9 @@
% \end{texnote}
% \end{function}
%
-% \section{File operation functions}
+% \section{File opertions}
+%
+% \subsection{Basic file operations}
%
% \begin{variable}[added = 2017-06-21]
% {
@@ -722,94 +724,13 @@
% \cs{l_file_search_path_seq}.
% \end{function}
%
-% \begin{function}[noTF, added = 2019-01-16, updated = 2019-02-16]
-% {\file_get:nnN, \file_get:VnN}
-% \begin{syntax}
-% \cs{file_get:nnN} \Arg{file name} \Arg{setup} \meta{tl}
-% \cs{file_get:nnNTF} \Arg{file name} \Arg{setup} \meta{tl} \Arg{true code} \Arg{false code}
-% \end{syntax}
-% Defines \meta{tl} to the contents of \meta{file name}.
-% Category codes may need to be set appropriately via the \meta{setup}
-% argument.
-% The non-branching version sets the \meta{tl} to \cs{q_no_value} if the file is
-% not found. The branching version runs the \meta{true code} after the
-% assignment to \meta{tl} if the file is found, and \meta{false code}
-% otherwise.
-% \end{function}
-%
-% \begin{function}[noTF, updated = 2019-02-16]
-% {\file_get_full_name:nN, \file_get_full_name:VN}
-% \begin{syntax}
-% \cs{file_get_full_name:nN} \Arg{file name} \meta{tl}
-% \cs{file_get_full_name:nNTF} \Arg{file name} \meta{tl} \Arg{true code} \Arg{false code}
-% \end{syntax}
-% Searches for \meta{file name} in the path as detailed for
-% \cs{file_if_exist:nTF}, and if found sets the \meta{tl var} the
-% fully-qualified name of the file, \emph{i.e.}~the path and file name.
-% This includes an extension |.tex| when the given \meta{file name}
-% has no extension but the file found has that extension.
-% In the non-branching version, the \meta{tl var} will be set to
-% \cs{q_no_value} in the case that the file does not exist.
-% \end{function}
-%
-% \begin{function}[added = 2019-09-03, rEXP]{\file_full_name:n, \file_full_name:V}
-% \begin{syntax}
-% \cs{file_full_name:n} \Arg{file name}
-% \end{syntax}
-% Searches for \meta{file name} in the path as detailed for
-% \cs{file_if_exist:nTF}, and if found leaves the
-% fully-qualified name of the file, \emph{i.e.}~the path and file name,
-% in the input stream.
-% This includes an extension |.tex| when the given \meta{file name}
-% has no extension but the file found has that extension.
-% If the file is not found on the path, the expansion is empty.
-% \end{function}
+% \subsection{Information about files and file contents}
%
-% \begin{function}[added = 2017-06-23, updated = 2020-06-24]
-% {\file_parse_full_name:nNNN, \file_parse_full_name:VNNN}
-% \begin{syntax}
-% \cs{file_parse_full_name:nNNN} \Arg{full name} \meta{dir} \meta{name} \meta{ext}
-% \end{syntax}
-% Parses the \meta{full name} and splits it into three parts, each of
-% which is returned by setting the appropriate local string variable:
-% \begin{itemize}
-% \item The \meta{dir}: everything up to the last |/| (path separator)
-% in the \meta{file path}. As with system \texttt{PATH} variables
-% and related functions, the \meta{dir} does \emph{not} include the
-% trailing |/| unless it points to the root directory. If there is no path (only
-% a file name), \meta{dir} is empty.
-% \item The \meta{name}: everything after the last |/| up to the last |.|,
-% where both of those characters are optional. The \meta{name} may
-% contain multiple |.| characters. It is empty if \meta{full name}
-% consists only of a directory name.
-% \item The \meta{ext}: everything after the last |.| (including the dot).
-% The \meta{ext} is empty if there is no |.| after the last |/|.
-% \end{itemize}
-%
-% Before parsing, the \meta{full name} is expanded until only non-expandable
-% tokens remain, except that active characters are also not expanded.
-% Quotes (|"|) are invalid in file names and are discarded from the input.
-% \end{function}
-%
-% \begin{function}[EXP, added = 2020-06-24]
-% {\file_parse_full_name:n, \file_parse_full_name:V}
-% \begin{syntax}
-% \cs{file_parse_full_name:n} \Arg{full name}
-% \end{syntax}
-% Parses the \meta{full name} as described for \cs{file_parse_full_name:nNNN},
-% and leaves \meta{dir}, \meta{name}, and \meta{ext} in the input stream,
-% each inside a pair of braces.
-% \end{function}
-%
-% \begin{function}[EXP, added = 2020-06-24]
-% {\file_parse_full_name_apply:nN, \file_parse_full_name_apply:VN}
-% \begin{syntax}
-% \cs{file_parse_full_name_apply:nN} \Arg{full name} \meta{function}
-% \end{syntax}
-% Parses the \meta{full name} as described for \cs{file_parse_full_name:nNNN},
-% and passes \meta{dir}, \meta{name}, and \meta{ext} as arguments to \meta{function},
-% as an \texttt{n}-type argument each, in this order.
-% \end{function}
+% Functions in this section return information about files as \pkg{expl3}
+% \texttt{str} data, \emph{except} that the non-expandable functions set their
+% return \emph{token list} to \cs{q_no_value} if the file requested is not
+% found. As such, comparison of file names, hashes, sizes, etc., should use
+% \cs{str_if_eq:nnTF} rather than \cs{tl_if_eq:nnTF} and so on.
%
% \begin{function}[rEXP, added = 2019-11-19]
% {
@@ -947,6 +868,97 @@
% This is not available in older versions of \XeTeX{}.
% \end{function}
%
+% \begin{function}[noTF, updated = 2019-02-16]
+% {\file_get_full_name:nN, \file_get_full_name:VN}
+% \begin{syntax}
+% \cs{file_get_full_name:nN} \Arg{file name} \meta{tl}
+% \cs{file_get_full_name:nNTF} \Arg{file name} \meta{tl} \Arg{true code} \Arg{false code}
+% \end{syntax}
+% Searches for \meta{file name} in the path as detailed for
+% \cs{file_if_exist:nTF}, and if found sets the \meta{tl var} the
+% fully-qualified name of the file, \emph{i.e.}~the path and file name.
+% This includes an extension |.tex| when the given \meta{file name}
+% has no extension but the file found has that extension.
+% In the non-branching version, the \meta{tl var} will be set to
+% \cs{q_no_value} in the case that the file does not exist.
+% \end{function}
+%
+% \begin{function}[added = 2019-09-03, rEXP]{\file_full_name:n, \file_full_name:V}
+% \begin{syntax}
+% \cs{file_full_name:n} \Arg{file name}
+% \end{syntax}
+% Searches for \meta{file name} in the path as detailed for
+% \cs{file_if_exist:nTF}, and if found leaves the
+% fully-qualified name of the file, \emph{i.e.}~the path and file name,
+% in the input stream.
+% This includes an extension |.tex| when the given \meta{file name}
+% has no extension but the file found has that extension.
+% If the file is not found on the path, the expansion is empty.
+% \end{function}
+%
+% \begin{function}[added = 2017-06-23, updated = 2020-06-24]
+% {\file_parse_full_name:nNNN, \file_parse_full_name:VNNN}
+% \begin{syntax}
+% \cs{file_parse_full_name:nNNN} \Arg{full name} \meta{dir} \meta{name} \meta{ext}
+% \end{syntax}
+% Parses the \meta{full name} and splits it into three parts, each of
+% which is returned by setting the appropriate local string variable:
+% \begin{itemize}
+% \item The \meta{dir}: everything up to the last |/| (path separator)
+% in the \meta{file path}. As with system \texttt{PATH} variables
+% and related functions, the \meta{dir} does \emph{not} include the
+% trailing |/| unless it points to the root directory. If there is no path (only
+% a file name), \meta{dir} is empty.
+% \item The \meta{name}: everything after the last |/| up to the last |.|,
+% where both of those characters are optional. The \meta{name} may
+% contain multiple |.| characters. It is empty if \meta{full name}
+% consists only of a directory name.
+% \item The \meta{ext}: everything after the last |.| (including the dot).
+% The \meta{ext} is empty if there is no |.| after the last |/|.
+% \end{itemize}
+%
+% Before parsing, the \meta{full name} is expanded until only non-expandable
+% tokens remain, except that active characters are also not expanded.
+% Quotes (|"|) are invalid in file names and are discarded from the input.
+% \end{function}
+%
+% \begin{function}[EXP, added = 2020-06-24]
+% {\file_parse_full_name:n, \file_parse_full_name:V}
+% \begin{syntax}
+% \cs{file_parse_full_name:n} \Arg{full name}
+% \end{syntax}
+% Parses the \meta{full name} as described for \cs{file_parse_full_name:nNNN},
+% and leaves \meta{dir}, \meta{name}, and \meta{ext} in the input stream,
+% each inside a pair of braces.
+% \end{function}
+%
+% \begin{function}[EXP, added = 2020-06-24]
+% {\file_parse_full_name_apply:nN, \file_parse_full_name_apply:VN}
+% \begin{syntax}
+% \cs{file_parse_full_name_apply:nN} \Arg{full name} \meta{function}
+% \end{syntax}
+% Parses the \meta{full name} as described for \cs{file_parse_full_name:nNNN},
+% and passes \meta{dir}, \meta{name}, and \meta{ext} as arguments to \meta{function},
+% as an \texttt{n}-type argument each, in this order.
+% \end{function}
+%
+% \subsection{Accessing file contents}
+%
+% \begin{function}[noTF, added = 2019-01-16, updated = 2019-02-16]
+% {\file_get:nnN, \file_get:VnN}
+% \begin{syntax}
+% \cs{file_get:nnN} \Arg{file name} \Arg{setup} \meta{tl}
+% \cs{file_get:nnNTF} \Arg{file name} \Arg{setup} \meta{tl} \Arg{true code} \Arg{false code}
+% \end{syntax}
+% Defines \meta{tl} to the contents of \meta{file name}.
+% Category codes may need to be set appropriately via the \meta{setup}
+% argument.
+% The non-branching version sets the \meta{tl} to \cs{q_no_value} if the file is
+% not found. The branching version runs the \meta{true code} after the
+% assignment to \meta{tl} if the file is found, and \meta{false code}
+% otherwise. The file content will be tokenized using the current
+% category code régime,
+% \end{function}
%
% \begin{function}[updated = 2017-06-26]{\file_input:n, \file_input:V}
% \begin{syntax}
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx b/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx
index d94897f87d4..d0203d52090 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx
@@ -31,7 +31,7 @@
% \fi
%
% \title{^^A
-% The \textsf{l3flag} package: Expandable flags^^A
+% The \pkg{l3flag} package\\ Expandable flags^^A
% }
%
% \author{^^A
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx
index 42f915af33c..f5d3e6bb387 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx
@@ -30,8 +30,10 @@
%</driver>
% \fi
%
-% \title{The \textsf{l3fp-assign} package\\
-% Floating point expressions}
+% \title{^^A
+% The \pkg{l3fp-assign} package\\
+% Floating point expressions^^A
+% }
% \author{^^A
% The \LaTeX{} Project\thanks
% {^^A
@@ -40,7 +42,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
% \maketitle
%
% \begin{documentation}
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx
index 53ce603de0d..20c68b29642 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx
@@ -31,7 +31,7 @@
% \fi
%
% \title{^^A
-% The \textsf{l3fp-aux} package\\ Support for floating points^^A
+% The \pkg{l3fp-aux} package\\ Support for floating points^^A
% }
%
% \author{^^A
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx
index e0e8965aea6..7d2c3527d2f 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx
@@ -30,8 +30,10 @@
%</driver>
% \fi
%
-% \title{The \textsf{l3fp-basics} package\\
-% Floating point arithmetic}
+% \title{^^A
+% The \pkg{l3fp-basics} package\\
+% Floating point arithmetic^^A
+% }
% \author{^^A
% The \LaTeX{} Project\thanks
% {^^A
@@ -40,7 +42,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx
index 0a8252da36d..4a1c9f22110 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx
@@ -31,7 +31,7 @@
% \fi
%
% \title{^^A
-% The \textsf{l3fp-convert} package\\ Floating point conversion^^A
+% The \pkg{l3fp-convert} package\\ Floating point conversion^^A
% }
%
% \author{^^A
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx
index 7f29ebf992a..bf385275ef9 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx
@@ -30,8 +30,10 @@
%</driver>
% \fi
%
-% \title{The \textsf{l3fp-expo} package\\
-% Floating point exponential-related functions}
+% \title{^^A
+% The \pkg{l3fp-expo} package\\
+% Floating point exponential-related functions^^A
+% }
% \author{^^A
% The \LaTeX{} Project\thanks
% {^^A
@@ -40,7 +42,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx
index 7103a8d4eae..9350c1c41b3 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx
@@ -30,8 +30,10 @@
%</driver>
% \fi
%
-% \title{The \textsf{l3fp-extended} package\\
-% Manipulating numbers with extended precision, for internal use}
+% \title{^^A
+% The \pkg{l3fp-extended} package\\
+% Manipulating numbers with extended precision, for internal use^^A
+% }
% \author{^^A
% The \LaTeX{} Project\thanks
% {^^A
@@ -40,7 +42,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-functions.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-functions.dtx
index 5b5a29395f8..3ed473a097c 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3fp-functions.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-functions.dtx
@@ -42,7 +42,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx
index 692b2839a31..004290b05d9 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx
@@ -30,8 +30,10 @@
%</driver>
% \fi
%
-% \title{The \textsf{l3fp-logic} package\\
-% Floating point conditionals}
+% \title{^^A
+% The \pkg{l3fp-logic} package\\
+% Floating point conditionals^^A
+% }
% \author{^^A
% The \LaTeX{} Project\thanks
% {^^A
@@ -40,7 +42,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx
index 025bd5b7e34..0bc68619033 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx
@@ -30,8 +30,10 @@
%</driver>
% \fi
%
-% \title{The \textsf{l3fp-parse} package\\
-% Floating point expression parsing}
+% \title{^^A
+% The \pkg{l3fp-parse} package\\
+% Floating point expression parsing^^A
+% }
% \author{^^A
% The \LaTeX{} Project\thanks
% {^^A
@@ -40,7 +42,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx
index 09097cc68e1..28a9d11dde2 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx
@@ -30,8 +30,10 @@
%</driver>
% \fi
%
-% \title{The \textsf{l3fp-random} package\\
-% Floating point random numbers}
+% \title{^^A
+% The \pkg{l3fp-random} package\\
+% Floating point random numbers
+% }
% \author{^^A
% The \LaTeX{} Project\thanks
% {^^A
@@ -40,7 +42,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx
index 961c60363f3..4fbc3929223 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx
@@ -31,7 +31,7 @@
% \fi
%
% \title{^^A
-% The \textsf{l3fp-round} package\\ Rounding floating points^^A
+% The \pkg{l3fp-round} package\\ Rounding floating points^^A
% }
%
% \author{^^A
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-symbolic.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-symbolic.dtx
index 7b25907b77a..596eb65a223 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3fp-symbolic.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-symbolic.dtx
@@ -42,7 +42,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx
index 0371eddb5de..e2ce4ea35a8 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx
@@ -30,8 +30,10 @@
%</driver>
% \fi
%
-% \title{The \textsf{l3fp-traps} package\\
-% Trapping floating-point exceptions}
+% \title{^^A
+% The \pkg{l3fp-traps} package\\
+% Trapping floating-point exceptions^^A
+% }
% \author{^^A
% The \LaTeX{} Project\thanks
% {^^A
@@ -40,7 +42,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
% \maketitle
%
% \begin{documentation}
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx
index 2c62fd572bc..9c329e4b95b 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx
@@ -30,8 +30,10 @@
%</driver>
% \fi
%
-% \title{The \textsf{l3fp-trig} package\\
-% Floating point trigonometric functions}
+% \title{^^A
+% The \pkg{l3fp-trig} package\\
+% Floating point trigonometric functions^^A
+% }
% \author{^^A
% The \LaTeX{} Project\thanks
% {^^A
@@ -40,7 +42,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-types.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-types.dtx
index 100e3f00f48..46fe0c19c3c 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3fp-types.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-types.dtx
@@ -42,7 +42,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx
index 526a2a81bc2..3da05f4d198 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx
@@ -37,7 +37,7 @@
%
%
% \title{^^A
-% The \textsf{l3fp} package: Floating points^^A
+% The \pkg{l3fp} package\\ Floating points^^A
% }
%
% \author{^^A
@@ -49,7 +49,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx
index 9e9acd795dd..61c5fce7457 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx
@@ -32,7 +32,7 @@
%
%
% \title{^^A
-% The \textsf{l3fparray} package: Fast global floating point arrays^^A
+% The \pkg{l3fparray} package\\ Fast global floating point arrays^^A
% }
%
% \author{^^A
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3int.dtx b/Master/texmf-dist/source/latex/l3kernel/l3int.dtx
index f50b3e0add7..b3282ff9da9 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3int.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3int.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx b/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx
index b566791654d..130da0503eb 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx
@@ -32,7 +32,7 @@
%
%
% \title{^^A
-% The \textsf{l3intarray} package: Fast global integer arrays^^A
+% The \pkg{l3intarray} package\\ Fast global integer arrays^^A
% }
%
% \author{^^A
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx b/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx
index 72ea6c74809..b9602fd17cd 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx
@@ -31,7 +31,7 @@
% \fi
%
% \title{^^A
-% The \pkg{l3kernel-functions} package: Kernel-reserved functions^^A
+% The \pkg{l3kernel-functions} package\\ Kernel-reserved functions^^A
% }
%
% \author{^^A
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx b/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx
index 75c4c34f224..c300e3e5ee3 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3legacy.dtx b/Master/texmf-dist/source/latex/l3kernel/l3legacy.dtx
index 915ae07bb81..2311d28bbae 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3legacy.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3legacy.dtx
@@ -31,7 +31,7 @@
% \fi
%
% \title{^^A
-% The \textsf{l3legacy} package\\ Interfaces to legacy concepts^^A
+% The \pkg{l3legacy} package\\ Interfaces to legacy concepts^^A
% }
%
% \author{^^A
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx b/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx
index d94a2c6ad60..d3be98cb598 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx
@@ -31,7 +31,7 @@
% \fi
%
% \title{^^A
-% The \pkg{l3luatex} package: \LuaTeX-specific functions^^A
+% The \pkg{l3luatex} package\\ \LuaTeX-specific functions^^A
% }
%
% \author{^^A
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx b/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx
index b12cdab55c0..f9c4dd99459 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3names.dtx b/Master/texmf-dist/source/latex/l3kernel/l3names.dtx
index 1441e889c31..c1478161d67 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3names.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3names.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3pdf.dtx b/Master/texmf-dist/source/latex/l3kernel/l3pdf.dtx
index ae07ef82a6b..09013a7a7fc 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3pdf.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3pdf.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx b/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx
index 201d7bde90c..668bf41d08e 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx b/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx
index bf1a1a0c334..91e8c07fbf7 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx b/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx
index 21d6dbc9d7b..10fa3584aa0 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx b/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx
index f9e2663cc32..900a1c2c82a 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx
@@ -31,7 +31,7 @@
% \fi
%
% \title{^^A
-% The \textsf{l3regex} package: Regular expressions in \TeX{}^^A
+% The \pkg{l3regex} package\\ Regular expressions in \TeX{}^^A
% }
%
% \author{^^A
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx b/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx
index 5021a700779..c32985545ae 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
@@ -1120,7 +1120,7 @@
% \end{macrocode}
% \end{variable}
%
-% \begin{macro}{\@@_item:n}
+% \begin{macro}[EXP]{\@@_item:n}
% The delimiter is always defined, but when used incorrectly simply
% removes its argument and hits an undefined control sequence to
% raise an error.
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx b/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx
index 750c0995f3b..cac06a49eaf 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx b/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx
index c1525643040..ab7531a3131 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3str-convert.dtx b/Master/texmf-dist/source/latex/l3kernel/l3str-convert.dtx
index 0da2e88de8d..ff4cacf868d 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3str-convert.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3str-convert.dtx
@@ -32,7 +32,7 @@
%
%
% \title{^^A
-% The \textsf{l3str-convert} package: String encoding conversions^^A
+% The \pkg{l3str-convert} package\\ String encoding conversions^^A
% }
%
% \author{^^A
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3str.dtx b/Master/texmf-dist/source/latex/l3kernel/l3str.dtx
index fc8594bf0bc..fa26d53426c 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3str.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3str.dtx
@@ -31,7 +31,7 @@
% \fi
%
% \title{^^A
-% The \pkg{l3str} package: Strings^^A
+% The \pkg{l3str} package\\ Strings^^A
% }
%
% \author{^^A
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
@@ -129,9 +129,9 @@
%
% \begin{function}[added = 2015-09-18]
% {
-% \str_clear_new:N, \str_clear_new:c,
-% \str_gclear_new:N, \str_gclear_new:c
-% }
+% \str_clear_new:N, \str_clear_new:c,
+% \str_gclear_new:N, \str_gclear_new:c
+% }
% \begin{syntax}
% \cs{str_clear_new:N} \meta{str~var}
% \end{syntax}
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx b/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx
index a2682947728..8ae4bbb18d7 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx
@@ -31,7 +31,7 @@
% \fi
%
% \title{^^A
-% The \pkg{l3sys} package: System/runtime functions^^A
+% The \pkg{l3sys} package\\ System/runtime functions^^A
% }
%
% \author{^^A
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3text-case.dtx b/Master/texmf-dist/source/latex/l3kernel/l3text-case.dtx
index 5651243cd9e..b09f9f21082 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3text-case.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3text-case.dtx
@@ -31,7 +31,7 @@
% \fi
%
% \title{^^A
-% The \textsf{l3text-case} package: text processing (case changing)^^A
+% The \pkg{l3text-case} package\\ Text processing (case changing)^^A
% }
%
% \author{^^A
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3text-map.dtx b/Master/texmf-dist/source/latex/l3kernel/l3text-map.dtx
index f728915387d..6dbb1a99508 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3text-map.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3text-map.dtx
@@ -31,7 +31,7 @@
% \fi
%
% \title{^^A
-% The \textsf{l3text-map} package: text processing (mapping)^^A
+% The \pkg{l3text-map} package\\ Text processing (mapping)^^A
% }
%
% \author{^^A
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3text-purify.dtx b/Master/texmf-dist/source/latex/l3kernel/l3text-purify.dtx
index 8c955419ce3..854cbb7e265 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3text-purify.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3text-purify.dtx
@@ -31,7 +31,7 @@
% \fi
%
% \title{^^A
-% The \textsf{l3text-purify} package: text processing (purification)^^A
+% The \pkg{l3text-purify} package\\ Text processing (purification)^^A
% }
%
% \author{^^A
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3text.dtx b/Master/texmf-dist/source/latex/l3kernel/l3text.dtx
index 85eedfab13e..d47eb598253 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3text.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3text.dtx
@@ -31,7 +31,7 @@
% \fi
%
% \title{^^A
-% The \textsf{l3text} package: Text processing^^A
+% The \pkg{l3text} package\\ Text processing^^A
% }
%
% \author{^^A
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx b/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx
index 746b68c2f03..14d7bcacb93 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx
@@ -32,7 +32,7 @@
%
%
% \title{^^A
-% The \textsf{l3tl-analysis} package: Analysing token lists^^A
+% The \pkg{l3tl-analysis} package\\ Analysing token lists^^A
% }
%
% \author{^^A
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3tl-build.dtx b/Master/texmf-dist/source/latex/l3kernel/l3tl-build.dtx
index 43b08d902d5..ad8e56b7395 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3tl-build.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3tl-build.dtx
@@ -31,7 +31,7 @@
% \fi
%
% \title{^^A
-% The \textsf{l3tl-build} package\\ Piecewise \texttt{tl} constructions^^A
+% The \pkg{l3tl-build} package\\ Piecewise \texttt{tl} constructions^^A
% }
%
% \author{^^A
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx b/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx
index 0f38c95aa74..682f2cdcf58 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3token.dtx b/Master/texmf-dist/source/latex/l3kernel/l3token.dtx
index bf882c57e48..30ae67a2052 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3token.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3token.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx b/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx
index adab2aa934b..f2b1983c416 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx
@@ -31,7 +31,7 @@
% \fi
%
% \title{^^A
-% The \pkg{l3unicode} package: Unicode support functions^^A
+% The \pkg{l3unicode} package\\ Unicode support functions^^A
% }
%
% \author{^^A
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-12-08}
+% \date{Released 2023-12-11}
%
% \maketitle
%