wpt
wpt copied to clipboard
Bump fonttools from 4.33.2 to 4.37.3 in /tools
Bumps fonttools from 4.33.2 to 4.37.3.
Release notes
Sourced from fonttools's releases.
4.37.3
- Fix arguments in calls to (glyf) glyph.draw() and drawPoints(), whereby offset wasn't correctly passed down; this fix also exposed a second bug, where lsb and tsb were not set (#2824, #2825, adobe-type-tools/afdko#1560).
4.37.2
- [subset] Keep CPAL table and don't attempt to prune unused color indices if OT-SVG table is present even if COLR table was subsetted away; OT-SVG may be referencing the CPAL table; for now we assume that's the case (fonttools/fonttools#2814, fonttools/fonttools#2815).
- [varLib.instancer] Downgrade GPOS/GSUB version if there are no more FeatureVariations after instancing (fonttools/fonttools#2812).
- [subset] Added
--no-lazyto optionally load fonts eagerly (mostly to ease debugging of table lazy loading, no practical effects) (fonttools/fonttools#2807).- [varLib] Avoid building empty COLR.DeltaSetIndexMap with only identity mappings (fonttools/fonttools#2803).
- [feaLib] Allow multiple value record types (by promoting to the most general format) within the same PairPos subtable; e.g. this allows variable and non variable kerning rules to share the same subtable. This also fixes a bug whereby some kerning pairs would become unreachable while shapiong because of premature subtable splitting (fonttools/fonttools#2772, fonttools/fonttools#2776).
- [feaLib] Speed up
VarScalarby caching models for recurring master locations (fonttools/fonttools#2798).- [feaLib] Optionally cythonize
feaLib.lexer, speeds up parsing FEA a bit (fonttools/fonttools#2799).- [designspaceLib] Avoid crash when handling unbounded rule conditions (fonttools/fonttools#2797).
- [post] Don't crash if
postlegacy format 1 is malformed/improperly used (fonttools/fonttools#2786)- [gvar] Don't be "lazy" (load all glyph variations up front) when TTFont.lazy=False (fonttools/fonttools#2771).
- [TTFont] Added
normalizeLocationmethod to normalize a location dict from the font's defined axes space (also known as "user space") into the normalized (-1..+1) space. It appliesavarmapping if the font contains anavartable (fonttools/fonttools#2789).- [TTVarGlyphSet] Support drawing glyph instances from CFF2 variable glyph set (fonttools/fonttools#2784).
- [fontBuilder] Do not error when building cmap if there are zero code points (fonttools/fonttools#2785).
- [varLib.plot] Added ability to plot a variation model and set of accompaning master values corresponding to the model's master locations into a pyplot figure (fonttools/fonttools#2767).
- [Snippets] Added
statShape.pyscript to draw statistical shape of a glyph as an ellips (requires pycairo) (https://github.com/fonttools/fonttools/commit/baecd8850b878b1cc5ccf140d884754c4b8d2e9b).- [TTVarGlyphSet] implement drawPoints natively, avoiding going through SegmentToPointPen (fonttools/fonttools#2778).
- [TTVarGlyphSet] Fixed bug whereby drawing a composite glyph multiple times, its components would shif; needed an extra copy (fonttools/fonttools#2774).
4.37.1
- [subset] Fixed regression introduced with v4.37.0 while subsetting the VarStore of
HVARandVVARtables, whereby anAttributeError: subset_varidxeswas thrown because an apparently unused import statement (with the side-effect of dynamically binding thatsubset_varidxesmethod to the VarStore class) had been accidentally deleted in an unrelated PR (#2769, #2773).- [pens] Added
cairoPen(#2768).- [gvar] Read
gvarmore lazily by not parsing all of theglyftable (#2771).- [ttGlyphSet] Make
drawPoints(pointPen)method work for CFF fonts as well via adapter pen (#2770).4.37.0
- [varLib.models] Reverted PR fonttools/fonttools#2717 which added support for "narrow tents" in v4.36.0, as it introduced a regression (fonttools/fonttools#2764, fonttools/fonttools#2765).
It will be restored in upcoming release once we found a solution to the bug.- [cff.specializer] Fixed issue in charstring generalizer with the
blendoperator (fonttools/fonttools#2750, fonttools/fonttools#1975).- [varLib.models] Added support for extrapolation (fonttools/fonttools#2757, fonttools/fonttools#671).
- [ttGlyphSet] Ensure the newly added
_TTVarGlyphSetinherits from_TTGlyphSetto keep backward compatibility with existing API (fonttools/fonttools#2762).- [kern] Allow compiling legacy kern tables with more than 64k entries (https://github.com/fonttools/fonttools/commit/d21cfdede57e1de8d50f1757f3b377a2c4a2033c).
- [visitor] Added new visitor API to traverse tree of objects and dispatch based on the attribute type: cf.
fontTools.misc.visitorandfontTools.ttLib.ttVisitor. AddedfontTools.ttLib.scaleUpemmodule that uses the latter to change a font's units-per-em and scale all the related fields accordingly (fonttools/fonttools#2718, fonttools/fonttools#2755).4.36.0
- [varLib.models] Use a simpler model that generates narrower "tents" (regions, master supports) whenever possible: specifically when any two axes that actively "cooperate" (have masters at non-zero positions for both axes) have a complete set of intermediates.
The simpler algorithm produces fewer overlapping regions and behaves better with respect to rounding at the peak positions than the generic solver, always matching intermediate masters exactly, instead of maximally 0.5 units off. This may be useful when 100% metrics compatibility is desired (#2218, #2717).- [feaLib] Remove warning when about
GDEFnot being built when explicitly not requested; don't build one unconditonally even when not requested (#2744, also works around #2747).- [ttFont]
TTFont.getGlyphSetmethod now supports selecting a location that represents an instance of a variable font (supports both user-scale and normalized axes coordinates via thenormalized=Falseparameter). Currently this only works for TrueType-flavored variable fonts (#2738).4.35.0
- [otData/otConverters] Added support for 'biased' PaintSweepGradient start/end angles to match latest COLRv1 spec (#2743).
- [varLib.instancer] Fixed bug in
_instantiateFeatureVariationswhen at the same time pinning one axis and restricting the range of a subsequent axis; the wrong axis tag was being used in the latter step (as the records' axisIdx was updated in the preceding step but looked up using the old axes order in the following step) (#2733, #2734).- [mtiLib] Pad script tags with space when less than 4 char long (#1727).
- [merge] Use
'.'instead of'#'in duplicate glyph names (#2742).- [gvar] Added support for lazily loading glyph variations (#2741).
- [varLib] In
build_many, we forgot to pass oncolr_layer_reuseparameter to thebuildmethod (#2730).
... (truncated)
Changelog
Sourced from fonttools's changelog.
4.37.3 (released 2022-09-20)
- Fix arguments in calls to (glyf) glyph.draw() and drawPoints(), whereby offset wasn't correctly passed down; this fix also exposed a second bug, where lsb and tsb were not set (#2824, #2825, adobe-type-tools/afdko#1560).
4.37.2 (released 2022-09-15)
- [subset] Keep CPAL table and don't attempt to prune unused color indices if OT-SVG table is present even if COLR table was subsetted away; OT-SVG may be referencing the CPAL table; for now we assume that's the case (#2814, #2815).
- [varLib.instancer] Downgrade GPOS/GSUB version if there are no more FeatureVariations after instancing (#2812).
- [subset] Added
--no-lazyto optionally load fonts eagerly (mostly to ease debugging of table lazy loading, no practical effects) (#2807).- [varLib] Avoid building empty COLR.DeltaSetIndexMap with only identity mappings (#2803).
- [feaLib] Allow multiple value record types (by promoting to the most general format) within the same PairPos subtable; e.g. this allows variable and non variable kerning rules to share the same subtable. This also fixes a bug whereby some kerning pairs would become unreachable while shapiong because of premature subtable splitting (#2772, #2776).
- [feaLib] Speed up
VarScalarby caching models for recurring master locations (#2798).- [feaLib] Optionally cythonize
feaLib.lexer, speeds up parsing FEA a bit (#2799).- [designspaceLib] Avoid crash when handling unbounded rule conditions (#2797).
- [post] Don't crash if
postlegacy format 1 is malformed/improperly used (#2786)- [gvar] Don't be "lazy" (load all glyph variations up front) when TTFont.lazy=False (#2771).
- [TTFont] Added
normalizeLocationmethod to normalize a location dict from the font's defined axes space (also known as "user space") into the normalized (-1..+1) space. It appliesavarmapping if the font contains anavartable (#2789).- [TTVarGlyphSet] Support drawing glyph instances from CFF2 variable glyph set (#2784).
- [fontBuilder] Do not error when building cmap if there are zero code points (#2785).
- [varLib.plot] Added ability to plot a variation model and set of accompaning master values corresponding to the model's master locations into a pyplot figure (#2767).
- [Snippets] Added
statShape.pyscript to draw statistical shape of a glyph as an ellips (requires pycairo) (baecd88).- [TTVarGlyphSet] implement drawPoints natively, avoiding going through SegmentToPointPen (#2778).
- [TTVarGlyphSet] Fixed bug whereby drawing a composite glyph multiple times, its components would shif; needed an extra copy (#2774).
4.37.1 (released 2022-08-24)
- [subset] Fixed regression introduced with v4.37.0 while subsetting the VarStore of
HVARandVVARtables, whereby anAttributeError: subset_varidxeswas thrown because an apparently unused import statement (with the side-effect of dynamically binding thatsubset_varidxesmethod to the VarStore class) had been accidentally deleted in an unrelated PR (#2679, #2773).- [pens] Added
cairoPen(#2678).
... (truncated)
Commits
8bc00a6Release 4.37.315e41caUpdate changelog [skip ci]e8efe98Explicitly add codecov token to action, see codecov/codecov-action#5576e6b86d[ttGlyphSet] Add comment to clarify the testf658ca0Merge pull request #2825 from fonttools/issue2824fa4a5f3Add test cased0f4133Fix arguments in calls to (glyf) glyph.draw() and glyph.drawPoints(); this fi...796c1f1Merge pull request #2810 from fonttools/pyup-scheduled-update-2022-09-12b929953Bump version: 4.37.2 → 4.37.3.dev01f9e6ebRelease 4.37.2- Additional commits viewable in compare view
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot mergewill merge this PR after your CI passes on it@dependabot squash and mergewill squash and merge this PR after your CI passes on it@dependabot cancel mergewill cancel a previously requested merge and block automerging@dependabot reopenwill reopen this PR if it is closed@dependabot closewill close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)