|
0952bc0a
|
2025-09-26T09:10:28
|
|
[subset] de-duplicate features (#5494)
|
|
54ab8f0d
|
2025-09-15T18:20:59
|
|
[repacker] make repacker object ids stable.
Prior to this change the object id for a vertex in the repacker graph is it's position in the topological ordering. As a result after each sorting the object ids change. This decouples the topological sorting from the object id assignments. A separate ordering list is retained. This simplifies handling around object ids which no longer needs to account for them shifting, and improves performance by eliminating the step of reassigned link object ids after each sort.
|
|
d6343fa3
|
2025-09-13T13:38:47
|
|
[instancer/varstore] Update test expectations
|
|
aa58b43d
|
2025-09-12T14:24:41
|
|
[subset] Introduce HB_SUBSET_FLAGS_RETAIN_NUM_GLYPHS. (#5547)
Used in conjunction with retain gids, when set the num glyphs from the input font will be preserved. Empty glyphs will be inserted as necessary to maintain the num glyphs value. Put under experimental for now.
|
|
c9480db9
|
2025-09-12T12:22:17
|
|
[instancer/varstore] Add a heuristic to speed up optimization
|
|
6dadd846
|
2025-09-12T18:37:30
|
|
Re-disable fonttools comparison for update_def_wght.tests
|
|
0f1dab0f
|
2025-09-12T11:43:21
|
|
[instancer/varstore] More gain_from_merging optimization (#5543)
* [instancer/varstore] More gain_from_merging optimization
* [tests] Re-enable a test that was disabled until an issue fixed
See comment.
|
|
77d07304
|
2025-09-02T14:40:51
|
|
[subset] fix HVAR encoding width (#5523)
|
|
b7c55efe
|
2025-08-26T00:28:12
|
|
[subset] Fix shaping behaviour when pruning empty mark sets
See https://github.com/harfbuzz/harfbuzz/issues/5499
|
|
cd49b14b
|
2025-07-29T14:32:26
|
|
[subset] add more aggressive pruning for MarkLigPos and MarkMarkPos (#5434)
Remove lig/mark glyphs without defined anchor points after subsetting
|
|
879c4ac7
|
2025-07-24T14:13:16
|
|
[subset] MarkBasePos: remove base glyphs with empty base record
BaseRecord could become empty if all anchor offsets for retained mark
classes are null
|
|
47089fe7
|
2025-05-28T17:10:22
|
|
Big misc changes
- Make geometry types into templates taking float or double.
- Changes to paint() transform elimination.
- Add font->has_nonzero_coords and use it across.
- Extensions to avar processing for otherwise invalid mappings.
|
|
8eb2f07c
|
2025-05-26T13:21:25
|
|
Merge branch 'main' into HVF
|
|
fac64e58
|
2025-05-23T18:15:41
|
|
[instancer] add a test which checks calculation of vmtx tsb during CFF2 instancing.
|
|
a13fd9ae
|
2025-05-21T12:23:19
|
|
Merge branch 'main' into HVF
|
|
eeabc29c
|
2025-05-17T11:24:51
|
|
[test/subset] Fix test-runner when ots is present
|
|
3e122d9d
|
2025-05-16T17:32:45
|
|
Disable OTS on the cmap4 overflow test case.
The test file has been stripped of most tables to avoid checking in a very large font (since it has a high number of codepoints), which causes OTS to fail on missing required tables.
|
|
4e767271
|
2025-05-14T23:17:54
|
|
Add a test checks we can recover from cmap4 overflow.
|
|
de974288
|
2025-05-07T16:42:06
|
|
Merge branch 'main' into HVF
|
|
21a67df4
|
2025-05-06T15:41:12
|
|
[run-tests.py] Clean up file descriptors
|
|
aef3df50
|
2025-04-20T00:37:24
|
|
Merge branch 'main' into HVF
|
|
efcb7d3d
|
2025-04-11T23:34:06
|
|
[subset] close unicodes over bidi mirror variants during subsetting.
Fixes #5281. Does the closure by default, but I've introduced a new flag and option to disable this behaviour since some users may want to get the minimal set if they know they don't need the mirrored variants.
|
|
204cc5bc
|
2025-04-07T14:11:11
|
|
Merge branch 'main' into HVF
|
|
f09c4d6d
|
2025-04-06T15:54:21
|
|
[test/subset] Fix a regular expression
|
|
1f055939
|
2025-04-06T15:39:19
|
|
[test/subset] Massage more
|
|
d8f00171
|
2025-04-06T15:33:25
|
|
[test/subset] black
|
|
cc065cf2
|
2025-04-06T15:33:08
|
|
[test/subset] Better report passed tests
|
|
c60067c6
|
2025-04-06T15:25:58
|
|
[test/subset] See if this fixes CI
|
|
6b2563ff
|
2025-04-06T15:05:25
|
|
Merge branch 'main' into HVF
|
|
aa6a37de
|
2025-04-06T14:13:18
|
|
[test/subset] Port to TAP
|
|
e5541a0b
|
2025-04-05T17:02:31
|
|
[subset/test/cmap14] Reduce tested combinations
Fixes https://github.com/harfbuzz/harfbuzz/issues/5254
|
|
d65fa934
|
2025-04-05T16:58:06
|
|
[subset/test/basics.tests] Reduce tested combinations
|
|
5194ec47
|
2025-04-05T16:08:18
|
|
[test/subset] Use --preprocess instead of --preprocess-face
The latter is obsolete and alias to the former.
|
|
14ecea57
|
2025-03-27T15:44:49
|
|
Merge branch 'main' into HVF
|
|
4d2a362f
|
2025-03-25T15:35:00
|
|
[test/subset] Remove tempdir
Was creating a tempdir in /tmp for every single test item,
and not removing it. Create one per test file, and remove
if test successful.
|
|
e7cd818e
|
2025-03-22T15:31:00
|
|
Merge branch 'main' into HVF
|
|
e0aee581
|
2025-03-22T13:07:10
|
|
[test] Respect MESON_EXE_WRAPPER in more test runners
It's not working for me though. Meson doesn't seem to set WINEPATH
during testing.
|
|
19b4c6e5
|
2025-02-25T13:39:59
|
|
[subset] "Fix" subset tests after recent fvar/avar precision changes
|
|
ea1434b8
|
2025-02-25T19:00:29
|
|
Split iup glyf partial instance tests into a separate set which ignores due to IUP rounding differences fonttools.
|
|
9a0cf8d6
|
2025-02-25T00:19:25
|
|
[test/subset/cff-japanese] Shrink test
Was taking too long.
|
|
084fb3ab
|
2025-02-25T00:16:27
|
|
[test/subset/cmap] Shrink test
Was taking more than the rest of the test suite combined.
|
|
134eef55
|
2025-02-09T08:22:38
|
|
[test] Reorder test suites
Makes it a bit faster.
https://github.com/harfbuzz/harfbuzz/issues/4153#issuecomment-2646120679
|
|
b0d52abe
|
2024-10-23T20:49:44
|
|
[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.
For https://github.com/harfbuzz/harfbuzz/issues/4911
|
|
622e9c33
|
2024-11-06T10:59:17
|
|
[instancer] fix for incorrect offset calculation when we have gvar padding
|
|
6fd76e1f
|
2024-09-17T13:50:10
|
|
[subset] offset format fix in gvar table
|
|
70334d74
|
2024-09-11T14:30:32
|
|
Run subset tests with C-locale
One problematic input is `--instance=wdth=112.5` which is parsed using
the users local (`strtof`).
So while in C or US locales it yields 112.5 in some European locales it
yields 112 as the dot is not valid in this position.
A European user might pass "112,5" instead but for the test the C locale
is assumed, so enforce it.
Fixes #4854
|
|
634778ef
|
2024-08-20T14:34:09
|
|
[subset] bug fix in post table
insert retain-gid holes when retain-gids is enabled
|
|
72502ef0
|
2024-08-12T14:08:06
|
|
[instancer] dont return false when variation data is empty after partial instancing
|
|
a38f853e
|
2024-06-27T15:35:01
|
|
Drop unused Makefile.sources files
|
|
cf1fdf16
|
2024-06-27T06:54:02
|
|
Drop autotools build
Fixes https://github.com/harfbuzz/harfbuzz/issues/4720
|
|
0db136b1
|
2024-05-09T11:49:48
|
|
[subset-cff] Shorten output of `encode_num_tp`
|
|
7975c9ca
|
2024-05-08T10:11:03
|
|
[instancer] bug fix for COLRv1, add missing mapping to VarIdx::NO_VARIATION
|
|
b74a7ecc
|
2024-05-07T19:53:01
|
|
Fix IUP differences accoss platforms.
- Slightly increase the tolerance to account for differences in floating point math across platforms.
- The specific issue is a fused multiply add (d = d1 + (x - x1) * scale; in hb-subset-instancer-iup.cc)
- Also fix more implicit double conversion warnings.
|
|
a5c9c826
|
2024-05-06T13:22:49
|
|
rename expected files from *.retain-all-codepoint.* to *.all.*
This is to fix file name too long error
tar: harfbuzz-8.4.0/test/subset/data/expected/sync_vmetrics/playwrite_mm.subset.default.retain-all-codepoint.SPED=25,YEXT=520,wght=100-400,slnt=18.iup_optimize.ttf: file name is too long (cannot be split); not dumped
tar: Exiting with failure status due to previous errors
|
|
3b3c154b
|
2024-05-06T12:56:23
|
|
add back missing tests that were disabled when wrapped by experimental
|
|
6c898572
|
2024-05-02T10:11:06
|
|
fix bots
|
|
f614a7d3
|
2024-05-02T10:05:18
|
|
[instancer] add/update tests for COLRv1 instancing
|
|
ebcdadbf
|
2024-05-03T14:24:56
|
|
[instancer] add tests for instantiating BASE table
|
|
f145ab2f
|
2024-05-03T18:24:33
|
|
Disable empty_region_vardata test when running on 32bit machines.
|
|
4cf606f6
|
2024-05-02T20:46:29
|
|
[instancer] Promote partial instancing api out of experimental.
|
|
2cfa5505
|
2024-03-27T23:21:57
|
|
[instancer] Switch to doubles for delta calculations.
FontTools uses double's internally so match FontTool's precision so we get the same results more often for floating point calculations.
|
|
6e874817
|
2024-03-27T17:47:57
|
|
[subset] add virtual links to keep the gdef varstore last.
|
|
71456071
|
2024-03-25T21:41:16
|
|
[subset] place the gdef var store at the end of the GDEF table.
It appears that some font processors assume it is the last sub table.
|
|
990fb14d
|
2024-03-28T22:32:55
|
|
[subset] Disable fonttools comparison in a few tests where rounding diffs show up.
Context: https://github.com/harfbuzz/harfbuzz/issues/4642
|
|
11f5dec7
|
2024-03-27T19:34:51
|
|
[subset] Move post apply mvar test intance position to avoid rounding diff.
|
|
975bd39b
|
2024-03-27T19:28:53
|
|
[subset] Match hb rounding to fonttools for avg char width.
Update Muli and Roboto input test fonts to recalc class values. FontTools recalcs class values during instancing while harfbuzz does not (like the ft subsetter).
|
|
15a05b24
|
2024-03-27T18:26:09
|
|
[subset] Update generate-expected-outputs to drop BASE.
This matches the behaviour of the test runner.
|
|
ec46c4c2
|
2024-03-27T18:11:26
|
|
[subset] Update subset test suite to match some changes made to fonttools.
FontTools has added pruning functionality for code pages which we don't yet have in harfbuzz. Update our test runner to disable that for now. Also match fonttools and always recalc usFirst/LastCharIndex even if no prune unicode ranges is set.
|
|
cfbb6a68
|
2024-03-14T17:33:34
|
|
[subset] support BASE table subsetting (#4618)
* [subset] support BASE table
* [subset] add tests for BASE table subsetting
|
|
84771374
|
2024-01-26T15:45:32
|
|
[instancer] add tests for iup delta optimization
|
|
df735213
|
2023-12-06T09:50:29
|
|
[instancer-solver] port solver fix (#4519)
* [instancer-solver] port solver fix
from https://github.com/fonttools/fonttools/pull/3374
|
|
f1ac36ba
|
2023-11-15T11:38:41
|
|
[instancer] update hhea vertical metrics with OS/2 ones
|
|
2d001a0a
|
2023-11-08T11:11:51
|
|
[subset] OTS doesn't allow ligature attachment offset to be 0
|
|
9701b002
|
2023-11-06T22:14:31
|
|
[subset] Always place CFF1/2 char strings at the end of the packed table.
Makes the behaviour from HB_SUBSET_FLAGS_IFTB_REQUIREMENTS the default.
|
|
c6884377
|
2023-11-06T20:21:46
|
|
[subset] Add HB_SUBSET_FLAGS_IFTB_REQUIREMENTS flag.
When enabled the output subset conforms to the requirements for a base font to be patched by IFTB patches. IFTB is a proposed incremental font transfer patch. This new flag is set as experimental. Currently, setting this flag causes the output subset to also use long offsets for outline data in loca/glyf, gvar, CFF, and CFF2.
This change is a version of https://github.com/skef/harfbuzz/commit/3ae2fe2084d96f61d8ad1bbe42a6ef4e62ec830a rebased onto head w/ tests added.
|
|
d550e16a
|
2023-11-06T10:31:05
|
|
[instancer] Recalc avgcharwidth after instancing
|
|
6baf791e
|
2023-11-03T11:06:07
|
|
[instancer] add tests
|
|
31b5b2b1
|
2023-11-02T09:08:36
|
|
[instancer] add tests for valueformat
|
|
413af0a9
|
2023-11-02T11:14:48
|
|
[instancer] When partial instancing, subset LigCaretList after VarStore instantiation
|
|
f6f35f73
|
2023-10-27T09:31:07
|
|
[instancer] add tests for feature variations partial instancing
|
|
e595fe75
|
2023-10-18T16:00:06
|
|
fix bots
partial instancing tests are wrapped by experimenal_api, do not enable
them in Makefile
|
|
ce466989
|
2023-10-18T15:49:57
|
|
[subset] update tests
to reflect changes in GDEF.MarkGlyphSetsDef and Lookup.MarkFilteringSet
|
|
bde6fb83
|
2023-10-18T10:21:02
|
|
add missing file for test empty_region_vardata
|
|
57dac23d
|
2023-10-17T17:11:13
|
|
[instancer] add tests
Also update tests to gei rid of no-tables-with-item-variations profile
|
|
bbd53fcf
|
2023-10-10T21:41:42
|
|
Remove glyph_map test that uses retain gids.
We no longer allow the use of glyph map + retain gids (see: https://github.com/harfbuzz/harfbuzz/blob/main/src/hb-subset-plan.cc#L817). Also add the test to the meson file so it will be run by default.
|
|
2415d5f2
|
2023-09-27T13:33:09
|
|
[instancer] update tests to include GDEF/GPOS tables
|
|
ef4ff1d6
|
2023-09-20T11:35:33
|
|
[instancer] make varstore items sorting method match fonttool's
Also update expected tests
|
|
2d2818c0
|
2023-09-20T10:30:47
|
|
[instancer] update expected tests to include HVAR/VVAR tables
|
|
6e49128a
|
2023-09-01T10:27:40
|
|
[instancer] always check and update default wght/width/slnt if necessary
Sometimes default values in original file are incorrect, and if default value for an axis is not changed, then these values won't be updated
|
|
7b5daff5
|
2023-08-31T17:50:34
|
|
[instancer] add tests for mvar partial instancing
|
|
dd8d3576
|
2023-08-22T12:54:50
|
|
[instancer] enable partial instancing tests when experimental api is on
|
|
bea26446
|
2023-08-15T14:20:54
|
|
[instancer] reference all points for gvar
If a point is not referenced and delta is not inferred, set delta to 0
|
|
0aa5dafe
|
2023-08-08T08:33:11
|
|
fix bots.
-Also disable partial instancing tests for now, cause the command option
is wrapped by experimental_api
|
|
77b158c7
|
2023-08-07T16:02:02
|
|
[instancer] add tests for gvar partial instancing
|
|
77a81554
|
2023-05-04T23:01:56
|
|
[subset] Add some basic tests for a provided glyph map.
|
|
1d31da91
|
2023-04-25T15:34:06
|
|
Merge pull request #4205 from harfbuzz/gvar-optimize
Gvar optimize
|
|
e41f3171
|
2023-04-25T20:54:27
|
|
[subset] Update expectation files for full_instance tests.
|
|
2175f5d0
|
2023-04-24T21:13:18
|
|
[subset] Fix inefficient ItemVariationStore subsetting w/ retain_gids.
ItemVariationStore is relying on the assumption that the inner_map is populated for all output glyphs, this is not true for subsetting operations with retain gids enabled. Fixes fuzzer timeout: https://oss-fuzz.com/testcase-detail/4575222591520768.
|
|
3db6baa2
|
2023-04-17T20:01:17
|
|
[subset] add test for lig glyph fix.
|
|
14b9d8d5
|
2023-04-14T20:44:15
|
|
[subset] add --no-layout-closure flag.
Disables layout glyph closure. Fixes #4192.
|