Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package pango for openSUSE:Factory checked 
in at 2021-07-21 19:05:49
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/pango (Old)
 and      /work/SRC/openSUSE:Factory/.pango.new.2632 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "pango"

Wed Jul 21 19:05:49 2021 rev:131 rq:907040 version:1.48.7

Changes:
--------
--- /work/SRC/openSUSE:Factory/pango/pango.changes      2021-05-23 
23:30:40.100721441 +0200
+++ /work/SRC/openSUSE:Factory/.pango.new.2632/pango.changes    2021-07-21 
19:06:45.527330973 +0200
@@ -1,0 +2,25 @@
+Tue Jul 13 17:29:05 UTC 2021 - Dominique Leuenberger <[email protected]>
+
+- Add 3ff6365.patch, reverse applied: fix build of e.g. g-c-c. This
+  commit introduced a requirement to run X.
+
+-------------------------------------------------------------------
+Mon Jul  5 10:18:45 UTC 2021 - Bj??rn Lie <[email protected]>
+
+- Update to version 1.48.7:
+  + Fix a thread-safety issue in fontmap initialization.
+  + Small documentation improvements.
+
+-------------------------------------------------------------------
+Tue Jun 29 16:22:13 UTC 2021 - Bj??rn Lie <[email protected]>
+
+- Update to version 1.48.6:
+  + Avoid attribute index overflow.
+  + Add a new pango-segmentation utility.
+  + Documentation cleanups and fixes.
+  + Update script property data for gravity.
+  + Bring back careful glyph position rounding.
+  + Add a few missing bidi types.
+  + Add more tests.
+
+-------------------------------------------------------------------

Old:
----
  pango-1.48.5.obscpio

New:
----
  3ff6365.patch
  pango-1.48.7.obscpio

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ pango.spec ++++++
--- /var/tmp/diff_new_pack.d0LNw3/_old  2021-07-21 19:06:46.079331932 +0200
+++ /var/tmp/diff_new_pack.d0LNw3/_new  2021-07-21 19:06:46.083331940 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           pango
-Version:        1.48.5
+Version:        1.48.7
 Release:        0
 Summary:        Library for Layout and Rendering of Text
 License:        LGPL-2.1-or-later
@@ -26,6 +26,8 @@
 Source0:        %{name}-%{version}.tar.xz
 Source2:        macros.pango
 Source99:       baselibs.conf
+# PATCH-FIX-UPSTREAM 3ff6365.patch [email protected] -- Revert upstream 
commit, introduces runtime dep on X
+Patch0:         https://gitlab.gnome.org/GNOME/pango/-/commit/3ff6365.patch
 
 BuildRequires:  gcc-c++
 BuildRequires:  help2man
@@ -117,7 +119,8 @@
 to develop applications that require these.
 
 %prep
-%autosetup -p1
+%setup
+%patch0 -p1 -R
 
 %build
 %meson \
@@ -154,6 +157,7 @@
 
 %files tools
 %{_bindir}/pango-list
+%{_bindir}/pango-segmentation
 %{_bindir}/pango-view
 %{_mandir}/man1/pango-view.1%{ext_man}
 

++++++ 3ff6365.patch ++++++
>From d4356779945855f7cc950dbe162285ccf21bcce9 Mon Sep 17 00:00:00 2001
From: Matthias Clasen <[email protected]>
Date: Sun, 27 Jun 2021 11:31:13 -0400
Subject: [PATCH] shape: Bring back careful rounding code

When we added the round-glyph-positions option in
c43da2d3 and b5634799, we lost some code that was careful
to round in device coordinates.

The reason we lost it is that the rounding needs fontconfig-
specific data that is only available in the backend, and the
rounding now happens in the frontend.

Bringing it back is annoying, since we've run out of vfunc
slots to get info from the backend. This commit works around
that limitation in a hacky way.

Fixes: #562
---
 pango/shape.c | 77 ++++++++++++++++++++++++++++++++++++++++++++++++---
 1 file changed, 73 insertions(+), 4 deletions(-)

diff --git a/pango/shape.c b/pango/shape.c
index 04407732..b870ecad 100644
--- a/pango/shape.c
+++ b/pango/shape.c
@@ -151,6 +151,32 @@ fallback_shape (const char          *text,
     pango_glyph_string_reverse_range (glyphs, 0, glyphs->num_glyphs);
 }
 
