Commit graph

87 commits

Author SHA1 Message Date
ryoon
d78182cfff FIx buildlink3.mk to remove graphite2 support 2017-02-12 06:27:04 +00:00
ryoon
0bc83c9e11 Disable graphite2 support. Bump PKGREVISION
Enabling graphite2 causes segfault in graphics/librsvg
and SVG support in GTK2 is required for some packages.
2017-02-12 01:29:30 +00:00
wiz
aba1c3c362 Updated harfbuzz to 1.4.2.
Enable graphite2 dependency, as libreoffice seems to want it.

Overview of changes leading to 1.4.2
Monday, January 23, 2017
====================================

- Implement OpenType Font Variation tables avar/fvar/HVAR/VVAR.
- hb-shape and hb-view now accept --variations.
- New API:

hb_variation_t
hb_variation_from_string()
hb_variation_to_string()

hb_font_set_variations()
hb_font_set_var_coords_design()
hb_font_get_var_coords_normalized()

hb-ot-var.h:
hb_ot_var_axis_t
hb_ot_var_has_data()
hb_ot_var_get_axis_count()
hb_ot_var_get_axes()
hb_ot_var_find_axis()
hb_ot_var_normalize_variations()
hb_ot_var_normalize_coords()

- MVAR to be implemented later.  Access to named instances to be
  implemented later as well.

- Misc fixes.
2017-02-06 12:45:09 +00:00
wiz
bb7c0f0ff5 Updated harfbuzz to 1.4.1.
Overview of changes leading to 1.4.1
Thursday, January 5, 2017
====================================

- Always build and use UCDN for Unicode data by default.
  Reduces dependence on version of Unicode data in glib,
  specially in the Windows bundles we are shipping, which
  have very old glib.


Overview of changes leading to 1.4.0
Thursday, January 5, 2017
====================================

- Merged "OpenType GX" branch which adds core of support for
  OpenType 1.8 Font Variations.  To that extent, the relevant
  new API is:

New API:
hb_font_set_var_coords_normalized()

  with supporting API:

New API:
HB_OT_LAYOUT_NO_VARIATIONS_INDEX
hb_ot_layout_table_find_feature_variations()
hb_ot_layout_feature_with_variations_get_lookups()
hb_shape_plan_create2()
hb_shape_plan_create_cached2()

  Currently variations in GSUB/GPOS/GDEF are fully supported,
  and no other tables are supported.  In particular, fvar/avar
  are NOT supported, hence the hb_font_set_var_coords_normalized()
  taking normalized coordinates.  API to take design coordinates
  will be added in the future.

  HVAR/VVAR/MVAR support will also be added to hb-ot-font in the
  future.

- Fix regression in GDEF glyph class processing.
- Add decompositions for Chakma, Limbu, and Balinese in USE shaper.
- Misc fixes.
2017-01-16 11:10:44 +00:00
wiz
67ce90a9ac Updated harfbuzz to 1.3.4.
Overview of changes leading to 1.3.4
Monday, December 5, 2016
====================================

- Fix vertical glyph origin in hb-ot-font.
- Implement CBDT/CBLC color font glyph extents in hb-ot-font.
2016-12-12 14:50:51 +00:00
ryoon
36ed025474 Recursive revbump from textproc/icu 58.1 2016-12-04 05:17:03 +00:00
wiz
79154b35fb Updated harfbuzz to 1.3.3.
Overview of changes leading to 1.3.3
Wednesday, September 28, 2016
====================================

- Implement parsing of OpenType MATH table.
New API:
HB_OT_TAG_MATH
HB_OT_MATH_SCRIPT
hb_ot_math_constant_t
hb_ot_math_kern_t
hb_ot_math_glyph_variant_t
hb_ot_math_glyph_part_flags_t
hb_ot_math_glyph_part_t
hb_ot_math_has_data
hb_ot_math_get_constant
hb_ot_math_get_glyph_italics_correction
hb_ot_math_get_glyph_top_accent_attachment
hb_ot_math_get_glyph_kerning
hb_ot_math_is_glyph_extended_shape
hb_ot_math_get_glyph_variants
hb_ot_math_get_min_connector_overlap
hb_ot_math_get_glyph_assembly
2016-10-31 16:15:27 +00:00
wiz
553841b571 Updated harfbuzz to 1.3.2.
Overview of changes leading to 1.3.2
Wednesday, September 27, 2016
====================================

