The third and final LaTeX pre-release for 2021-06-01 is available for testing

A few days ago we submitted a new LaTeX development format to CTAN and by now this should be available to all users using MiKTeX or TeX Live (on any operating system).

Because of the freeze for TeXLive 2021 we have decided to move the release date for LaTeX from May to June, to give everybody enough time for testing the new release features.

Main features of the second pre-release for 2021-06-01

The final pre-release contains all the features, corrections and enhancements that we intend to release in June. The more important ones are listed in the draft publication of LaTeX2e News Issue 33. A full list is given in the changes.txt files that are part of the distribution. Notable improvements 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;
  • extending the general hook management system to paragraphs and commands as discussed below.

Extending the general hook management system to paragraphs and commands

In addition to the bug fixes and enhancements, the next release also extends LaTeX’s general hook management system by supporting paragraph hooks executed at the beginning and end of every paragraph, documented in ltpara-doc.pdf.

This functionality is essential for the production of automatically tagged PDF documents and resolves one of the major obstacles in this area. It is thus an important step in our multi-year journey towards accessible and well-tagged PDF documents. See articles in PDF, Tagging, Accessibility.

Even though this new functionality may not be of direct interest to most users (as long as it is not yet used for processing accessible PDF) it is nevertheless important that it gets tested to ensure that there aren’t any conflicts with existing packages that also try to manipulate the paragraph processing in one way or the other. So please make use of the development format whenever you have a chance, see below for how to do this with ease.

The release will also support generic hooks on all user-level commands; in theory that is, in practice there are some restrictions as explained in the documentation in ltcmdhooks-doc.pdf.

Again this is an important step towards tagged PDF as it will help integrating the necessary code in various user-level commands without extensive code alterations that would otherwise be required. In addition this functionality is also of interest to packages that for one or the other reason currently patch code of other packages or from the kernel as the hook management helps to do this in controlled ways avoiding typical incompatibilities between packages.

Kernel support for the new LaTeX PDF management

We also added the necessary support in the LaTeX kernel and uploaded the new LaTeX PDF management — so far as a separate package for testing. This code is another important step towards well-tagged PDF documents as it provides backend-independent interfaces to central PDF dictionaries, tools to create annotations, form Xobjects, to embed files, and to handle PDF standards. During a test phase this code is provided through an external package named pdfmanagement-testphase. Please help with the testing here too. You can access the documentation through texdoc pdfmanagement-testphase.

Outlook

This is the final prerelease, the same code (modulo any corrections found during testing) is planned as the official June 2021 release.

Please help with the testing

We are issuing this final pre-release now in the hope that you will help us by making sure that all the enhancements and fixes we have provided are safe and that they do not have any undesired side effects, so please help with the testing if you can.

This development format allows you to test the upcoming LaTeX release scheduled for 2021-06-01 with your documents or packages. Such testing is particularly important for package maintainers to verify that changes to the core LaTeX haven’t introduced incompatibilities with existing code. We try to identify any such problems beforehand but such an undertaking is necessarily incomplete, which is why we are asking for user testing.

Besides developers, we also ask ordinary users to try out the new release, because the more people that test the new format, the higher the chances that any hidden problems are identified before the final release in June hits the streets.

Processing your documents with the pre-release is straightforward. All you have to do is to replace the invocation command by appending -dev to the executable, e.g., on the command line you would run

pdflatex-dev myfile    or    lualatex-dev myfile    or    xelatex-dev myfile

instead of using pdflatex, lualatex or xelatex. If you use an integrated editing environment, then it depends on the system how to configure it to use an alternative format; but in any case the necessary modification should be straightforward.

If you encounter any issue with this prerelease, please open a bug report at https://github.com/latex3/latex2e/issues following the guidelines given there (especially providing a processable test document).

In case of incompatibility problems with the prerelease it is, of course, acceptable to report them to us, even if \RequirePackage{latexbug} tells you to report them elsewhere (it would help if you do that too).

Enjoy — Frank