** New Features in MacTeX-2021 and TeX Live 2021 **
MacTeX
|
Donate
|
FAQ
|
Help
|
TUG
MacTeX-2021
The major change in 2021 is full support for both Arm and Intel processors. Arm binaries are compiled on a machine with an Arm processor and Intel binaries are compiled on a machine with an Intel processor. Then these binaries are combined into a single "universal binary" file. In 2021, these binaries are in /usr/local/texlive/2021/bin/universal-darwin.
The same sources are used on both machines, so Arm and Intel are on a completely equal footing. This will remain true for many years to come.
The only exceptions are biber and xindy, which only have Intel code but run fine using Rosetta. The program biber is compiled by its author rather than by TeX Live volunteers, and is expected to become universal later in the year. The program xindy requires CLisp, and we had trouble compiling CLisp for Arm machines.
Ghostscript now has universal code. The four GUI programs we distribute --- TeXShop, TeX Live Utility, LaTeXiT, and BibDesk --- also have universal code and full support for Big Sur. These programs are all signed, and thus can be included in MacTeX, which is signed and notarized.
X11 is a windowing system created at MIT and used in the Linux world. There is a third party open source project to provide X11 on the Macintosh; see https://www.xquartz.org. This project was updated to support both Arm and Intel in late February, 2021. The previous version only supported Intel.
Four binaries in TeX Live require X11: pdfopen, pdfclose, xdvi-xaw. If you want to use them, install xQuartz. Users with Arm must install the new February version.
Ghostscript is compiled twice, once with X11 support and once without. Thus we provide two binaries for Ghostscript in /usr/local/bin, called gs-X11 and gs-noX11. At install time, we create a link in this location named gs. It points to gs-X11 if the user installed xQuartz, and to gs-noX11 otherwise. If users on Arm machines want to use gs-X11, they should upgrade to the latest xQuartz before installing Ghostscript (or update to the latest xQuartz and then install Ghostscript again).
TeX Live 2021
The following list of TeX Live changes is taken directly from a TUG pretest web page. The TUG page has relative links into the documentation which we removed. Read below for a brief overview. For details, go to http://tug.org.
Notable changes
The main
TeX Live documentation and translations are not
yet fully updated.
As always, there are pervasive updates to packages and programs.
We can't list them all, but here are the major user-visible changes in
the principal programs:
- General
- Donald Knuth's changes for his 2021 tuneup of TeX
and Metafont are incorporated, and available on CTAN as the knuth-dist and knuth-local packages. As
expected, the fixes are for obscure cases and do not affect any behavior
in practice.
- Except in original TeX: if \tracinglostchars is set to 3 or
more, missing characters will result in an error, not just a message in
the log file, and the missing character code will be shown in hex.
- Except in original TeX: a new integer parameter
\tracingstacklevels, if positive, and \tracingmacros
is also positive, causes a prefix indicating the macro expansion depth
to be output on each relevant log line (e.g., ~.. at depth 2).
Also, macro logging is truncated at a depth >= the parameter value.
- kpathsea
- Nothing major; see full Kpathsea news for details.
- aleph
- The Aleph-based LaTeX format, named lamed, has been
removed. The aleph binary itself is still included and supported.
- eptex,
euptex
- Nothing major; see full ChangeLogs for details.
- luatex (full LuaTeX news)
- Lua 5.3.6.
- Callback for nesting level used in \tracingmacros, as
generalized variant of the new \tracingstacklevels.
- Mark math glyphs as protected to prevent processing as text.
- Removed width/ic compensation for traditional math code path.
- metapost (full MetaPost news)
- SOURCE_DATE_EPOCH envvar support for reproducible output.
- Avoid wrong final % in mpto.
- Document -T option, other fixes to manual.
- Value of epsilon changed in binary and decimal modes, so
mp_solve_rising_cubic works as expected.
- pdftex= (full pdfTeX news)
- New primitives \pdfrunninglinkoff and
\pdfrunninglinkon; e.g., for disabling generation of links in
headers and footers.
- Warn instead of aborting when “\pdfendlink ended up in
different nesting level than \pdfstartlink”.
- Dump \pdfglyphtounicode assignments in fmt file.
- Source: poppler support removed, as it was too hard to keep in sync
with upstream. In native TL, pdftex has always used libs/xpdf,
which is cut-down and adapted code from xpdf.
- ptex
(full pTeX news)
- Nothing major.
- xetex (full XeTeX news)
- Fixes for math kerning.
- dvipdfmx (full dvipdfmx news)
- If an image file is not found, exit with bad status.
- Extended special syntax for color support.
- Specials for manipulating ExtGState.
- Compatibility specials pdfcolorstack and pdffontattr.
- Experimental support for dviluatex's extended fnt_def.
- Support new feature of virtual font to fallback Japanese font definition.
- dvips (full dvips news)
- Default PostScript document title is now the basename of the input
file, and can be overridden with the new option -title.
- If an .eps or other image file is not found, exit with bad
status.
- Support new feature of virtual font to fallback Japanese font definition.
- tlmgr (full tlmgr news)
- keep only one backup of the main repository's texlive.tlpdb.
- even more portability across systems and Perl versions.
- tlmgr info reports new lcat-* and rcat-*
fields for local vs. remote Catalogue data.
- full logging of subcommands moved to new log file
texmf-var/web2c/tlmgr-commands.log.