From 137220c3442927290385d230913b8cb7d6eff71b Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Mon, 28 May 2018 22:28:24 +0000 Subject: latex(2e) (28may18) git-svn-id: svn://tug.org/texlive/trunk@47860 c570f23f-e606-0410-a88d-b1316a301751 --- .../texmf-dist/source/latex/base/latexrelease.dtx | 28 ++++++++++++++++++---- Master/texmf-dist/source/latex/base/ltclass.dtx | 19 +++++++-------- Master/texmf-dist/source/latex/base/ltfinal.dtx | 15 ++++++++---- Master/texmf-dist/source/latex/base/ltvers.dtx | 2 +- 4 files changed, 45 insertions(+), 19 deletions(-) (limited to 'Master/texmf-dist/source') diff --git a/Master/texmf-dist/source/latex/base/latexrelease.dtx b/Master/texmf-dist/source/latex/base/latexrelease.dtx index 3a129e981b2..02194cee116 100644 --- a/Master/texmf-dist/source/latex/base/latexrelease.dtx +++ b/Master/texmf-dist/source/latex/base/latexrelease.dtx @@ -40,7 +40,7 @@ %<*!fixltx2e> % \fi % \ProvidesFile{latexrelease.dtx} - [2018/02/18 v1.0j LaTeX release emulation and tests + [2018/05/08 v1.0k LaTeX release emulation and tests (including releases up to \latexreleaseversion)] % \iffalse % @@ -108,6 +108,12 @@ % the commands defined here to adjust their definitions to the % specified date as described below. % +% Note that the \Lpack{latexrelease} package is intended for use +% at the start of a \emph{document}. Package and class code should not +% include this package as loading a package should not normally globally +% reset the effective version of \LaTeX\ that is in force, so affecting all +% other packages used in the document. +% % % The bulk of this package, after some initial setup and option % handling consists of a series of |\IncludeInRelease| commands @@ -123,16 +129,27 @@ % package has no information will generate a warning. Dates % earlier than 2015 will work but will roll back to some point in 2015 % when the method was introduced. +% |\IncludeInRelease| command is defined. +% The |\requestedLaTeXdate| is set to the normalized date argument +% so that package rollback defaults to the specified date. % % \item% % |current| This is the default behaviour, it does not change the % effective date of the format but does ensure that the % |\IncludeInRelease| command is defined. +% the |\requestedLaTeXdate| is reset to 0 so that package rollback +% does not use the implicit date. +% |\IncludeInRelease| command is defined. +% The |\requestedLaTeXdate| macro is reset to 0 so that package rollback +% does not use the implicit date. % % \item % |latest| sets the effective date of the format to the release date % of this file, so in an older format applies all patches currently % available. +% |\IncludeInRelease| command is defined. +% The |\requestedLaTeXdate| macro is reset to 0 so that package rollback +% does not use the implicit date. % \end{itemize} % % @@ -379,18 +396,21 @@ % \end{macro} % % \changes{v1.0c}{2015/02/19}{Swap argument order} +% \changes{v1.0k}{2018/05/08}{reset \cs{\requestedLaTeXdate} for current and latest options, gitub issue 43} % \begin{macrocode} \DeclareOption*{% \def\@IncludeInRelease#1[#2]{\@IncludeInRele@se{#1}}% \let\requestedpatchdate\CurrentOption} \DeclareOption{latest}{% - \let\requestedpatchdate\latexreleaseversion} + \let\requestedpatchdate\latexreleaseversion + \AtEndOfPackage{\def\requestedLaTeXdate{0}}} \DeclareOption{current}{% - \let\requestedpatchdate\fmtversion} + \let\requestedpatchdate\fmtversion + \AtEndOfPackage{\def\requestedLaTeXdate{0}}} % \end{macrocode} % % \begin{macrocode} -\ExecuteOptions{current} +\let\requestedpatchdate\fmtversion \ProcessOptions\relax % \end{macrocode} % diff --git a/Master/texmf-dist/source/latex/base/ltclass.dtx b/Master/texmf-dist/source/latex/base/ltclass.dtx index 63c66a16b32..199d839ed47 100644 --- a/Master/texmf-dist/source/latex/base/ltclass.dtx +++ b/Master/texmf-dist/source/latex/base/ltclass.dtx @@ -33,7 +33,7 @@ %<*driver> % \fi \ProvidesFile{ltclass.dtx} - [2018/04/10 v1.2h LaTeX Kernel (Class & Package Interface)] + [2018/05/08 v1.2i LaTeX Kernel (Class & Package Interface)] % \iffalse \documentclass{ltxdoc} \GetFileInfo{ltclass.dtx} @@ -2144,18 +2144,17 @@ % \end{macrocode} % If the min-date is after the requested rollback date (if there is % any, i.e., if it is not zero) then we have a conflict and -% therefore issue an error. +% therefore issue a warning. +% \changes{v1.2i}{2018/05/08} +% {Make suspicious rollback a warning not error: github issue 43} % \begin{macrocode} \ifnum \pkgcls@targetdate > \z@ \ifnum \@parse@version0#1//00\@nil > \pkgcls@targetdate - \@latex@error{Suspicious rollback/min-date date given}% - {There is a minimal date of #1 specified for - \@cls@pkg\space'\pkgcls@name'.\MessageBreak + \@latex@warning@no@line{Suspicious rollback/min-date date given\MessageBreak + A minimal date of #1 has been specified for + \@cls@pkg\MessageBreak '\pkgcls@name'.\MessageBreak But this is in conflict - with a rollback request to \requestedpatchdate, - so something\MessageBreak - is wrong here. Continue and I - ignore the minimal date request.}% + with a rollback request to \requestedpatchdate} \fi \fi \fi @@ -2295,7 +2294,7 @@ % We then set the |\pkgcls@targetdate| to zero so that any % |\DeclareRelease| or |\DeclareCurrentRelease| in the file we % now load are bypassed\footnote{The older release may also have -% such declarations inside if it was a simply copy od the +% such declarations inside if it was a simply copy of the % \texttt{.sty} or \texttt{.cls} file current at that % date. Removing these declarations would make the file load a tiny % bit faster, but this way it works in any case.} and then we diff --git a/Master/texmf-dist/source/latex/base/ltfinal.dtx b/Master/texmf-dist/source/latex/base/ltfinal.dtx index 01ea82cdb94..0cc4e69bfd4 100644 --- a/Master/texmf-dist/source/latex/base/ltfinal.dtx +++ b/Master/texmf-dist/source/latex/base/ltfinal.dtx @@ -33,7 +33,7 @@ %<*driver> % \fi \ProvidesFile{ltfinal.dtx} - [2018/04/08 v2.1d LaTeX Kernel (Final Settings)] + [2018/05/11 v2.1e LaTeX Kernel (Final Settings)] % \iffalse \documentclass{ltxdoc} \GetFileInfo{ltfinal.dtx} @@ -650,16 +650,23 @@ % \end{macro} % % \changes{v2.1d}{2018/04/08}{Delay full UTF-8 handling to \cs{everyjob}} +% \changes{v2.18}{2018/05/11}{Make invalit UTF-8 also safe, for legacy filesystem encodings} % \begin{macrocode} \edef\inputencodingname{utf8}% \input{utf8.def} +\let\UTFviii@undefined@err@@\UTFviii@undefined@err +\let\UTFviii@invalid@err@@\UTFviii@invalid@err \let\UTFviii@two@octets@@\UTFviii@two@octets \let\UTFviii@three@octets@@\UTFviii@three@octets \let\UTFviii@four@octets@@\UTFviii@four@octets -%<2ekernel>\long\def\UTFviii@two@octets#1#2{\string#1\string#2} -%<2ekernel>\long\def\UTFviii@three@octets#1#2#3{\string#1\string#2\string#3} -%<2ekernel>\long\def\UTFviii@four@octets#1#2#3#4{\string#1\string#2\string#3\string#4} +%<2ekernel>\def\UTFviii@undefined@err#1{\@gobble#1}% +%<2ekernel>\let\UTFviii@invalid@err\string +%<2ekernel>\let\UTFviii@two@octets\string +%<2ekernel>\let\UTFviii@three@octets\string +%<2ekernel>\let\UTFviii@four@octets\string %<2ekernel>\everyjob\expandafter{\the\everyjob +%<2ekernel>\let\UTFviii@undefined@err\UTFviii@undefined@err@@ +%<2ekernel>\let\UTFviii@invalid@err\UTFviii@invalid@err@@ %<2ekernel>\let\UTFviii@two@octets\UTFviii@two@octets@@ %<2ekernel>\let\UTFviii@three@octets\UTFviii@three@octets@@ %<2ekernel>\let\UTFviii@four@octets\UTFviii@four@octets@@ diff --git a/Master/texmf-dist/source/latex/base/ltvers.dtx b/Master/texmf-dist/source/latex/base/ltvers.dtx index 05f2361b026..cb207695efa 100644 --- a/Master/texmf-dist/source/latex/base/ltvers.dtx +++ b/Master/texmf-dist/source/latex/base/ltvers.dtx @@ -115,7 +115,7 @@ {2018-04-01} % %<*2ekernel> -\def\patch@level{4} +\def\patch@level{5} % \end{macrocode} % \end{macro} % \end{macro} -- cgit v1.2.3