added some info about the advspace fix
[latex2e.git] / trunk / doc / ltnews26.tex
blob42e5fe4b98ae2a18e49fc70c69c66dadcc0e3d18
1 % \iffalse meta-comment
3 % Copyright 2016
4 % The LaTeX3 Project and any individual authors listed elsewhere
5 % in this file.
7 % This file is part of the LaTeX base system.
8 % -------------------------------------------
10 % It may be distributed and/or modified under the
11 % conditions of the LaTeX Project Public License, either version 1.3c
12 % of this license or (at your option) any later version.
13 % The latest version of this license is in
14 % http://www.latex-project.org/lppl.txt
15 % and version 1.3c or later is part of all distributions of LaTeX
16 % version 2005/12/01 or later.
18 % This file has the LPPL maintenance status "maintained".
20 % The list of all files belonging to the LaTeX base distribution is
21 % given in the file `manifest.txt'. See also `legal.txt' for additional
22 % information.
24 % The list of derived (unpacked) files belonging to the distribution
25 % and covered by LPPL is defined by the unpacking scripts (with
26 % extension .ins) which are part of the distribution.
28 % \fi
29 % Filename: ltnews26.tex
31 % This is issue 26 of LaTeX News.
33 \documentclass{ltnews}
34 \usepackage[T1]{fontenc}
36 \usepackage{lmodern,url,hologo}
39 \publicationmonth{December}
40 \publicationyear{2016}
42 \publicationissue{26}
44 \begin{document}
46 \maketitle
47 \tableofcontents
49 \rightskip=0pt plus 3em
50 \section{\eTeX{}}
52 In \LaTeX{} News~16 (December 2003) the team announced
53 \begin{quotation}
54 We expect that within the next two years, releases of \LaTeX{} will
55 change modestly in order to run best under an extended \TeX{} engine
56 that contains the \eTeX{} primitives, e.g., \eTeX{} or pdf\TeX{}.
57 \end{quotation}
58 and also said
59 \begin{quotation}
60 Although the current release does not \emph{require} \eTeX{} features, we
61 certainly recommend using an extended \TeX{}, especially if you need to debug
62 macros.
63 \end{quotation}
65 For many years the team have worked on the basis that users will have \eTeX{}
66 available but had not revisited the above statements formally. As of the
67 January 2017 release of \LaTeXe{}, \eTeX{} is \emph{required} to build the
68 format, and attempting to build a format without the extensions will fail.
70 Practically, modern \TeX{} distributions provide the extensions in all engines
71 other than the ``pure'' Knuth \texttt{tex}, and indeed parts of the
72 format-building process already require \eTeX{}, most notably some of the UTF-8
73 hyphenation patterns. As such, there should be no noticeable affect on users of
74 this change.
76 The team expect to make wider use of \eTeX{} within the kernel in future;
77 details will be announced where they impact on end users in a visible way.
79 \section{Default Encodings in \hologo{XeLaTeX} and \hologo{LuaLaTeX}}
80 The default encoding in \LaTeX\ has always been the original
81 127-character encoding OT1. For Unicode based \TeX\ engines, this
82 is not really suitable, and is especially problematic with
83 \hologo{XeLaTeX} as in the major distributions this is built with
84 Unicode base hyphenation patterns in the format. In practice this has
85 not been a major problem as documents use the contributed
86 \textsf{fontspec} package in order to switch to a
87 Unicode encoded font.
89 In this release we are adding TU as a new supported
90 encoding in addition to the previously supported encodings such as OT1
91 and T1. This denotes a Unicode based font encoding. It is essentially
92 the same as the TU encoding that has been on trial with the
93 experimental \texttt{tuenc} option to \textsf{fontspec} for the past
94 year.
96 The \hologo{XeLaTeX} and \hologo{LuaLaTeX} formats will now default
97 to \texttt{TU} encoding and \texttt{lmr} (Latin Modern) family. In the
98 case of \hologo{LuaLaTeX} the contributed \textsf{luaotfload} Lua
99 module will be loaded at the start of each run to enable the loading
100 of OpenType fonts.
102 The \textsf{fontspec} package is being adjusted in a companion release
103 to recognise the new encoding default arrangements.
105 Note that in practice no font supports the full Unicode range, and so
106 TU encoded fonts, unlike fonts specified for T1, may be expected to be
107 incomplete in various ways. In the current release the file
108 \texttt{tuenc.def} that implements the TU encoding-specific commands
109 has made some basic assumptions for (for example) default handling of
110 accent commands, and the set of command names is derived from the
111 command names used for the UTF-8 support in the inputenc package,
112 restricted roughly to the character ranges classically provided by
113 the T1 and TS1 encodings, but is part of a longer term plan seen over
114 recent releases to increase support for Unicode based \TeX\ engines into
115 the core \LaTeX\ support.
119 If for any reason you need to process a document with the previous
120 default OT1 encoding, you may switch encoding in the usual ways, for
121 example
122 \begin{verbatim}
123 \usepackage[OT1]{fontenc}
124 \end{verbatim}
125 or you may roll back all the changes for this release by starting the
126 document with
127 \begin{verbatim}
128 \RequirePackage[2016/03/31]{latexrelease}
129 \end{verbatim}
131 \section{The \textsf{latexbug} package}
133 As explained in more detail
134 \href{https://www.latex-project.org/bugs/}{at the \LaTeX\ Project
135 website},
136 A new package, \textsf{latexbug}, has been produced to help produce
137 test files to accompany bug reports on the core \LaTeX\ distribution.
138 This is being published separately to CTAN at the same time as this
139 release. By using the \textsf{latexbug} package you can easily check
140 that the packages involved in the test are all part of the core
141 release. The \LaTeX\ project can not handle bug reports on contributed
142 packages, which should be directed to the package maintainer as given
143 in the package documentation.
145 \section{Updates to \textsf{amsmath}}
146 The \textsf{amsmath} package has two updates at this release.
147 \begin{itemize}
148 \item The spacing to the left of the \texttt{aligned} and
149 \texttt{gathered} environments has been fixed, the spurious thin
150 space is no longer added by default. Package options control this
151 to revert to the original behaviour where required, see the
152 \textsf{amsldoc} guide for further details.
153 \item The large delimiters around generalised fractions (for example
154 in the \verb|\binom| construct) did not work in previous releases if
155 using Lua\TeX or Xe\TeX\ with OpenType math fonts. This is releated
156 to the lack of specific metrcs for this use in the OpenType Math
157 table. In principle Lua\TeX\ has two additional named metrics
158 to control the delimiters but these are not initialised by default,
159 and in Xe\TeX\ it does not seem possible to make them work at all.
160 So for Unicode \TeX\ systems, a new implementation of
161 \verb|\genfrac| is used at this release that uses \verb|\left\right|
162 internally but parameterised to give spacing as close to the
163 original as possible. The implementation in (pdf)\TeX\ is
164 unaffected.
165 \end{itemize}
167 \section{An addendum to the release changes in 2015}
169 In 2015 we announced the introduction of the roll-back\slash
170 roll-forward concept to manage bug fixes and additions to core
171 \LaTeX{} in a manageable way for the user base. We also announced back
172 then that we now incorporate all fixes from \textsf{fixltx2e} into the
173 kernel (as the old mechanism produced problems instead of improving
174 the situation). Refer to
175 \href{https://www.latex-project.org/news/latex2e-news/ltnews22.pdf}{\texttt{ltnews22.pdf}}
176 for details.
178 One of the fixes from \textsf{fixltx2e} was for a glaring bug in
179 \cs{addvspace} that was originally detected in the mid-nineties and
180 back then added to the \textsf{fixltx2e} support package. In certain
181 situations \cs{addvspace} would result in a page/column break below
182 the baseline of the last line. As a result documents using
183 \cs{flushbottom} would show a clear misalignment (even more prominent
184 when typesetting in two-column mode).
186 Starting with release 2015/01/01 this is now finally corrected already
187 in the kernel and not only in \textsf{fixltx2e}. In nearly all
188 circumstances this will either not make any difference to existing
189 documents or if it does locally impove the visual appearence of that
190 document. It is, however, by the nature of the change also possible
191 that there are changes to the page breaks due to the different break
192 positions introduced by the fix.
194 Thus, for documents that have been written before 2015 and that should
195 be preserved unchanged at all costs you may have to add
196 \begin{verbatim}
197 \RequirePackage[2014/01/01]{latexrelease}
198 \end{verbatim}
199 at the top of the document, to roll back the format to a date before
200 the policy change.
202 \end{document}