- Fix build of hb-coretext on older OS X versions.
2016-10-03 12:30:35 +00:00
jperkin
fb63abc9a4 Fix build on older Darwin. 2016-09-26 11:30:42 +00:00
wiz
d5fc3f8939 Updated harfbuzz to 1.3.1.
Overview of changes leading to 1.3.1
Wednesday, September 7, 2016
====================================

- Blacklist bad GDEF of more fonts (Padauk).
- More CoreText backend crash fixes with OS X 10.9.5.
- Misc fixes.
2016-09-12 07:34:41 +00:00
wiz
7b4952b884 Updated harfbuzz to 1.3.0.
Overview of changes leading to 1.3.0
Thursday, July 21, 2016
====================================

- Update to Unicode 9.0.0
- Move Javanese from Indic shaper to Universal Shaping Engine.
- Allow MultipleSubst to delete a glyph (matching Windows engine).
- Update Universal Shaping Engine to latest draft from Microsoft.
- DirectWrite backend improvements.  Note: this backend is for testing ONLY.
- CoreText backend improvements with unreachable fonts.
- Implement symbol fonts (cmap 3.0.0) in hb-ft and hb-ot-font.
- Blacklist bad GDEF of more fonts (Tahoma & others).
- Misc fixes.
2016-07-24 18:50:57 +00:00
wiz
32dc81c4dc Updated harfbuzz to 1.2.7.
Overview of changes leading to 1.2.7
Monday, May 2, 2016
====================================

- Blacklist another version of Times New Roman (Bold) Italic from Windows 7.
- Fix Mongolian Free Variation Selectors shaping with certain fonts.
- Fix Tibetan shorthand contractions shaping.
- Improved list of language tag mappings.
- Unbreak build on Windows CE.
- Make 'glyf' table loading lazy in hb-ot-font.
2016-05-12 14:03:27 +00:00
ryoon
ac20a93574 Recursive revbump from textproc/icu 57.1 2016-04-11 19:01:33 +00:00
prlw1
9373f172f9 Update harfbuzz to 1.2.6
Friday, April 8, 2016
====================================

- Blacklist GDEF table of another set of Times New Roman (Bold) Italic.
- DirectWrite backend improvements.  Note: DirectWrite backend is
  exclusively for our internal testing and should NOT be used in any
  production system whatsoever.
2016-04-10 20:16:49 +00:00
prlw1
eb0912bfd3 Update harfbuzz to 1.2.5
Overview of changes leading to 1.2.5
Monday, April 4, 2016
====================================

- Fix GDEF mark-filtering-set, which was broken in 1.2.3.


Overview of changes leading to 1.2.4
Thursday, March 17, 2016
====================================

- Synthesize GDEF glyph class for any glyph that does not have one in GDEF.
  I really hope we don't discover broken fonts that shape badly with this
  change.
- Misc build and other minor fixes.
- API changes:
  - Added HB_NDEBUG.  It's fine for production systems to define this to
    disable high-overhead debugging checks.  However, I also reduced the
    overhead of those checks, so it's a non-issue right now.  You can
    forget it.  Just not defining anything at all is fine.
2016-04-07 18:08:18 +00:00
wiz
6bd80814bd Update harfbuzz to 1.2.3.
Overview of changes leading to 1.2.3
Thursday, February 25, 2016
====================================

- Blacklist GDEF table of certain versions of Times New Roman (Bold) Italic,
  due to bug in glyph class of ASCII double-quote character.  This should
  address "regression" introduced in 1.2.0 when we switched mark zeroing
  in most shapers from BY_UNICODE_LATE to BY_GDEF_LATE.
  This fourth release in a week should finally stablize things...

- hb-ot-font's get_glyph() implementation saw some optimizations.  Though,
  might be really hard to measure in real-world situations.

- Also, two rather small API changes:

We now disable some time-consuming internal bookkeeping if built with NDEBUG
defined.  This is a first time that we use NDEBUG to disable debug code.  If
there exist production systems that do NOT want to enable NDEBUG, please let
me know and I'll add HB_NDEBUG.

Added get_nominal_glyph() and get_variation_glyph() instead of get_glyph()

New API:
- hb_font_get_nominal_glyph_func_t
- hb_font_get_variation_glyph_func_t
- hb_font_funcs_set_nominal_glyph_func()
- hb_font_funcs_set_variation_glyph_func()
- hb_font_get_nominal_glyph()
- hb_font_get_variation_glyph()

