14 Commits

Author SHA1 Message Date
Behdad Esfahbod
60126435df [iup] Work around cython bug
Fixes https://github.com/fonttools/fonttools/issues/3282

Ref https://github.com/cython/cython/issues/3928
2023-09-28 16:39:03 -06:00
Behdad Esfahbod
b14268a23c [iup] Remove copy/pasta 2023-09-28 12:30:10 -06:00
Behdad Esfahbod
623f3f14be [iup] Micro-optimize 2023-04-22 15:07:03 -06:00
Behdad Esfahbod
afd4695d26 [iup] Fix cython tests 2023-04-22 14:49:25 -06:00
Behdad Esfahbod
e92c79e0e8 [iup] Micro-optimize cython 2023-04-22 14:34:41 -06:00
Cosimo Lupo
0df4997661
prevent cython.compiled raise AttributeError if cython not properly installed
It's possible sometimes that 'import cython' does not fail but then 'cython.compiled' raises AttributeError.
It actually happened in our internal production environment...

Similar issue to https://github.com/pydantic/pydantic/pull/573 and https://github.com/ipython/ipython/issues/13294
2023-03-02 17:43:38 +00:00
Nikolaus Waxweiler
d584daa8fd Blacken code 2022-12-13 11:26:36 +00:00
Behdad Esfahbod
e494b118c4 [varLib.iup] Document API 2022-08-16 14:07:43 -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
Behdad Esfahbod
0d7d7d4e11 [varLib.iup] Rewrite force-set conditions & limit DP lookback length
This does two things:

Fixes forced-set computation, which was wrong in multiple ways.
Debugged it. Is solid now... Famous last words.

Speeds up DP time by limiting DP lookback length. For Noto Sans,
IUP time drops from 23s down to 9s, with only a slight size increase
in the final font. This basically turns the algorithm from O(n^3) into
O(n).
2022-06-20 17:09:36 -06:00
Nikolaus Waxweiler
68a5ceac6d varLib: Remove py23 imports 2019-08-10 15:39:02 +01:00
Nikolaus Waxweiler
01328213c7 Remove __future__ imports 2019-08-09 12:20:13 +01:00
Behdad Esfahbod
d258333007 [iup] Fix comment 2018-09-27 17:41:09 -04:00
Behdad Esfahbod
f284b733a9 [varLib] Move IUP code into fontTools.varLib.iup 2017-10-15 18:16:01 -04:00