Skip to content

Commit

Permalink
py-fonttools: updated to 4.39.0
Browse files Browse the repository at this point in the history
4.39.0 (released 2023-03-06)
----------------------------

- [mtiLib] Optionally add `Debg` debug info for MTI feature builds
- [ttx] Support reading input file from standard input using special `-` character,
  similar to existing `-o -` option to write output to standard output
- [cython] Prevent ``cython.compiled`` raise AttributeError if cython not installed
  properly
- [OS/2] Guard against ZeroDivisionError when calculating xAvgCharWidth in the unlikely
  scenario no glyph has non-zero advance
- [subset] Recompute xAvgCharWidth independently of --no-prune-unicode-ranges,
  previously the two options were involuntarily bundled together
- [fontBuilder] Add ``debug`` parameter to addOpenTypeFeatures method to add source
  debugging information to the font in the ``Debg`` private table
- [name] Make NameRecord `__lt__` comparison not fail on Unicode encoding errors
- [featureVars] Fixed bug in ``overlayBox``
- [glyf] Added experimental support for cubic bezier curves in TrueType glyf table, as
  outlined in glyf v1 proposal
  https://github.com/harfbuzz/boring-expansion-spec/blob/main/glyf1-cubicOutlines.md
- Added new qu2cu module and related qu2cuPen, the reverse of cu2qu for converting
  TrueType quadratic splines to cubic bezier curves
- [glyf] Added experimental support for reading and writing Variable Composites/Components
  as defined in glyf v1 spec proposal
  https://github.com/harfbuzz/boring-expansion-spec/blob/main/glyf1-varComposites.md.