Deprecated API:
- hb_font_get_glyph_func_t
- hb_font_funcs_set_glyph_func()

Clients that implement their own font-funcs are encouraged to replace
their get_glyph() implementation with a get_nominal_glyph() and
get_variation_glyph() pair.  The variation version can assume that
variation_selector argument is not zero.  Old (deprecated) functions
will continue working indefinitely using internal gymnastics; it is
just more efficient to use the new functions.


Overview of changes leading to 1.2.2
Wednesday, February 24, 2016
====================================

- Fix regression with mark positioning with fonts that have
  non-zero mark advances.  This was introduced in 1.2.0 while
  trying to make mark and cursive attachments to work together.
  I have partially reverted that, so this version is much more
  like what we had before.  All clients who updated to 1.2.0
  should update to this version.


Overview of changes leading to 1.2.1
Tuesday, February 23, 2016
====================================

- CoreText: Fix bug with wrong scale if font scale was changed later.
  https://github.com/libass/libass/issues/212
- CoreText: Drastically speed up font initialization.
- CoreText: Fix tiny leak.
- Group ZWJ/ZWNJ with previous syllable under cluster-level=0.
  https://github.com/behdad/harfbuzz/issues/217
- Add test/shaping/README.md about how to add tests to the suite.
2016-03-03 12:34:33 +00:00
jperkin
0051d670f0 Use OPSYSVARS. 2016-02-25 12:50:49 +00:00
wiz
d20db6c68a Update harfbuzz to 1.2.0:
Overview of changes leading to 1.2.0
Friday, February 19, 2016
====================================

- Fix various issues (hangs mostly) in case of memory allocation failure.
- Change mark zeroing types of most shapers from BY_UNICODE_LATE to
  BY_GDEF_LATE.  This seems to be what Uniscribe does.
- Change mark zeroing of USE shaper from NONE to BY_GDEF_EARLY.  That's
  what Windows does.
- Allow GPOS cursive connection on marks, and fix the interaction with
  mark attachment.  This work resulted in some changes to how mark
  attachments work.  See:
  https://github.com/behdad/harfbuzz/issues/211
  86c68c7a2c
- Graphite2 shaper: improved negative advance handling (eg. Nastaliq).
- Add nmake-based build system for Windows.
- Minor speedup.
- Misc. improvements.
2016-02-21 10:29:12 +00:00
wiz
62dc7a7d5a Update harfbuzz to 1.1.3:
Overview of changes leading to 1.1.3
Monday, January 11, 2016
====================================

- Ported Indic shaper to Unicode 8.0 data.
- Universal Shaping Engine fixes.
- Speed up CoreText shaper when font fallback happens in CoreText.
- Documentation improvements, thanks to Khaled Hosny.
- Very rough directwrite shaper for testing, thanks to Ebrahim Byagowi.
- Misc bug fixes.
- New API:

  * Font extents:
      hb_font_extents_t
      hb_font_get_font_extents_func_t
      hb_font_get_font_h_extents_func_t
      hb_font_get_font_v_extents_func_t
      hb_font_funcs_set_font_h_extents_func
      hb_font_funcs_set_font_v_extents_func
      hb_font_get_h_extents
      hb_font_get_v_extents
      hb_font_get_extents_for_direction

  * Buffer message (aka debug):
      hb_buffer_message_func_t
      hb_buffer_set_message_func()
    Actual message protocol to be fleshed out later.
2016-01-18 23:00:14 +00:00
wiz
9d91534fe9 Update harfbuzz to 1.1.2:
Overview of changes leading to 1.1.2
Wednesday, November 26, 2015
====================================

- Fix badly-broken fallback shaper that affected terminology.
  https://github.com/behdad/harfbuzz/issues/187
- Fix y_scaling in Graphite shaper.
- API changes:
  * An unset glyph_h_origin() function in font-funcs now (sensibly)
    implies horizontal origin at 0,0.  Ie, the nil callback returns
    true instead of false.  As such, implementations that have a
    glyph_h_origin() that simply returns true, can remove that function
    with HarfBuzz >= 1.1.2.  This results in a tiny speedup.
2015-12-02 06:58:57 +00:00
wiz
f82523827f Update to 1.1.1:
Overview of changes leading to 1.1.1
Wednesday, November 24, 2015
====================================

