4702 Commits

Author SHA1 Message Date
Cosimo Lupo
39a91156e7
Release 4.9.0 2020-04-29 11:41:14 +01:00
Cosimo Lupo
9bdab32082
remove __nonzero__ as it's only for py2 2020-04-29 11:23:29 +01:00
Cosimo Lupo
dbc9d132c0
transform: make Transform class a NamedTuple
This removes some boilerplate code, and also helps when using static type checkers like mypy.
The typing.NamedTuple class was added with python 3.6 which is our min required python, so we are good.
2020-04-29 11:11:39 +01:00
Cosimo Lupo
c8f591ea8a
subset: remove FeatureVariations table and downgrade to version 0x10000 when empty
https://github.com/fonttools/fonttools/issues/1881#issuecomment-620719882
2020-04-28 18:34:15 +01:00
Khaled Hosny
d24fd71934 [feaLib] Fix building chained alt substitutions
Support was added in db49f20d6b2629e1ba25c4afd3fb60817387f3d6, but there
was only a parser test and no builder test, fix the build and add a
builder test based on the existing parser one.

Fixes https://github.com/fonttools/fonttools/issues/1901
2020-04-28 14:29:50 +02:00
Khaled Hosny
1d2d5b345b
Merge pull request #1897 from khaledhosny/issue-1896
[feaLib] Check lookup index in chaining lookups
2020-04-27 18:38:51 +02:00
Khaled Hosny
e0c49a1d4a [feaLib] Improve exception message 2020-04-27 18:13:18 +02:00
Khaled Hosny
3d6c759ea3 [feaLib] Hide traceback by default on command line
Makes the command line tool a little nicer to use. Adds --traceback
option to show them when needed.
2020-04-27 02:53:32 +02:00
Khaled Hosny
4526e164f1 [feaLib] Check lookup index in chaining lookups
Raise if lookup_index is None, which would happen only of the lookup
referenced belongs to the wrong table. The error message needs to be less
cryptic, though.

Fixes https://github.com/fonttools/fonttools/issues/1896
2020-04-27 02:39:33 +02:00
Cosimo Lupo
8825e19615
Merge pull request #1882 from fonttools/subset-feature-variations
[subset] FeatureVariations subsetting is wrong
2020-04-25 15:20:55 +01:00
David Corbett
036189b80a [agl] Support legacy glyph names
Closes #775.
2020-04-25 07:57:14 -04:00
Khaled Hosny
259e586f5d [feaLib] Ignore superfluous script statements
Setting script that is the same as current language system should make
no effect. This is not documented in the spec, but it is what makeotf
does. This as the effect of preserving lookupflag when set before such a
script statement.

