test/subset


Log

Author Commit Date CI Message
Garret Rieger 44802c8e 2021-08-12T11:11:51 [subset] use layout-features=* for layout subsetting tests w/ synthetic test fonts.
Behdad Esfahbod 58bfe407 2021-08-11T19:48:28 [util] Move hb-subset away from main-font-text
Khaled Hosny f1226988 2021-08-12T01:47:35 [test] Improve generate-expected-outputs.py diff output
Garret Rieger e39c3bde 2021-08-10T11:41:55 [subset] fix bug in parsing glyf flags. the bytes of the flag stream were being treated as signed integers instead of unsigned as specified in the spec.
Behdad Esfahbod f3acb977 2021-08-10T11:05:40 [test/shaping;util] Use ';' instead of ':' to separate test fields Accept that in --batch mode. Also in batch mode don't send the 0th arg. Related discussion: https://github.com/harfbuzz/harfbuzz/pull/3102
Behdad Esfahbod b83fd3a5 2021-08-10T02:21:05 [util] Refactor batch-processing code into batch.hh
Garret Rieger c2ee1fdd 2021-08-04T16:42:49 [subset] remove unsed table_entry struct.
Garret Rieger dea0fe57 2021-08-04T16:36:20 [subset] discard extra copies of a table in face builder. Fixes #2361. Stores tables in the builder in a hashmap so you end up with at most one copy of each table. Table serialization order is now based on tag sort order instead of order of insertion into the builder.
Garret Rieger 2c024dc3 2021-08-04T11:38:38 [subset] prune redundant cmap12 subtables. If the post subset cmap12 table is equivalent to another cmap subtable don't include the 12 table in the final subset. Matches change https://github.com/fonttools/fonttools/pull/2146 from fontTools.
Khaled Hosny 84946e4d 2021-08-05T00:05:26 [test] Suggest updating the expectation if ttx matches https://github.com/harfbuzz/harfbuzz/issues/3089#issuecomment-892208892
Khaled Hosny f698fe5a 2021-08-04T12:08:18 [test] Always fail subset tests if hashes don’t match Regardless of the pre sentience or absence of fonttools.
Khaled Hosny 9f544e50 2021-08-04T04:20:14 [test] Don’t skip subset tests early Check for FontTools only when the checksums are mismatching.
Khaled Hosny b0841533 2021-08-04T04:12:31 [test] Remove subset tests from the slow suite
Khaled Hosny 7ccc52b0 2021-08-04T03:57:18 [test] Compare sha256 hash before TTX dumps Most of time the files are identical, so instead of comparing the TTX dump we can check sha256 hashes of the files first and if they match, we don’t have to check the TTX dumps at all, making the subset tests orders of magnitude faster. time meson test --suite=subset down from: real 0m19.418s user 0m38.171s sys 0m3.587s to: real 0m3.102s user 0m8.622s sys 0m1.701s The expected files have been replaced by hb-subset output so they are bit-identical where FontTools output might not. The generate-expected-outputs.py now compares the hb-subset output with fontttols subset and errors of they don’t match.
Khaled Hosny 770fbd5a 2021-08-04T00:07:23 Revert "[test] Speed-up subset tests by saving TTX dump" This reverts commit 278f44dcee34cea25403e42e06668f0afe2328c1.
Khaled Hosny 10e73d18 2021-08-01T11:11:12 [test] Add batch mode to hb-subset and use it time meson test --suite=subset down from: real 0m22.822s user 0m44.561s sys 0m9.255s to: real 0m19.418s user 0m38.171s sys 0m3.587s Does not seem to help much, but it is something. Part of https://github.com/harfbuzz/harfbuzz/issues/3089
Behdad Esfahbod 7cbcdaf6 2021-07-30T11:26:46 Whitespace
Khaled Hosny f6c67a5f 2021-07-30T02:20:19 [test] Open file in UTF-8 It is 2021 and Python still does not default to UTF-8 on Windows!
Khaled Hosny bafbade0 2021-07-30T01:42:45 [test] Force FontTools to use \n on all platforms On Windows in helfuly uses \r\n.
Khaled Hosny 278f44dc 2021-07-29T23:43:56 [test] Speed-up subset tests by saving TTX dump Speed-up subset tests by saving TTX dump of expected output instead of generating it each time the tests are run. Cuts down meson test --suite=subset on my system from: real 0m38.977s user 1m12.024s sys 0m10.547s to: real 0m22.291s user 0m44.548s sys 0m9.221s Part of https://github.com/harfbuzz/harfbuzz/issues/3089
Garret Rieger acbd8b27 2021-07-27T14:31:18 [subset] temporarily disable COLRv1 subsetting. Currently COLRv1 spec is being changed so the subsetting implementation is out of sync. Disable subsetting by failing sanitization for COLRv1 tables and disable all colrv1 tests.
Qunxin Liu 71b5509c 2021-07-20T20:05:35 [subset] support option --glyph-names
Garret Rieger deee24fb 2021-07-14T13:46:36 [subset] Add missing FontName op code in top dict parsing. Fix for #3058
Qunxin Liu eee7b459 2021-06-24T10:17:46 [subset] add option --no-prune-unicode-ranges
Garret Rieger d2397d91 2021-06-18T18:12:19 [subset] Add additional colrv1 subsetting tests that has a glyph with components.
Qunxin Liu d07f789a 2021-06-09T15:36:40 [subset] support option "--notdef-outline"
Qunxin Liu cb5a6b5a 2021-05-19T17:33:46 [subset] support option --layout-features
Qunxin Liu f739e1dc 2021-05-11T11:44:32 [subset] subset both CPAL and COLRv1
Garret Rieger a08900b7 2021-05-04T16:48:41 [subset] fix failing colrv0 subsetting when font has composite glyphs. Composite glyph collection was happening along side colrv0 glyph collection which meant it was possible to miss grabbing the component glyphs for a glyph added by colrv0.
Garret Rieger b07b97d5 2021-03-29T10:39:38 [subset] Add more Noto Nastaliq test cases.
Garret Rieger 92757f68 2021-04-22T15:18:35 [subset] Don't drop anchor device tables when dropping hints. These may contain variation data. Update subseting expected files to match latest version of fontTools.
Garret Rieger 6fddc2bb 2021-04-01T15:34:17 [subset] subset layout tables (G*) by default.
Garret Rieger 4ec18c85 2021-04-02T15:33:54 [subset] add subsetting tests with drop hints and layout subsetting enabled.
Garret Rieger 596f4258 2021-04-02T12:41:09 [subset] copy Lookup::markFilteringSet when subseting.
Garret Rieger c35d7863 2021-04-01T14:32:38 [subset] never drop the 'pref' feature. Never ever drop feature 'pref', even if it's empty. Harfbuzz uses it to choose the shaper for Khmer.
Garret Rieger 85b07287 2021-03-25T12:17:18 Add full variable font subsetting test.
Garret Rieger b10741ca 2021-03-25T19:14:48 [subset] when closing glyphs in context lookups don't use a current glyph set if a lookup is already applied.
Garret Rieger 2773d057 2020-11-04T11:11:16 [subset] Add a test case using NotoNastaliqUrdu.
Qunxin Liu 95230e29 2021-03-18T17:41:25 [subset] support subsetting GSUB8
Garret Rieger 01044099 2021-02-16T11:38:14 Fix repack_tests for distcheck.
Garret Rieger b8b8c58b 2020-11-10T11:56:09 [subset] add tests that check for successful repacking of a real font file.
Qunxin Liu 56ca4357 2021-01-28T15:21:26 [subset] fix for collect_features and remove_redundant_lamngsys previously remove_redundant_sys () is missing in harfbuzz, after redundant langsys removal, some features are removed as well in prune_features() in fonttools. This change is trying to get the same result between harfbuzz and fonttools.
Garret Rieger 69d772e5 2021-03-17T14:11:16 [subset] Fixed test gsub5 test files.
Qunxin Liu 0e1c0fa4 2021-01-12T10:17:14 [subset] optimize glyph closure method: step 5 add testcase and some fixes
Garret Rieger b1b1486d 2021-03-16T13:32:23 [subset] update expected files to not include cmap12 pruning.
Garret Rieger 190b7a98 2020-10-08T14:44:54 [subset] Update PairPosFormat2 subsetting to match fontTools updated subsetting (https://github.com/fonttools/fonttools/pull/2221) - subset class def 1 against the coverage table. - Don't re-use class 0 in class def 2. - Ignore class 0 glyphs for the purposes of determing format 1 vs format 2 encoding for ClassDef. Add an additional test case which demonstrates these issues.
Garret Rieger 00d92763 2020-10-14T14:48:11 Add gpos9 expected files to Makefile.am
Garret Rieger 08a4997f 2020-10-06T13:02:12 [subset] Add subset support for Extension lookups (GPOS 9, GSUB 7).
Behdad Esfahbod eb069f39 2021-02-10T19:13:51 [tests] Update expected output of recently-merged gpos5 The merged PR was from before landing this: commit 7a72b20aa2b604053696e731185a17286de73b08 Author: Garret Rieger <grieger@google.com> Date: Thu Sep 24 15:58:48 2020 -0700 [subset] Subset GDEF during layout subsetting tests.
Behdad Esfahbod c7d232ce 2021-02-10T18:13:38 Merge pull request #2701 from googlefonts/Mark-To-Ligature_grieger [subset] GPOS 5 MarkToLigature subsetting support
Khaled Hosny 554aaa0c 2021-02-10T22:25:16 [build] Fix make distcheck A regression from 7b77ce0507e18fb981a9b865f3eaac0c2ae06044. It was caught by the CI build in the PR, but apparently we are now used to CI failures that they are effectively ignored. Also, yay for multiple build systems.
Garret Rieger be33704c 2020-10-09T16:46:46 Add gpos 5 tests to meson build file.
Qunxin Liu 3a0b05fa 2020-02-06T15:08:26 [subset] GPOS 5 MarkToLigature subsetting support
Garret Rieger 010accb3 2020-09-28T17:39:09 [subset] Add additional test cases for the Amiri tests.
Garret Rieger 3271a7cd 2020-09-28T16:46:15 [subset] Remove redundant langys from Amiri test font. FontTools removes these when subsetting but harfbuzz does not yet support redundant langsys removal. So this gets the Amiri tests passing for now.
Garret Rieger 9fad5402 2020-09-28T13:24:25 [subset] check that sub rules in ContextFormat 1 and 2 intersect the glyphs set before recursing during closure lookups.
Garret Rieger 7b77ce05 2020-09-24T16:35:59 [subset] Add subsetting integration test using Amiri. Demonstrates a failure in subsetting GPOS 8/GSUB 6.
Garret Rieger 7a72b20a 2020-09-24T15:58:48 [subset] Subset GDEF during layout subsetting tests.
Ebrahim Byagowi 6e32145d 2020-08-13T00:13:06 [meson] Make compatbile with 0.47.0
Ebrahim Byagowi 51933578 2020-08-11T23:51:59 Revert "Remove autotools build support" This reverts commit 01ac32aab2109681abc58bb2f96a4ef4a7f0c6df.
Ebrahim Byagowi 01ac32aa 2020-08-02T11:35:55 Remove autotools build support
Ebrahim Byagowi d38d6331 2020-07-27T09:19:29 [tests] minor
Ebrahim Byagowi 322426f8 2020-07-27T09:03:35 [tests] Use TTFont of fonttools to avoid temp files
Hamidreza Bayat 08fef158 2020-07-26T17:16:07 Use fonttools's python package instead of cli
Ebrahim Byagowi 47a0fbec 2020-06-21T02:34:59 [meson] Mark longer tests with slow So one can skip them easily by `meson test -Cbuild --no-suite slow`
Ebrahim Byagowi 4e7cb7e2 2020-06-12T01:38:16 minor, fix lists sorting
Qunxin Liu 973c47f6 2020-06-11T11:27:57 [subset] Move 2 experimental public api methods to be private methods in GSUB/GPOS. 2 methods are: hb_ot_layout_closure_lookups and hb_ot_layout_closure_features
Ebrahim Byagowi 6f7048b9 2020-06-04T10:18:35 [meson] Update subset tests list from autotools
Ebrahim Byagowi a9d13463 2020-05-30T14:17:56 [meson] Categorize tests using `suite: [...]` So one can run a category of interested tests like meson test -Cbuild --suite aots --suite src --print-errorlogs Intead issuing particular tests which also is possible like meson test -Cbuild test-shape --print-errorlogs
Qunxin Liu 3c5bdd9b 2020-02-18T10:02:19 [subset] GDEF AttachList subsetting support
Ebrahim Byagowi 368ca306 2020-05-29T00:42:32 minor on python scripts * remove not needed imports * remove semicolons
Ebrahim Byagowi ad87155f 2020-05-29T00:11:19 minor, use py3's open(encoding=)
Ebrahim Byagowi cd5580e2 2020-05-28T23:43:55 minor, enable printing to stderr in run-tests.py As was originally intended https://github.com/harfbuzz/harfbuzz/blob/3ce6c7b/test/shaping/run-tests.sh
Ebrahim Byagowi 7554f618 2020-05-28T22:51:29 minor, use sys.exit print shorthand
Qunxin Liu 593e58c8 2020-05-20T18:00:25 [subset] ChainContext subsetting fix: add lookup index remapping
Qunxin Liu d7c012a0 2020-02-26T13:11:42 [subset] GDEF Variation Store: step 2 do subset based on variation indices collected in step 1
Ebrahim Byagowi cc53fd15 2020-05-21T19:33:18 [meson] Normalize options names As https://github.com/harfbuzz/harfbuzz/pull/2412#discussion_r426275027
Ebrahim Byagowi f7562672 2020-05-21T17:01:04 [meson] Use / instead join_paths We need some of the very recent features of meson, let's use the new features also
Ebrahim Byagowi 4b12b846 2020-05-21T14:23:36 [meson] Increase timeout in hope to resolve Actions' bot timeout
Ebrahim Byagowi 1c4dd79c 2020-05-21T08:49:14 [ci] Increase timeout as gh bot issue isn't resolved by serial test
Ebrahim Byagowi 8667df55 2020-05-21T07:19:37 [meson] Unbreak the build, oops
Ebrahim Byagowi 37f9cccc 2020-05-21T07:17:18 [meson] Don't run subset tests in parallel Hopefully resolves https://github.com/harfbuzz/harfbuzz/runs/695051808#step:6:700 for now
Qunxin Liu 8b5d3ebd 2020-04-17T11:58:31 [subset] GSUB5/GPOS7 Contextual Subst/Pos Subtbale Subsetting support
Ebrahim Byagowi 0722889a 2020-05-15T10:10:27 [meson] increase subset tests timeout https://github.com/harfbuzz/harfbuzz/runs/676665822#step:6:570 fails because meson runs the tests in parallel, correct fix will be making the tests smaller
Qunxin Liu b2a965df 2020-04-22T15:58:41 [subset] Add support for "--gids" option cmap subsetting now retains entries associated with any glyph ids explicitly requested
Qunxin Liu e53c44e3 2020-04-24T14:06:13 [subset] temporarily revert previous cmap commit Required in https://github.com/harfbuzz/harfbuzz/issues/2356
Ebrahim Byagowi 750bb73e 2020-04-21T01:13:13 [meson] Add an experimental-api option
Ebrahim Byagowi 0181f030 2020-04-20T17:07:09 [test] Workaround Windows pipe issue by storing ttx in a file
Christoph Reiter 2354a900 2020-04-18T20:28:25 tests: fix subset/run-tests.py under Windows It assumed that stdout of a subprocess in binary mode was using utf-8 which isn't the case. Instead open stdout of the subprocess in text mode and let Python handle the decoding.
Ebrahim Byagowi 29c90322 2020-04-17T22:11:40 Move hb_ot_layout_closure_{features,lookups} behind EXPERIMENTAL flag
Qunxin Liu c8cc1e37 2020-04-02T16:57:01 fix issues in ClassDefFormat1 serialize: glyph ids in Iterator may be non-consecutive, so the number in classValue might be larger than length of the Iterator
Ebrahim Byagowi 78622231 2020-03-24T19:39:42 [meson] More comment on tests are causing timeout failure
Ebrahim Byagowi b5526a09 2020-03-18T23:58:20 [tools] Remove in-house 'which' now that we have py3
Ebrahim Byagowi 12df69e5 2020-03-11T21:52:43 Minor, delete not needed cmake testing file
Ebrahim Byagowi 943bfeda 2020-03-11T20:30:41 [meson] Enable more of the subset tests
Ebrahim Byagowi c494d7ab 2020-03-11T19:44:13 Remove cmake testing and add meson build bot CMake tests are broken anyway as py3 changes so let's get rid of them
Ebrahim Byagowi 1c3f80ba 2020-03-11T19:29:47 [meson] Minor updates
Tim-Philipp Müller 8fc66dbf 2018-12-01T21:15:33 meson: tests: subset: no need to check for 'which' command any more Test runner script now handles that.
Mathieu Duponchelle d4a72373 2018-05-17T16:25:22 meson: all tests passing on Windows / MSVC
Mathieu Duponchelle 920efc0e 2018-05-17T01:28:53 Add Meson build definitions Fixes #490 http://mesonbuild.com