Fonttools

Latest version: v4.57.0

Safety actively analyzes 723717 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 19 of 38

4.13.0

----------------------------

- [feaLib/otlLib] Moved lookup subtable builders from feaLib to otlLib; refactored
some common code (2004, 2007).
- [docs] Document otlLib module (2009).
- [glifLib] Fixed bug with some UFO .glif filenames clashing on case-insensitive
filesystems (2001, 2002).
- [colorLib] Updated COLRv1 implementation following changes in the draft spec:
(2008, googlefonts/colr-gradients-spec24).

4.12.1

----------------------------

- [_n_a_m_e] Fixed error in ``addMultilingualName`` with one-character names.
Only attempt to recovered malformed UTF-16 data from a ``bytes`` string,
not from unicode ``str`` (1997, 1998).

4.12.0

----------------------------

- [otlLib/varLib] Ensure that the ``AxisNameID`` in the ``STAT`` and ``fvar``
tables is grater than 255 as per OpenType spec (1985, 1986).
- [docs] Document more modules in ``fontTools.misc`` package: ``filenames``,
``fixedTools``, ``intTools``, ``loggingTools``, ``macCreatorType``, ``macRes``,
``plistlib`` (1981).
- [OS/2] Don't calculate whole sets of unicode codepoints, use faster and more memory
efficient ranges and bisect lookups (1984).
- [voltLib] Support writing back abstract syntax tree as VOLT data (1983).
- [voltLib] Accept DO_NOT_TOUCH_CMAP keyword (1987).
- [subset/merge] Fixed a namespace clash involving a private helper class (1955).

4.11.0

----------------------------

- [feaLib] Introduced ``includeDir`` parameter on Parser and IncludingLexer to
explicitly specify the directory to search when ``include()`` statements are
encountered (1973).
- [ufoLib] Silently delete duplicate glyphs within the same kerning group when reading
groups (1970).
- [ttLib] Set version of COLR table when decompiling COLRv1 (commit 9d8a7e2).

4.10.2

----------------------------

- [sfnt] Fixed ``NameError: SimpleNamespace`` while reading TTC header. The regression
was introduced with 4.10.1 after removing ``py23`` star import.

4.10.1

----------------------------

- [sfnt] Make ``SFNTReader`` pickleable even when TTFont is loaded with lazy=True
option and thus keeps a reference to an external file (1962, 1967).
- [feaLib.ast] Restore backward compatibility (broken in 4.10 with 1905) for
``ChainContextPosStatement`` and ``ChainContextSubstStatement`` classes.
Make them accept either list of lookups or list of lists of lookups (1961).
- [docs] Document some modules in ``fontTools.misc`` package: ``arrayTools``,
``bezierTools`` ``cliTools`` and ``eexec`` (1956).
- [ttLib._n_a_m_e] Fixed ``findMultilingualName()`` when name record's ``string`` is
encoded as bytes sequence (1963).

Page 19 of 38

Links

Releases

Has known vulnerabilities

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.