The MathJax team is pleased to announce version 3.1 of MathJax, released earlier today. This is a feature release that includes a number of API improvements, new extensions, and updates to the assistive tools, as described below. It also includes several bug fixes.
See the individual issues and pull requests linked below, as well as the What’s new in v3.1 section of the MathJax documentation, for more details.
Also note that the demos in the node examples have been updated and expanded to include examples of using a simplified interface for MathJax in server-side node applications, MathJax with Puppeteer, and MathJax with jsdom.
New Features in this Release
- New
textmacros
extension for handling some macros in text-mode. (#509) - Add
safe
extension and component. (#514) - New German localization for speech output using the expression explorer.
- Updated options within the accessibility contextual menu. (#505)
- Allow MathML verification options to be specified in the input jax. (#519)
- Add enable/disable options to document handlers for a11y and menu. (#499)
- Add configuration options to
noundefined
extension. (#507) - Fix problems with
mtextInheritFont
, and provide newmtextFont
option. (mathjax/MathJax#2189) - Make
formatError
a configuration option for tex input jax. (#483) - Improve
startup.promise
so it is always valid. (mathjax/MathJax#2307) - Add functions to manage math items within a given container. (#351)
- General improvements to input/output errors. (#491)
- Allow MathML verification options to be specified in the input jax. (#519)
- Update string processing to handle SMP unicode blocks better. (#504)
- Add TeX error as
data-mjx-error
, similar to compile/typeset errors. (#490)
File Location Changes
- Normalize extension names to all lowercase with no underscores. (#485)
- Remove MathItem
bbox
property. (#495) - Move
output/common/BBox.ts
to util directory. (#494) - Move
output/common/CssStyles.ts
toutil/StyleList.ts
. (#493)
Bug Fixes in this Release
- Fix LiteDOM comments and add support for DOCTYPE. (#523)
- Remove ids from assistive MathML to avoid duplicates. (#525)
- Fix SRE source location to work in node-main and components. (#521)
- Don’t replace stylesheet unnecessarily. (mathjax/MathJax#2454)
- Properly inherit
scriptminsize
andscriptsizemultiplier
. (#515) - Fix processing of
texClass
for multi-character<mi>
elements. (#503) - Fix
node-main
to be able to load SRE more easily. (#479) - Fix problems with
texClass
. (#512) - Handle
classList
when elements don’t have it. (mathjax/MathJax#2411) - Make
\underset
explicitly turn off movablelimits. (mathjax/MathJax#2460) - Make
\boldsymbol\partial
work properly. (mathjax/MathJax#2417) - Fix issue with
\overbrace
in SVG output. (mathjax/MathJax#2402) - Fix processing of root directory under Windows. (mathjax/MathJax#2486)
- Allow spaces after \begin, \end, and \ref when finding math delimiters. (mathjax/MathJax#2494)
- Fix problem with maction when the math is converted from a string. (mathjax/MathJax#2490)
- Fix Unicode mapping of \ncong (mathjax/MathJax#2497)
- Remove extra remapping of stretchy characters (mathjax/MathJax#2497)
Availability of 3.1.0
Although version 3.1.0 was released earlier today, it may take a day or two for the new version to propagate to the various CDN network computers, so you may not see v3.1.0 immediately if you are loading mathjax using a generic mathjax@2
URL. You should be able to obtain it immediately if you use the full version mathjax@3.1.0
.
You may also have a cached version in your browser, so may need to either clear the browser cache, or relaunch your browser (or both) in order to get the latest version (the cached version should expire in about a week, depending on the CDN being used).
Note that it is possible for some files to be updated before others, so it may be the case that users of websites that load extensions (either explicitly or by autoloading TeX packages) may get mixed versions for until the CDN versions stabilize, which should be within a day. If you are loading one of the combined components (e.g., tex-chml.js
), this is less likely to be an issue, and if you are loading a component ending in -full
it is even less likely to occur.
Version 3.1.0 is available immediately from npm and GitHub for use in node applications.