Fixes https://github.com/fonttools/fonttools/issues/1824
2020-04-20 23:45:45 +02:00
Khaled Hosny
6a24c8fed1 [feaLib] Raise for script/language in standalone lookup
They are not allowed per spec and makeotf, but currently we would fail
later with some cryptic error message.
2020-04-20 23:09:53 +02:00
Behdad Esfahbod
cab7d13dc0 [subset] FeatureVariations subsetting is wrong
Fixes https://github.com/fonttools/fonttools/issues/1881
2020-04-20 12:10:05 -07:00
Cosimo Lupo
dfd2ffe751
Bump version: 4.8.1 → 4.8.2.dev0 2020-04-17 18:05:07 +01:00
Cosimo Lupo
6b14e3b223
Release 4.8.1 2020-04-17 18:05:06 +01:00
Cosimo Lupo
5777c2e057
feaLib.builder: skip getAlternateGlyphs if lookup is None in ChainContextSubstBuilder
Fixes https://github.com/googlefonts/fontmake/issues/648
2020-04-17 17:22:45 +01:00
Cosimo Lupo
a6e050ab09
Bump version: 4.8.0 → 4.8.1.dev0 2020-04-16 17:43:56 +01:00
Cosimo Lupo
206f569d48
Release 4.8.0 2020-04-16 17:43:55 +01:00
Cosimo Lupo
17bff73866
Merge pull request #1822 from fonttools/otdata-colr
Define COLR using otData; add builders for COLRv1
2020-04-16 17:28:44 +01:00
Cosimo Lupo
1cbb28acd8
Merge pull request #1870 from anthrotype/fealib-parser-no-glyphnames
feaLib: without glyphNames, warn but don't parse hyphens as ranges
2020-04-16 16:16:29 +01:00
Tom
c70395fbdb
[feaLib] Raise exception when GSUB statement doesn't match a rule. (#1876)
* [feaLib] Raise exception when substitute statement doesnt match any of the rules. Add tests that trigger said exception.
2020-04-16 16:10:03 +01:00
Cosimo Lupo
efd54dca61
fix typo
Thanks dscorbett
7cc4c7eb46 (commitcomment-38317945)
2020-04-06 16:51:20 +01:00
Cosimo Lupo
7cc4c7eb46
cu2qu: clarify DEFAULT_MAX_ERR is relative to EM, Cu2QuPen.max_err is absolute 2020-04-06 13:12:37 +01:00
David Corbett
c97956672e [feaLib] Emit CID ranges with CIDs not glyph names 2020-04-03 19:40:22 -04:00
David Corbett
ec4273bbfd [feaLib] Emit spaces around hyphens in ranges 2020-04-03 17:36:34 -04:00
Cosimo Lupo
40dcd1ebaa
minor: remove unnecessary f'' string 2020-04-03 21:19:01 +01:00
Cosimo Lupo
c1af75b803
feaLib.parser: check that glyph name is actually ambiguous
https://github.com/fonttools/fonttools/pull/1870#discussion_r403259450
2020-04-03 21:17:02 +01:00
Cosimo Lupo
e6dfcb009b
Merge remote-tracking branch 'origin/master' into otdata-colr 2020-04-03 19:32:59 +01:00
Cosimo Lupo
12087afc14
Bump version: 4.7.0 → 4.7.1.dev0 2020-04-03 17:31:22 +01:00
Cosimo Lupo
b5cd63f77a
Release 4.7.0 2020-04-03 17:31:21 +01:00
Cosimo Lupo
0dd76bb98c
cu2qu.cli: try use defcon if ufoLib2 is not installed 2020-04-03 16:58:01 +01:00
Cosimo Lupo
868348c9c0
cu2qu.cli: use multiProcessing.Pool.starmap 2020-04-03 16:45:47 +01:00
Cosimo Lupo
a913431ecd
feaLib.parser: if no glyphNames, treat dash as names, not ranges
But print a warning about the possible ambiguity.

Fixes https://github.com/fonttools/fonttools/issues/1768
2020-04-03 12:42:22 +01:00
Cosimo Lupo
c4aeec87dc
use ufoLib2 for cu2qu.cli and tests
the tests are skipped if ufoLib2 is not installed.
2020-04-01 19:23:57 +01:00
Cosimo Lupo
76cc29dda4
cu2qu: fix up imports for cu2qu.ufo, cli, and related tests 2020-04-01 19:01:32 +01:00
Cosimo Lupo
71b254fcdb
Revert "cu2qu.errors: remove unused exceptions"
This reverts commit 2e51226dedc6a03f3de8a70220e52d0026cc0d95.
2020-04-01 18:49:12 +01:00
Cosimo Lupo
6ebc8249be
Move ufo.py, cli.py, __main__.py to fontTools/cu2qu 2020-04-01 18:46:48 +01:00
Cosimo Lupo
97941ad7a5
cu2qu: restore sub-package folder 2020-04-01 18:31:47 +01:00
Cosimo Lupo
b2788f8656
move cython shadow module to fontTools.misc 2020-03-31 17:42:38 +01:00
Cosimo Lupo
15d8313f13
cu2qu: fix renamed Cu2QuError 2020-03-31 17:29:41 +01:00
Cosimo Lupo
0782b4e4cf
cu2qu: Add missing Apache 2.0 header and copyright notice 2020-03-31 17:09:26 +01:00
Cosimo Lupo
3f414cdb08
cu2qu: remove sub-package, make single module 2020-03-31 13:42:18 +01:00
Cosimo Lupo
c2e8403937
cu2qu: remove from __future__ imports 2020-03-31 13:38:51 +01:00
Cosimo Lupo
00058833f2
Move cu2qu.pens to fontTools.pens.cu2quPen 2020-03-31 13:34:46 +01:00
Cosimo Lupo
080c565b5c
cu2qu: remove __version__ from cu2qu module
use fontTools own version now
2020-03-31 13:25:32 +01:00
Cosimo Lupo
5d5cddfc08
Replace cu2qu.cython shadow module with mock namespace 2020-03-31 13:23:19 +01:00
Cosimo Lupo
2e51226ded
cu2qu.errors: remove unused exceptions 2020-03-31 12:53:17 +01:00
Cosimo Lupo
731b4944a6
cu2qu: fix up imports 2020-03-31 12:48:51 +01:00
Cosimo Lupo
f9a3961c66
cu2qu: move all modules to Lib/fontTools/cu2qu 2020-03-31 12:32:50 +01:00