- Build fixes, specially for hb-coretext.
2015-11-25 10:39:46 +00:00
wiz
b4687395bd Add upstream bug report URL. 2015-11-24 08:20:51 +00:00
adam
1551aa3d8c Fix building on OS X 2015-11-23 20:02:15 +00:00
wiz
dff2d481b0 Update harfbuzz to 1.1.0:
Overview of changes leading to 1.1.0
Wednesday, November 18, 2015
====================================

- Implement 'stch' stretch feature for Syriac Abbreviation Mark.
  https://github.com/behdad/harfbuzz/issues/141
- Disable use of decompose_compatibility() callback.
- Implement "shaping" of various Unicode space characters, even
  if the font does not support them.
  https://github.com/behdad/harfbuzz/issues/153
- If font does not support U+2011 NO-BREAK HYPHEN, fallback to
  U+2010 HYPHEN.
- Changes resulting from libFuzzer continuous fuzzing:
  * Reject font tables that need more than 8 edits,
  * Bound buffer growth during shaping to 32x,
  * Fix assertions and other issues at OOM / buffer max-growth.
- Misc fixes and optimizations.
- API changes:
  * All fonts created with hb_font_create() now inherit from
    (ie. have parent) hb_font_get_empty().
2015-11-22 23:33:13 +00:00
agc
efd9ad4549 Remove duplicate SHA512 digests that crept in. 2015-11-04 17:41:15 +00:00
agc
b9f9b025f5 Add SHA512 digests for distfiles for fonts category
Problems found locating distfiles:
	Package acroread7-chsfont: missing distfile acrobat7-fonts/chsfont.tar.gz
	Package acroread7-font-share: missing distfile acrobat7-fonts/korfont.tar.gz
	Package acroread7-korfont: missing distfile acrobat7-fonts/korfont.tar.gz
	Package acroread9-chtfont: missing distfile acrobat9-fonts/FontPack910_cht_i486-linux.tar.bz2
	Package acroread9-jpnfont: missing distfile acrobat9-fonts/FontPack910_jpn_i486-linux.tar.bz2
	Package cyberbase-ttf: missing distfile cyberbit-ttf/Cyberbase.ZIP
	Package cyberbit-ttf: missing distfile cyberbit-ttf/Cyberbit.ZIP
	Package pixel-sagas-startrek: missing distfile PS_Font_Fontana.zip
	Package pixel-sagas-startrek: missing distfile PS_Font_Montalban.zip
	Package pixel-sagas-startrek: missing distfile PS_Font_Probert.zip
	Package pixel-sagas-startrek: missing distfile PS_Font_Sternbach.zip
	Package pixel-sagas-startrek: missing distfile PS_Font_Trek_Arrowcaps.zip
	Package umefont-ttf: missing distfile umefont_560.tar.xz

Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden).  All existing
SHA1 digests retained for now as an audit trail.
2015-11-03 20:44:27 +00:00
wiz
ea85d2c41d Update harfbuzz to 1.0.6:
Overview of changes leading to 1.0.6
Thursday, October 15, 2015
====================================

- Reduce max nesting level in OT lookups from 8 to 6.
  Should not affect any real font as far as I know.
- Fix memory access issue in ot-font.
- Revert default load-flags of fonts created using hb_ft_font_create()
  back to FT_LOAD_DEFAULT|FT_LOAD_NO_HINTING.  This was changed in
  last release (1.0.5), but caused major issues, so revert.
  https://github.com/behdad/harfbuzz/issues/143


Overview of changes leading to 1.0.5
Tuesday, October 13, 2015
====================================

- Fix multiple memory access bugs discovered using libFuzzer.
  https://github.com/behdad/harfbuzz/issues/139
  Everyone should upgrade to this version as soon as possible.
  We now have continuous fuzzing set up, to avoid issues like
  these creeping in again.
- Misc fixes.

- New API:
  * hb_font_set_parent().
  * hb_ft_font_[sg]et_load_flags()
    The default flags for fonts created using hb_ft_font_create()
    has changed to default to FT_LOAD_DEFAULT now.  Previously it
    was defaulting to FT_LOAD_DFEAULT|FT_LOAD_NO_HINTING.

- API changes:
  * Fonts now default to units-per-EM as their scale, instead of 0.
  * hb_font_create_sub_font() does NOT make parent font immutable
    anymore.  hb_font_make_immutable() does.
2015-10-21 08:29:02 +00:00
wiz
b5f6daba21 Update harfbuzz to 1.0.4:
Overview of changes leading to 1.0.4
Wednesday, September 30, 2015
====================================

