[latex3-commits] [git/LaTeX3-latex3-latex2e] versioning: move new versioning code unconditionally also in latexrelease (without getting ito a loop :-) small test file changes, more tests (967884c)

Frank Mittelbach frank.mittelbach at latex-project.org
Wed Feb 21 17:05:33 CET 2018


Repository : https://github.com/latex3/latex2e
On branch  : versioning
Link       : https://github.com/latex3/latex2e/commit/967884c1e00587bd28c8038bfacf9a4fba667534

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

commit 967884c1e00587bd28c8038bfacf9a4fba667534
Author: Frank Mittelbach <frank.mittelbach at latex-project.org>
Date:   Wed Feb 21 17:05:33 2018 +0100

    move new versioning code unconditionally also in latexrelease (without getting ito a loop :-)
    small test file changes, more tests


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

967884c1e00587bd28c8038bfacf9a4fba667534
 .gitignore                                         |    1 +
 base/latexrelease.ins                              |    4 +-
 base/ltclass.dtx                                   |   30 ++-
 base/testfiles/tlb-rollback-001.lvt                |    8 +-
 base/testfiles/tlb-rollback-002.lvt                |    3 -
 base/testfiles/tlb-rollback-003.luatex.tlg         |  215 ++++++++++++++++++++
 .../{tlb-rollback-002.lvt => tlb-rollback-003.lvt} |   32 +--
 base/testfiles/tlb-rollback-003.tlg                |  214 +++++++++++++++++++
 8 files changed, 473 insertions(+), 34 deletions(-)

diff --git a/.gitignore b/.gitignore
index f2b5da4..d864e1d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,3 +3,4 @@ build/
 
 *.*~
 *.*#
+*.aux
diff --git a/base/latexrelease.ins b/base/latexrelease.ins
index 3253b9f..3cab6b8 100644
--- a/base/latexrelease.ins
+++ b/base/latexrelease.ins
@@ -48,7 +48,7 @@ reports for it can be opened at https://latex-project.org/bugs.html
 (but please observe conditions on bug reports sent to that address!)
 
 
-Copyright 1993-2017
+Copyright 1993-2018
 The LaTeX3 Project and any individual authors listed elsewhere
 in this file. 
 
@@ -82,7 +82,7 @@ extension .ins) which are part of the distribution.
 \usedir{tex/latex/base}
 
 \generateFile{latexrelease.sty}{t}{%
-  \from{ltclass.dtx}     {isodate}%
+  \from{ltclass.dtx}     {latexreleasefirst,tracerollback}%
   \from{ltvers.dtx}      {latexrelease}%
   \from{latexrelease.dtx}{latexrelease}%
   \from{ltdirchk.dtx}    {latexrelease}%
diff --git a/base/ltclass.dtx b/base/ltclass.dtx
index 0b271a8..d8e1879 100644
--- a/base/ltclass.dtx
+++ b/base/ltclass.dtx
@@ -662,7 +662,7 @@
 %         {add \cs{@parse at version@dash} to support yyyy-mm-dd as well as yyyy/mm/dd }
 %    \begin{macrocode}
 %</2ekernel>
-%<*2ekernel|isodate>
+%<*2ekernel|latexreleasefirst>
 \def\@parse at version#1/#2/#3#4#5\@nil{%
 \@parse at version@dash#1-#2-#3#4\@nil
 }
@@ -672,7 +672,7 @@
 %    \begin{macrocode}
 \def\@parse at version@dash#1-#2-#3#4#5\@nil{%
   \if\relax#2\relax\else#1\fi#2#3#4 }
-%</2ekernel|isodate>
+%</2ekernel|latexreleasefirst>
 %<*2ekernel>
 %    \end{macrocode}
 % \end{macro}
@@ -1843,6 +1843,12 @@
 % \section{Package/class rollback mechanism}
 %
 %
+%    
+%    \begin{macrocode}
+%</2ekernel>
+%<*2ekernel|latexreleasefirst>
+%    \end{macrocode}
+%
 % \changes{v1.2d}{2018/02/18}{Introduce rollback concept}
 %
 %  \begin{macro}{\pkgcls at debug}
@@ -1883,7 +1889,9 @@
 %    rollback request.
 %
 %    \begin{macrocode}
