12089 Commits

Author SHA1 Message Date
pyup-bot
7d97a65199 Update uharfbuzz from 0.41.1 to 0.42.0 2024-11-11 16:49:05 +01:00
Behdad Esfahbod
dafb6d26a0
Merge pull request #3679 from fonttools/cff2-specializer-maxStack
[CFF2] specializer fix stack overflow
2024-11-08 10:51:04 -07:00
Behdad Esfahbod
bb7a29e81a [cffLib.specializer] Fix more stack-overflow opportunity
I think it's solid now.
2024-11-06 19:13:35 -05:00
Behdad Esfahbod
2e96d81b05 [specializer_test] Add a test for blend stack-use after specialize() 2024-11-06 18:25:03 -05:00
Behdad Esfahbod
3a909a07fa [specializer_test] Parametrize copy/pasta tests 2024-11-06 17:49:52 -05:00
Behdad Esfahbod
49bcd19bd9 [specializer_test] Remove Python2 remnants 2024-11-06 16:23:58 -05:00
Cosimo Lupo
18d4b17070
Merge pull request #3682 from ftCLI/reorder-glyphs
[ttLib.reorderGlyphs] Update CFF table charstrings and charset
2024-11-06 09:59:01 +01:00
ftCLI
1cb153b2c5 Remove unused imports from reorderGlyphs.py 2024-11-05 17:42:26 +01:00
ftCLI
2906e4043d Add test for reorderGlyphs function with CFF fonts 2024-11-05 17:39:57 +01:00
ftCLI
a238ed2c31 Remove '.notdef' glyph handling code 2024-11-05 17:10:39 +01:00
Behdad Esfahbod
776e1ce132 [cffLib.specializer] Fix CFF argument stack overflow
The code was always merging at least two blends, which was causing
stack-overflow with a test font of ours. Move the overflow check
earlier to catch that.

