Subject: CVS commit: pkgsrc/fonts/py-fonttools
From: Adam Ciarcinski
Date: 2023-03-08 14:52:58
Message id: 20230308135258.81B11FA90@cvs.NetBSD.org

Log Message:
py-fonttools: updated to 4.39.0

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()

Files:
RevisionActionfile
1.84modifypkgsrc/fonts/py-fonttools/Makefile
1.45modifypkgsrc/fonts/py-fonttools/PLIST
1.62modifypkgsrc/fonts/py-fonttools/distinfo