-\newcount\pkgcls at targetdate
+\ifx\pkgcls at targetdate\@undefined
+  \newcount\pkgcls at targetdate
+\fi
 \let\pkgcls at targetlabel\@empty
 %    \end{macrocode}
 %  \end{macro}
@@ -1916,11 +1924,12 @@
 %    To make things easy we save the old definition as
 %    |\load at onefilewithoptions| and then provide a new interface.
 %    \begin{macrocode}
-\let\load at onefilewithoptions\@onefilewithoptions
+\ifx\load at onefilewithoptions\@undefined
+ \let\load at onefilewithoptions\@onefilewithoptions
 %    \end{macrocode}
 %    
 %    \begin{macrocode}
-\def\@onefilewithoptions#1[#2][#3]#4{%
+ \def\@onefilewithoptions#1[#2][#3]#4{%
 %    \end{macrocode}
 %    First a bit of tracing normally disabled.
 %    \begin{macrocode}
@@ -1955,7 +1964,8 @@
 %    pass on |\pkgcls at mindate|.
 %    \begin{macrocode}
   \load at onefilewithoptions#1[#2][\pkgcls at mindate]#4%
-}
+ }
+\fi
 %    \end{macrocode}
 %  \end{macro}
 %  \end{macro}
@@ -2122,7 +2132,7 @@
 %    but this is not enforced and through this argument one can
 %    overwrite it.
 %    \begin{macrocode}