- Fix minor out-of-bounds read error.
2015-10-15 10:57:36 +00:00
ryoon
b141232e29 Recursive revbump from textproc/icu 2015-10-10 01:57:50 +00:00
wiz
15ccde9dc1 Update to 1.0.3:
Overview of changes leading to 1.0.3
Tuesday, September 1, 2015
====================================

- Start of user documentation, from Simon Cozens!
- Implement glyph_extents() for TrueType fonts in hb-ot-font.
- Improve GPOS cursive attachments with conflicting lookups.
- More fixes for cluster-level = 1.
- Uniscribe positioning fix.
2015-09-06 20:30:26 +00:00
wiz
198d639ce2 Update to 1.0.2:
Overview of changes leading to 1.0.2
Wednesday, August 19, 2015
====================================

- Fix shaping with cluster-level > 0.
- Fix Uniscribe backend font-size scaling.
- Declare dependencies in harfbuzz.pc.
  FreeType is not declared though, to avoid bugs in pkg-config
  0.26 with recursive dependencies.
- Slightly improved debug infrastructure.  More to come later.
- Misc build fixes.
2015-08-23 13:40:14 +00:00
wiz
110e6ad7d3 Update to 1.0.1:
Overview of changes leading to 1.0.1
Monday, July 27, 2015
====================================

- Fix out-of-bounds access in USE shaper.


Overview of changes leading to 1.0.0
Sunday, July 26, 2015
====================================

- Implement Universal Shaping Engine:
  https://www.microsoft.com/typography/OpenTypeDev/USE/intro.htm
  http://blogs.windows.com/bloggingwindows/2015/02/23/windows-shapes-the-worlds-languages/
- Bump version to 1.0.0.  The soname was NOT bumped.


Overview of changes leading to 0.9.42
Thursday, July 26, 2015
=====================================

- New API to allow for retrieving finer-grained cluster
  mappings if the client desires to handle them.  Default
  behavior is unchanged.
- Fix cluster merging when removing default-ignorables.
- Update to Unicode 8.0
- hb-graphite2 fixes.
- Misc fixes.
- Removed HB_NO_MERGE_CLUSTERS hack.
- New API:
  hb_buffer_cluster_level_t enum
  hb_buffer_get_cluster_level()
  hb_buffer_set_cluster_level()
  hb-shape / hb-view --cluster-level
2015-07-28 12:18:40 +00:00
ryoon
3b6ad5b39a Update to 0.9.41
Changelog:
Overview of changes leading to 0.9.41
Thursday, June 18, 2015
=====================================

- Fix hb-coretext with trailing whitespace in right-to-left.
- New API: hb_buffer_reverse_range().
- Allow implementing atomic ops in config.h.
- Fix hb_language_t in language bindings.
- Misc fixes.
2015-06-30 10:33:53 +00:00
adam
9071d6b787 Revbump after updating textproc/icu 2015-04-06 08:17:13 +00:00
wiz
c23ff4e317 Update to 0.9.40:
Overview of changes leading to 0.9.40
Friday, March 20, 2015
=====================================

- Another hb-coretext crasher fix.  Ouch!
- Happy Norouz!
2015-04-02 22:39:22 +00:00
wiz
54504bbcee Update to 0.9.39:
Overview of changes leading to 0.9.39
Wednesday, March 4, 2015
=====================================

- Critical hb-coretext fixes.
- Optimizations and refactoring; no functional change
  expected.
- Misc build fixes.
2015-03-09 08:10:05 +00:00
wiz
a1e9f7a39b Add magic to fix freetype pc files on NetBSD 6 and 7 which had outdated
information in the installed pc file.
Remove local hack in fonts/harfbuzz.

From Leonardo Taccari <iamleot@gmail.com> in private email.
2015-02-18 09:53:27 +00:00
wiz
e32a93fb86 The freetype2 version in the pkg-config file was not properly
defined in NetBSD-6, NetBSD-7 and -current up to 7.99.4.
Manually override the detection since pkgsrc makes sure the proper
version is available.

Based on a patch by Leonardo Taccari on pkgsrc-changes.
2015-01-28 08:17:33 +00:00
wiz
e084c3e995 Update to 0.9.38:
Overview of changes leading to 0.9.38
Friday, January 23, 2015
=====================================

- Fix minor out-of-bounds access in Indic shaper.
- Change New Tai Lue shaping engine from South-East Asian to default,
  reflecting change in Unicode encoding model.
