| liblouis 3.38.0 has been released |
| |
| The liblouis developer team is proud to announce the liblouis release |
| 3.38.0. The release is available for download at: |
| |
| https://github.com/liblouis/liblouis/releases |
| |
| Introduction |
| ============ |
| |
| Liblouis is an open-source braille translator and back-translator. It |
| features support for computer, literary and math braille, supports |
| contracted and uncontracted translation for many, many languages [1]_. |
| It plays an important role in an open source accessibility stack and is |
| used by screenreaders such as NVDA, Orca and JAWS. A companion project |
| liblouisutdml [2]_ deals with formatting of braille. |
| |
| Noteworthy changes in this release |
| ================================== |
| |
| This release is highlighted by a new Norwegian grade 3 contraction |
| table, the result of Lars Bjørndal's work implementing the revised |
| Braille Authority rules. The Swedish tables have been thoroughly renewed |
| and now also cover Sami and Elfdalian. Malayalam has been updated to |
| comply with the new Bharati Braille 2026 rules. Several security |
| vulnerabilities were fixed, and the documentation was improved. |
| |
| I'd like to thank everybody for helping to bring liblouis forward. |
| |
| For a detailed list of all the changes refer to the list of closed |
| issues [3]_. |
| |
| Bug fixes |
| --------- |
| |
| - Fix several memory safety issues: |
| |
| - a heap-buffer-overflow in ``back_passDoAction`` thanks to Justin |
| Stitt; |
| - a null pointer dereference in ``pattern_compile_expression``, a |
| buffer overflow in ``_lou_logWidecharBuf``, null pointer |
| dereferences in ``_lou_compileTranslationRule`` and |
| ``_lou_compileDisplayRule``, a segfault in ``lou_compileString``, |
| and missing length validation in ``_lou_backTranslate``, all |
| thanks to FuzzAnything. |
| |
| Braille table improvements |
| -------------------------- |
| |
| - Major renewal of Swedish 6- and 8-dot tables, now reorganized to |
| share common data. New tables for Sami and Elfdalian are also |
| included, thanks to InsynScandinavia. |
| - Updated Malayalam table with Bharati Braille 2026 rules, thanks to |
| Jake Kyle. |
| - Improvements to Hungarian forward and backward translation thanks to |
| Attila Hammer. |
| - Fix UK Grade 2 back-translation incorrectly expanding letter |
| combinations such as ``bl`` and ``ac`` when they appear in the middle |
| of a word, thanks to Kara Louise. |
| - Fix a long-standing typo with ``begnum mt`` in all 5 Danish Grade 2 |
| tables, thanks to Bue Vester-Andersen. |
| - Add a Norwegian table for Spanish text (``es-no.utb``), thanks to |
| Bert Frees. |
| - Add a Norwegian grade 3 contraction table implementing the revised |
| Braille Authority rules, along with missing grade 2 contractions and |
| minor fixes, thanks to Lars Bjørndal and Hans Anton Ålien. |
| - Replace Estonian computer braille table ``et.ctb`` with the newer |
| ``et-g0.utb``, thanks to Taniel Kirikal and Bert Frees. |
| |
| Other changes |
| ------------- |
| |
| - Updated documentation to clarify the differences between ``digit``, |
| ``litdigit`` and ``numsign`` opcodes, thanks to Anthony Tibbs. |
| |
| Backwards incompatible changes |
| ------------------------------ |
| |
| - The table compiler now rejects uppercase virtual dots (``A``..~F~); |
| only the lowercase forms (``a``..~f~) are valid as documented. |
| |
| New, renamed or removed tables |
| ------------------------------ |
| |
| New |
| ~~~ |
| |
| - ``es-no.utb`` |
| - ``ovd-6g0.utb`` |
| - ``ovd-8g0.utb`` |
| - ``smi-6g0.utb`` |
| - ``smi-8g0.utb`` |
| - ``sv-6common.uti`` |
| - ``sv-6g0d.utb`` |
| - ``sv-6g0p.utb`` |
| - ``sv-6g1.uti`` |
| - ``sv-6g1d.ctb`` |
| - ``sv-6g2.uti`` |
| - ``sv-6g2d.ctb`` |
| - ``sv-8g0d.utb`` |
| - ``sv-8g0n.utb`` |
| - ``sv-8g1.uti`` |
| - ``sv-8g1d.ctb`` |
| - ``sv-8g1n.ctb`` |
| - ``sv-8g2.uti`` |
| - ``sv-8g2d.ctb`` |
| - ``sv-8g2n.ctb`` |
| - ``sv-phon.uti`` |
| |
| Renamed |
| ~~~~~~~ |
| |
| - None |
| |
| Removed |
| ~~~~~~~ |
| |
| - ``et.ctb`` |
| |
| - use ``et-g0.utb`` instead |
| |
| Next release |
| ============ |
| |
| The next release will be published on August 31 2026 so please keep up |
| the excellent work and keep those improvements coming. |
| |
| Share and Enjoy! |
| |
| – Christian Egli, on behalf of the liblouis developers |
| |
| Footnotes |
| ========= |
| |
| .. [1] |
| https://github.com/liblouis/liblouis/tree/master/tables |
| |
| .. [2] |
| https://github.com/liblouis/liblouisutdml |
| |
| .. [3] |
| https://github.com/liblouis/liblouis/milestone/48?closed=1 |