[latex3-commits] [git/LaTeX3-latex3-latex2e] hook-args: Add \changes to the source (5cd8b6c5)
PhelypeOleinik
phelype.oleinik at latex-project.org
Thu Apr 6 16:38:24 CEST 2023
Repository : https://github.com/latex3/latex2e
On branch : hook-args
Link : https://github.com/latex3/latex2e/commit/5cd8b6c52113696233fc1bbae1d11ad03dbf9434
>---------------------------------------------------------------
commit 5cd8b6c52113696233fc1bbae1d11ad03dbf9434
Author: PhelypeOleinik <phelype.oleinik at latex-project.org>
Date: Thu Apr 6 11:38:24 2023 -0300
Add \changes to the source
>---------------------------------------------------------------
5cd8b6c52113696233fc1bbae1d11ad03dbf9434
base/ltcmdhooks.dtx | 6 +++
base/lthooks.dtx | 119 ++++++++++++++++++++++++++++++++++++++++++++++++----
2 files changed, 117 insertions(+), 8 deletions(-)
diff --git a/base/ltcmdhooks.dtx b/base/ltcmdhooks.dtx
index 98c579ce..7ac2f26b 100644
--- a/base/ltcmdhooks.dtx
+++ b/base/ltcmdhooks.dtx
@@ -368,6 +368,8 @@
%
% \begin{macro}{\c_@@_hash_tl,\c_@@_hashes_tl}
% Two constant token lists that contain one and two parameter tokens.
+% \changes{v1.0g}{2023/04/06}
+% {Rename to \cs{c_@@_hashes_tl} and add \cs{c_@@_hash_tl} (hook-args).}
% \begin{macrocode}
\tl_const:Nn \c_@@_hash_tl { # }
\tl_const:Nn \c_@@_hashes_tl { # # }
@@ -815,6 +817,8 @@
% \end{macrocode}
% Here we'll conditionally add |[|\ldots|]| around the first
% parameter:
+% \changes{v1.0g}{2023/04/06}
+% {Rename to \cs{c_@@_hashes_tl} (hook-args).}
% \begin{macrocode}
\bool_if:NTF #1
{ \@@_tmp:w \tl_set:Nx { [ \c_@@_hashes_tl 1 ] } }
@@ -1003,6 +1007,8 @@
% \cs{@@_double_hashes_output:N} checks for the end of the token list,
% then checks if the token is \cs{c_@@_hashes_tl}, and if so just leaves
% it.
+% \changes{v1.0g}{2023/04/06}
+% {Add case for \cs{c_@@_hashes_tl} (hook-args).}
% \begin{macrocode}
\cs_new:Npn \@@_double_hashes_output:N #1
{
diff --git a/base/lthooks.dtx b/base/lthooks.dtx
index fd575628..66a24bc9 100644
--- a/base/lthooks.dtx
+++ b/base/lthooks.dtx
@@ -2369,6 +2369,8 @@
% \begin{macro}{\c_@@_empty_tl}
% \begin{macro}{\c_@@_nine_parameters_tl}
% An empty token list, and one containing nine parameters.
+% \changes{v1.1a}{2023/04/06}
+% {Add auxiliary token lists (hook-args).}
% \begin{macrocode}
\tl_const:Nn \c_@@_empty_tl { }
\tl_const:Nn \c_@@_nine_parameters_tl { #1#2#3#4#5#6#7#8#9 }
@@ -2404,6 +2406,8 @@
% \@@_use_i_delimit_by_s_mark:nw
% }
% Removes tokens until the next \cs{s_@@_mark}.
+% \changes{v1.1a}{2023/04/06}
+% {Use standard naming scheme (hook-args).}
% \begin{macrocode}
\cs_new:Npn \@@_use_none_delimit_by_s_mark:w #1 \s_@@_mark { }
\cs_new:Npn \@@_use_i_delimit_by_s_mark:nw #1 #2 \s_@@_mark {#1}
@@ -2420,8 +2424,10 @@
% 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
+% \changes{v1.0h}{2021/01/07}{Manually define some \pkg{l3tl} commands
% to work around \pkg{expl3} changes}
+% \changes{v1.1a}{2023/04/06}
+% {Clean-up unused variants (hook-args).}
% \begin{macrocode}
\cs_new_protected:Npn \@@_tl_set:cn #1#2
{ \cs_set_nopar:cpx {#1} { \__kernel_exp_not:w {#2} } }
@@ -2670,6 +2676,8 @@
% The \cs{hook_new:n} declaration declares a new hook and expects
% the hook \meta{name} as its argument, e.g.,
% \hook{begindocument}.
+% \changes{v1.1a}{2023/04/06}
+% {Add \cs{hook_new_with_args:nn} (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\hook_new_with_args:nn}
%<latexrelease> {Hooks~with~args}
@@ -2697,6 +2705,8 @@
% In case there is already code in a hook, but it's undeclared, run
% \cs{@@_update_hook_code:n} to make it ready to be executed (see test
% \texttt{lthooks-034}).
+% \changes{v1.1a}{2023/04/06}
+% {Update hook code after declaring.}
% \begin{macrocode}
\@@_update_hook_code:n {#1}
}
@@ -2734,6 +2744,8 @@
% \cs{hook_new:n} does, so a later \cs{hook_new:n} on that hook will
% not result in an error. This command is internally used by
% \cs{hook_gput_code:nnn} when adding code to a generic hook.
+% \changes{v1.1a}{2023/04/06}
+% {Changes to add hook arguments (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\@@_make_usable:nn}
%<latexrelease> {Hooks~with~args}
@@ -2849,6 +2861,8 @@
% \cs{@@_init_structure:n} the first time anything is added to it.
% Initializing a hook just with \cs{@@_init_structure:n} will not
% make it usable with \cs{hook_use:n}.
+% \changes{v1.1a}{2023/04/06}
+% {Changes to add hook arguments (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\@@_init_structure:n}
%<latexrelease> {Hooks~with~args}
@@ -2888,6 +2902,8 @@
%
% Declare a new hook. The default ordering of code chunks is
% reversed, signaled by setting the token list to a minus sign.
+% \changes{v1.1a}{2023/04/06}
+% {Add \cs{hook_new_reversed_with_args:nn} (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\hook_new_reversed_with_args:nn}
%<latexrelease> {Hooks~with~args}
@@ -2927,6 +2943,8 @@
%
% \begin{macro}{\hook_new_pair:nn,\hook_new_pair_with_args:nnn}
% A shorthand for declaring a normal and a (matching) reversed hook in one go.
+% \changes{v1.1a}{2023/04/06}
+% {Add \cs{hook_new_pair_with_args:nnn} (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\hook_new_pair_with_args:nnn}
%<latexrelease> {Hooks~with~args}
@@ -3068,6 +3086,8 @@
% The \cs{hook_activate_generic:n} declaration declares a new hook if it
% wasn't declared already, in which case it only checks that the
% already existing hook is not a reversed hook.
+% \changes{v1.1a}{2023/04/06}
+% {Changes to add hook arguments (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\hook_activate_generic:n}
%<latexrelease> {Providing~hooks}
@@ -3445,6 +3465,8 @@
% chunk of \meta{code} is added to an existing \meta{hook} labeled
% with \meta{label}.
% \changes{v1.0o}{2021/07/22}{Do not queue removals (gh/625)}
+% \changes{v1.1a}{2023/04/06}
+% {Add \cs{hook_gput_code_with_args:nnn} (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\hook_gput_code_with_args:nnn}
%<latexrelease> {Hooks~with~args}
@@ -3465,6 +3487,8 @@
% If \cs{AddToHookWithArguments} was used, do some sanity checking,
% and if it's not possible to use arguments at this point, fall back
% to regular \cs{AddToHook} by using \cs{@@_replacing_args_false:}.
+% \changes{v1.1a}{2023/04/06}
+% {Changes to add hook arguments (hook-args).}
% \begin{macrocode}
\cs_new_protected:Npn \@@_gput_code:nnn #1 #2 #3
{
@@ -3529,6 +3553,8 @@
% \end{macrocode}
%
% This macro will unconditionally add a chunk of code to the given hook.
+% \changes{v1.1a}{2023/04/06}
+% {Changes to add hook arguments (hook-args).}
% \begin{macrocode}
\cs_new_protected:Npn \@@_hook_gput_code_do:nnn #1 #2 #3
{
@@ -3584,6 +3610,9 @@
}
% \end{macrocode}
%
+% Adds code to a hook's code pool.
+% \changes{v1.1a}{2023/04/06}
+% {Macro added (hook-args).}
% \begin{macrocode}
\cs_new_protected:Npn \@@_prop_gput_labeled_do:Nnn #1 #2 #3
{
@@ -3656,6 +3685,8 @@
% error if the hook is declared and takes no arguments, then it will
% set \cs{@@_replacing_args_false:} so that the macro which called it
% will add the code normally.
+% \changes{v1.1a}{2023/04/06}
+% {Macro added (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\@@_chk_args_allowed:nn}
%<latexrelease> {Hooks~with~args}
@@ -3786,6 +3817,8 @@
% \end{macro}
%
% \begin{macro}[TF]{\@@_try_declaring_generic_hook:wn}
+% \changes{v1.1a}{2023/04/06}
+% {Changes to add hook arguments (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2021/11/15}{\@@_try_declaring_generic_hook:wn}
%<latexrelease> {Hooks~with~args}
@@ -4164,6 +4197,8 @@
% With \cs{hook_gremove_code:nn}\Arg{hook}\Arg{label} any code
% for \meta{hook} stored under \meta{label} is removed.
% \changes{v1.0o}{2021/07/22}{Do not queue removals (gh/625)}
+% \changes{v1.1a}{2023/04/06}
+% {Changes to add hook arguments (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\hook_gremove_code:nn}
%<latexrelease> {Hooks~with~args}
@@ -4273,6 +4308,8 @@
% number of arguments, and depending if the code being added should
% have parameter tokens understood as parameters, or doubled to be
% stored as parameter tokens.
+% \changes{v1.1a}{2023/04/06}
+% {Macro added (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\@@_cs_gput_right:nnn}
%<latexrelease> {Hooks~with~args}
@@ -4353,6 +4390,8 @@
% given code and the parameters stored in
% \cs[no-index]{c_@@_\meta{hook}_parameter_tl} (or none, if that
% doesn't exist).
+% \changes{v1.1a}{2023/04/06}
+% {Macro added (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\@@_code_gset:nn}
%<latexrelease> {Hooks~with~args}
@@ -4390,6 +4429,8 @@
% we know \cs[no-index]{c_@@_\meta{hook}_parameter_tl} exists, so use
% that to count the arguments and use that as \meta{parameter text}
% for the newly (re)defined macro.
+% \changes{v1.1a}{2023/04/06}
+% {Macro added (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\@@_normalise_cs_args:nn}
%<latexrelease> {Hooks~with~args}
@@ -4424,6 +4465,8 @@
% \begin{macro}[pTF]{\@@_cs_if_empty:c}
% Check if the expansion of a control sequence is empty by looking at
% its replacement text.
+% \changes{v1.1a}{2023/04/06}
+% {Macro added (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\@@_cs_if_empty:c}
%<latexrelease> {Hooks~with~args}
@@ -4461,6 +4504,8 @@
% arguments. The parameters are \enquote{hidden} because the
% parameter tokens are returned inside \cs{c_@@_hash_tl} instead of
% explicitly, so that \cs{@@_double_hashes:n} won't touch these.
+% \changes{v1.1a}{2023/04/06}
+% {Macro added (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\@@_braced_cs_parameter:n}
%<latexrelease> {Hooks~with~args}
@@ -4512,6 +4557,8 @@
% \cs{@@_initialize_hook_code:n}, so it assumes
% \cs[no-index]{c_@@_\meta{hook}_parameter_tl} is defined, but should
% work otherwise.
+% \changes{v1.1a}{2023/04/06}
+% {Macro added (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\@@_braced_parameter:n}
%<latexrelease> {Hooks~with~args}
@@ -4550,6 +4597,8 @@
% \begin{macro}{\@@_parameter:n}
% This is just a shortcut to \verb|e|- or \verb|f|-expand to the
% \meta{parameter text} of the hook.
+% \changes{v1.1a}{2023/04/06}
+% {Macro added (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\@@_parameter:n}
%<latexrelease> {Hooks~with~args}
@@ -4609,6 +4658,8 @@
% \end{macrocode}
%
% The parameter text for the \enquote{default} hook is empty.
+% \changes{v1.1a}{2023/04/06}
+% {Token list added (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\c_@@_??_parameter_tl}
%<latexrelease> {Hooks~with~args}
@@ -4845,7 +4896,9 @@
% \begin{macro}{\@@_initialize_all:}
% Initialize all known hooks (at \verb=\begin{document}=), i.e.,
% update the fast execution token lists to hold the necessary code
-% in the right order.
+% in the right order.
+% \changes{v1.1a}{2023/04/06}
+% {Changes to add hook arguments (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\@@_initialize_all:}
%<latexrelease> {Hooks~with~args}
@@ -4929,6 +4982,8 @@
% the preamble this is selectively done in case a hook gets used
% and at \verb=\begin{document}= this is done for all hooks and
% afterwards only if the hook code changes.
+% \changes{v1.1a}{2023/04/06}
+% {Changes to add hook arguments (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\@@_initialize_hook_code:n}
%<latexrelease> {Hooks~with~args}
@@ -5119,6 +5174,9 @@
% ^^A #1 <- \@@~#1
% ^^A #2 <- \g_@@_#1_labels_clist
% ^^A #3 <- #1
+%
+% \changes{v1.1a}{2023/04/06}
+% {Changes to add hook arguments (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\@@_initialize_single:NNn}
%<latexrelease> {Hooks~with~args}
@@ -5619,6 +5677,8 @@
{ \@@_log_cmd:x { >~\@spaces #1 } }
% \end{macrocode}
%
+% \changes{v1.1a}{2023/04/06}
+% {Changes to add hook arguments (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\@@_log:nN}
%<latexrelease> {Hooks~with~args}
@@ -5861,6 +5921,8 @@
% \cs{AddToHookNext} we have to remove the string
% \cs{@@_clear_next:n}\Arg{hook}, so the simplest is to use a macro
% delimited by a \verb|}|$_12$.
+% \changes{v1.1a}{2023/04/06}
+% {Changes to add hook arguments (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\@@_log_next_code:n}
%<latexrelease> {Hooks~with~args}
@@ -5967,6 +6029,8 @@
% \subsection{Specifying code for next invocation}
%
% \begin{macro}{\hook_gput_next_code:nn}
+% \changes{v1.1a}{2023/04/06}
+% {Add \cs{hook_gput_next_code_with_args:nn} (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\hook_gput_next_code:nn}
%<latexrelease> {Hooks~with~args}
@@ -6019,6 +6083,8 @@
% that would make an infinite loop. Also in case the main code token
% list is empty, the hook code has to be updated to add the next
% execution token list.
+% \changes{v1.1a}{2023/04/06}
+% {Changes to add hook arguments (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\@@_gput_next_do:nn}
%<latexrelease> {Hooks~with~args}
@@ -6060,7 +6126,9 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\@@_clear_next:n}
+% \begin{macro}{\@@_clear_next:n}
+% \changes{v1.1a}{2023/04/06}
+% {Changes to add hook arguments (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\@@_clear_next:n}
%<latexrelease> {Hooks~with~args}
@@ -6073,7 +6141,7 @@
%<latexrelease> { \cs_gset_eq:cN { @@_next~#1 } \c_empty_tl }
%<latexrelease>\EndIncludeInRelease
% \end{macrocode}
-% \end{macro}
+% \end{macro}
%
%
% \subsection{Using the hook}
@@ -6104,6 +6172,8 @@
% checking for a csname. In contrast to the \TeX{} low-level
% \verb=\csname ...\endcsname= construct \cs{tl_if_exist:c} is
% careful to avoid this.
+% \changes{v1.1a}{2023/04/06}
+% {Add \cs{hook_use:nw} (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\hook_use:n}
%<latexrelease> {Hooks~with~args}
@@ -6253,6 +6323,8 @@
% documented to not trim spaces.
%
% \changes{v1.0r}{2021/09/06}{Clean up after \cs{UseOneTimeHook} (gh/606)}
+% \changes{v1.1a}{2023/04/06}
+% {Add \cs{hook_use_once:nw} (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\hook_use_once:nw}
%<latexrelease> {Hooks~with~args}
@@ -6274,6 +6346,8 @@
% \end{macrocode}
%
% \begin{macro}{\@@_use_once:n}
+% \changes{v1.1a}{2023/04/06}
+% {Changes to add hook arguments (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\@@_use_once:n}
%<latexrelease> {Hooks~with~args}
@@ -6319,6 +6393,8 @@
% \cs{hook_use_once:n} will expand to nothing.
% \changes{v1.0r}{2021/09/06}{Clean up after \cs{UseOneTimeHook} (gh/606)}
% \changes{v1.0u}{2022/05/13}{Check if prop exists to avoid l3debug error}
+% \changes{v1.1a}{2023/04/06}
+% {Changes to add hook arguments (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\@@_use_once_clear:n}
%<latexrelease> {Hooks~with~args}
@@ -6356,6 +6432,8 @@
% around \cs{if:w} is there to allow the |reversed| token list to be
% empty.
% \changes{v1.0r}{2021/09/06}{Macro added (gh/606)}
+% \changes{v1.1a}{2023/04/06}
+% {Changes to add hook arguments (hook-args).}
% \begin{macrocode}
\prg_new_conditional:Npnn \@@_if_execute_immediately:n #1 { T, F, TF }
{
@@ -6402,6 +6480,8 @@
% \cs{g_@@_\meta{hook}_code_prop}, its
% \cs{@@_toplevel\textvisiblespace\meta{hook}} and its
% \cs{@@_next\textvisiblespace\meta{hook}} are empty.
+% \changes{v1.1a}{2023/04/06}
+% {Changes to add hook arguments (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\hook_if_empty:n}
%<latexrelease> {Hooks~with~args}
@@ -6567,6 +6647,8 @@
% \begin{macro}{\@@_replacing_args_unset:}
% An internal conditional that checks if the code being added to the
% hook contains arguments.
+% \changes{v1.1a}{2023/04/06}
+% {Macro added (hook-args).}
% \begin{macrocode}
\cs_new:Npn \@@_misused_if_replacing_args:nn #1 #2
{
@@ -6629,6 +6711,8 @@
%<latexrelease> {Hooks~with~args}
% \end{macrocode}
%
+% \changes{v1.1a}{2023/04/06}
+% {Messages 'too-many-args', 'without-args' and 'one-time-args' added (hook-args).}
% \begin{macrocode}
\msg_new:nnnn { hooks } { too-many-args }
{ Too~many~arguments~for~hook~'#1'. }
@@ -6823,8 +6907,14 @@
%
%
%
-% \begin{macro}{\NewHook,\NewReversedHook,\NewMirroredHookPair}
+% \begin{macro}{
+% \NewHookWithArguments,
+% \NewReversedHookWithArguments,
+% \NewMirroredHookPairWithArguments
+% }
% Declaring new hooks with arguments\ldots
+% \changes{v1.1a}{2023/04/06}
+% {Add \cs{NewHookWithArguments} (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\NewHookWithArguments}
%<latexrelease> {Hooks~with~args}
@@ -6883,7 +6973,9 @@
% \end{macrocode}
%
%
-% \begin{macro}{\AddToHook}
+% \begin{macro}{\AddToHook,\AddToHookWithArguments}
+% \changes{v1.1a}{2023/04/06}
+% {Add \cs{AddToHookWithArguments} (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\AddToHookWithArguments}
%<latexrelease> {Hooks~with~args}
@@ -6899,7 +6991,9 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\AddToHookNext}
+% \begin{macro}{\AddToHookNext,\AddToHookNextWithArguments}
+% \changes{v1.1a}{2023/04/06}
+% {Add \cs{AddToHookNextWithArguments} (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\AddToHookNextWithArguments}
%<latexrelease> {Hooks~with~args}
@@ -6978,9 +7072,16 @@
%
%
%
-% \begin{macro}{\UseHook,\UseOneTimeHook}
+% \begin{macro}{
+% \UseHook,
+% \UseOneTimeHook,
+% \UseHookWithArguments,
+% \UseOneTimeHookWithArguments,
+% }
% Avoid the overhead of \pkg{xparse} and its protection that we
% don't want here (since the hook should vanish without trace if empty)!
+% \changes{v1.1a}{2023/04/06}
+% {Add \cs{UseHookWithArguments} (hook-args).}
% \begin{macrocode}
%<latexrelease>\IncludeInRelease{2023/06/01}{\UseHookWithArguments}
%<latexrelease> {Hooks~with~args}
@@ -7256,6 +7357,8 @@
%<@@=hook>
% \end{macrocode}
%
+% \changes{v1.1a}{2023/04/06}
+% {Add dedicated rollback code to revert data structures (hook-args).}
% \begin{macrocode}
%<latexrelease>\cs:w @@_rollback_tidying: \cs_end:
%<latexrelease>\bool_lazy_and:nnT
More information about the latex3-commits
mailing list.