Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package fcft for openSUSE:Factory checked in at 2021-07-02 13:27:56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/fcft (Old) and /work/SRC/openSUSE:Factory/.fcft.new.2625 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "fcft" Fri Jul 2 13:27:56 2021 rev:2 rq:903583 version:2.4.1 Changes: -------- --- /work/SRC/openSUSE:Factory/fcft/fcft.changes 2021-06-13 23:06:42.855730532 +0200 +++ /work/SRC/openSUSE:Factory/.fcft.new.2625/fcft.changes 2021-07-02 13:28:58.540058286 +0200 @@ -1,0 +2,10 @@ +Thu Jul 1 19:24:23 UTC 2021 - Arnav Singh <[email protected]> + +- Update to 2.4.1: + * Log messages are now printed to stderr instead of stdout. + * fcft_grapheme_rasterize() now sets a minimum grapheme column count of 2 + when the cluster ends with an Emoji variant selector (codepoint 0xFE0F). + * Fixed compilation error when fallback definition for FCFT_EXPORT was used + in meson.build. + +------------------------------------------------------------------- Old: ---- fcft-2.4.0.tar.gz New: ---- fcft-2.4.1.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ fcft.spec ++++++ --- /var/tmp/diff_new_pack.JdNuQs/_old 2021-07-02 13:28:58.996054748 +0200 +++ /var/tmp/diff_new_pack.JdNuQs/_new 2021-07-02 13:28:59.000054717 +0200 @@ -18,7 +18,7 @@ %define libname libfcft3 Name: fcft -Version: 2.4.0 +Version: 2.4.1 Release: 0 Summary: A library for font loading and glyph rasterization using FreeType/pixman License: MIT @@ -65,6 +65,9 @@ %install %meson_install +%post -n %{libname} -p /sbin/ldconfig +%postun -n %{libname} -p /sbin/ldconfig + %files -n %{libname} %{_libdir}/libfcft.so.* ++++++ fcft-2.4.0.tar.gz -> fcft-2.4.1.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fcft/CHANGELOG.md new/fcft/CHANGELOG.md --- old/fcft/CHANGELOG.md 2021-05-07 11:18:25.000000000 +0200 +++ new/fcft/CHANGELOG.md 2021-06-23 12:01:06.000000000 +0200 @@ -1,5 +1,6 @@ # Changelog +* [2.4.1](#2-4-1) * [2.4.0](#2-4-0) * [2.3.3](#2-3-3) * [2.3.2](#2-3-2) @@ -21,6 +22,28 @@ * [1.1.7](#1-1-7) +## 2.4.1 + +### Changed + +* Log messages are now printed to stderr instead of stdout. +* `fcft_grapheme_rasterize()` now sets a minimum grapheme column count + of 2 when the cluster ends with an Emoji variant selector (codepoint + 0xFE0F). + + +### Fixed + +* Compilation error when fallback definition for `FCFT_EXPORT` was used + in `meson.build`. + + +### Contributors + +* [emersion](https://codeberg.org/emersion) +* [craigbarnes](https://codeberg.org/craigbarnes) + + ## 2.4.0 ### Added diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fcft/PKGBUILD new/fcft/PKGBUILD --- old/fcft/PKGBUILD 2021-05-07 11:18:25.000000000 +0200 +++ new/fcft/PKGBUILD 2021-06-23 12:01:06.000000000 +0200 @@ -1,5 +1,5 @@ pkgname=fcft -pkgver=2.4.0 +pkgver=2.4.1 pkgrel=1 pkgdesc="Simple font loading and glyph rasterization library" changelog=CHANGELOG.md diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fcft/fcft.c new/fcft/fcft.c --- old/fcft/fcft.c 2021-05-07 11:18:25.000000000 +0200 +++ new/fcft/fcft.c 2021-06-23 12:01:06.000000000 +0200 @@ -1948,7 +1948,14 @@ unsigned count = hb_buffer_get_length(inst->hb_buf); const hb_glyph_info_t *info = hb_buffer_get_glyph_infos(inst->hb_buf, NULL); const hb_glyph_position_t *pos = hb_buffer_get_glyph_positions(inst->hb_buf, NULL); - const int width = max(0, wcswidth(cluster, len)); + + int grapheme_width = 0; + int min_grapheme_width = 0; + for (size_t i = 0; i < len; i++) { + if (cluster[i] == 0xfe0f) + min_grapheme_width = 2; + grapheme_width += wcwidth(cluster[i]); + } LOG_DBG("length: %u", hb_buffer_get_length(inst->hb_buf)); LOG_DBG("infos: %u", count); @@ -1970,7 +1977,7 @@ grapheme->len = len; grapheme->cluster = cluster_copy; grapheme->subpixel = subpixel; - grapheme->public.cols = width; + grapheme->public.cols = max(grapheme_width, min_grapheme_width); grapheme->public.glyphs = (const struct fcft_glyph **)glyphs; size_t glyph_idx = 0; @@ -1994,7 +2001,7 @@ assert(glyph->valid); glyph->public.wc = info[i].codepoint; - glyph->public.cols = width; + glyph->public.cols = wcwidth(info[i].codepoint); #if 0 LOG_DBG("grapheme: x: advance: %d -> %d, offset: %d -> %d", diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fcft/log.c new/fcft/log.c --- old/fcft/log.c 2021-05-07 11:18:25.000000000 +0200 +++ new/fcft/log.c 2021-06-23 12:01:06.000000000 +0200 @@ -47,20 +47,20 @@ char clr[16]; snprintf(clr, sizeof(clr), "\033[%dm", class_clr); - printf("%s%s%s: ", colorize ? clr : "", class, colorize ? "\033[0m" : ""); + fprintf(stderr, "%s%s%s: ", colorize ? clr : "", class, colorize ? "\033[0m" : ""); if (colorize) - printf("\033[2m"); - printf("%s:%d: ", file, lineno); + fprintf(stderr, "\033[2m"); + fprintf(stderr, "%s:%d: ", file, lineno); if (colorize) - printf("\033[0m"); + fprintf(stderr, "\033[0m"); - vprintf(fmt, va); + vfprintf(stderr, fmt, va); if (sys_errno != 0) - printf(": %s", strerror(sys_errno)); + fprintf(stderr, ": %s", strerror(sys_errno)); - printf("\n"); + fprintf(stderr, "\n"); } static void diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fcft/meson.build new/fcft/meson.build --- old/fcft/meson.build 2021-05-07 11:18:25.000000000 +0200 +++ new/fcft/meson.build 2021-06-23 12:01:06.000000000 +0200 @@ -1,5 +1,5 @@ project('fcft', 'c', - version: '2.4.0', # Don't forget to update version in man pages + version: '2.4.1', # Don't forget to update version in man pages license: 'MIT', meson_version: '>=0.54.0', default_options: [ @@ -20,7 +20,7 @@ so_version = [ '3', # MAJOR: increment on non-backward compatible ABI changes '4', # MINOR: increment with backward compatible ABI changes - '0', # PATCH: increment with non-ABI affecting changes + '1', # PATCH: increment with non-ABI affecting changes ] is_debug_build = get_option('buildtype').startswith('debug') @@ -31,7 +31,7 @@ ['-D_GNU_SOURCE=200809L'] + (is_debug_build ? ['-D_DEBUG'] : []) + (cc.has_function('memfd_create') ? ['-DMEMFD_CREATE'] : []) + - (cc.has_argument('-fvisibility=default') ? ['-DFCFT_EXPORT=__attribute__((visibility("default")))'] : ['-DFCFT_EXPORT=""']), + (cc.has_argument('-fvisibility=default') ? ['-DFCFT_EXPORT=__attribute__((visibility("default")))'] : ['-DFCFT_EXPORT=']), language: 'c') # Compute the relative path used by compiler invocations.