+/* FIXME: This is very ugly. We are out of room for vfuncs, so we can't
+ * easily add api to get is_hinted and the matrix from the PangoFcFont.
+ *
+ * Keep in sync with pangofc-font.h!
+ */
+struct _PangoFcFont
+{
+  PangoFont parent_instance;
+
+  gpointer font_pattern;          /* fully resolved pattern */
+  PangoFontMap *fontmap;            /* associated map */
+  gpointer priv;                    /* used internally */
+  PangoMatrix matrix;               /* used internally */
+  PangoFontDescription *description;
+
+  GSList *metrics_by_lang;
+
+  guint is_hinted : 1;
+  guint is_transformed : 1;
+};
+typedef struct _PangoFcFont PangoFcFont;
+
+#define PANGO_IS_FC_FONT(obj) \
+  g_type_is_a (((GTypeInstance*)obj)->g_class->g_type, \
+               g_type_from_name ("PangoFcFont"))
+
 /**
  * pango_shape_with_flags:
  * @item_text: valid UTF-8 text to shape
@@ -294,11 +320,54 @@ pango_shape_with_flags (const gchar         *item_text,
 
   if (flags & PANGO_SHAPE_ROUND_POSITIONS)
     {
-      for (i = 0; i < glyphs->num_glyphs; i++)
+      if (PANGO_IS_FC_FONT (analysis->font))
         {
-          glyphs->glyphs[i].geometry.width    = PANGO_UNITS_ROUND 
(glyphs->glyphs[i].geometry.width );
-          glyphs->glyphs[i].geometry.x_offset = PANGO_UNITS_ROUND 
(glyphs->glyphs[i].geometry.x_offset);
-          glyphs->glyphs[i].geometry.y_offset = PANGO_UNITS_ROUND 
(glyphs->glyphs[i].geometry.y_offset);
+          PangoFcFont *fc_font = (PangoFcFont *)analysis->font;
+          if (fc_font->is_hinted)
+            {
+              double x_scale_inv, y_scale_inv;
+              double x_scale, y_scale;
+
+              x_scale_inv = y_scale_inv = 1.0;
+              pango_matrix_get_font_scale_factors (&fc_font->matrix, 
&x_scale_inv, &y_scale_inv);
+              if (PANGO_GRAVITY_IS_IMPROPER (analysis->gravity))
+                {
+                  x_scale_inv = -x_scale_inv;
+                  y_scale_inv = -y_scale_inv;
+                }
+              x_scale = 1. / x_scale_inv;
+              y_scale = 1. / y_scale_inv;
+
+              if (x_scale == 1.0 && y_scale == 1.0)
+                {
+                  for (i = 0; i < glyphs->num_glyphs; i++)
+                    glyphs->glyphs[i].geometry.width = PANGO_UNITS_ROUND 
(glyphs->glyphs[i].geometry.width);
+                }
+              else
+                {
+    #if 0
+                  if (PANGO_GRAVITY_IS_VERTICAL (analysis->gravity))
+                    {
+                      /* XXX */
+                      double tmp = x_scale;
+                      x_scale = y_scale;
+                      y_scale = -tmp;
+                    }
+    #endif
+    #define HINT(value, scale_inv, scale) (PANGO_UNITS_ROUND ((int) ((value) * 
scale)) * scale_inv)
+    #define HINT_X(value) HINT ((value), x_scale, x_scale_inv)
+    #define HINT_Y(value) HINT ((value), y_scale, y_scale_inv)
+                  for (i = 0; i < glyphs->num_glyphs; i++)
+                    {
+                      glyphs->glyphs[i].geometry.width    = HINT_X 
(glyphs->glyphs[i].geometry.width);
+                      glyphs->glyphs[i].geometry.x_offset = HINT_X 
(glyphs->glyphs[i].geometry.x_offset);
+                      glyphs->glyphs[i].geometry.y_offset = HINT_Y 
(glyphs->glyphs[i].geometry.y_offset);
+                    }
+    #undef HINT_Y
+    #undef HINT_X
+    #undef HINT
+                }
+            }
         }
     }
 }
-- 
GitLab

++++++ _service ++++++
--- /var/tmp/diff_new_pack.d0LNw3/_old  2021-07-21 19:06:46.115331995 +0200
+++ /var/tmp/diff_new_pack.d0LNw3/_new  2021-07-21 19:06:46.115331995 +0200
@@ -2,7 +2,7 @@
   <service name="obs_scm" mode="disabled">
     <param name="url">https://gitlab.gnome.org/GNOME/pango.git</param>
     <param name="scm">git</param>
-    <param name="revision">refs/tags/1.48.5</param>
+    <param name="revision">1.48.7</param>
     <param name="versionformat">@PARENT_TAG@+@TAG_OFFSET@</param>
     <param name="versionrewrite-pattern">(.*)\+0</param>
     <param name="versionrewrite-replacement">\1</param>

++++++ pango-1.48.5.obscpio -> pango-1.48.7.obscpio ++++++
++++ 10532 lines of diff (skipped)

++++++ pango.obsinfo ++++++
--- /var/tmp/diff_new_pack.d0LNw3/_old  2021-07-21 19:06:46.371332440 +0200
+++ /var/tmp/diff_new_pack.d0LNw3/_new  2021-07-21 19:06:46.371332440 +0200
@@ -1,5 +1,5 @@
 name: pango
-version: 1.48.5
-mtime: 1621345915
-commit: 3940a1714e84b076d04d4638c88df3dba7d8014e
+version: 1.48.7
+mtime: 1625320606
+commit: 467bda1e0bc2614b10e2edc46dccc9588388e045
 

Reply via email to