summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/base/ltvers.dtx
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2018-04-06 21:33:45 +0000
committerKarl Berry <karl@freefriends.org>2018-04-06 21:33:45 +0000
commit588be4d1b7e254f46ac3c678ef1b3f38833f6491 (patch)
treec73b58d23db18c19737ff12c67e208fd7a89c4c6 /Master/texmf-dist/source/latex/base/ltvers.dtx
parentc436d9d03043bac0aac83254a8f1a2a45e4aaafd (diff)
latex2e (6apr18)
git-svn-id: svn://tug.org/texlive/trunk@47330 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/base/ltvers.dtx')
-rw-r--r--Master/texmf-dist/source/latex/base/ltvers.dtx63
1 files changed, 56 insertions, 7 deletions
diff --git a/Master/texmf-dist/source/latex/base/ltvers.dtx b/Master/texmf-dist/source/latex/base/ltvers.dtx
index fb94e4c9d8f..6860fd1e3b5 100644
--- a/Master/texmf-dist/source/latex/base/ltvers.dtx
+++ b/Master/texmf-dist/source/latex/base/ltvers.dtx
@@ -1,6 +1,6 @@
% \iffalse meta-comment
%
-% Copyright 1993-2016
+% Copyright 1993-2018
% The LaTeX3 Project and any individual authors listed elsewhere
% in this file.
%
@@ -11,7 +11,7 @@
% conditions of the LaTeX Project Public License, either version 1.3c
% of this license or (at your option) any later version.
% The latest version of this license is in
-% http://www.latex-project.org/lppl.txt
+% https://www.latex-project.org/lppl.txt
% and version 1.3c or later is part of all distributions of LaTeX
% version 2005/12/01 or later.
%
@@ -33,7 +33,7 @@
%<*driver>
% \fi
\ProvidesFile{ltvers.dtx}
- [2016/06/20 v1.0w LaTeX Kernel (Version Info)]
+ [2018/03/16 v1.1a LaTeX Kernel (Version Info)]
% \iffalse
\documentclass{ltxdoc}
\GetFileInfo{ltvers.dtx}
@@ -84,7 +84,27 @@
%
% \begin{macro}{\fmtname}
% \begin{macro}{\fmtversion}
+% \begin{macro}{\latexreleaseversion}
% \begin{macro}{\patch@level}
+% A |\patch@level| of \texttt{0} or higher denotes an official
+% public release. A negative value indicates a candidate release
+% that is not distributed.
+%
+% If we put code updates into the kernel that are supposed to go
+% into the next release we set the |\patch@level| to \texttt{-1}
+% and the |\fmtversion| / |\latexreleaseversion| to the dated of
+% the next release (guessed, the real value is not so important and
+% will get corrected when we make the release official).
+%
+% If the |\patch@level| is already at \texttt{-1} we do nothing
+% here and use the |\fmtversion| date for any new|\IncludeInRelease|
+% line when we add further code.
+%
+% Finally, if we do make a public release we either just set the
+% |\patch@level| to zero (if our initial guess was good) or we also
+% change the date and then have to additionally change to that date
+% on all the |\IncludeInRelease| statements that used the
+% ``guessed'' date.
% \begin{macrocode}
%<*2ekernel>
\def\fmtname{LaTeX2e}
@@ -92,7 +112,7 @@
%</2ekernel>
%<latexrelease>\edef\latexreleaseversion
%<*2ekernel|latexrelease>
- {2017-04-15}
+ {2018-04-01}
%</2ekernel|latexrelease>
%<*2ekernel>
\def\patch@level{0}
@@ -100,6 +120,7 @@
% \end{macro}
% \end{macro}
% \end{macro}
+% \end{macro}
%
% Check that the format being made is not too old.
% The error message complains about `more than 5 years'
@@ -180,7 +201,16 @@
%
% \begin{macrocode}
%<*2ekernel|latexrelease>
-\def\IncludeInRelease#1{\kernel@ifnextchar[%
+%<latexrelease>\newif\if@includeinrelease
+%<latexrelease>\@includeinreleasefalse
+% \end{macrocode}
+% \begin{macrocode}
+\def\IncludeInRelease#1{%
+ \if@includeinrelease
+ \PackageError{latexrelease}{mis-matched IncludeInRelease}{}%
+ \@includeinreleasefalse
+ \fi
+ \kernel@ifnextchar[%
{\@IncludeInRelease{#1}}
{\@IncludeInRelease{#1}[#1]}}
% \end{macrocode}
@@ -201,6 +231,7 @@
\expandafter\expandafter\expandafter\@gobble@IncludeInRelease
\else
\GenericInfo{}{Applying: \the\toks@}%
+ \@includeinreleasetrue
\expandafter\let\csname\string#2+\@currname+IIR\endcsname\@empty
\fi
\else
@@ -211,8 +242,26 @@
% \end{macrocode}
%
% \begin{macrocode}
-\long\def\@gobble@IncludeInRelease#1\EndIncludeInRelease{}
-\let\EndIncludeInRelease\relax
+\def\EndIncludeInRelease{%
+\if@includeinrelease
+ \@includeinreleasefalse
+\else
+ \PackageError{latexrelease}{mis-matched EndIncludeInRelease}{}%
+\fi}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\long\def\@gobble@IncludeInRelease#1\EndIncludeInRelease{%
+ \@includeinreleasefalse
+ \@check@IncludeInRelease#1\IncludeInRelease\@check@IncludeInRelease
+ \@end@check@IncludeInRelease}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\@check@IncludeInRelease#1\IncludeInRelease
+ #2#3\@end@check@IncludeInRelease{%
+ \ifx\@check@IncludeInRelease#2\else
+ \PackageError{latexrelease}{skipped IncludeInRelease}{}%
+ \fi}
% \end{macrocode}
%
% \begin{macrocode}