Releases: googlefonts/ufo2ft
Releases · googlefonts/ufo2ft
v3.3.1
- [featureWriters] Support insert marker in the middle of a feature block (#873)
- [cursFeatureWriter] Respect direction suffix when setting lookupflag (#876)
v3.3.0
- Rewrite old kern writer to pull in some changes made in the newer one (#870)
- markFeatureWriter: Support contextual anchors (#869)
- markFeatureWriter: Support contextual ligature anchors (#871)
v3.2.8
- [featureWriters] Ensure CursFeatureWriter comes first, before kerning mark feature writers; in some non-HarfBuzz implementations the GPOS lookup order matters (#864).
- [kernFeatureWriter] Ignore zero-valued class-class kerning pairs when generating variable kern feature as they are no-op (#866).
- Take discrete axes into account when checking for feature compatibility across masters (#867).
v3.2.7
- cursFeatureWriter: Remove stray print()
v3.2.6
- kernFeatureWriter: Support sparse masters (#859)
- cursFeatureWriter: Support multiple entry/exit anchor pairs (#863)
v3.2.5
- Removed unnecessary assertions that may sometime trigger an AssertionError while setting a glyph's right margin in dottedCircle filter (#849).
v3.2.4
- Fix variable anchors when DesignSpace source specifies a layer (#842).
- Update the old kernFeatureWriter2.py to be able to output variable FEA for use when compiling features once per VF (#841, #845).
v3.2.3
[markFeatureWriter] When building variable anchors from designspace sources, don't crash if a non-default, 'sparse' UFO source does not contain some glyph; simply skip it (#840).
v3.2.2
- Make it easier to use variable features by allowing to put them in the default source only (#833).
- [instructionCompiler] When compiling TrueType glyph instructions, round TTGlyph's component transforms with floatToFixedToFloat(precisionBits=14) before computing their hash; the hash stored in the UFO glyph lib, which the computed hash is compared against, was itself computed from compiled (i.e. rounded) values (#814).
v3.2.1
- [BaseIFilter] Fixed performance regression when decomposing composite glyphs in fonts with large number of masters and/or nested components.
We now use a cache to avoid recursing too much when gathering locations from component glyphs (#829).