- Add hb-shape --font-size.  Can take up to two numbers for separate
  x / y size.
- Fix CoreText and FreeType scale issues with negative scales.
- Reject blobs larger than 2GB.  This might break some icu-le-hb clients
  that need security fixes.  See:
  http://www.icu-project.org/trac/ticket/11450
- Avoid accessing font tables during face destruction, in casce rogue
  clients released face data already.
- Fix up gobject-introspection a bit.  Python bindings kinda working.
  See README.python.
- Misc fixes.
- API additions:
  hb_ft_face_create_referenced()
  hb_ft_font_create_referenced()
2015-01-25 18:50:15 +00:00
wiz
28a2a4dba8 Update to 0.9.37:
Overview of changes leading to 0.9.37
Wednesday, December 17, 2014
=====================================

- Fix out-of-bounds access in Context lookup format 3.
- Indic: Allow ZWJ/ZWNJ before syllable modifiers.
2014-12-30 14:29:58 +00:00
wiz
3736c2bb65 Update to 0.9.36:
Overview of changes leading to 0.9.36
Thursday, November 20, 2014
=====================================

- First time that three months went by without a release since
  0.9.2 was released on August 10, 2012!
- Fix performance bug in hb_ot_collect_glyphs():
  https://bugzilla.mozilla.org/show_bug.cgi?id=1090869
- Add basic vertical-text support to hb-ot-font.
- Misc build fixes.
2014-11-23 15:09:36 +00:00
wiz
cda18437be Remove pkgviews: don't set PKG_INSTALLATION_TYPES in Makefiles. 2014-10-09 14:05:50 +00:00
adam
243c29c4cc Revbump after updating libwebp and icu 2014-10-07 16:47:10 +00:00
wiz
0d25f42506 Update to 0.9.35:
Overview of changes leading to 0.9.35
Saturday, August 13, 2014
=====================================

- Fix major shape-plan caching bug when more than one shaper were
  provided to hb_shape_full() (as exercised by XeTeX).
  http://www.mail-archive.com/debian-bugs-dist@lists.debian.org/msg1246370.html
- Fix Arabic fallback shaping regression.  This was broken in 0.9.32.
- Major hb-coretext fixes.  That backend is complete now, including
  respecing buffer direction and language, down to vertical writing.
- Build fixes for Windows CE.  Should build fine now.
- Misc fixes:
  Use atexit() only if it's safe to call from shared library
  https://bugs.freedesktop.org/show_bug.cgi?id=82246
  Mandaic had errors in its Unicode Joining_Type
  https://bugs.freedesktop.org/show_bug.cgi?id=82306
- API changes:

  * hb_buffer_clear_contents() does not reset buffer flags now.

    After 763e5466c0a03a7c27020e1e2598e488612529a7, one doesn't
    need to set flags for different pieces of text.  The flags now
    are something the client sets up once, depending on how it
    actually uses the buffer.  As such, don't clear it in
    clear_contents().

    I don't expect any changes to be needed to any existing client.
2014-08-17 16:43:47 +00:00
wiz
dc68f3776b Add upstream bug report URL. 2014-08-06 12:04:32 +00:00
wiz
6c020c5603 Libraries should not call atexit().
Bump PKGREVISION.
2014-08-06 11:59:31 +00:00
wiz
403341a9e4 Update to 0.9.34:
Overview of changes leading to 0.9.34
Saturday, August 2, 2014
=====================================

- hb_feature_from_string() now accepts CSS font-feature-settings format.
- As a result, hb-shape / hb-view --features also accept CSS-style strings.
  Eg, "'liga' off" is accepted now.
- Add old-spec Myanmar shaper:
  https://bugs.freedesktop.org/show_bug.cgi?id=81775
- Don't apply 'calt' in Hangul shaper.
- Fix mark advance zeroing for Hebrew shaper:
  https://bugs.freedesktop.org/show_bug.cgi?id=76767
- Implement Windows-1256 custom Arabic shaping.  Only built on Windows,
  and requires help from get_glyph().  Used by Firefox.
  https://bugzilla.mozilla.org/show_bug.cgi?id=1045139