- [pens]: Added `addVarComponent` method to pen protocols' base classes, which pens can implement
  to handle varcomponents (by default they get decompo
- [misc.transform] Added DecomposedTransform class which implements an affine transformation
  with separate translate, rotation, scale, skew, and transformation-center components
- [sbix] Ensure Glyph.referenceGlyphName is set; fixes error after dumping and
  re-compiling sbix table with 'dupe' glyphs
- [feaLib] Be cleverer when merging chained single substitutions into same lookup
  when they are specified using the inline notation
- [instancer] Clamp user-inputted axis ranges to those of fvar
- [otBase/subset] Define ``__getstate__`` for BaseTable so that a copied/pickled 'lazy'
  object gets its own OTTableReader to read from; incidentally fixes a bug while
  subsetting COLRv1 table containing ClipBoxes on python 3.11
- [sbix] Handle glyphs with "dupe" graphic type on compile correctly
- [glyf] ``endPointsOfContours`` field should be unsigned! Kudos to behdad for
  spotting one of the oldest bugs in FT. Probably nobody has ever dared to make
  glyphs with more than 32767 points...
- [feaLib] Fixed handling of ``ignore`` statements with unmarked glyphs to match
  makeotf behavior, which assumes the first glyph is marked
- Reformatted code with ``black`` and enforce new code style via CI check
- [feaLib] Sort name table entries following OT spec prescribed order in the builder
- [cu2quPen] Add Cu2QuMultiPen that converts multiple outlines at a time in
  interpolation compatible way; its methods take a list of tuples arguments
  that would normally be passed to individual segment pens, and at the end it
  dispatches the converted outlines to each pen
- [reverseContourPen/ttGlyphPen] Add outputImpliedClosingLine option
- [gvar] Avoid expanding all glyphs unnecessarily upon compile
- [scaleUpem] Fixed bug whereby CFF2 vsindex was scaled; it should not
- [designspaceLib] Add DS.getAxisByTag and refactor getAxis
- [unicodedata] map Zmth<->math in ot_tag_{to,from}_script
- [woff2] Support encoding/decoding OVERLAP_SIMPLE glyf flags
- [instancer] Update OS/2 class and post.italicAngle when default moved (L4)
- Dropped support for Python 3.7 which reached EOL, fontTools requires 3.8+.
- [instancer] Fixed instantiateFeatureVariations logic when a rule range becomes
  default-applicable
- [ttLib] Add main to ttFont and ttCollection that just decompile and re-compile the
  input font
- [featureVars] Insert 'rvrn' lookup at the beginning of LookupList, to work around bug
  in Apple implementation of 'rvrn' feature which the spec says it should be processed
  early whereas on macOS 10.15 it follows lookup order
- [instancer/mutator] Remove 'DSIG' table if present.
- [svgPathPen] Don't close path in endPath(), assume open unless closePath()
  • Loading branch information
adam committed Mar 8, 2023
1 parent 4d7095e commit 24a1603
Show file tree
Hide file tree
Showing 3 changed files with 32 additions and 7 deletions.
4 changes: 2 additions & 2 deletions fonts/py-fonttools/Makefile
@@ -1,6 +1,6 @@
# $NetBSD: Makefile,v 1.83 2022/11/14 09:58:45 adam Exp $
# $NetBSD: Makefile,v 1.84 2023/03/08 13:52:58 adam Exp $

DISTNAME= fonttools-4.38.0
DISTNAME= fonttools-4.39.0
PKGNAME= ${PYPKGPREFIX}-${DISTNAME}
CATEGORIES= fonts python
MASTER_SITES= ${MASTER_SITE_PYPI:=F/FontTools/}
Expand Down
27 changes: 26 additions & 1 deletion fonts/py-fonttools/PLIST
@@ -1,4 +1,4 @@
@comment $NetBSD: PLIST,v 1.44 2022/11/14 09:58:45 adam Exp $
@comment $NetBSD: PLIST,v 1.45 2023/03/08 13:52:58 adam Exp $
bin/fonttools-${PYVERSSUFFIX}
bin/pyftmerge-${PYVERSSUFFIX}
bin/pyftsubset-${PYVERSSUFFIX}
Expand Down Expand Up @@ -169,9 +169,11 @@ ${PYSITELIB}/fontTools/misc/__init__.pyo
${PYSITELIB}/fontTools/misc/arrayTools.py
${PYSITELIB}/fontTools/misc/arrayTools.pyc
${PYSITELIB}/fontTools/misc/arrayTools.pyo
${PYSITELIB}/fontTools/misc/bezierTools.c
${PYSITELIB}/fontTools/misc/bezierTools.py
${PYSITELIB}/fontTools/misc/bezierTools.pyc
${PYSITELIB}/fontTools/misc/bezierTools.pyo
${PYSITELIB}/fontTools/misc/bezierTools.so
${PYSITELIB}/fontTools/misc/classifyTools.py
${PYSITELIB}/fontTools/misc/classifyTools.pyc
${PYSITELIB}/fontTools/misc/classifyTools.pyo
Expand Down Expand Up @@ -340,6 +342,9 @@ ${PYSITELIB}/fontTools/pens/pointPen.pyo
${PYSITELIB}/fontTools/pens/qtPen.py
${PYSITELIB}/fontTools/pens/qtPen.pyc
${PYSITELIB}/fontTools/pens/qtPen.pyo
${PYSITELIB}/fontTools/pens/qu2cuPen.py
${PYSITELIB}/fontTools/pens/qu2cuPen.pyc
${PYSITELIB}/fontTools/pens/qu2cuPen.pyo
${PYSITELIB}/fontTools/pens/quartzPen.py
${PYSITELIB}/fontTools/pens/quartzPen.pyc
${PYSITELIB}/fontTools/pens/quartzPen.pyo
Expand Down Expand Up @@ -376,6 +381,23 @@ ${PYSITELIB}/fontTools/pens/ttGlyphPen.pyo
${PYSITELIB}/fontTools/pens/wxPen.py
${PYSITELIB}/fontTools/pens/wxPen.pyc
${PYSITELIB}/fontTools/pens/wxPen.pyo
${PYSITELIB}/fontTools/qu2cu/__init__.py
${PYSITELIB}/fontTools/qu2cu/__init__.pyc
${PYSITELIB}/fontTools/qu2cu/__init__.pyo
${PYSITELIB}/fontTools/qu2cu/__main__.py
${PYSITELIB}/fontTools/qu2cu/__main__.pyc
${PYSITELIB}/fontTools/qu2cu/__main__.pyo
${PYSITELIB}/fontTools/qu2cu/benchmark.py
${PYSITELIB}/fontTools/qu2cu/benchmark.pyc
${PYSITELIB}/fontTools/qu2cu/benchmark.pyo
${PYSITELIB}/fontTools/qu2cu/cli.py
${PYSITELIB}/fontTools/qu2cu/cli.pyc
${PYSITELIB}/fontTools/qu2cu/cli.pyo
${PYSITELIB}/fontTools/qu2cu/qu2cu.c
${PYSITELIB}/fontTools/qu2cu/qu2cu.py
${PYSITELIB}/fontTools/qu2cu/qu2cu.pyc
${PYSITELIB}/fontTools/qu2cu/qu2cu.pyo
${PYSITELIB}/fontTools/qu2cu/qu2cu.so
${PYSITELIB}/fontTools/subset/__init__.py
${PYSITELIB}/fontTools/subset/__init__.pyc
${PYSITELIB}/fontTools/subset/__init__.pyo
Expand Down Expand Up @@ -815,6 +837,9 @@ ${PYSITELIB}/fontTools/varLib/instancer/__init__.pyo
${PYSITELIB}/fontTools/varLib/instancer/__main__.py
${PYSITELIB}/fontTools/varLib/instancer/__main__.pyc
${PYSITELIB}/fontTools/varLib/instancer/__main__.pyo
${PYSITELIB}/fontTools/varLib/instancer/featureVars.py
${PYSITELIB}/fontTools/varLib/instancer/featureVars.pyc
${PYSITELIB}/fontTools/varLib/instancer/featureVars.pyo
${PYSITELIB}/fontTools/varLib/instancer/names.py
${PYSITELIB}/fontTools/varLib/instancer/names.pyc
${PYSITELIB}/fontTools/varLib/instancer/names.pyo
Expand Down
8 changes: 4 additions & 4 deletions fonts/py-fonttools/distinfo
@@ -1,5 +1,5 @@
$NetBSD: distinfo,v 1.61 2022/11/14 09:58:45 adam Exp $
$NetBSD: distinfo,v 1.62 2023/03/08 13:52:58 adam Exp $

BLAKE2s (fonttools-4.38.0.zip) = d6f2340439520bb05d3a27dc5a9555a16ac47e1f99ae550532d2a962545e6872
SHA512 (fonttools-4.38.0.zip) = 4c37d180c8c1bba2d3d1c30ab3425e4416d53cc7d94cf61a0d41a8d4fd2cc3eb10fc389022bffd4f09736dcb8624ed7107f7fabfdcc22a1069c3bbe74067f6d9
Size (fonttools-4.38.0.zip) = 5071980 bytes
BLAKE2s (fonttools-4.39.0.zip) = 0132eb7e4f8a6849b189f0fca3ddebde0e68bed85106d44e9b99700e8bd0a73b
SHA512 (fonttools-4.39.0.zip) = 0beecdf0fde033efc941854522c8a028daa50ba4687a0c033bd21dc28c87c911a3962d92e1dab438f66d7e4f4037507da92a76c2b81ec200d1616217a1a83468
Size (fonttools-4.39.0.zip) = 5150942 bytes

0 comments on commit 24a1603

Please sign in to comment.