pkgsrc-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: pkgsrc/fonts/py-fonttools
Module Name: pkgsrc
Committed By: wiz
Date: Sun Oct 18 13:15:01 UTC 2026
Modified Files:
pkgsrc/fonts/py-fonttools: Makefile PLIST distinfo
Log Message:
py-fonttools: update to 4.67.0.
4.67.0 (released 2026-10-14)
----------------------------
- [varLib] Support decreasing design-space axis mappings, via a new keyword-only
``allow_decreasing`` argument to ``models.normalizeValue`` (#3970, #4217, #4243).
- [designspaceLib] Allow partial DesignSpace v5 axis subsets: omitted range attributes
on an ``<axis-subset>`` are taken from the parent axis, as the spec says (#4205).
- [designspaceLib] Fix ``DesignSpaceDocument.normalize()`` for mapped axes: axis
bounds and rule conditions are now normalized from their original values (#4218).
- [designspaceLib] ``splitInterpolable`` and ``splitVariableFonts`` now warn when a
source or instance is dropped because it lies outside the document's own axes,
instead of silently discarding it (#4244).
- [varLib.instancer] Add support for instancing variable COLRv1 fonts (#2699, #4279).
- [varLib.instancer] Apply VVAR vertical-origin deltas to ``VORG``, and use OpenType
rounding for instanced advances and vertical origins (#4221).
- [varLib.instancer] Keep a universal FeatureVariations record when pinning removes
its last condition but other axes remain (#4247).
- [varLib.instancer] Preserve ppem ``Device`` corrections in GDEF, BASE, GPOS and JSTF
instead of asserting on them (#4290).
- [varLib.instancer] Allow requesting an axis's original range on VARC fonts (#4280).
- [varLib.instancer, subset] Fold, remove or remap MATH ``VariationIndex`` devices
when instancing, subsetting the GDEF store or optimizing it (#4288).
- [varLib] Raise ``ValueError: Missing required table fvar`` from ``varLib.mutator``
and the instancer CLI on a static font, instead of a bare ``KeyError`` (#3751, #4300).
- [featureVars] When adding ``rvrn``, also shift lookup indices inside existing
FeatureVariations (#4233). Handle null ``ConditionSet`` and
``FeatureTableSubstitution`` offsets when building, subsetting and instancing
(#4234, #4235). Keep ``FeatureTableSubstitution`` records sorted after merging new
ones into an existing record (#4248).
- [ttLib] Fix FeatureParams (``size``, ``ssXX``, ``cvXX``) in FeatureVariations
alternate feature tables, which failed to compile and round-trip (#3623, #4278).
- [ttLib] Fully decode lazily loaded ligatures, ``SinglePos`` and ``PairPos`` arrays
during recursive decompilation, so ``reorderGlyphs()`` on a lazy font no longer
corrupts or asserts on them (#4231, #4232).
- [VARC] Update the variation-store binary format to follow
harfbuzz/boring-expansion-spec#175: ``SparseVarRegionList.RegionCount`` is uint32,
sparse axes use Offset32 and ``MultiVarData`` items are stored in an INDEX. VARC
fonts built with earlier fontTools versions must be rebuilt (#4219).
- [VARC] Several fixes: derive component conditions from ``conditionIndex`` (#4237),
set the implicit ``scaleY`` when importing XML (#4238), report the font's current
coordinates for components that reset unspecified axes (#4239), and keep inherited
coordinates when drawing CFF2 VARC components (#4236).
- [varLib] ``buildMultiVarData`` accepts flattened per-region vector tuples (#4245).
- [otConverters] Bounds-check CFF2 INDEX count and ``offSize`` on read, raising
``TTLibError`` instead of allocating huge lazy lists (#4220).
- [ttLib] Handle empty packed deltas when ``OPTIMIZE_FONT_SPEED`` is set (#4241).
- [scaleUpem] Scale per-glyph ``VORG`` origins (#4222); fix VARC scaling for static
fonts and condition variations (#4223); don't mutate the shared default CFF
``FontMatrix`` (#4251, #4252).
- [cmap] Fix format 2 compilation when all codes are single-byte (#1524, #4211) or
all single-byte codes map to ``.notdef`` (#4215). Formats 2 and 4 now reject glyph
IDs above 65535 instead of wrapping them (#4226). Split format 14 default UVS
ranges longer than 256 codepoints (#4229). Empty format 12 and 13 subtables
round-trip (#4246).
- [glyf] Use unsigned instruction lengths, so programs of 32768-65535 bytes compile
and decompile correctly (#4227). Keep instructions in zero-contour glyphs (#4228).
- [pens] Fix cubic off-curve detection in ``TTGlyphPointPen`` across contour starts
(#4224). ``Glyph.drawPoints()`` now raises ``NotImplementedError`` for an
all-off-curve cubic contour, which the point pen protocol cannot express (#3191,
#4225). ``RoundingPen`` passes the all-off-curve ``None`` sentinel through
(#4311, #4312).
- [CFF2] Preserve operands when a blend has zero regions (#4240).
- [cffLib] Read CFF font names as Latin-1, matching how they are written (#4253).
Deleting a CFF dict attribute now actually removes it (#2725, #4264).
- [CFF2ToCFF] Fix conversion of fonts with local subroutines (#4258). A CFF2 table
with a single FontDict is now converted to a name-keyed CFF font that keeps its
glyph names (#3890, #4265).
- [subset] Handle a null GDEF variation store (#4230).
- [merge] Support merging fonts that both have a MATH table (#3823, #4257).
- [feaLib] Reject the same mark class used twice in one anchor list (#3628, #4255).
Don't crash on value records whose devices are all NULL (#2396, #4261). Pad a short
OS/2 ``Vendor`` with spaces (#4259).
- [feaLib] Raise ``FeatureLibError`` with a location, instead of a bare Python error,
for: a BASE script list without a matching tag list (#4263), a ``UnicodeRange``
bit outside 0-127 (#4266), a name string that cannot be decoded (#4267), a STAT
axis ``location`` with no or too many values (#4268), and a non-ASCII OS/2
``Vendor`` (#4269).
- [name] Fix the BCP 47 tags of some Mac and Windows language IDs, e.g. ``es`` was
mapped to Mac Estonian (#3733, #4256). ``getDebugName`` prefers the Windows
English name over the Mac one (#3969, #4273).
- [post] Don't crash on a format 2.0 table with ``numGlyphs`` set to 0 (#3060, #4274).
- [VDMX] Recompute ``numRecs`` and ``numRatios`` when compiling (#4293).
- [Silf] Fix compiling a ``Silf`` table that was decompiled from binary (#4294).
- [woff2] Preserve ``minorVersion`` when copying flavor data (#4249, #4250).
- [ttGlyphSet] Compute glyph width lazily for glyf variable fonts without HVAR, so
``.width`` is correct before drawing (#3964, #4260).
- [varLib.interpolatable] Respect designspace source layers (#3951, #4275); fix
``--json`` output with SciPy (#3870, #4276).
- [misc.psLib] Fix tokenizing of escaped parentheses in PostScript strings (#4207).
- [svgLib] Raise ``ValueError`` instead of ``IndexError`` on a truncated path command
(#4254).
- [misc.transform] Preserve the direction of the remaining axis when decomposing a
transform whose first column is zero (#4242).
- [misc.textTools] ``Tag.__ne__`` returns ``NotImplemented`` for unsupported types
(#4305, #4306).
- [misc.dictTools] ``hashdict`` rejects in-place union (``|=``) (#4313, #4314).
- [misc.xmlReader] Close owned input streams when parsing fails (#4298).
- [misc.filesystem] ``WriteZipFS.close()`` can be called more than once (#4309, #4310).
- [EBDT] Keep EBDT/CBDT glyph metrics after probing a missing attribute (#3806,
#4216).
To generate a diff of this commit:
cvs rdiff -u -r1.138 -r1.139 pkgsrc/fonts/py-fonttools/Makefile
cvs rdiff -u -r1.62 -r1.63 pkgsrc/fonts/py-fonttools/PLIST
cvs rdiff -u -r1.109 -r1.110 pkgsrc/fonts/py-fonttools/distinfo
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: pkgsrc/fonts/py-fonttools/Makefile
diff -u pkgsrc/fonts/py-fonttools/Makefile:1.138 pkgsrc/fonts/py-fonttools/Makefile:1.139
--- pkgsrc/fonts/py-fonttools/Makefile:1.138 Fri Oct 16 19:43:55 2026
+++ pkgsrc/fonts/py-fonttools/Makefile Sun Oct 18 13:15:01 2026
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.138 2026/10/16 19:43:55 adam Exp $
+# $NetBSD: Makefile,v 1.139 2026/10/18 13:15:01 wiz Exp $
-DISTNAME= fonttools-4.66.1
+DISTNAME= fonttools-4.67.0
PKGNAME= ${PYPKGPREFIX}-${DISTNAME}
CATEGORIES= fonts python
MASTER_SITES= ${MASTER_SITE_PYPI:=F/FontTools/}
@@ -19,9 +19,9 @@ DEPENDS+= ${PYPKGPREFIX}-zopfli>=0.1.4:.
PYTHON_VERSIONS_INCOMPATIBLE= 311
-# as of 4.66.0
+# as of 4.67.0
# https://github.com/fonttools/fonttools/issues/3660
-# 8 failed, 4898 passed, 66 skipped, 2 xfailed, 28 warnings
+# 8 failed, 5601 passed, 72 skipped, 2 xfailed, 307 warnings
SUBST_CLASSES+= man
SUBST_STAGE.man= pre-configure
Index: pkgsrc/fonts/py-fonttools/PLIST
diff -u pkgsrc/fonts/py-fonttools/PLIST:1.62 pkgsrc/fonts/py-fonttools/PLIST:1.63
--- pkgsrc/fonts/py-fonttools/PLIST:1.62 Thu Sep 3 07:02:00 2026
+++ pkgsrc/fonts/py-fonttools/PLIST Sun Oct 18 13:15:01 2026
@@ -1,15 +1,8 @@
-@comment $NetBSD: PLIST,v 1.62 2026/09/03 07:02:00 adam Exp $
+@comment $NetBSD: PLIST,v 1.63 2026/10/18 13:15:01 wiz Exp $
bin/fonttools-${PYVERSSUFFIX}
bin/pyftmerge-${PYVERSSUFFIX}
bin/pyftsubset-${PYVERSSUFFIX}
bin/ttx-${PYVERSSUFFIX}
-${PYSITELIB}/${WHEEL_INFODIR}/METADATA
-${PYSITELIB}/${WHEEL_INFODIR}/RECORD
-${PYSITELIB}/${WHEEL_INFODIR}/WHEEL
-${PYSITELIB}/${WHEEL_INFODIR}/entry_points.txt
-${PYSITELIB}/${WHEEL_INFODIR}/licenses/LICENSE
-${PYSITELIB}/${WHEEL_INFODIR}/licenses/LICENSE.external
-${PYSITELIB}/${WHEEL_INFODIR}/top_level.txt
${PYSITELIB}/fontTools/__init__.py
${PYSITELIB}/fontTools/__init__.pyc
${PYSITELIB}/fontTools/__init__.pyo
@@ -970,6 +963,9 @@ ${PYSITELIB}/fontTools/varLib/instancer/
${PYSITELIB}/fontTools/varLib/instancer/__main__.py
${PYSITELIB}/fontTools/varLib/instancer/__main__.pyc
${PYSITELIB}/fontTools/varLib/instancer/__main__.pyo
+${PYSITELIB}/fontTools/varLib/instancer/colr.py
+${PYSITELIB}/fontTools/varLib/instancer/colr.pyc
+${PYSITELIB}/fontTools/varLib/instancer/colr.pyo
${PYSITELIB}/fontTools/varLib/instancer/featureVars.py
${PYSITELIB}/fontTools/varLib/instancer/featureVars.pyc
${PYSITELIB}/fontTools/varLib/instancer/featureVars.pyo
@@ -1047,4 +1043,11 @@ ${PYSITELIB}/fontTools/voltLib/parser.py
${PYSITELIB}/fontTools/voltLib/voltToFea.py
${PYSITELIB}/fontTools/voltLib/voltToFea.pyc
${PYSITELIB}/fontTools/voltLib/voltToFea.pyo
+${PYSITELIB}/${WHEEL_INFODIR}/METADATA
+${PYSITELIB}/${WHEEL_INFODIR}/RECORD
+${PYSITELIB}/${WHEEL_INFODIR}/WHEEL
+${PYSITELIB}/${WHEEL_INFODIR}/entry_points.txt
+${PYSITELIB}/${WHEEL_INFODIR}/licenses/LICENSE
+${PYSITELIB}/${WHEEL_INFODIR}/licenses/LICENSE.external
+${PYSITELIB}/${WHEEL_INFODIR}/top_level.txt
man/man1/ttx-${PYVERSSUFFIX}.1
Index: pkgsrc/fonts/py-fonttools/distinfo
diff -u pkgsrc/fonts/py-fonttools/distinfo:1.109 pkgsrc/fonts/py-fonttools/distinfo:1.110
--- pkgsrc/fonts/py-fonttools/distinfo:1.109 Wed Sep 30 10:24:46 2026
+++ pkgsrc/fonts/py-fonttools/distinfo Sun Oct 18 13:15:01 2026
@@ -1,5 +1,5 @@
-$NetBSD: distinfo,v 1.109 2026/09/30 10:24:46 adam Exp $
+$NetBSD: distinfo,v 1.110 2026/10/18 13:15:01 wiz Exp $
-BLAKE2s (fonttools-4.66.1.tar.gz) = 12c8fd19fc582281d4daedb082fba7bc6dcdf663db19861c5216cb14803769a2
-SHA512 (fonttools-4.66.1.tar.gz) = 8678366a3243f67f13c2963ef4fb95ce16b57b64e823db46374527f90184d19782579f0a4e58653f819af00a31927f858ddb59a51b4b33416eb46e2f936b10b3
-Size (fonttools-4.66.1.tar.gz) = 3694174 bytes
+BLAKE2s (fonttools-4.67.0.tar.gz) = bf1856addb0f44e343cce070bdde75b8a00f9d929f4bb10590f92aa8b37a661a
+SHA512 (fonttools-4.67.0.tar.gz) = cdd8b89f3b10008116fbc58a96fa30bf29f13be8a6eeebd6f263afefb3a992ac3571158b0ecbf193be70c3b8a6433e78a975657ace7c72a68fc44569dee9536f
+Size (fonttools-4.67.0.tar.gz) = 3750028 bytes
Home |
Main Index |
Thread Index |
Old Index