Hello community, here is the log from the commit of package fontforge for openSUSE:Factory checked in at 2020-04-25 20:14:45 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/fontforge (Old) and /work/SRC/openSUSE:Factory/.fontforge.new.2738 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "fontforge" Sat Apr 25 20:14:45 2020 rev:50 rq:796236 version:20200314 Changes: -------- --- /work/SRC/openSUSE:Factory/fontforge/fontforge.changes 2019-11-08 15:21:11.694707201 +0100 +++ /work/SRC/openSUSE:Factory/.fontforge.new.2738/fontforge.changes 2020-04-25 20:16:55.352611429 +0200 @@ -1,0 +2,66 @@ +Wed Apr 15 18:30:12 UTC 2020 - Antonio Larrosa <[email protected]> + +- Update to version 20200314: + * FontForge now has much improved stroke expansion functionality. + The main change is that it actually works most of the time. New + features include support for arbitrary convex nibs and the + miter-clip and arc join styles from SVG 2. All functionality is + accessible from the Python and native APIs. + * Remove overlap handles certain important edge cases better. + * The Python API now has a function called genericGlyphChange + that matches the "Change Glyph" command in the GUI. See #4133 + for more details. + * The Python API now has functions for getting Unicode script and + for interrogating glyph boundaries. + * One can now use text flags (rather than just numerical flags) + when opening a font file via the Python API. + * UFO import now outputs the note field properly. + * SVG import is much more robust. + * We have dropped most gnulib and autotools logic in favor of + CMake, which dramatically simplifies the build system and just + as dramatically improves build time. + * As part of the switch to CMake, per the deprecation of + Python 2, and per the lack of objections to the proposal on + the mailing list, we have dropped support for building + FontForge with Python 2 support. The non-build-system Python 2 + code remains, but it is neither tested nor maintained nor + supported and is likely to follow a trajectory of decay and + then removal. + * Documentation is now rendered in Sphinx, which makes + maintenance and improvement easier. + * Translations now happen on crowdin, which makes contributions + easier. + * We got such a contribution for Croatian. + * Character view point coloring is more consistent, and preview + fills support transparency. + * The user can now move and close tabs in the character view. + * The metrics view now allows for entry of negative kerning + values and runs a bit more smoothly. + * There is now a warning when a user is about to discard an + unsaved script. + * We fixed bugs all over, as always, with particular attention + given to the metrics view, Python, Spiro, and high-resolution + displays. + * Notes on build system changes: + + libgutils and libgunicode have been combined into + libfontforge + + libgdraw and libfontforgeexe have been combined into the + fontforge executable itself + + No development files are installed (headers, or pkg-config). + This is because we do not provide a stable API or ABI to work + against, nor are the headers actually well configured to be + used externally. We are also not aware of any maintained + product that compiles against FontForge itself. + * Fixes use-after-free (heap) in the SFD_GetFontMetaData() + function and fix NULL pointer dereference in the + SFDGetSpiros() and SFD_AssignLookups() function(bnc#1160220, + bnc#1160236, CVE-2020-5395, CVE-2020-5496). + +- Drop patch that isn't needed anymore: + * python38_config.patch + +- Add patches to fix build: + * fix-return-statement.patch + * fix-sphinx-doc.patch (only for Leap 15.2) + +------------------------------------------------------------------- Old: ---- fontforge-20190801-repacked.tar.xz python38_config.patch New: ---- fix-return-statement.patch fix-sphinx-doc.patch fontforge-20200314-repacked.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ fontforge.spec ++++++ --- /var/tmp/diff_new_pack.VruJIl/_old 2020-04-25 20:17:00.100621218 +0200 +++ /var/tmp/diff_new_pack.VruJIl/_new 2020-04-25 20:17:00.100621218 +0200 @@ -1,7 +1,7 @@ # # spec file for package fontforge # -# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2020 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,29 +17,30 @@ Name: fontforge -Version: 20190801 +Version: 20200314 Release: 0 Summary: A Font Editor License: GPL-3.0-or-later URL: http://fontforge.org/ -# Source: https://github.com/fontforge/fontforge/archive/%{version}.tar.gz +# Source: https://github.com/fontforge/fontforge/archive/%%{version}.tar.gz # see bug 926061, fontforge-*-repacked.tar.xz does not contain fontforge-*/win/gold/libX11-*.noarch.rpm Source0: fontforge-%{version}-repacked.tar.xz Source1: get-source.sh # workardound for bug 930076, imho upstream should fix this # https://github.com/fontforge/fontforge/issues/2270 Patch0: fontforge-version.patch -# fix for build with python38 -Patch1: python38_config.patch -BuildRequires: autoconf -BuildRequires: automake +Patch1: fix-return-statement.patch +Patch2: fix-sphinx-doc.patch BuildRequires: cairo-devel +BuildRequires: cmake BuildRequires: fdupes BuildRequires: fontconfig-devel BuildRequires: freetype2-devel +BuildRequires: gcc-c++ BuildRequires: gettext-tools BuildRequires: giflib-devel BuildRequires: git +BuildRequires: gtk3-devel BuildRequires: hicolor-icon-theme BuildRequires: libjpeg-devel BuildRequires: libpng-devel @@ -49,8 +50,11 @@ BuildRequires: libxml2-devel BuildRequires: pango-devel BuildRequires: pkgconfig +BuildRequires: python3-Sphinx BuildRequires: python3-devel +BuildRequires: readline-devel BuildRequires: update-desktop-files +BuildRequires: woff2-devel BuildRequires: zlib-devel BuildRequires: pkgconfig(x11) BuildRequires: pkgconfig(xft) @@ -94,25 +98,22 @@ %prep %setup -q %patch0 -p1 -%if 0%{?python3_version_nodots} >= 38 %patch1 -p1 +%if %{?suse_version} < 1550 +%patch2 -p1 %endif -sed -i 's/\r$//' doc/html/{Big5.txt,corpchar.txt} %build -./bootstrap --force -%configure \ - --disable-static \ - --enable-pyextension \ - --with-regular-link \ - --docdir=%{_docdir}/%{name}/html -make %{?_smp_mflags} +%cmake \ + -DCMAKE_INSTALL_DOCDIR=%{_docdir}/%{name}/html %install -%make_install +%cmake_install %suse_update_desktop_file -i org.fontforge.FontForge VectorGraphics %find_lang FontForge find %{buildroot} -type f -name "*.la" -delete -print +rm %{buildroot}%{_docdir}/%{name}/html/.buildinfo +rm %{buildroot}%{_docdir}/%{name}/html/.nojekyll %fdupes -s %{buildroot}%{_datadir}/%{name} %post -p /sbin/ldconfig @@ -129,7 +130,6 @@ %{_datadir}/applications/org.fontforge.FontForge.desktop %{_datadir}/icons/hicolor/*/apps/org.fontforge.FontForge.png %{_datadir}/icons/hicolor/scalable/apps/org.fontforge.FontForge.svg -%{_datadir}/appdata/org.fontforge.FontForge.appdata.xml %{_datadir}/metainfo/org.fontforge.FontForge.*.xml %{_datadir}/pixmaps/org.fontforge.FontForge.* %{_datadir}/mime/packages/%{name}.xml @@ -142,8 +142,6 @@ %files devel %doc CONTRIBUTING.md -%{_includedir}/fontforge/ -%{_libdir}/pkgconfig/*.pc %{_libdir}/lib*.so %changelog ++++++ fix-return-statement.patch ++++++ Index: fontforge-20200314/gdraw/ggdkdraw.c =================================================================== --- fontforge-20200314.orig/gdraw/ggdkdraw.c +++ fontforge-20200314/gdraw/ggdkdraw.c @@ -2333,6 +2333,7 @@ static void GGDKDrawSyncThread(GDisplay static GWindow GGDKDrawPrinterStartJob(GDisplay *UNUSED(gdisp), void *UNUSED(user_data), GPrinterAttrs *UNUSED(attrs)) { Log(LOGERR, " "); assert(false); + return (GWindow)0L; } static void GGDKDrawPrinterNextPage(GWindow UNUSED(w)) { @@ -2343,6 +2344,7 @@ static void GGDKDrawPrinterNextPage(GWin static int GGDKDrawPrinterEndJob(GWindow UNUSED(w), int UNUSED(cancel)) { Log(LOGERR, " "); assert(false); + return 0; } Index: fontforge-20200314/fontforgeexe/cvimportdlg.c =================================================================== --- fontforge-20200314.orig/fontforgeexe/cvimportdlg.c +++ fontforge-20200314/fontforgeexe/cvimportdlg.c @@ -710,6 +710,7 @@ static int GFD_Options(GGadget *g, GEven _ImportParamsDlg(ImportParamsState()); d->opts_shown = true; } + return 0; } static int e_h(GWindow gw, GEvent *event) { ++++++ fix-sphinx-doc.patch ++++++ Index: fontforge-20200314/doc/sphinx/techref/splinefont.rst =================================================================== --- fontforge-20200314.orig/doc/sphinx/techref/splinefont.rst +++ fontforge-20200314/doc/sphinx/techref/splinefont.rst @@ -195,7 +195,7 @@ The bounding box of a :ref:`Spline <spli :ref:`SplineChar <splinefont.SplineChar>`, :ref:`RefChar <splinefont.RefChar>`, :ref:`Image <splinefont.ImageList>`, or whatever else needs a bounding box. -.. code-block:: +.. code-block:: cpp :name: splinefont.BDFFloat typedef struct bdffloat { @@ -206,7 +206,7 @@ The bounding box of a :ref:`Spline <spli The floating selection in a :ref:`BDFChar <splinefont.BDFChar>`. -.. code-block:: +.. code-block:: cpp :name: splinefont.Undoes typedef struct undoes { @@ -277,7 +277,7 @@ both the splines and the bitmaps of a ch ut_mult is used when doing a copy from the FontView where you are copying more than one character. -.. code-block:: +.. code-block:: cpp :name: splinefont.BDFChar typedef struct bdfchar { @@ -318,7 +318,7 @@ represented by a byte rather than a bit. The last thing in the BDFChar is a (/an optional) floating selection. Only present if the user has made a selection or done a paste or something like that. -.. code-block:: +.. code-block:: cpp :name: splinefont.BDFFont typedef struct bdffont { @@ -345,7 +345,7 @@ contains a count of the number of entrie itself. Currently the number of entries here is always 16, but that could change. -.. code-block:: +.. code-block:: cpp :name: splinefont.SplinePoint enum pointtype { pt_curve, pt_corner, pt_tangent }; @@ -405,7 +405,7 @@ drawing it. They are cached so they don' There's a different set of lines for every scale (as there is a different amount of visible detail). They get freed and regenerated if the Spline changes. -.. code-block:: +.. code-block:: cpp :name: splinefont.Spline typedef struct spline1d { @@ -439,7 +439,7 @@ some are used in other places too. The Spline1D structures give the equations for the x and y coordinates respectively (splines[0] is for x, splines[1] is for y). -.. code-block:: +.. code-block:: cpp :name: splinefont.SplinePointList typedef struct splinepointlist { @@ -463,7 +463,7 @@ to). A SplinePointList is a connected pa Generally a series of paths will make up a character, and they are linked together on the next field. -.. code-block:: +.. code-block:: cpp :name: splinefont.RefChar typedef struct refchar { @@ -498,7 +498,7 @@ themselves). The selected field indicate field provides a transformed bounding box. And the sc field points to the SplineChar we are referring to. -.. code-block:: +.. code-block:: cpp :name: splinefont.KernPair typedef struct kernpair { @@ -514,7 +514,7 @@ offset between them (or rather the diffe and right bearings would lead you to believe it should be). Next points to the next kernpair. -.. code-block:: +.. code-block:: cpp :name: splinefont.Hints typedef struct hints { @@ -532,7 +532,7 @@ y space) of where the stem starts, and w negative (in which case base is where the stem ends). Next points to the next hint for the character. -.. code-block:: +.. code-block:: cpp :name: splinefont.ImageList typedef struct imagelist { @@ -551,7 +551,7 @@ not support any other transformations on transformations have been applied. The next field points to the next image, and selected indicates whether this one is selected or not. -.. code-block:: +.. code-block:: cpp :name: splinefont.SplineChar typedef struct splinechar { @@ -623,7 +623,7 @@ follow this one. For instance the combin SplineChar representing "V" would have a pointer to a :ref:`KernPair <splinefont.KernPair>` with data on "A". -.. code-block:: +.. code-block:: cpp :name: splinefont.SplineFont typedef struct splinefont { Index: fontforge-20200314/doc/sphinx/ui/misc/fontforge-themes.rst =================================================================== --- fontforge-20200314.orig/doc/sphinx/ui/misc/fontforge-themes.rst +++ fontforge-20200314/doc/sphinx/ui/misc/fontforge-themes.rst @@ -4,7 +4,7 @@ FontForge color schemes The following are some suggestions for color schemes. You simply copy these into your ~/.Xdefaults file and then run -.. code-block:: +.. code-block:: bash :name: fontforge-themes.shell $ xrdb ~/.Xdefaults Index: fontforge-20200314/doc/sphinx/conf.py =================================================================== --- fontforge-20200314.orig/doc/sphinx/conf.py +++ fontforge-20200314/doc/sphinx/conf.py @@ -43,6 +43,7 @@ templates_path = ['_templates'] # This pattern also affects html_static_path and html_extra_path. exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store'] +master_doc = 'index' # -- Options for HTML output ------------------------------------------------- ++++++ fontforge-20190801-repacked.tar.xz -> fontforge-20200314-repacked.tar.xz ++++++ /work/SRC/openSUSE:Factory/fontforge/fontforge-20190801-repacked.tar.xz /work/SRC/openSUSE:Factory/.fontforge.new.2738/fontforge-20200314-repacked.tar.xz differ: char 26, line 1 ++++++ get-source.sh ++++++ --- /var/tmp/diff_new_pack.VruJIl/_old 2020-04-25 20:17:00.168621358 +0200 +++ /var/tmp/diff_new_pack.VruJIl/_new 2020-04-25 20:17:00.168621358 +0200 @@ -19,8 +19,7 @@ git clone https://github.com/troydhanson/uthash git clone --depth 1 https://github.com/coreutils/gnulib.git gnulib # remove not shippable files (bug 926061) -rm win/gold/libX11-*.noarch.rpm -./bootstrap --copy --force +# rm win/gold/libX11-*.noarch.rpm popd tar cJf fontforge-$VERSION-repacked.tar.xz fontforge-$VERSION rm -rf fontforge-$VERSION
