|
9aa0ecef
|
2021-07-14T17:27:14
|
|
[subset] de-duplicate the logic that finds unicodes corresponding to requested glyphs.
Move the logic into subset planning and then re-use the results in cmap and OS2 subsetting. Removes depedency on cmap from os2.
|
|
9985ca64
|
2021-07-13T13:42:09
|
|
Merge pull request #3057 from harfbuzz/ci-coverage-macos
[ci] Add macOS GitHub workflow
|
|
2c7ef0db
|
2021-07-13T13:23:53
|
|
[ci] Generate only XML coverage data
That is the one we are uploading, and HTML coverage seems broken on
macOS.
|
|
f51384d3
|
2021-07-12T16:51:43
|
|
Merge pull request #3027 from harfbuzz/buffer-sync
Improving buffer synchronization
|
|
95b04f74
|
2021-07-12T17:35:45
|
|
[buffer] Remove unnecessary have_separate_output()
|
|
3e266e5f
|
2021-07-12T17:30:26
|
|
[buffer] Update comments
|
|
10a9960f
|
2021-07-12T17:09:03
|
|
[buffer] Restructure swap_buffers()
Is more of a "commit" operation now. Will rename when ready.
|
|
3807061d
|
2021-07-12T17:02:03
|
|
[ot-layout] Don't remove_output() before reverse substitution
No need anymore, because of new swap_buffers() semantics.
Just assert instead.
|
|
f6c9fcfd
|
2021-07-13T01:12:43
|
|
[ci] Add macOS GitHub workflow
To collect codecov coverage on macOS as well (hopefully it will run the
macOS-specific tests).
|
|
d56afb75
|
2021-07-13T00:56:54
|
|
[tests] Ignore more symbols
These seem to be exported when building with code coverage on macOS.
|
|
a7f4c985
|
2021-07-12T17:00:46
|
|
[ot-layout] Always swap_buffers() even if no substitutions happened
|
|
62b441e6
|
2021-07-12T16:59:34
|
|
[layout] Use Proxy::inplace instead of table index check
Equivalent.
|
|
431f1640
|
2021-07-12T16:57:25
|
|
[layout] Don't call clear_output() before pause-func
|
|
a623446a
|
2021-07-12T16:55:54
|
|
[shape] Remove stray clear_output() call in hb_shape()
|
|
05c17787
|
2021-07-12T16:55:08
|
|
[buffer] Rewind cursor in clear_output()
|
|
1cb0ca1f
|
2021-07-12T16:52:31
|
|
Whitespace
|
|
5f5a8b4d
|
2021-07-12T22:24:14
|
|
[ci] Use the latest stable XCode image
|
|
13187d29
|
2021-07-12T22:21:47
|
|
[ci] Drop macOS job using deprecated XCode image
|
|
69310f14
|
2021-07-09T17:24:29
|
|
[buffer] Change nil buffer have_output to false
Seems like a historical artefact that it was true.
|
|
40884af1
|
2021-07-09T17:17:05
|
|
[ot-layout] Narrow down random feature logic vs safe-to-break
|
|
33b579d0
|
2021-07-09T17:12:09
|
|
[ot-layout] Clear random flag for subsequent flags
Ouch!
|
|
29c9833e
|
2021-07-09T11:58:36
|
|
Remove Offset::serialize()
Finishing https://github.com/harfbuzz/harfbuzz/pull/2355
|
|
63e15eac
|
2021-07-08T22:46:33
|
|
2.8.2
|
|
eee36bbe
|
2021-07-08T21:19:57
|
|
[releasing] Format notes as Markdown checklist for pasting in GH PR/Issue
|
|
eda5dcdb
|
2021-07-08T21:10:35
|
|
[releasing] Drop obsolete release process items
|
|
2337f0d0
|
2021-07-08T10:58:50
|
|
Internally use hb_malloc/.../hb_free instead of malloc/.../free
Redefining those stock names as macros was conflicting with gcc 10
headers.
Fixes https://github.com/harfbuzz/harfbuzz/issues/3044
|
|
bb48bf52
|
2021-07-08T10:53:45
|
|
Rename misc uses of "free"
In preparation for fixing https://github.com/harfbuzz/harfbuzz/issues/3044
|
|
7416face
|
2021-07-07T11:27:49
|
|
[subset] fuzzer fix: https://oss-fuzz.com/testcase-detail/5715464591376384
|
|
895acdf7
|
2021-06-23T14:53:28
|
|
[ci] Don’t build Cairo subproject with FontConfig on win32 cross-build
We don’t need it and it breaks the build because FontConfig renamed its
master branch and the released version of Cairo wants to build
FontConfig from master branch.
|
|
0da9158f
|
2021-06-29T14:23:37
|
|
[subset] Remove OffsetTo::serialize().
Convert remaining uses of it to serialize_serialize() which correctly uses the object packer.
|
|
09696148
|
2021-06-26T08:52:53
|
|
[ot-shape] Rewrite loop without foreach_grapheme()
We were not using the graphemes, and that's costlier than just for().
|
|
eee7b459
|
2021-06-24T10:17:46
|
|
[subset] add option --no-prune-unicode-ranges
|
|
c3be28ea
|
2021-06-23T17:39:23
|
|
[ot-shape] Numeric runs native direction is LTR
See inline comments. Slightly modified version of the code from Jonathan
Kew on the linked issue.
Fixes https://github.com/harfbuzz/harfbuzz/issues/501
|
|
71a62966
|
2021-06-23T18:16:56
|
|
[tests] Make record-test.sh work with .otf files
It hard-codes the file extension, but fonttools sunset will use .otf for
CFF fonts, so hard-code the output file from subset as well.
|
|
cc9bb294
|
2021-06-20T18:47:03
|
|
[blob] Fix-up recent mistake in hb_blob_create() destroy(user_data)
https://github.com/harfbuzz/harfbuzz/pull/3026#discussion_r653437491
|
|
bc06af97
|
2021-06-16T15:49:14
|
|
[subset] speed up feature collection when tags are specified.
Precompute a feature index filter to avoid needing to iterate the feature tag list for each encountered feature index. For this particular fuzzer case speeds up feature collection from 50s to 2s.
|
|
14f220b7
|
2021-06-20T18:59:13
|
|
[directwrite] Support feature ranges
Code copied from hb-uniscribe.cc and adapted to use DirectWrite types.
May be there is a better way to de-duplicate the code, though I'm not
exactly sure how or if it is worth it.
|
|
d2397d91
|
2021-06-18T18:12:19
|
|
[subset] Add additional colrv1 subsetting tests that has a glyph with components.
|
|
26c80adb
|
2021-06-18T14:14:20
|
|
[subset] do colrv1 glyph closure before glyf composite closure.
|
|
d07f789a
|
2021-06-09T15:36:40
|
|
[subset] support option "--notdef-outline"
|
|
10ad1859
|
2021-06-16T16:34:46
|
|
[subset] add comment to copy_bytes().
|
|
675ebbeb
|
2021-06-16T10:40:46
|
|
[subset] don't alloc zero bytes.
It will be leaked later since hb_blob_create() won't set up the blob to cleanup since it has length zero.
|
|
93e6a9bc
|
2021-06-15T15:38:49
|
|
Revert "Remove unneeded buffer clear_output / remove_output calls"
This reverts commit 06175b71433bc42edc07d342e6354035e37fb5fd.
One of the sanitizers is failing. Pushing again as PR to debug.
I have suspicions.
|
|
06175b71
|
2021-06-15T14:33:27
|
|
Remove unneeded buffer clear_output / remove_output calls
Made sure clear_output is always paired with swap_buffers.
Trying to see if we can move towards RAII-like buffer iterators
instead of the buffer keeping an iterator internally.
|
|
bdfed8f1
|
2021-06-14T15:46:04
|
|
[blob] Add failing versions of create API
Fixes https://github.com/harfbuzz/harfbuzz/issues/2567
New API:
+hb_blob_create_or_fail()
+hb_blob_create_from_file_or_fail()
Use these in util/ to distinguish empty file from not-found file.
Only err on the latter.
|
|
2fc8d0e6
|
2021-06-15T12:56:17
|
|
Merge pull request #3020 from googlefonts/serialize_serialize
[subset] Always serialize objects point to by OffsetTo to a new serializer object.
|
|
085aa65e
|
2021-06-14T16:47:45
|
|
[subset] Convert offset serialization in gsubgpos and gdef to serialize_serialize().
|
|
cc96c4e8
|
2021-06-14T16:43:23
|
|
[shaping] Update shaping substituion lookup serialization to use serializer pop()/pack().
|
|
d3dd9363
|
2021-06-14T12:31:02
|
|
[coretext] Round position info
Test:
Before:
$ ./hb-shape /System/Library/Fonts/ヒラギノ丸ゴ\ ProN\ W4.ttc 1 --features="+palt" --shaper=coretext
[gid781=0@-78,0+841]
$ ./hb-shape /System/Library/Fonts/ヒラギノ丸ゴ\ ProN\ W4.ttc 1 --features="+palt" --shaper=ot
[gid781=0@-78,0+842]
After:
$ ./hb-shape /System/Library/Fonts/ヒラギノ丸ゴ\ ProN\ W4.ttc 1 --features="+palt" --shaper=coretext
[gid781=0@-78,0+842]
$ ./hb-shape /System/Library/Fonts/ヒラギノ丸ゴ\ ProN\ W4.ttc 1 --features="+palt" --shaper=ot
[gid781=0@-78,0+842]
I've verified in the font that 842 is correct.
|
|
8443cc85
|
2021-06-11T13:40:39
|
|
[subset] Correct OffsetTo serialization in GPOS to use serialize_serialize ().
|
|
5ba46ed0
|
2021-06-11T13:34:00
|
|
[subset] Correct OffsetTo serialization in GSUB to use serialize_serialize ().
|
|
35458b6b
|
2021-06-11T13:14:51
|
|
[subset] Add serialize_serialize to OffsetTo.
Similar to serialize_subset() this will serialize the new object and then link it to the offset.
|
|
2b0ced28
|
2021-06-09T19:06:31
|
|
Cluster Regional_Indicator pairs (aka emoji flags)
Fixes https://github.com/harfbuzz/harfbuzz/issues/2265
|
|
4e72d5e3
|
2021-06-13T05:46:17
|
|
[src/check-static-init] Ignore objdump "file format not recognized" error
Fixes https://github.com/harfbuzz/harfbuzz/issues/3019
|
|
5bc05ba1
|
2021-06-13T05:28:20
|
|
Prefer GPOS over kerx, if GSUB was applied
Fixes https://github.com/harfbuzz/harfbuzz/issues/3008
|
|
13c6ad98
|
2021-06-12T11:00:19
|
|
[src/check-*] Pickup $(NM), $(OBJDUMP), $(LDD), $(OTOOL)
Fixes https://github.com/harfbuzz/harfbuzz/issues/3019
|
|
c61ce962
|
2021-06-10T17:33:29
|
|
[buffer] In hb_buffer_get_positions(), return NULL if inside message callback
As discussed in https://github.com/harfbuzz/harfbuzz/issues/2468#issuecomment-645666066
Part of fixing https://github.com/harfbuzz/harfbuzz/issues/2468
|
|
855a3f47
|
2021-06-09T15:10:52
|
|
[emoji] Fix emoji table generation
Previously, the last of each range having Extended_Pictograph property
was not processed as so. Ouch!
Test:
$ echo x > null; hb-shape null -u U+1f43b,U+200d,U+2744,U+fe0f
Before:
[gid0=0+1000|gid0=2+1000]
After:
[gid0=0+1000|gid0=0+1000]
Caught by https://github.com/harfbuzz/harfbuzz/issues/3017
|
|
bd5502f0
|
2021-06-09T14:03:25
|
|
[set] Oops. Fix compile
|
|
3962225a
|
2021-06-09T14:02:31
|
|
[set] Add hb_set_copy()
Fixes https://github.com/harfbuzz/harfbuzz/issues/3016
|
|
bc33b87f
|
2021-06-09T11:51:32
|
|
[set] Use references, not pointers, in internal C++ API
|
|
9cfac093
|
2021-06-09T11:41:59
|
|
[set] Add copy constructor/assignment
|
|
a83b9b0f
|
2021-06-07T16:41:27
|
|
Merge pull request #3011 from harfbuzz/directwrite-cleanup
Some directwrite cleanups
|
|
4811e8f5
|
2021-06-07T10:54:36
|
|
Trigger doc rebuild
|
|
09a2eb65
|
2021-06-07T10:52:27
|
|
Revert "Temporarily always push the docs commit"
This reverts commit 6612fd39ae6f84446dad1b0507417d6febf22fa0.
|
|
6612fd39
|
2021-06-07T10:36:02
|
|
Temporarily always push the docs commit
|
|
b39b0475
|
2021-06-07T10:27:33
|
|
Try to fix doc deployment
https://github.com/harfbuzz/harfbuzz.github.io/issues/4
From CI logs at https://github.com/harfbuzz/harfbuzz/runs/2758234200:
+ git init
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: git branch -m <name>
We want the branch too be main not master.
|
|
5585ea02
|
2021-06-05T08:35:28
|
|
[syllabic] Set position of dotted circle for Indic
|
|
a9fb6a0c
|
2021-06-06T14:40:50
|
|
[aat] Add start table/end table to buffer messages
Related to https://github.com/harfbuzz/harfbuzz/issues/3008
|
|
19cb4493
|
2021-06-05T13:44:51
|
|
Update COPYING
Mainly just to push any commit to see if it fixes our github.io site.
https://github.com/harfbuzz/harfbuzz.github.io/issues/4
|
|
cf9538e8
|
2021-06-04T22:33:16
|
|
Removal remaining uses of "blacklist" terminology
|
|
6119ff9d
|
2021-06-03T13:02:53
|
|
[hb-directwrite] Don't load dwrit.dll dynamically
We already link to it, so I don't see the point of trying to load it
dynamically.
|
|
b2070a50
|
2021-06-03T10:50:46
|
|
[hb-directwrite] Don’t override new/delete
This is a testing shaper, we don’t care for overridden malloc/free here.
Use malloc/free in the code called from hb_directwrite_face_create().
|
|
221d642b
|
2021-06-03T10:45:23
|
|
[hb-directwrite] Remove _hb_directwrite_shape_experimental_width
Not used anywhere.
|
|
fa432a12
|
2021-06-05T04:06:58
|
|
Rename various references to master branch
|
|
35d6af69
|
2021-06-04T10:04:27
|
|
[subset] fix fuzzer testcase: https://oss-fuzz.com/testcase-detail/5965777994907648
|
|
92206345
|
2021-06-04T14:51:49
|
|
[ci] Disable patch-level codecov failures
Fixes https://github.com/harfbuzz/harfbuzz/issues/3004
|
|
3d48bfc1
|
2021-06-02T23:12:53
|
|
Avoid a deprecation warning in graphite2
As of graphite2 1.3.7, `gr_make_face` is deprecated in favor of
`gr_make_face_with_ops`. It's a one-liner to port over to using it.
This is potentially a compatibility break since I'm not sure when the
`with_ops` API was added, but the minimum version of graphite2 that's
supported by Harfbuzz doesn't seem to be documented anywhere anyway.
|
|
1b6008ca
|
2021-06-02T15:07:18
|
|
fix fuzzer testcase: https://oss-fuzz.com/testcase-detail/5417934246772736
|
|
18f61210
|
2021-05-27T16:01:17
|
|
Add public api methods to get/set the layout features to retain.
|
|
243d056f
|
2021-06-02T14:08:11
|
|
Removed unused variable `supp_size` from plan_subset_encoding(...).
|
|
7ab0f4ed
|
2021-05-27T11:40:34
|
|
fuzzer fix
|
|
cb5a6b5a
|
2021-05-19T17:33:46
|
|
[subset] support option --layout-features
|
|
0989b555
|
2021-05-18T17:12:50
|
|
[subset] Add test for overlaps flag setting.
|
|
73ff04a3
|
2021-05-18T16:54:01
|
|
[subset] add option to have the subsetter set the mac overlaps flag on each glyph.
|
|
f739e1dc
|
2021-05-11T11:44:32
|
|
[subset] subset both CPAL and COLRv1
|
|
466e1fdf
|
2021-05-26T14:22:21
|
|
[subset] remove unnessecary brackets.
|
|
58323729
|
2021-05-26T14:06:02
|
|
Add cmp() method for major to page map.
|
|
2c137045
|
2021-05-20T16:22:04
|
|
[subset] Optimize set iteration by caching the last found page map index.
Reuse it if possible on consecutive calls to next(). Will signifcantly speed up cases where the entire set is iterated. In local testing iterating a very large set was 10x faster.
|
|
1bb00cd5
|
2021-05-26T14:18:32
|
|
[subset] add num-iterations flag to util/hb-subset.
|
|
9e5738a8
|
2021-05-26T15:12:39
|
|
[set] Okay, giving up on constexpr till C++14
../src/hb-set.hh:213:89: error: call to non-'constexpr' function 'const elt_t& hb_vector_size_t<elt_t, byte_size>::operator[](unsigned int) const [with elt_t = long long unsigned int; unsigned int byte_size = 64]'
|
|
fac0bc78
|
2021-05-26T14:44:58
|
|
[meson] Drop more wraps we don’t use directly
|
|
21d1034d
|
2021-05-26T14:31:05
|
|
[meson] Remove expat.wrap that we don’t use directly
Fixes https://github.com/harfbuzz/harfbuzz/issues/2987
|
|
90fa558a
|
2021-05-26T15:05:48
|
|
[set] Another try at constexpr to make msvc happy
|
|
bf5d4a63
|
2021-05-26T14:27:02
|
|
[set] Add TODO
|
|
11d03f1f
|
2021-05-26T14:26:05
|
|
[set] Mark a couple methods as constexpr
|
|
d2829ad3
|
2021-05-26T14:24:27
|
|
[set] Refactor code into page_t::is_subset()
|
|
e47e44a8
|
2021-05-26T14:19:27
|
|
[set] Whitespace
|
|
2000f47a
|
2021-05-19T00:34:09
|
|
[set] Compute is_subset by comparing pages.
Test subsets one page at a time instead of by codepoints. On my machine
this is about 250x faster than the previous implementation.
|
|
1dffb553
|
2021-05-18T12:31:14
|
|
Chromium build fixes for C++ 17 warning and missing _remap_indexes
Use class instead of typename, move _remap_indexes out of #ifndef.
Fixes #2979
|