5963 Commits

Author SHA1 Message Date
Behdad Esfahbod
68b0509711 [varLib.AligningMerger] Try harder to make it work as a standalone merger 2022-08-04 13:22:00 -06:00
Behdad Esfahbod
287ac43212 [varLib.AligningMerger] Make it work as a standalone merger 2022-08-04 12:30:44 -06:00
Behdad Esfahbod
8fe672c6a2 Add misc.visitor.py
Fixes https://github.com/fonttools/fonttools/issues/1959
2022-07-31 12:27:09 -06:00
Garret Rieger
a33972da62 Use new uharfbuzz repack_with_tag if available. 2022-07-29 21:48:25 +00:00
Behdad Esfahbod
21d22ae30f
Merge pull request #2716 from fonttools/interpolatable-opener
Interpolatable opener
2022-07-29 14:42:58 -06:00
Behdad Esfahbod
c1dc2f3c81
Merge pull request #2711 from fonttools/iup-cython
Compile a couple of modules with Cython when available
2022-07-29 11:21:47 -06:00
Behdad Esfahbod
3e6b9c8c08 [varLib.interpolatable] Open .glyphs files as well 2022-07-29 11:19:27 -06:00
Behdad Esfahbod
10aecc029a [varLib.interpolatable] Support reading .designspace file 2022-07-29 11:19:22 -06:00
Cosimo Lupo
cf00320403
Merge pull request #2714 from fonttools/NotANone
[varLib.merge] fix NameError: 'NotANone'
2022-07-29 12:54:31 +01:00
Cosimo Lupo
c6b2ba5286 [varLib.merge] fix NameError: 'NotANone'
Fixes https://github.com/fonttools/fonttools/issues/2712
2022-07-29 13:05:26 +02:00
Behdad Esfahbod
97df4a130c [symfont/momentsPen] Cythonize greenPen / momentsPen
Makes varLib.interpolatable 3x faster.
2022-07-28 15:35:51 -06:00
Behdad Esfahbod
22fd6f3eeb [momentsPen] Remove manual editions
Move OpenContourError to basePen.
2022-07-28 14:01:31 -06:00
Behdad Esfahbod
aa509b6df2 [varLib.interpolatable] Fix mix of space & tab 2022-07-28 14:01:15 -06:00
Behdad Esfahbod
5d9677038b [varLib.iup] Compile with Cython when available
Even with no annotations, makes it ~35% faster.
2022-07-28 12:35:02 -06:00
Just van Rossum
e4c5c842f1 Allow features to be added to VF without building GDEF; warn when GDEF would be needed but isn't requested. This fixes #2694 2022-07-20 11:28:29 +02:00
Cosimo Lupo
32aa8eafcb [otBase] fix AttributeError when uharfbuzz < 0.23.0 and 'repack' missing
Fixes #2671
2022-07-19 14:46:50 +02:00
Cosimo Lupo
dbe60eae80 [subset/svg] use broader ImportError instead of ModuleNotFoundError
Fixes https://github.com/fonttools/fonttools/issues/2696
2022-07-18 11:32:44 +02:00
Behdad Esfahbod
4139d8914a [statisticsPen] By default report all glyphs 2022-07-12 16:39:56 -06:00
Just van Rossum
6c6245e382 Add missing required argument. Fixes #2692 2022-07-12 13:52:17 -06:00
Just van Rossum
8c19828d7e
[varLib.merge] Fix for error during error reporting (#2689)
* work around error during error reporting, as reported in #2688

* Use stack[-1] (the table tag) as per feedback
2022-07-12 20:59:29 +02:00
Cosimo Lupo
02a669ed63 Bump version: 4.34.4 → 4.34.5.dev0 2022-07-07 23:38:32 +02:00
Cosimo Lupo
5af9db16b6 Release 4.34.4 2022-07-07 23:38:32 +02:00
Just van Rossum
1c8efee98d fix typo in COLR merge 2022-07-07 16:00:43 +02:00
Jany Belluz
ce89a0301f Bump version: 4.34.3 → 4.34.4.dev0 2022-07-07 13:59:20 +01:00
Jany Belluz
e80acefdd1 Release 4.34.3 2022-07-07 13:59:20 +01:00
Jany Belluz
b5f9499d2d [designspaceLib] Don't make up bad PS names when no STAT data
See GitHub issue: https://github.com/googlefonts/ufo2ft/issues/630
2022-07-07 11:56:51 +01:00
Cosimo Lupo
4d2e5351a7 Bump version: 4.34.2 → 4.34.3.dev0 2022-07-06 17:39:36 +01:00
Cosimo Lupo
73d10f8cd9 Release 4.34.2 2022-07-06 17:39:35 +01:00
Cosimo Lupo
a08140dc76 [varStore/subset] correctly handle NO_VARIATION_INDEX when subsetting varidxes
otherwise GDEF/GPOS.remap_device_varidxes may fail with KeyError attempting to map a NO_VARIATION_INDEX
2022-07-06 17:29:00 +01:00
Cosimo Lupo
1ec0ac4877 Bump version: 4.34.1 → 4.34.2.dev0 2022-07-06 16:53:57 +01:00
Cosimo Lupo
a216401867 Release 4.34.1 2022-07-06 16:53:57 +01:00
Cosimo Lupo
eab9aa5a22 instancer: use_NO_VARIATION_INDEX=False when optimizing {H,V}VAR VarStore
Same as we do in subsetter, see e01f643a8e
2022-07-06 16:36:05 +01:00
Cosimo Lupo
c011652101 Bump version: 4.34.0 → 4.34.1.dev0 2022-07-06 11:58:47 +01:00
Cosimo Lupo
78dee2bad5 Release 4.34.0 2022-07-06 11:58:46 +01:00
Cosimo Lupo
5ca57917c6 fix UFOFormatVersion tuple's __str__ in python 3.11
python 3.11 doesn't like when a mixin overrides a dunder method like __str__, for some reasons it keep using Enum.__str__, see
https://github.com/fonttools/fonttools/pull/2655
2022-07-06 11:13:55 +01:00
Nikolaus Waxweiler
ce38db6562
Merge pull request #2673 from daltonmaag/instancer-set-bits
Set RIBBI bits when cutting instances
2022-07-06 11:01:08 +01:00
Cosimo Lupo
2a07518b70
Merge pull request #2660 from fonttools/variable-colr
[varLib] add support for building variable COLR from set of master COLRv1 tables
2022-07-06 10:55:50 +01:00
Cosimo Lupo
46e780ffa2
Merge pull request #2668 from googlefonts/hb_repack
Update how table packing falls back to fontTools from harfbuzz.
2022-07-06 10:49:39 +01:00
Cosimo Lupo
b63df64f8d
Merge pull request #2675 from dscorbett/fealib-ignore-names-2-6
[feaLib] Let the parser set nameIDs 1 through 6
2022-07-06 10:42:27 +01:00
Nikolaus Waxweiler
2cd4f7e688 Use NameID enum 2022-07-06 10:40:27 +01:00
Nikolaus Waxweiler
87bf2a866d Update docstring 2022-07-06 10:37:22 +01:00
Cosimo Lupo
cdc7cc3cc4 COLR merger be cleverer and only deepcopy effectively reused layers
instead of blindly copying them all like in previous commit.
2022-07-05 20:37:54 +01:00
Cosimo Lupo
c27483fa54 [instancer] add --no-recalc-bounds CLI option 2022-07-05 19:02:21 +01:00
Cosimo Lupo
8a9f16d129 COLRVariationMerger: copy destination layers to ensure they are unique and can be modified in place 2022-07-05 17:53:39 +01:00
Nikolaus Waxweiler
e84bee9cd9 Set bits only after updating names 2022-07-05 16:10:15 +01:00
Nikolaus Waxweiler
2c773441cf Remove logging 2022-07-05 16:09:37 +01:00
Nikolaus Waxweiler
16d899a2be Apply RIBBI bits to all kinds of fonts 2022-07-05 15:45:44 +01:00
Cosimo Lupo
e5029801d2 support merging COLR masters with 'sparse' glyphsets or different layer count
There is no longer a requirement that all the masters have exactly the same base color glyphs as the default masters. Similarly, it's no longer required that all masters' LayerLists have the same total count of layers. It is sufficient that, for a base color glyph in the default master, a non-default master may (or may not) contain one with the same name and same effective number of layers (which in turn can be laid out differently in the respective LayerLists).
This provides greater flexibility when working with variable font project with sparse glyph sets.
2022-07-05 00:11:12 +01:00
Cosimo Lupo
a3f402e036 move build_n_ary_tree to misc/treeTools.py module
so I can import from varLib.merger as well
2022-07-04 23:08:14 +01:00
Cosimo Lupo
5d52124e49 varLib.errors: allow to give extra context as to where an error occurs in the optional 'cause' 2022-07-04 18:52:20 +01:00