-\newcommand\DeclareOldRelease[3][]{%
+\providecommand\DeclareOldRelease[3][]{%
   \ifnum\pkgcls at targetdate>\z@  % some sort of rollback request
 %<*tracerollback>
     \pkgcls at debug{---\string\DeclareOldRelease:}%
@@ -2244,7 +2254,7 @@
   \GenericInfo
    {\@spaces\@spaces\space}{Rollback for
     \@cls at pkg\space'\@currname' requested ->
-    \ifx\pkgcls at targetlabel\@empty
+    \ifnum\pkgcls at targetdate>\@ne
        date
        \ifnum\requestedLaTeXdate=\pkgcls at targetdate
           \requestedpatchdate
@@ -2291,7 +2301,7 @@
 %    This declares the date (and possible name) of the current version
 %    of a package or class.
 %    \begin{macrocode}
-\newcommand\DeclareCurrentRelease[2][]{%
+\providecommand\DeclareCurrentRelease[2][]{%
 %    \end{macrocode}
 %    First we test if |\pkgcls at targetdate| is greater than zero,
 %    otherwise this code is bypassed (as there is no rollback request).
@@ -2355,7 +2365,7 @@
 %  \end{macro}
 %
 %    \begin{macrocode}
-%</2ekernel>
+%</2ekernel|latexreleasefirst>
 %    \end{macrocode}
 %
 %
diff --git a/base/testfiles/tlb-rollback-001.lvt b/base/testfiles/tlb-rollback-001.lvt
index 2263868..8e6c1d6 100644
--- a/base/testfiles/tlb-rollback-001.lvt
+++ b/base/testfiles/tlb-rollback-001.lvt
@@ -19,7 +19,6 @@
 \DeclareOption{dvips}{\typeout{ -> option dvips executed}}
 \ProcessOptions
 \typeout{This is the current testpkg! }
-% allow repeated loading (for testing)
 \end{filecontents}
 
 \begin{filecontents}{testpkg-2014-01-01.sty}
@@ -28,7 +27,6 @@
 \DeclareOption{dvips}{\typeout{ -> option dvips executed}}
 \ProcessOptions
 \typeout{This is testpkg 2014-01-01!}
-% allow repeated loading (for testing)
 \end{filecontents}
 
 \begin{filecontents}{testpkg-2018-10-01.sty}
@@ -39,7 +37,6 @@
 \DeclareOption{dvips}{\typeout{ -> option dvips executed}}
 \ProcessOptions
 \typeout{This is testpkg 2018-10-01!}
-% allow repeated loading (for testing)
 \end{filecontents}
 
 % ======================================================
@@ -120,6 +117,11 @@
 
 \OMIT
 \RequirePackage[2018-12-24]{latexrelease}
+% latex release might have set that back to \@gobble:
+\makeatletter
+\let\pkgcls at debug\typeout   % more output in the tests
+\makeatother
+
 \TIMO
 
 % no local rollback
diff --git a/base/testfiles/tlb-rollback-002.lvt b/base/testfiles/tlb-rollback-002.lvt
index 4cbb232..7b31ab2 100644
--- a/base/testfiles/tlb-rollback-002.lvt
+++ b/base/testfiles/tlb-rollback-002.lvt
@@ -20,7 +20,6 @@
 \DeclareOption{dvips}{\typeout{ -> option dvips executed}}
 \ProcessOptions
 \typeout{This is the current testpkg! }
-% allow repeated loading (for testing)
 \end{filecontents}
 
 \begin{filecontents}{testpkg-2014-01-01.sty}
@@ -29,7 +28,6 @@
 \DeclareOption{dvips}{\typeout{ -> option dvips executed}}
 \ProcessOptions
 \typeout{This is testpkg 2014-01-01!}
-% allow repeated loading (for testing)
 \end{filecontents}
 
 \begin{filecontents}{testpkg-2018-10-01.sty}
@@ -40,7 +38,6 @@
 \DeclareOption{dvips}{\typeout{ -> option dvips executed}}
 \ProcessOptions
 \typeout{This is testpkg 2018-10-01!}
-% allow repeated loading (for testing)
 \end{filecontents}
 
 % ======================================================
diff --git a/base/testfiles/tlb-rollback-003.luatex.tlg b/base/testfiles/tlb-rollback-003.luatex.tlg
new file mode 100644
index 0000000..a67cc47
--- /dev/null
+++ b/base/testfiles/tlb-rollback-003.luatex.tlg
@@ -0,0 +1,215 @@
+This is a generated file for the LaTeX2e validation system.
+Don't change this file in any respect.
+--- File loaded request (\usepackage or ...)
+    1: article
+    2: 
+    3: 
+    4: cls
+(article.cls
+(size10.clo
+)
+\c at part=\count...
+\c at section=\count...
+\c at subsection=\count...
+\c at subsubsection=\count...
+\c at paragraph=\count...
+\c at subparagraph=\count...
+\c at figure=\count...
+\c at table=\count...
+\abovecaptionskip=\skip...
+\belowcaptionskip=\skip...
+\bibindent=\dimen...
+)
+--- File loaded request (\usepackage or ...)
+    1: testpkg
+    2: dvips
+    3: around 2016
+    4: sty
+(testpkg.sty
+Package: testpkg 2019-07-21 v3.5 test package
+ -> option dvips executed
+This is the current testpkg! 
+)
+--- File loaded request (\usepackage or ...)
+    1: testpkg
+    2: dvips
+    3: what to use?
+    4: sty
+(testpkg.sty
+Package: testpkg 2019-07-21 v3.5 test package
+ -> option dvips executed
+This is the current testpkg! 
+)
+--- File loaded request (\usepackage or ...)
+    1: testpkg
+    2: dvips
+    3: =2016
+    4: sty
+(testpkg.sty
+---\DeclareOldRelease:
+    1: v1
+    2: 2014-01-01
+    3: testpkg-2014-01-01
+Label doesn't match
+---\DeclareOldRelease:
+    1: v2
+    2: 2018/10-01
+    3: testpkg-2018-10-01
+Label doesn't match
+---DeclareCurrentRelease
+ 1: v3
+ 2: 2019-07-01
+! LaTeX Error: Requested version '2016' for package 'testpkg' is unknown.
+See the LaTeX manual or LaTeX Companion for explanation.
+Type  H <return>  for immediate help.
+ ...                                              
+l. ...\DeclareCurrentRelease[v3]{2019-07-01}
+Try typing  <return>  to proceed.
+If that doesn't work, type  X <return>  to quit.
+Package: testpkg 2019-07-21 v3.5 test package
+ -> option dvips executed
+This is the current testpkg! 
+)
+--- File loaded request (\usepackage or ...)
+    1: testpkg
+    2: dvips
+    3: =some-time
+    4: sty
+! LaTeX Error: Missing \begin{document}.
+See the LaTeX manual or LaTeX Companion for explanation.
+Type  H <return>  for immediate help.
+ ...                                              
+l. ...\usepackage[dvips]{testpkg}[=some-time]
+                                            % dies
+You're in trouble here.  Try typing  <return>  to proceed.
+If that doesn't work, type  X <return>  to quit.
+(testpkg.sty
+---\DeclareOldRelease:
+    1: v1
+    2: 2014-01-01
+    3: testpkg-2014-01-01
+Label doesn't match
+---\DeclareOldRelease:
+    1: v2
+    2: 2018/10-01
+    3: testpkg-2018-10-01
+Label doesn't match
+---DeclareCurrentRelease
+ 1: v3
+ 2: 2019-07-01
+! LaTeX Error: Requested version 'some-time' for package 'testpkg' is unknown.
+See the LaTeX manual or LaTeX Companion for explanation.
+Type  H <return>  for immediate help.
+ ...                                              
+l. ...\DeclareCurrentRelease[v3]{2019-07-01}
+Try typing  <return>  to proceed.
+If that doesn't work, type  X <return>  to quit.
+Package: testpkg 2019-07-21 v3.5 test package
+ -> option dvips executed
+This is the current testpkg! 
+)
+--- File loaded request (\usepackage or ...)
+    1: testpkg
+    2: dvips
+    3: =some/release
+    4: sty
+! LaTeX Error: Missing \begin{document}.
+See the LaTeX manual or LaTeX Companion for explanation.
+Type  H <return>  for immediate help.
+ ...                                              
+l. ...\usepackage[dvips]{testpkg}[=some/release]
+                                              % dies too
+You're in trouble here.  Try typing  <return>  to proceed.
+If that doesn't work, type  X <return>  to quit.
+(testpkg.sty
+---\DeclareOldRelease:
+    1: v1
+    2: 2014-01-01
+    3: testpkg-2014-01-01
+Label doesn't match
+---\DeclareOldRelease:
+    1: v2
+    2: 2018/10-01
+    3: testpkg-2018-10-01
+Label doesn't match
+---DeclareCurrentRelease
+ 1: v3
+ 2: 2019-07-01
+! LaTeX Error: Requested version 'some/release' for package 'testpkg' is unknow
+n.
+See the LaTeX manual or LaTeX Companion for explanation.
+Type  H <return>  for immediate help.
+ ...                                              
+l. ...\DeclareCurrentRelease[v3]{2019-07-01}
+Try typing  <return>  to proceed.
+If that doesn't work, type  X <return>  to quit.
+Package: testpkg 2019-07-21 v3.5 test package
+ -> option dvips executed
+This is the current testpkg! 
+)
+--- File loaded request (\usepackage or ...)
+    1: testpkg
+    2: dvips
+    3: =2017-01
+    4: sty
+! LaTeX Error: Missing \begin{document}.
+See the LaTeX manual or LaTeX Companion for explanation.
+Type  H <return>  for immediate help.
+ ...                                              
+l. ...\usepackage[dvips]{testpkg}[=2017-01]
+You're in trouble here.  Try typing  <return>  to proceed.
+If that doesn't work, type  X <return>  to quit.
+(testpkg.sty
+---\DeclareOldRelease:
+    1: v1
+    2: 2014-01-01
+    3: testpkg-2014-01-01
+! LaTeX Error: Suspicious rollback date given.
+See the LaTeX manual or LaTeX Companion for explanation.
+Type  H <return>  for immediate help.
+ ...                                              
+l. ......ldRelease[v1]{2014-01-01}{testpkg-2014-01-01}
+The package 'testpkg' claims that it came into existence on 2014-01-01 which
+is after your requested rollback date --- so something is wrong here.
+Continue and we use the earliest known release.
+Result: use testpkg-2014-01-01
+Rollback for package 'testpkg' requested -> date 2017-01.
+         Best approximation is the release introduced on 2014-01-01.
+(testpkg-2014-01-01.sty
+Package: testpkg 2014-01-01 v1.2 test package
+ -> option dvips executed
+This is testpkg 2014-01-01!
+))
+--- File loaded request (\usepackage or ...)
+    1: testpkg
+    2: dvips
+    3: =2017/02
+    4: sty
+! LaTeX Error: Missing \begin{document}.
+See the LaTeX manual or LaTeX Companion for explanation.
+Type  H <return>  for immediate help.
+ ...                                              
+l. ...\usepackage[dvips]{testpkg}[=2017/02]
+You're in trouble here.  Try typing  <return>  to proceed.
+If that doesn't work, type  X <return>  to quit.
+(testpkg.sty
+---\DeclareOldRelease:
+    1: v1
+    2: 2014-01-01
+    3: testpkg-2014-01-01
+! LaTeX Error: Suspicious rollback date given.
+See the LaTeX manual or LaTeX Companion for explanation.
+Type  H <return>  for immediate help.
+ ...                                              
+l. ......ldRelease[v1]{2014-01-01}{testpkg-2014-01-01}
+The package 'testpkg' claims that it came into existence on 2014-01-01 which
+is after your requested rollback date --- so something is wrong here.
+Continue and we use the earliest known release.
+Result: use testpkg-2014-01-01
+Rollback for package 'testpkg' requested -> date 2017/02.
+         Best approximation is the release introduced on 2014-01-01.
+(testpkg-2014-01-01.sty
+Package: testpkg 2014-01-01 v1.2 test package
+ -> option dvips executed
+This is testpkg 2014-01-01!
+))
diff --git a/base/testfiles/tlb-rollback-002.lvt b/base/testfiles/tlb-rollback-003.lvt
similarity index 76%
copy from base/testfiles/tlb-rollback-002.lvt
copy to base/testfiles/tlb-rollback-003.lvt
index 4cbb232..1a39ed0 100644
--- a/base/testfiles/tlb-rollback-002.lvt
+++ b/base/testfiles/tlb-rollback-003.lvt
@@ -1,7 +1,7 @@
 %
 % Check that the rollback mechanism works
 %
-%  we pretend our package is partly in the future (as we have 2018/02 right now)
+% testing various errors
 %
 %  in this test we request a latexrelease that doesn't know about versions ...  
 %
@@ -10,7 +10,7 @@
 \begin{filecontents}{testpkg.sty}
 % The current package ...
 \DeclareOldRelease[v1]{2014-01-01}{testpkg-2014-01-01}
-\DeclareOldRelease[v2]{2018-10-01}{testpkg-2018-10-01}
+\DeclareOldRelease[v2]{2018/10-01}{testpkg-2018-10-01}
 \DeclareCurrentRelease[v3]{2019-07-01}
 
 \ProvidesPackage{testpkg}[2019-07-21 v3.5 test package] % this has a
@@ -20,7 +20,6 @@
 \DeclareOption{dvips}{\typeout{ -> option dvips executed}}
 \ProcessOptions
 \typeout{This is the current testpkg! }
-% allow repeated loading (for testing)
 \end{filecontents}
 
 \begin{filecontents}{testpkg-2014-01-01.sty}
@@ -29,7 +28,6 @@
 \DeclareOption{dvips}{\typeout{ -> option dvips executed}}
 \ProcessOptions
 \typeout{This is testpkg 2014-01-01!}
-% allow repeated loading (for testing)
 \end{filecontents}
 
 \begin{filecontents}{testpkg-2018-10-01.sty}
@@ -40,7 +38,6 @@
 \DeclareOption{dvips}{\typeout{ -> option dvips executed}}
 \ProcessOptions
 \typeout{This is testpkg 2018-10-01!}
-% allow repeated loading (for testing)
 \end{filecontents}
 
 % ======================================================
@@ -62,27 +59,30 @@
   \expandafter\let\csname ver at testpkg.sty\endcsname\relax
 }
 
-\OMIT
-\RequirePackage[2016-01-01]{latexrelease}
-\TIMO
-
 %%% TESTS %%%%
 
 % no local rollback
 \ForgetAboutTestpkg
-\usepackage[dvips]{testpkg}
+\usepackage[dvips]{testpkg}[around 2016]
+
+\ForgetAboutTestpkg
+\usepackage[dvips]{testpkg}[what to use?]
+
+
+\ForgetAboutTestpkg
+\usepackage[dvips]{testpkg}[=2016]
+
+\ForgetAboutTestpkg
+\usepackage[dvips]{testpkg}[=some-time]  % dies
 
-% mindate request (conflict with latexrelease)
 \ForgetAboutTestpkg
-\RequirePackage[dvips]{testpkg}[2018-05-05]
+\usepackage[dvips]{testpkg}[=some/release] % dies too
 
-% later rollback for this package
 \ForgetAboutTestpkg
-\RequirePackage[dvips]{testpkg}[=2018-11-05]
+\usepackage[dvips]{testpkg}[=2017-01]
 
-% name request current
 \ForgetAboutTestpkg
-\usepackage[]{testpkg}[=v3]
+\usepackage[dvips]{testpkg}[=2017/02]
 
 \END
 
diff --git a/base/testfiles/tlb-rollback-003.tlg b/base/testfiles/tlb-rollback-003.tlg
new file mode 100644
index 0000000..b8a2dc3
--- /dev/null
+++ b/base/testfiles/tlb-rollback-003.tlg
@@ -0,0 +1,214 @@
+This is a generated file for the LaTeX2e validation system.
+Don't change this file in any respect.
+--- File loaded request (\usepackage or ...)
+    1: article
+    2: 
+    3: 
+    4: cls
+(article.cls
+(size10.clo
+)
+\c at part=\count...
+\c at section=\count...
+\c at subsection=\count...
+\c at subsubsection=\count...
+\c at paragraph=\count...
+\c at subparagraph=\count...
+\c at figure=\count...
+\c at table=\count...
+\abovecaptionskip=\skip...
+\belowcaptionskip=\skip...
+\bibindent=\dimen...
+)
+--- File loaded request (\usepackage or ...)
+    1: testpkg
+    2: dvips
+    3: around 2016
+    4: sty
+(testpkg.sty
+Package: testpkg 2019-07-21 v3.5 test package
+ -> option dvips executed
+This is the current testpkg! 
+)
+--- File loaded request (\usepackage or ...)
+    1: testpkg
+    2: dvips
+    3: what to use?
+    4: sty
+(testpkg.sty
+Package: testpkg 2019-07-21 v3.5 test package
+ -> option dvips executed
+This is the current testpkg! 
+)
+--- File loaded request (\usepackage or ...)
+    1: testpkg
+    2: dvips
+    3: =2016
+    4: sty
+(testpkg.sty
+---\DeclareOldRelease:
+    1: v1
+    2: 2014-01-01
+    3: testpkg-2014-01-01
+Label doesn't match
+---\DeclareOldRelease:
+    1: v2
+    2: 2018-10-01
+    3: testpkg-2018-10-01
+Label doesn't match
+---DeclareCurrentRelease
+ 1: v3
+ 2: 2019-07-01
+! LaTeX Error: Requested version '2016' for package 'testpkg' is unknown.
+See the LaTeX manual or LaTeX Companion for explanation.
+Type  H <return>  for immediate help.
+ ...                                              
+l. ...\DeclareCurrentRelease[v3]{2019-07-01}
+Try typing  <return>  to proceed.
+If that doesn't work, type  X <return>  to quit.
+Package: testpkg 2019-07-21 v3.5 test package
+ -> option dvips executed
+This is the current testpkg! 
+)
+--- File loaded request (\usepackage or ...)
+    1: testpkg
+    2: dvips
+    3: =some-time
+    4: sty
+! LaTeX Error: Missing \begin{document}.
+See the LaTeX manual or LaTeX Companion for explanation.
+Type  H <return>  for immediate help.
+ ...                                              
+l. ...\usepackage[dvips]{testpkg}[=some-time]
+                                              % dies
+You're in trouble here.  Try typing  <return>  to proceed.
+If that doesn't work, type  X <return>  to quit.
+(testpkg.sty
+---\DeclareOldRelease:
+    1: v1
+    2: 2014-01-01
+    3: testpkg-2014-01-01
+Label doesn't match
+---\DeclareOldRelease:
+    1: v2
+    2: 2018-10-01
+    3: testpkg-2018-10-01
+Label doesn't match
+---DeclareCurrentRelease
+ 1: v3
+ 2: 2019-07-01
+! LaTeX Error: Requested version 'some-time' for package 'testpkg' is unknown.
+See the LaTeX manual or LaTeX Companion for explanation.
+Type  H <return>  for immediate help.
+ ...                                              
+l. ...\DeclareCurrentRelease[v3]{2019-07-01}
+Try typing  <return>  to proceed.
+If that doesn't work, type  X <return>  to quit.
+Package: testpkg 2019-07-21 v3.5 test package
+ -> option dvips executed
+This is the current testpkg! 
+)
+--- File loaded request (\usepackage or ...)
+    1: testpkg
+    2: dvips
+    3: =some/release
+    4: sty
+! LaTeX Error: Missing \begin{document}.
+See the LaTeX manual or LaTeX Companion for explanation.
+Type  H <return>  for immediate help.
+ ...                                              
+l. ...\usepackage[dvips]{testpkg}[=some/release]
+                                                % dies too
+You're in trouble here.  Try typing  <return>  to proceed.
+If that doesn't work, type  X <return>  to quit.
+(testpkg.sty
+---\DeclareOldRelease:
+    1: v1
+    2: 2014-01-01
+    3: testpkg-2014-01-01
+Label doesn't match
+---\DeclareOldRelease:
+    1: v2
+    2: 2018-10-01
+    3: testpkg-2018-10-01
+Label doesn't match
+---DeclareCurrentRelease
+ 1: v3
+ 2: 2019-07-01
+! LaTeX Error: Requested version 'some/release' for package 'testpkg' is unknown.
+See the LaTeX manual or LaTeX Companion for explanation.
+Type  H <return>  for immediate help.
+ ...                                              
+l. ...\DeclareCurrentRelease[v3]{2019-07-01}
+Try typing  <return>  to proceed.
+If that doesn't work, type  X <return>  to quit.
+Package: testpkg 2019-07-21 v3.5 test package
+ -> option dvips executed
+This is the current testpkg! 
+)
+--- File loaded request (\usepackage or ...)
+    1: testpkg
+    2: dvips
+    3: =2017-01
+    4: sty
+! LaTeX Error: Missing \begin{document}.
+See the LaTeX manual or LaTeX Companion for explanation.
+Type  H <return>  for immediate help.
+ ...                                              
+l. ...\usepackage[dvips]{testpkg}[=2017-01]
+You're in trouble here.  Try typing  <return>  to proceed.
+If that doesn't work, type  X <return>  to quit.
+(testpkg.sty
+---\DeclareOldRelease:
+    1: v1
+    2: 2014-01-01
+    3: testpkg-2014-01-01
+! LaTeX Error: Suspicious rollback date given.
+See the LaTeX manual or LaTeX Companion for explanation.
+Type  H <return>  for immediate help.
+ ...                                              
+l. ......Release[v1]{2014-01-01}{testpkg-2014-01-01}
+The package 'testpkg' claims that it came into existence on 2014-01-01 which
+is after your requested rollback date --- so something is wrong here.
+Continue and we use the earliest known release.
+Result: use testpkg-2014-01-01
+Rollback for package 'testpkg' requested -> date 2017-01.
+         Best approximation is the release introduced on 2014-01-01.
+(testpkg-2014-01-01.sty
+Package: testpkg 2014-01-01 v1.2 test package
+ -> option dvips executed
+This is testpkg 2014-01-01!
+))
+--- File loaded request (\usepackage or ...)
+    1: testpkg
+    2: dvips
+    3: =2017/02
+    4: sty
+! LaTeX Error: Missing \begin{document}.
+See the LaTeX manual or LaTeX Companion for explanation.
+Type  H <return>  for immediate help.
+ ...                                              
+l. ...\usepackage[dvips]{testpkg}[=2017/02]
+You're in trouble here.  Try typing  <return>  to proceed.
+If that doesn't work, type  X <return>  to quit.
+(testpkg.sty
+---\DeclareOldRelease:
+    1: v1
+    2: 2014-01-01
+    3: testpkg-2014-01-01
+! LaTeX Error: Suspicious rollback date given.
+See the LaTeX manual or LaTeX Companion for explanation.
+Type  H <return>  for immediate help.
+ ...                                              
+l. ......Release[v1]{2014-01-01}{testpkg-2014-01-01}
+The package 'testpkg' claims that it came into existence on 2014-01-01 which
+is after your requested rollback date --- so something is wrong here.
+Continue and we use the earliest known release.
+Result: use testpkg-2014-01-01
+Rollback for package 'testpkg' requested -> date 2017/02.
+         Best approximation is the release introduced on 2014-01-01.
+(testpkg-2014-01-01.sty
+Package: testpkg 2014-01-01 v1.2 test package
+ -> option dvips executed
+This is testpkg 2014-01-01!
+))





More information about the latex3-commits mailing list