Fixes https://github.com/fonttools/fonttools/issues/3676
2024-11-05 10:38:00 -05:00
ftCLI
ea59c39e21 Ensure '.notdef' is first glyph and update CFF table 2024-11-05 16:36:36 +01:00
خالد حسني (Khaled Hosny)
e04dfaab53
Merge pull request #3680 from fonttools/dependabot/github_actions/pypa/gh-action-pypi-publish-1.11.0
Bump pypa/gh-action-pypi-publish from 1.10.3 to 1.11.0
2024-11-05 01:55:20 +02:00
dependabot[bot]
61ebf0dc79
Bump pypa/gh-action-pypi-publish from 1.10.3 to 1.11.0
Bumps [pypa/gh-action-pypi-publish](https://github.com/pypa/gh-action-pypi-publish) from 1.10.3 to 1.11.0.
- [Release notes](https://github.com/pypa/gh-action-pypi-publish/releases)
- [Commits](https://github.com/pypa/gh-action-pypi-publish/compare/v1.10.3...v1.11.0)

---
updated-dependencies:
- dependency-name: pypa/gh-action-pypi-publish
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-04 19:20:12 +00:00
Behdad Esfahbod
614d9ebf6b [cffLib.specializer] Minor refactor 2024-11-04 13:52:28 -05:00
Behdad Esfahbod
2e8a67696f [interpolatable_test] Don't test CFF2 on Python 3.8
It's mysteriously failing:
https://github.com/fonttools/fonttools/pull/3670#issuecomment-2445055495
2024-11-04 11:13:42 -07:00
Behdad Esfahbod
b5373bf5d2 [varLib.interpolatable] Support CFF2 input font
Fixes https://github.com/fonttools/fonttools/issues/3666
2024-11-04 11:13:42 -07:00
Behdad Esfahbod
885d7c1ecb [varLib.interpolatable] Warn if only one master was found
Motivated by https://github.com/fonttools/fonttools/issues/3666
2024-11-04 11:13:42 -07:00
خالد حسني (Khaled Hosny)
269321387b
Merge pull request #3678 from fonttools/pyup-scheduled-update-2024-11-04
Scheduled weekly dependency update for week 44
2024-11-04 18:02:25 +02:00
pyup-bot
bdcbb07185 Update glyphslib from 6.9.2 to 6.9.3 2024-11-04 16:49:10 +01:00
pyup-bot
6017c6b3fc Update uharfbuzz from 0.41.0 to 0.41.1 2024-11-04 16:49:09 +01:00
pyup-bot
3f3d9263d1 Update ufolib2 from 0.16.0 to 0.16.1 2024-11-04 16:49:08 +01:00
Behdad Esfahbod
20b47fc989 [CFF2] Lift uint16 VariationSore.length limitation
Fixes https://github.com/fonttools/fonttools/issues/3673
2024-10-30 09:15:49 -06:00
Behdad Esfahbod
9372554dce [cffLib] Typo 2024-10-29 10:31:42 -07:00
Behdad Esfahbod
7a0062a718 [cffLib.specializer] Add cmdline to specialize a CFF2 font 2024-10-29 08:25:20 -06:00
Garret Rieger
201f02c2c2 [subset] Fix lint. 2024-10-24 00:30:38 +00:00
Garret Rieger
edaab1fa2f [subset] Add tests for UVS + cmap14 subsetting. 2024-10-23 22:19:06 +00:00
Garret Rieger
4a38610072 [subset] consider variation selectors subsetting cmap14
cmap14 subsetting code was not considering variation selectors in the input unicode set when deciding which variant glyphs to keep. This updates subsetting to only keeps variant glyphs if their variation selector code point is in the input unicodes set.
2024-10-23 21:39:33 +00:00
Behdad Esfahbod
4ad6b0db13 [CFF2ToCFF] Map charset to CIDs
This seems to fix the case of ttx not handling the results.
I *think* this fixes the rest of the issues I've been seeing
with this conversion.
2024-10-23 11:36:26 -06:00
Behdad Esfahbod
c384709c0a [CFF2ToCFF] Convert FD's to CFF1
Makes ftview like the font, but still not ttx.
2024-10-23 11:36:26 -06:00
Behdad Esfahbod
87ae6ba224 [CFF2ToCFF] Remove wrong and unnecessary argument
This had no effect though, since file is None.
2024-10-23 11:36:26 -06:00
Behdad Esfahbod
4360969baa [cffLib.transforms] Handle case of one FD in remove_unused_subrs 2024-10-23 11:36:26 -06:00
Behdad Esfahbod
2225c84a1b [CFFToCFF2] Allow fdIndex==0
Oops.
2024-10-23 11:36:26 -06:00
Behdad Esfahbod
7fadfa4e81 Revert "refactor: pass isfinal argument spelled-out not a number"
This reverts commit 6d65a87301b6c746ae0ec1dc1cf0df75c0c21d63.

https://github.com/fonttools/fonttools/pull/3669#issuecomment-2428475144
2024-10-22 01:34:48 -06:00
Robin
6d65a87301 refactor: pass isfinal argument spelled-out not a number 2024-10-22 01:28:05 -06:00
Robin
505c6e1fa3 set isfinal to true to enable xml parser to free resources 2024-10-22 01:28:05 -06:00
Cosimo Lupo
42c1a52c5f bump requirements.txt to use wheels for python 3.13 2024-10-21 09:49:09 +02:00
Cosimo Lupo
34a87e45fa [ci] ensure x86_64 wheels still get build usign old GH macos-13 runner image
the latest macos runners 14 and above use arm64 platform by default.
2024-10-21 09:47:43 +02:00
Cosimo Lupo
e14868ed69
Merge pull request #3656 from Hoolean/python-3.13
Build, test, and label support for Python 3.13
2024-10-21 09:43:25 +02:00
Cosimo Lupo
b4a276b30f
Merge branch 'main' into python-3.13 2024-10-18 15:13:18 +02:00
خالد حسني (Khaled Hosny)
729b3d2960
Merge pull request #3661 from fonttools/pyup-scheduled-update-2024-10-14
Scheduled weekly dependency update for week 41
2024-10-16 10:49:13 +03:00
Cosimo Lupo
dd8d80a4f2
Merge pull request #3561 from drj11/drj11/unicode-hex
Check unicode elements have required hex attribute
2024-10-15 16:39:12 +02:00
pyup-bot
ce3b747699 Update glyphslib from 6.9.0 to 6.9.2 2024-10-14 17:49:06 +02:00
pyup-bot
246cc85c29 Update ufo2ft from 3.3.0 to 3.3.1 2024-10-14 17:49:06 +02:00
pyup-bot
5143420bf9 Update black from 24.8.0 to 24.10.0 2024-10-14 17:49:05 +02:00
pyup-bot
1eef3f2596 Update sphinx_rtd_theme from 3.0.0 to 3.0.1 2024-10-14 17:49:05 +02:00
pyup-bot
c79cb346e6 Update sphinx from 8.0.2 to 8.1.3 2024-10-14 17:49:04 +02:00
خالد حسني (Khaled Hosny)
e2c22371d5
Merge pull request #3659 from fonttools/issue-3658
[removeOverlaps] Fix CFF CharString width
2024-10-12 10:57:02 +03:00
Khaled Hosny
101ff1508c [removeOverlaps] Pass None to T2CharStringPen if widths equals defaultWidthX 2024-10-12 01:45:32 +03:00
Khaled Hosny
40b525c1e3 [removeOverlaps] Fix CFF CharString width
The width argument of `T2CharStringPen()` is inserted directly into the
CharString program, so it must be relative to Private.nominalWidthX, but
CharString.width is a calculated absolute value.

Some implementations, notably Adobe’s, will use the width from the CFF
CharString instead of the one from hmtx table.

Fixes https://github.com/fonttools/fonttools/issues/3658
2024-10-12 01:22:17 +03:00