General Answer
latex-dev
is a pre-release of LaTeX from the development branch and made available on CTAN.
It allows users of current TeXLive and MikTeX distributions to test their documents and code against the upcoming LaTeX release with ease.
To use it you only need to compile with a binary with the addition -dev
attached. For all major engines/latex variants such executables have been created and added to the distribuations. For example, if you run one of
pdflatex-dev file
lualatex-dev file
xelatex-dev file
you will see in the log
LaTeX2e <YYYY-MM-DD> pre-release-XX
instead of the standard LaTeX2e <YYYY-MM-DD> patch level X
.
The first line will also says something like this
This is pdfTeX, .... (preloaded format=pdflatex-dev 2022.4.10)
^^^^^^^
You will also see that a number of files from the tex/latex-dev
folder will be used:
.../tex/latex-dev/base/book.cls
.../tex/latex-dev/graphics/graphicx.sty
Files which are not in tex/latex-dev
will be taken from the standard locations:
.../tex/latex/graphics-def/pdftex.def
More information:
https://www.latex-project.org/news/2019/09/01/LaTeX-dev-format/
New dev versions and the changes they contained are announced on our website.
Update 2021-05-06
The newest latex-dev
announces itself as
LaTeX2e <2021-05-01> pre-release-2 (develop 2021-5-5 branch)
L3 programming layer <2021-02-18>
Details about the changes can be found at https://www.latex-project.org/news/2021/05/05/latex-dev-2021-2/
Please report issues that you find with the dev-release in the latex2e github so that they can be corrected
Main changes are
- better support for copy-and-paste from LaTeX-generated PDF documents by including glyphtounicode mappings;
- support for producing several footnote marks to one footnote with the help of the \footref command;
- additional support for package and class option lists that use key/value syntax;
- additional hooks for paragraph and commands.
Update 2020-07-23
The newest latex-dev
announces itself as
LaTeX2e <2020-10-01> pre-release-7 (develop 2020-7-22 branch)
L3 programming layer <2020-07-17> xparse <2020-03-03>
Details about the changes can be found at https://www.latex-project.org/news/2020/07/22/latex-dev-2020-10-1b/
The main changes are
The new hooks can for example be used to add code to environments more easily (but don't try this with figure, it won't like to be boxed ...).
\documentclass{article}
\usepackage{tcolorbox}
\AddToHook{env/quote/begin}{\begin{tcolorbox}[colframe=red]\sffamily}
\AddToHook{env/quote/end}{\end{tcolorbox}}
\begin{document}
\begin{quote}
An important quote
\end{quote}
\end{document}
The new hook system requires a number of internal changes and it does break with some packages. Problematic are packages which patch core commands like \document
, \enddocument
, \begin
, and packages which use low-level commands to patch e.g. the shipout box. A number of packages with such problems have already been identified (e.g. pgf looses some shadings, xecjk redefines \document and so doesn't compile, similar with tex4ht) and we are in contact with the authors to resolve the clashes.
Please report issues that you find with the dev-release in the latex2e github so that they can be corrected
Update 2020-01-21
The newest latex-dev
announces itself as
LaTeX2e <2020-02-01> pre-release-3 (develop 2020-1-16 branch)
The main changes are extensions to the NFSS (the New Font Selection Mechanism for LaTeX):
Many modern fonts available these days offer additional font faces, e.g., small caps italics or a condensed font series, etc. To better support these fonts NFSS was extended by incorporating ideas from the mweights, fontaxes and fontspec packages. In addition all symbols formerly provided through the textcomp package are now available out of the box and the use of \oldstylenums got improved.
The release also fixed a number of smaller bugs. A detailed description of the new features and the bug fixes can be found in a draft version of ltnews31 which you can access via texdoc ltnews31 if the pre-release is installed on your computer.
Update 2019-11-21
The newest latex-dev
announces itself as
LaTeX2e <2020-02-01> pre-release-2 (development 2019-11-21 branch)
The main change is that it preloads a large part of the expl3 code. This will reduce the loading time for the unicode engines when using fontspec
, but also benefit pdflatex
documents using xparse or expl3.
lualatex-dev
is now based on the new luahbtex
engine. This allows to use the harfbuzz library to shape fonts. This will improve the shaping of various scripts.
Update 2019-09-20
The newest latex-dev
version now contains also latex-amsmath-dev
and latex-tools-dev
. The format annouces itself as
LaTeX2e <2019-10-01> pre-release-3 (development 2019-9-18 branch)
The main change is that a number of commands have been made robust. TeXLive user should get the packages through autoinstall
, MiKTeX user should check with the package manager and install the packages.
First LaTeX-dev
One example of an upcoming feature was the better UTF8-handling. With pdflatex-dev
labels with non-ascii-chars in the name no longer error:
\documentclass{article}
\begin{document}
\section{Straße}\label{sec:straße}
\ref{sec:straße}
\end{document}