[latex3-commits] [git/LaTeX3-latex3-latex2e] develop: rawoptions for packages and classes (#507) (3d8a3588)

GitHub noreply at github.com
Mon Feb 22 01:51:38 CET 2021


Repository : https://github.com/latex3/latex2e
On branch  : develop
Link       : https://github.com/latex3/latex2e/commit/3d8a35887bf81cf59444dc972c1924902c6ccbdd

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

commit 3d8a35887bf81cf59444dc972c1924902c6ccbdd
Author: Frank Mittelbach <frank.mittelbach at latex-project.org>
Date:   Mon Feb 22 01:51:38 2021 +0100

    rawoptions for packages and classes (#507)
    
    * Saving raw option lists
    
    option handler ammended to save \@raw at opt@... in addition to \opt at ...
    so that it is available for extended option handlers,
    
    eg in kvoptions.sty (hyperref) defining
    
    \def\KVO at ProcessKeyvalOptions#1{%
    \expandafter\ifx\csname @raw at opt@\@currname.\@currext\endcsname\relax
    \else
    \expandafter\let\csname opt@\@currname.\@currext\expandafter\endcsname\csname @raw at opt@\@currname.\@currext\endcsname
    \fi
    ...
    
    would allow
    
    \usepackage[ colorlinks , pdftitle=A perfect day , pdfborder=0 0 0]{hyperref}
    
    with spaces in values preserved,
    
    To avoid the extended values breaking existing option handling the
    unused option list processing is extended so that after [x=y] only
    "x" is added to the unused option list (the mechanism used to remove
    items from the unused option list does not allow {}).
    
    This change should have no effect on existing documents other than
    possible different text in an unused global option warning.
    unless an extended option handler is used that takes advantage of the
    raw data.
    
    * fix includeinrelease guards
    
    * move rawoptions to 2021-05-01
    
    * remove spurious file
    
    * move rawoptions to 2021-05-01
    
    * changes.txt and placeholder in ltnews33
    
    * testfiles and news for rawoptions issue #85
    
    * no blank line before gh issue marker
    
    Co-authored-by: David Carlisle <d.p.carlisle at gmail.com>


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

3d8a35887bf81cf59444dc972c1924902c6ccbdd
 base/changes.txt                                   |   6 +
 base/doc/ltnews33.tex                              |  35 ++++++
 base/ltclass.dtx                                   | 136 +++++++++++++++++++--
 base/testfiles/github-0085-1.lvt                   |  15 +++
 .../{tlb-article-0000.tlg => github-0085-1.tlg}    |   2 +
 base/testfiles/github-0085-2.lvt                   |  15 +++
 .../{tlb-article-0000.tlg => github-0085-2.tlg}    |   2 +
 .../tlb-latexrelease-rollback-003-often.luatex.tlg |  12 ++
 .../tlb-latexrelease-rollback-003-often.tlg        |  12 ++
 .../tlb-latexrelease-rollback-003-often.xetex.tlg  |  12 ++
 base/testfiles/tlb-rollback-004-often.luatex.tlg   |   6 +
 base/testfiles/tlb-rollback-004-often.tlg          |   6 +
 base/testfiles/tlb-rollback-004-often.xetex.tlg    |   6 +
 base/update-rollback-tests.sh                      |   0
 14 files changed, 256 insertions(+), 9 deletions(-)

diff --git a/base/changes.txt b/base/changes.txt
index e750b815..65fb8818 100644
--- a/base/changes.txt
+++ b/base/changes.txt
@@ -15,6 +15,12 @@ are not part of the distribution.
 	* doc-v3beta.sty: File added, currently for internal documentation
 	to be replaced in a later release.
 
+2021-02-18  Frank Mittelbach  <Frank.Mittelbach at latex-project.org>
+
+	* ltclass.dtx: save raw package/class option lists to improve
+	key/val usage in optional argument of \usepackage and
+	\documentclass.
+
 2021-02-17  Frank Mittelbach  <Frank.Mittelbach at latex-project.org>
 
 	* ltoutenc.dtx (subsection{Definitions for the TS1 encoding}):
diff --git a/base/doc/ltnews33.tex b/base/doc/ltnews33.tex
index 5dda449d..9e5a06de 100644
--- a/base/doc/ltnews33.tex
+++ b/base/doc/ltnews33.tex
@@ -355,6 +355,41 @@ been changed.
 
 
 
+\subsection{Providing the raw option list of packages or documentclass to key/value handlers}
+
+\LaTeXe{} has always normalized space in option lists so\\
+\verb|\documentclass[ a4paper , 12pt ]{article}|\\
+processed the intended options \texttt{a4paper} and \texttt{12pt}.
+
+Unfortunately the mechanism used was designed for the simple option
+names of the standard option processing.  Many classes and packages 
+now use extended \emph{keyval} processing, however this white space
+normalisation makes this difficult:
+\verb|[bb=1 2 3 4]|
+which might be expected to pass a bounding box of four numbers is
+normalised to \texttt{bb=1234} and
+\verb|[bb={1 2 3 4}]|\\
+which might be expected to quote the spaces results in low level \TeX{}
+parsing errors.
+
+
+For compatibility reasons, the standard option processing has not been
+changed however the original un-normalised class and option lists
+are now saved. they are not used in the standard processing, however
+extended package option systems may use these ``raw'' option list
+macros if they are defined.
+
+The one change affecting the standard processing is that the low level
+error mentioned above is now avoided as values (any tokens to the
+right of an =  sign) are removed from consideration from the ``unused
+option list''  In this release \texttt{clip=true}` and
+`\texttt{clip=false}` both contribute \texttt{clip} to the list of
+options that have been used.
+%
+\githubissue{85}
+
+
+
 \subsection{Poor man's \cs{textasteriskcentered} if missing}
 
 The \cs{textasteriskcentered} symbol, used as part of the set of
diff --git a/base/ltclass.dtx b/base/ltclass.dtx
index 3e247789..26667cbe 100644
--- a/base/ltclass.dtx
+++ b/base/ltclass.dtx
@@ -33,7 +33,7 @@
 %<*driver>
 % \fi
 \ProvidesFile{ltclass.dtx}
-             [2021/01/21 v1.3w LaTeX Kernel (Class & Package Interface)]
+             [2021/02/18 v1.3x LaTeX Kernel (Class & Package Interface)]
 % \iffalse
 \documentclass{ltxdoc}
 \GetFileInfo{ltclass.dtx}
@@ -1166,13 +1166,14 @@
 %
 % \begin{macro}{\PassOptionsToPackage}
 % \begin{macro}{\PassOptionsToClass}
-% If the package has been loaded, we check that it was first loaded with
-% the options.  Otherwise we add the option list to that of the package.
+%   If the package has been loaded, we check that it was first loaded with
+%   the options.  Otherwise we add the option list to that of the package.
 % \changes{v1.3t}{2020/10/18}{Drop path from \cs{input at path} (gh/414).}
+% \changes{v1.3x}{2021/02/18}{save raw option lists (gh/85)}
 %    \begin{macrocode}
 %</2ekernel>
-%<latexrelease>\IncludeInRelease{2020/10/01}{\@pass at ptions}
-%<latexrelease>  {Add file replacement in \@pass at ptions}%
+%<latexrelease>\IncludeInRelease{2021/05/01}%
+%<latexrelease>                 {\@pass at ptions}{Raw option lists}%
 %<*2ekernel|latexrelease>
 \def\@pass at ptions#1#2#3{%
   \@expl@@@filehook at set@curr at file@@nNN
@@ -1189,12 +1190,41 @@
 %    \begin{macrocode}
   \expandafter\let
     \csname opt@#3.#1\expandafter\endcsname
-    \csname opt@\reserved at a\endcsname}
+    \csname opt@\reserved at a\endcsname
+%    \end{macrocode}
+% Extend raw option list
+%    \begin{macrocode}
+    \@ifundefined{@raw at opt@#3.#1}%
+      {\expandafter\gdef\csname @raw at opt@#3.#1\endcsname{#2}}%
+      {\expandafter\g at addto@macro\csname @raw at opt@#3.#1\endcsname{,#2}}%
+}
 %</2ekernel|latexrelease>
 %<latexrelease>\EndIncludeInRelease
+%    \end{macrocode}
+%
+%    \begin{macrocode}
+%<latexrelease>\IncludeInRelease{2020/10/01}{\@pass at ptions}
+%<latexrelease>  {Add file replacement in \@pass at ptions}%
+%<latexrelease>
+%<latexrelease>\def\@pass at ptions#1#2#3{%
+%<latexrelease>  \@expl@@@filehook at set@curr at file@@nNN
+%<latexrelease>    {\@expl@@@filehook at resolve@file at subst@@w #3.#1\@nil}%
+%<latexrelease>      \reserved at a\reserved at b
+%<latexrelease>  \@expl@@@filehook at clear@replacement at flag@@
+%<latexrelease>  \expandafter\xdef\csname opt@\reserved at a\endcsname{%
+%<latexrelease>    \@ifundefined{opt@\reserved at a}\@empty
+%<latexrelease>      {\csname opt@\reserved at a\endcsname,}%
+%<latexrelease>    \zap at space#2 \@empty}%
+%<latexrelease>  \expandafter\let
+%<latexrelease>    \csname opt@#3.#1\expandafter\endcsname
+%<latexrelease>    \csname opt@\reserved at a\endcsname}
+%<latexrelease>\EndIncludeInRelease
+%    \end{macrocode}
 %
+%    \begin{macrocode}
 %<latexrelease>\IncludeInRelease{0000/00/00}{\@pass at ptions}
 %<latexrelease>  {\@pass at ptions}%
+%<latexrelease>
 %<latexrelease>\def\@pass at ptions#1#2#3{%
 %<latexrelease>  \expandafter\xdef\csname opt@#3.#1\endcsname{%
 %<latexrelease>    \@ifundefined{opt@#3.#1}\@empty
@@ -1202,6 +1232,9 @@
 %<latexrelease>    \zap at space#2 \@empty}}
 %<latexrelease>\EndIncludeInRelease
 %<*2ekernel>
+%    \end{macrocode}
+%
+%    \begin{macrocode}
 \@onlypreamble\@pass at ptions
 %    \end{macrocode}
 %
@@ -1243,18 +1276,49 @@
 % \end{macro}
 %
 % \begin{macro}{\OptionNotUsed}
+% \changes{v1.3x}{2021/02/18}{filter out =value from unused option list (gh/85)}
+% \begin{macro}{\@remove at eq@value}
+% \changes{v1.3x}{2021/02/18}{macro added (gh/85)}
 % If we are in a class file, add |\CurrentOption| to the list of
 % unused options. Otherwise, in a package file do nothing.
 %    \begin{macrocode}
+%</2ekernel>
+%<latexrelease>\IncludeInRelease{2021/05/01}%
+%<latexrelease>                 {\OptionNotUsed}{filter unused option list}%
+%<*2ekernel|latexrelease>
+\def\@remove at eq@value#1=#2\@nil{#1}
+%    \end{macrocode}
+%
+%    \begin{macrocode}
 \def\OptionNotUsed{%
   \ifx\@currext\@clsextension
     \xdef\@unusedoptionlist{%
       \ifx\@unusedoptionlist\@empty\else\@unusedoptionlist,\fi
-      \CurrentOption}%
+      \expandafter\@remove at eq@value\CurrentOption=\@nil}%
   \fi}
+%</2ekernel|latexrelease>
+%<latexrelease>\EndIncludeInRelease
+%<latexrelease>\IncludeInRelease{0000/00/00}%
+%<latexrelease>                 {\OptionNotUsed}{filter unused option list}%
+%<latexrelease>\let\@remove at eq@value\@undefined
+%    \end{macrocode}
+%
+%    \begin{macrocode}
+%<latexrelease>\def\OptionNotUsed{%
+%<latexrelease>  \ifx\@currext\@clsextension
+%<latexrelease>    \xdef\@unusedoptionlist{%
+%<latexrelease>      \ifx\@unusedoptionlist\@empty\else\@unusedoptionlist,\fi
+%<latexrelease>      \CurrentOption}%
+%<latexrelease>  \fi}
+%<latexrelease>\EndIncludeInRelease
+%<*2ekernel>
+%    \end{macrocode}
+%
+%    \begin{macrocode}
 \@onlypreamble\OptionNotUsed
 %    \end{macrocode}
 % \end{macro}
+% \end{macro}
 %
 % \begin{macro}{\default at ds}
 % The default option code.
@@ -1405,11 +1469,30 @@
 %         {Name changed from \cs{@executeoption}}
 % \changes{v1.0e}{1994/05/17}
 %         {Execute option after removing from list, not before}
+% \changes{v1.3x}{2021/02/18}{filter out =value from unused option list (gh/85)}
 %    \begin{macrocode}
+%</2ekernel>
+%<latexrelease>\IncludeInRelease{2021/05/01}%
+%<latexrelease>                 {\@use at ption}{filter unused option list}%
+%<*2ekernel|latexrelease>
 \def\@use at ption{%
-  \@expandtwoargs\@removeelement\CurrentOption
+  \@expandtwoargs\@removeelement
+     {\expandafter\@remove at eq@value\CurrentOption=\@nil}%
   \@unusedoptionlist\@unusedoptionlist
   \csname ds@\CurrentOption\endcsname}
+%</2ekernel|latexrelease>
+%<latexrelease>\EndIncludeInRelease
+%<latexrelease>\IncludeInRelease{0000/00/00}%
+%<latexrelease>                 {\@use at ption}{filter unused option list}%
+%<latexrelease>\def\@use at ption{%
+%<latexrelease>  \@expandtwoargs\@removeelement\CurrentOption
+%<latexrelease>  \@unusedoptionlist\@unusedoptionlist
+%<latexrelease>  \csname ds@\CurrentOption\endcsname}
+%<latexrelease>\EndIncludeInRelease
+%<*2ekernel>
+%    \end{macrocode}
+%
+%    \begin{macrocode}
 \@onlypreamble\@use at ption
 %    \end{macrocode}
 % \end{macro}
@@ -1723,15 +1806,23 @@
 %         {Prevent loss of brackets PR/3965}
 % \changes{v2.1b}{2016/11/09}
 %         {Improve \cs{ifx} tests PR/4497}
+% \changes{v1.3x}{2021/02/18}{save raw class option list (gh/85)}
 %    \begin{macrocode}
 %</2ekernel>
-%<latexrelease>\IncludeInRelease{2017/01/01}%
+%<latexrelease>\IncludeInRelease{2020/10/01}%
 %<latexrelease>        {\@fileswith at pti@ns}{ifx tests in \@fileswith at pti@ns}%
 %<*2ekernel|latexrelease>
 \def\@fileswith at pti@ns#1[#2]#3[#4]{%
   \ifx#1\@clsextension
     \ifx\@classoptionslist\relax
       \xdef\@classoptionslist{\zap at space#2 \@empty}%
+%    \end{macrocode}
+% Save raw class list.
+%    \begin{macrocode}
+      \gdef\@raw at classoptionslist{#2}%
+%    \end{macrocode}
+%
+%    \begin{macrocode}
       \def\reserved at a{%
         \@onefilewithoptions#3[{#2}][{#4}]#1%
         \@documentclasshook}%
@@ -1770,6 +1861,33 @@
   \fi
   \reserved at a}
 %</2ekernel|latexrelease>
+%<latexrelease>\EndIncludeInRelease
+%<latexrelease>\IncludeInRelease{2017/01/01}%
+%<latexrelease>        {\@fileswith at pti@ns}{ifx tests in \@fileswith at pti@ns}%
+%<latexrelease>\def\@fileswith at pti@ns#1[#2]#3[#4]{%
+%<latexrelease>  \ifx#1\@clsextension
+%<latexrelease>    \ifx\@classoptionslist\relax
+%<latexrelease>      \xdef\@classoptionslist{\zap at space#2 \@empty}%
+%<latexrelease>      \def\reserved at a{%
+%<latexrelease>        \@onefilewithoptions#3[{#2}][{#4}]#1%
+%<latexrelease>        \@documentclasshook}%
+%<latexrelease>    \else
+%<latexrelease>      \def\reserved at a{%
+%<latexrelease>        \@onefilewithoptions#3[{#2}][{#4}]#1}%
+%<latexrelease>    \fi
+%<latexrelease>  \else
+%<latexrelease>    \def\reserved at b##1,{%
+%<latexrelease>      \ifx\@nnil##1\relax\else
+%<latexrelease>        \ifx\@nnil##1\@nnil\else
+%<latexrelease>         \noexpand\@onefilewithoptions##1[{#2}][{#4}]%
+%<latexrelease>         \noexpand\@pkgextension
+%<latexrelease>        \fi
+%<latexrelease>        \expandafter\reserved at b
+%<latexrelease>      \fi}%
+%<latexrelease>      \edef\reserved at a{\zap at space#3 \@empty}%
+%<latexrelease>      \edef\reserved at a{\expandafter\reserved at b\reserved at a,\@nnil,}%
+%<latexrelease>  \fi
+%<latexrelease>  \reserved at a}
 %    \end{macrocode}
 %
 %    \begin{macrocode}
diff --git a/base/testfiles/github-0085-1.lvt b/base/testfiles/github-0085-1.lvt
new file mode 100644
index 00000000..dcc7d7ca
--- /dev/null
+++ b/base/testfiles/github-0085-1.lvt
@@ -0,0 +1,15 @@
+\input{test2e}
+% space in value lost in option list
+% preserved in new raw option list
+% no error on loading even in old formats
+
+\START
+
+\documentclass[a b, bb= 1 2 3 4 ]{article}
+
+\makeatletter
+
+\typeout{\meaning\@classoptionslist}
+\typeout{\meaning\@raw at classoptionslist}
+
+\END
\ No newline at end of file
diff --git a/base/testfiles/tlb-article-0000.tlg b/base/testfiles/github-0085-1.tlg
similarity index 92%
copy from base/testfiles/tlb-article-0000.tlg
copy to base/testfiles/github-0085-1.tlg
index b96e3f6a..4fcccf2e 100644
--- a/base/testfiles/tlb-article-0000.tlg
+++ b/base/testfiles/github-0085-1.tlg
@@ -17,3 +17,5 @@ File: size10.clo ....-..-.. v... Standard LaTeX file (size option)
 \belowcaptionskip=\skip...
 \bibindent=\dimen...
 )
+macro:->ab,bb=1234
+macro:->a b, bb= 1 2 3 4 
diff --git a/base/testfiles/github-0085-2.lvt b/base/testfiles/github-0085-2.lvt
new file mode 100644
index 00000000..44bec2e5
--- /dev/null
+++ b/base/testfiles/github-0085-2.lvt
@@ -0,0 +1,15 @@
+\input{test2e}
+% Low level unrecoverable error in old formats
+% unused option list drops values
+% (also drops spaces as based on original option list)
+% ab and x here.
+
+\START
+
+\documentclass[a b, x={x,y} ]{article}
+
+\makeatletter
+\typeout{\meaning\@classoptionslist}
+\typeout{\meaning\@raw at classoptionslist}
+
+\END
\ No newline at end of file
diff --git a/base/testfiles/tlb-article-0000.tlg b/base/testfiles/github-0085-2.tlg
similarity index 92%
copy from base/testfiles/tlb-article-0000.tlg
copy to base/testfiles/github-0085-2.tlg
index b96e3f6a..feeaeff3 100644
--- a/base/testfiles/tlb-article-0000.tlg
+++ b/base/testfiles/github-0085-2.tlg
@@ -17,3 +17,5 @@ File: size10.clo ....-..-.. v... Standard LaTeX file (size option)
 \belowcaptionskip=\skip...
 \bibindent=\dimen...
 )
+macro:->ab,x={x,y}
+macro:->a b, x={x,y} 
diff --git a/base/testfiles/tlb-latexrelease-rollback-003-often.luatex.tlg b/base/testfiles/tlb-latexrelease-rollback-003-often.luatex.tlg
index 09fdb96d..41be8d14 100644
--- a/base/testfiles/tlb-latexrelease-rollback-003-often.luatex.tlg
+++ b/base/testfiles/tlb-latexrelease-rollback-003-often.luatex.tlg
@@ -384,15 +384,21 @@ Skipping: [....-..-..] Allow for package substitution on input line ....
 Skipping: [....-..-..] Protection for package info on input line ....
 Applying: [....-..-..] Protection for package info on input line ....
 Applying: [....-..-..] Track \ProvidesPackage  on input line ....
+Skipping: [....-..-..] Raw option lists on input line ....
 Skipping: [....-..-..] Add file replacement in \@pass at ptions  on input line ....
 Applying: [....-..-..] \@pass at ptions  on input line ....
+Skipping: [....-..-..] filter unused option list on input line ....
+Applying: [....-..-..] filter unused option list on input line ....
 Skipping: [....-..-..] Unused options issue on input line ....
 Applying: [....-..-..] Unused options issue on input line ....
+Skipping: [....-..-..] filter unused option list on input line ....
+Applying: [....-..-..] filter unused option list on input line ....
 Skipping: [....-..-..] Spaces in \ExecuteOptions  on input line ....
 Applying: [....-..-..] Spaces in \ExecuteOptions  on input line ....
 Skipping: [....-..-..] Unused options issue on input line ....
 Applying: [....-..-..] Unused options issue on input line ....
 Skipping: [....-..-..] ifx tests in \@fileswith at pti@ns  on input line ....
+Skipping: [....-..-..] ifx tests in \@fileswith at pti@ns  on input line ....
 Applying: [....-..-..] ifx tests in \@fileswith at pti@ns  on input line ....
 Skipping: [....-..-..] Hooks and unused options issue on input line ....
 Applying: [....-..-..] Hooks and unused options issue on input line ....
@@ -909,14 +915,20 @@ Skipping: [....-..-..] Allow for package substitution on input line ....
 Skipping: [....-..-..] Protection for package info on input line ....
 Applying: [....-..-..] Protection for package info on input line ....
 Applying: [....-..-..] Track \ProvidesPackage  on input line ....
+Skipping: [....-..-..] Raw option lists on input line ....
 Skipping: [....-..-..] Add file replacement in \@pass at ptions  on input line ....
 Applying: [....-..-..] \@pass at ptions  on input line ....
+Skipping: [....-..-..] filter unused option list on input line ....
+Applying: [....-..-..] filter unused option list on input line ....
 Skipping: [....-..-..] Unused options issue on input line ....
 Applying: [....-..-..] Unused options issue on input line ....
+Skipping: [....-..-..] filter unused option list on input line ....
+Applying: [....-..-..] filter unused option list on input line ....
 Applying: [....-..-..] Spaces in \ExecuteOptions  on input line ....
 Already applied: [....-..-..] Spaces in \ExecuteOptions  on input line ....
 Skipping: [....-..-..] Unused options issue on input line ....
 Applying: [....-..-..] Unused options issue on input line ....
+Skipping: [....-..-..] ifx tests in \@fileswith at pti@ns  on input line ....
 Applying: [....-..-..] ifx tests in \@fileswith at pti@ns  on input line ....
 Already applied: [....-..-..] ifx tests in \@fileswith at pti@ns  on input line ....
 Skipping: [....-..-..] Hooks and unused options issue on input line ....
diff --git a/base/testfiles/tlb-latexrelease-rollback-003-often.tlg b/base/testfiles/tlb-latexrelease-rollback-003-often.tlg
index fe731c2e..39b8b6d2 100644
--- a/base/testfiles/tlb-latexrelease-rollback-003-often.tlg
+++ b/base/testfiles/tlb-latexrelease-rollback-003-often.tlg
@@ -378,15 +378,21 @@ Skipping: [....-..-..] Allow for package substitution on input line ....
 Skipping: [....-..-..] Protection for package info on input line ....
 Applying: [....-..-..] Protection for package info on input line ....
 Applying: [....-..-..] Track \ProvidesPackage  on input line ....
+Skipping: [....-..-..] Raw option lists on input line ....
 Skipping: [....-..-..] Add file replacement in \@pass at ptions  on input line ....
 Applying: [....-..-..] \@pass at ptions  on input line ....
+Skipping: [....-..-..] filter unused option list on input line ....
+Applying: [....-..-..] filter unused option list on input line ....
 Skipping: [....-..-..] Unused options issue on input line ....
 Applying: [....-..-..] Unused options issue on input line ....
+Skipping: [....-..-..] filter unused option list on input line ....
+Applying: [....-..-..] filter unused option list on input line ....
 Skipping: [....-..-..] Spaces in \ExecuteOptions  on input line ....
 Applying: [....-..-..] Spaces in \ExecuteOptions  on input line ....
 Skipping: [....-..-..] Unused options issue on input line ....
 Applying: [....-..-..] Unused options issue on input line ....
 Skipping: [....-..-..] ifx tests in \@fileswith at pti@ns  on input line ....
+Skipping: [....-..-..] ifx tests in \@fileswith at pti@ns  on input line ....
 Applying: [....-..-..] ifx tests in \@fileswith at pti@ns  on input line ....
 Skipping: [....-..-..] Hooks and unused options issue on input line ....
 Applying: [....-..-..] Hooks and unused options issue on input line ....
@@ -893,14 +899,20 @@ Skipping: [....-..-..] Allow for package substitution on input line ....
 Skipping: [....-..-..] Protection for package info on input line ....
 Applying: [....-..-..] Protection for package info on input line ....
 Applying: [....-..-..] Track \ProvidesPackage  on input line ....
+Skipping: [....-..-..] Raw option lists on input line ....
 Skipping: [....-..-..] Add file replacement in \@pass at ptions  on input line ....
 Applying: [....-..-..] \@pass at ptions  on input line ....
+Skipping: [....-..-..] filter unused option list on input line ....
+Applying: [....-..-..] filter unused option list on input line ....
 Skipping: [....-..-..] Unused options issue on input line ....
 Applying: [....-..-..] Unused options issue on input line ....
+Skipping: [....-..-..] filter unused option list on input line ....
+Applying: [....-..-..] filter unused option list on input line ....
 Applying: [....-..-..] Spaces in \ExecuteOptions  on input line ....
 Already applied: [....-..-..] Spaces in \ExecuteOptions  on input line ....
 Skipping: [....-..-..] Unused options issue on input line ....
 Applying: [....-..-..] Unused options issue on input line ....
+Skipping: [....-..-..] ifx tests in \@fileswith at pti@ns  on input line ....
 Applying: [....-..-..] ifx tests in \@fileswith at pti@ns  on input line ....
 Already applied: [....-..-..] ifx tests in \@fileswith at pti@ns  on input line ....
 Skipping: [....-..-..] Hooks and unused options issue on input line ....
diff --git a/base/testfiles/tlb-latexrelease-rollback-003-often.xetex.tlg b/base/testfiles/tlb-latexrelease-rollback-003-often.xetex.tlg
index 8a98f362..bc3a2a92 100644
--- a/base/testfiles/tlb-latexrelease-rollback-003-often.xetex.tlg
+++ b/base/testfiles/tlb-latexrelease-rollback-003-often.xetex.tlg
@@ -378,15 +378,21 @@ Skipping: [....-..-..] Allow for package substitution on input line ....
 Skipping: [....-..-..] Protection for package info on input line ....
 Applying: [....-..-..] Protection for package info on input line ....
 Applying: [....-..-..] Track \ProvidesPackage  on input line ....
+Skipping: [....-..-..] Raw option lists on input line ....
 Skipping: [....-..-..] Add file replacement in \@pass at ptions  on input line ....
 Applying: [....-..-..] \@pass at ptions  on input line ....
+Skipping: [....-..-..] filter unused option list on input line ....
+Applying: [....-..-..] filter unused option list on input line ....
 Skipping: [....-..-..] Unused options issue on input line ....
 Applying: [....-..-..] Unused options issue on input line ....
+Skipping: [....-..-..] filter unused option list on input line ....
+Applying: [....-..-..] filter unused option list on input line ....
 Skipping: [....-..-..] Spaces in \ExecuteOptions  on input line ....
 Applying: [....-..-..] Spaces in \ExecuteOptions  on input line ....
 Skipping: [....-..-..] Unused options issue on input line ....
 Applying: [....-..-..] Unused options issue on input line ....
 Skipping: [....-..-..] ifx tests in \@fileswith at pti@ns  on input line ....
+Skipping: [....-..-..] ifx tests in \@fileswith at pti@ns  on input line ....
 Applying: [....-..-..] ifx tests in \@fileswith at pti@ns  on input line ....
 Skipping: [....-..-..] Hooks and unused options issue on input line ....
 Applying: [....-..-..] Hooks and unused options issue on input line ....
@@ -902,14 +908,20 @@ Skipping: [....-..-..] Allow for package substitution on input line ....
 Skipping: [....-..-..] Protection for package info on input line ....
 Applying: [....-..-..] Protection for package info on input line ....
 Applying: [....-..-..] Track \ProvidesPackage  on input line ....
+Skipping: [....-..-..] Raw option lists on input line ....
 Skipping: [....-..-..] Add file replacement in \@pass at ptions  on input line ....
 Applying: [....-..-..] \@pass at ptions  on input line ....
+Skipping: [....-..-..] filter unused option list on input line ....
+Applying: [....-..-..] filter unused option list on input line ....
 Skipping: [....-..-..] Unused options issue on input line ....
 Applying: [....-..-..] Unused options issue on input line ....
+Skipping: [....-..-..] filter unused option list on input line ....
+Applying: [....-..-..] filter unused option list on input line ....
 Applying: [....-..-..] Spaces in \ExecuteOptions  on input line ....
 Already applied: [....-..-..] Spaces in \ExecuteOptions  on input line ....
 Skipping: [....-..-..] Unused options issue on input line ....
 Applying: [....-..-..] Unused options issue on input line ....
+Skipping: [....-..-..] ifx tests in \@fileswith at pti@ns  on input line ....
 Applying: [....-..-..] ifx tests in \@fileswith at pti@ns  on input line ....
 Already applied: [....-..-..] ifx tests in \@fileswith at pti@ns  on input line ....
 Skipping: [....-..-..] Hooks and unused options issue on input line ....
diff --git a/base/testfiles/tlb-rollback-004-often.luatex.tlg b/base/testfiles/tlb-rollback-004-often.luatex.tlg
index 5611f307..8254508d 100644
--- a/base/testfiles/tlb-rollback-004-often.luatex.tlg
+++ b/base/testfiles/tlb-rollback-004-often.luatex.tlg
@@ -754,14 +754,20 @@ Skipping: [....-..-..] Allow for package substitution on input line ....
 Applying: [....-..-..] Protection for package info on input line ....
 Already applied: [....-..-..] Protection for package info on input line ...
 Applying: [....-..-..] Track \ProvidesPackage  on input line ....
+Skipping: [....-..-..] Raw option lists on input line ....
 Skipping: [....-..-..] Add file replacement in \@pass at ptions  on input line ....
 Applying: [....-..-..] \@pass at ptions  on input line ....
+Skipping: [....-..-..] filter unused option list on input line ....
+Applying: [....-..-..] filter unused option list on input line ....
 Skipping: [....-..-..] Unused options issue on input line ....
 Applying: [....-..-..] Unused options issue on input line ....
+Skipping: [....-..-..] filter unused option list on input line ....
+Applying: [....-..-..] filter unused option list on input line ....
 Applying: [....-..-..] Spaces in \ExecuteOptions  on input line ....
 Already applied: [....-..-..] Spaces in \ExecuteOptions  on input line ....
 Skipping: [....-..-..] Unused options issue on input line ....
 Applying: [....-..-..] Unused options issue on input line ....
+Skipping: [....-..-..] ifx tests in \@fileswith at pti@ns  on input line ....
 Applying: [....-..-..] ifx tests in \@fileswith at pti@ns  on input line ....
 Already applied: [....-..-..] ifx tests in \@fileswith at pti@ns  on input line ....
 Skipping: [....-..-..] Hooks and unused options issue on input line ....
diff --git a/base/testfiles/tlb-rollback-004-often.tlg b/base/testfiles/tlb-rollback-004-often.tlg
index 7a824983..33ca8eb6 100644
--- a/base/testfiles/tlb-rollback-004-often.tlg
+++ b/base/testfiles/tlb-rollback-004-often.tlg
@@ -742,14 +742,20 @@ Skipping: [....-..-..] Allow for package substitution on input line ....
 Applying: [....-..-..] Protection for package info on input line ....
 Already applied: [....-..-..] Protection for package info on input line ...
 Applying: [....-..-..] Track \ProvidesPackage  on input line ....
+Skipping: [....-..-..] Raw option lists on input line ....
 Skipping: [....-..-..] Add file replacement in \@pass at ptions  on input line ....
 Applying: [....-..-..] \@pass at ptions  on input line ....
+Skipping: [....-..-..] filter unused option list on input line ....
+Applying: [....-..-..] filter unused option list on input line ....
 Skipping: [....-..-..] Unused options issue on input line ....
 Applying: [....-..-..] Unused options issue on input line ....
+Skipping: [....-..-..] filter unused option list on input line ....
+Applying: [....-..-..] filter unused option list on input line ....
 Applying: [....-..-..] Spaces in \ExecuteOptions  on input line ....
 Already applied: [....-..-..] Spaces in \ExecuteOptions  on input line ....
 Skipping: [....-..-..] Unused options issue on input line ....
 Applying: [....-..-..] Unused options issue on input line ....
+Skipping: [....-..-..] ifx tests in \@fileswith at pti@ns  on input line ....
 Applying: [....-..-..] ifx tests in \@fileswith at pti@ns  on input line ....
 Already applied: [....-..-..] ifx tests in \@fileswith at pti@ns  on input line ....
 Skipping: [....-..-..] Hooks and unused options issue on input line ....
diff --git a/base/testfiles/tlb-rollback-004-often.xetex.tlg b/base/testfiles/tlb-rollback-004-often.xetex.tlg
index cde62201..eb546fb3 100644
--- a/base/testfiles/tlb-rollback-004-often.xetex.tlg
+++ b/base/testfiles/tlb-rollback-004-often.xetex.tlg
@@ -743,14 +743,20 @@ Skipping: [....-..-..] Allow for package substitution on input line ....
 Applying: [....-..-..] Protection for package info on input line ....
 Already applied: [....-..-..] Protection for package info on input line ...
 Applying: [....-..-..] Track \ProvidesPackage  on input line ....
+Skipping: [....-..-..] Raw option lists on input line ....
 Skipping: [....-..-..] Add file replacement in \@pass at ptions  on input line ....
 Applying: [....-..-..] \@pass at ptions  on input line ....
+Skipping: [....-..-..] filter unused option list on input line ....
+Applying: [....-..-..] filter unused option list on input line ....
 Skipping: [....-..-..] Unused options issue on input line ....
 Applying: [....-..-..] Unused options issue on input line ....
+Skipping: [....-..-..] filter unused option list on input line ....
+Applying: [....-..-..] filter unused option list on input line ....
 Applying: [....-..-..] Spaces in \ExecuteOptions  on input line ....
 Already applied: [....-..-..] Spaces in \ExecuteOptions  on input line ....
 Skipping: [....-..-..] Unused options issue on input line ....
 Applying: [....-..-..] Unused options issue on input line ....
+Skipping: [....-..-..] ifx tests in \@fileswith at pti@ns  on input line ....
 Applying: [....-..-..] ifx tests in \@fileswith at pti@ns  on input line ....
 Already applied: [....-..-..] ifx tests in \@fileswith at pti@ns  on input line ....
 Skipping: [....-..-..] Hooks and unused options issue on input line ....
diff --git a/base/update-rollback-tests.sh b/base/update-rollback-tests.sh
old mode 100644
new mode 100755





More information about the latex3-commits mailing list.