- Disable 'liga' in vertical text.
- Build fixes.
- API changes:

  * Make HB_BUFFER_FLAG_BOT/EOT easier to use.

    Previously, we expected users to provide BOT/EOT flags when the
    text *segment* was at paragraph boundaries.  This meant that for
    clients that provide full paragraph to HarfBuzz (eg. Pango), they
    had code like this:

      hb_buffer_set_flags (hb_buffer,
                           (item_offset == 0 ? HB_BUFFER_FLAG_BOT : 0) |
                           (item_offset + item_length == paragraph_length ?
                            HB_BUFFER_FLAG_EOT : 0));

      hb_buffer_add_utf8 (hb_buffer,
                          paragraph_text, paragraph_length,
                          item_offset, item_length);

    After this change such clients can simply say:

      hb_buffer_set_flags (hb_buffer,
                           HB_BUFFER_FLAG_BOT | HB_BUFFER_FLAG_EOT);

      hb_buffer_add_utf8 (hb_buffer,
                          paragraph_text, paragraph_length,
                          item_offset, item_length);

    Ie, HarfBuzz itself checks whether the segment is at the beginning/end
    of the paragraph.  Clients that only pass item-at-a-time to HarfBuzz
    continue not setting any flags whatsoever.

    Another way to put it is: if there's pre-context text in the buffer,
    HarfBuzz ignores the BOT flag.  If there's post-context, it ignores
    EOT flag.
2014-08-05 19:21:47 +00:00
wiz
feb802b38e Update to 0.9.33:
Overview of changes leading to 0.9.33
Tuesday, July 22, 2014
=====================================

- Turn off ARabic 'cswh' feature that was accidentally turned on.
- Add HB_TAG_MAX_SIGNED.
- Make hb_face_make_immutable() really make face immutable!
- Windows build fixes.
2014-07-29 11:45:10 +00:00
wiz
76d526bafa Update to 0.9.32:
Overview of changes leading to 0.9.32
Thursday, July 17, 2014
=====================================

- Apply Arabic shaping features in spec order exactly.
- Another fix for Mongolian free variation selectors.
- For non-Arabic scripts in Arabic shaper apply 'rlig' and 'calt'
  together.
- Minor adjustment to U+FFFD logic.
- Fix hb-coretext build.


Overview of changes leading to 0.9.31
Wednesday, July 16, 2014
=====================================

- Only accept valid UTF-8/16/32; we missed many cases before.
- Better shaping of invalid UTF-8/16/32.  Falls back to
  U+FFFD REPLACEMENT CHARACTER now.
- With all changes in this release, the buffer will contain fully
  valid Unicode after hb_buffer_add_utf8/16/32 no matter how
  broken the input is.  This can be overriden though.  See below.
- Fix Mongolian Variation Selectors for fonts without GDEF.
- Fix minor invalid buffer access.
- Accept zh-Hant and zh-Hans language tags.  hb_ot_tag_to_language()
  now uses these instead of private tags.
- Build fixes.
- New API:
  * hb_buffer_add_codepoints().  This does what hb_buffer_add_utf32()
    used to do, ie. no validity check on the input at all.  add_utf32
    now replaces invalid Unicode codepoints with the replacement
    character (see below).
  * hb_buffer_set_replacement_codepoint()
  * hb_buffer_get_replacement_codepoint()
    Previously, in hb_buffer_add_utf8 and hb_buffer_add_utf16, when
    we detected broken input, we replaced that with (hb_codepoint_t)-1.
    This has changed to use U+FFFD now, but can be changed using these
    new API.


Overview of changes leading to 0.9.30
Wednesday, July 9, 2014
=====================================

- Update to Unicode 7.0.0:
  * New scripts Manichaean and Psalter Pahlavi are shaped using
    Arabic shaper.
  * All the other new scripts to through the generic shaper for
    now.
- Minor Indic improvements.
- Fix graphite2 backend cluster mapping [crasher!]
- API changes:
  * New HB_SCRIPT_* values for Unicode 7.0 scripts.
  * New function hb_ot_layout_language_get_required_feature().
- Build fixes.
2014-07-22 10:26:01 +00:00
wiz
c6dfbfcee5 Update to 0.9.29:
Overview of changes leading to 0.9.29
Thursday, May 29, 2014
=====================================

- Implement cmap in hb-ot-font.h.  No variation-selectors yet.
- Myanmar: Allow MedialYa+Asat.
- Various Indic fixes:
  * Support most characters in Extended Devanagary and Vedic
    Unicode blocks.
  * Allow digits and a some punctuation as consonant placeholders.
- Build fixes.
2014-06-05 16:36:19 +00:00