[packages/geary] - updated to 43.0; moved to libsoup3/gtk-webkit4.1 - added two patches from git for recent vala

qboosh qboosh at pld-linux.org
Sun May 21 17:41:51 CEST 2023


commit b177ebfc32aff7751ed4dd8dccaa0626c5ecf776
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Sun May 21 17:44:22 2023 +0200

    - updated to 43.0; moved to libsoup3/gtk-webkit4.1
    - added two patches from git for recent vala

 geary-non-null.patch       | 154 +++++++++++++++++++++++++++++++++++++++++++++
 geary-type-arguments.patch |  58 +++++++++++++++++
 geary.spec                 |  35 ++++++-----
 vala.patch                 |  65 -------------------
 4 files changed, 230 insertions(+), 82 deletions(-)
---
diff --git a/geary.spec b/geary.spec
index 0f092dd..b731b78 100644
--- a/geary.spec
+++ b/geary.spec
@@ -5,14 +5,15 @@
 Summary:	Geary - mail client for GNOME 3
 Summary(pl.UTF-8):	Geary - klient pocztowy dla GNOME 3
 Name:		geary
-Version:	40.0
-Release:	5
+Version:	43.0
+Release:	1
 License:	LGPL v2.1+
 Group:		X11/Applications/Mail
-Source0:	https://download.gnome.org/sources/geary/40/%{name}-%{version}.tar.xz
-# Source0-md5:	cb7b0af62e870ef77d65b3a2631ebb55
+Source0:	https://download.gnome.org/sources/geary/43/%{name}-%{version}.tar.xz
+# Source0-md5:	7630b0ec6cda7991407422853ed0fb75
 Patch0:		%{name}-meson.patch
-Patch1:		vala.patch
+Patch1:		%{name}-type-arguments.patch
+Patch2:		%{name}-non-null.patch
 URL:		https://wiki.gnome.org/Apps/Geary
 BuildRequires:	appstream-glib-devel >= 0.7.10
 BuildRequires:	cairo-devel
@@ -21,13 +22,13 @@ BuildRequires:	enchant2-devel >= 2.1
 BuildRequires:	folks-devel >= 0.11
 BuildRequires:	gcr-devel >= 3.10.1
 BuildRequires:	gettext-tools
-BuildRequires:	glib2-devel >= 1:2.66
+BuildRequires:	glib2-devel >= 1:2.68
 BuildRequires:	gmime3-devel >= 3.2.4
 BuildRequires:	gnome-online-accounts-devel
-BuildRequires:	gspell-devel
 BuildRequires:	gsound-devel
+BuildRequires:	gspell-devel
 BuildRequires:	gtk+3-devel >= 3.24.23
-BuildRequires:	gtk-webkit4-devel >= 2.30
+BuildRequires:	gtk-webkit4.1-devel >= 2.34
 BuildRequires:	iso-codes
 BuildRequires:	json-glib-devel >= 1.0
 BuildRequires:	libcanberra-devel >= 0.28
@@ -39,19 +40,19 @@ BuildRequires:	libnotify-devel >= 0.7.5
 BuildRequires:	libpeas-devel >= 1.24.0
 BuildRequires:	libpeas-gtk-devel >= 1.24.0
 BuildRequires:	libsecret-devel >= 0.11
-BuildRequires:	libsoup-devel >= 2.48
+BuildRequires:	libsoup3-devel >= 3.0
 BuildRequires:	libstemmer-devel
 BuildRequires:	libunwind-devel >= 1.1
 BuildRequires:	libxml2-devel >= 1:2.7.8
 BuildRequires:	libytnef-devel >= 1.9.3
-BuildRequires:	meson >= 0.55
+BuildRequires:	meson >= 0.59
 BuildRequires:	ninja >= 1.5
 BuildRequires:	pkgconfig
 BuildRequires:	rpmbuild(macros) >= 1.736
 BuildRequires:	sed >= 4.0
 BuildRequires:	sqlite3-devel >= 3.24
 BuildRequires:	tar >= 1:1.22
-BuildRequires:	vala >= 2:0.48.11
+BuildRequires:	vala >= 2:0.48.18
 BuildRequires:	vala-folks >= 0.11
 BuildRequires:	vala-gcr >= 3.10.1
 BuildRequires:	vala-gmime3 >= 3.2.4
@@ -66,16 +67,16 @@ BuildRequires:	vala-libsecret >= 0.11
 BuildRequires:	valadoc
 BuildRequires:	xz
 Requires(post,postun):	desktop-file-utils
-Requires(post,postun):	glib2 >= 1:2.66
+Requires(post,postun):	glib2 >= 1:2.68
 Requires(post,postun):	gtk-update-icon-cache
 Requires:	appstream-glib >= 0.7.10
 Requires:	enchant2 >= 2.1
 Requires:	folks >= 0.11
 Requires:	gcr >= 3.10.1
-Requires:	glib2 >= 1:2.66
+Requires:	glib2 >= 1:2.68
 Requires:	gmime3 >= 3.2.4
 Requires:	gtk+3 >= 3.24.23
-Requires:	gtk-webkit4 >= 2.30
+Requires:	gtk-webkit4.1 >= 2.34
 Requires:	hicolor-icon-theme
 %{?with_unity:Requires:	indicator-messages-libs >= 12.10}
 Requires:	iso-codes
@@ -86,7 +87,7 @@ Requires:	libhandy1 >= 1.2.1
 Requires:	libpeas >= 1.24.0
 Requires:	libpeas-gtk >= 1.24.0
 Requires:	libsecret >= 0.11
-Requires:	libsoup >= 2.48
+Requires:	libsoup3 >= 3.0
 Requires:	libunwind >= 1.1
 Requires:	libxml2 >= 1:2.7.8
 Requires:	libytnef >= 1.9.3
@@ -108,6 +109,7 @@ interfejsem.
 %setup -q
 %patch0 -p1
 %patch1 -p1
+%patch2 -p1
 
 %if %{without unity}
 %{__sed} -i -e '/^subdir.*messaging-menu/ d' src/client/plugin/meson.build
@@ -147,7 +149,7 @@ rm -rf $RPM_BUILD_ROOT
 %doc AUTHORS COPYING.icons NEWS README.md THANKS
 %attr(755,root,root) %{_bindir}/geary
 %dir %{_libdir}/geary
-%attr(755,root,root) %{_libdir}/geary/libgeary-client-40.0.so
+%attr(755,root,root) %{_libdir}/geary/libgeary-client-43.0.so
 %dir %{_libdir}/geary/web-extensions
 %attr(755,root,root) %{_libdir}/geary/web-extensions/libgeary-web-process.so
 %dir %{_libdir}/geary/plugins
@@ -193,7 +195,6 @@ rm -rf $RPM_BUILD_ROOT
 %{_iconsdir}/hicolor/scalable/actions/font-size-symbolic.svg
 %{_iconsdir}/hicolor/scalable/actions/format-*-symbolic*.svg
 %{_iconsdir}/hicolor/scalable/actions/mail-*-symbolic*.svg
-%{_iconsdir}/hicolor/scalable/actions/marker-symbolic.svg
 %{_iconsdir}/hicolor/scalable/actions/tag-symbolic*.svg
 %{_iconsdir}/hicolor/scalable/actions/text-x-generic-symbolic.svg
 %{_iconsdir}/hicolor/scalable/apps/org.gnome.Geary.svg
diff --git a/geary-non-null.patch b/geary-non-null.patch
new file mode 100644
index 0000000..fdd6bd2
--- /dev/null
+++ b/geary-non-null.patch
@@ -0,0 +1,154 @@
+From 10f9c133a2ad515127d65f3bba13a0d91b75f4af Mon Sep 17 00:00:00 2001
+From: Rico Tzschichholz <ricotz at ubuntu.com>
+Date: Fri, 14 Apr 2023 09:42:23 +0200
+Subject: [PATCH] vala-unit: Fix non-null build with newer vala
+
+---
+ .../vala-unit/src/collection-assertions.vala   | 12 ++++++------
+ subprojects/vala-unit/src/mock-object.vala     |  6 +++---
+ subprojects/vala-unit/src/test-assertions.vala | 18 +++++++++---------
+ 3 files changed, 18 insertions(+), 18 deletions(-)
+
+diff --git a/subprojects/vala-unit/src/collection-assertions.vala b/subprojects/vala-unit/src/collection-assertions.vala
+index 3b34acda1..29223a0d4 100644
+--- a/subprojects/vala-unit/src/collection-assertions.vala
++++ b/subprojects/vala-unit/src/collection-assertions.vala
+@@ -256,7 +256,7 @@ internal class ValaUnit.ArrayCollectionAssertion<E> : GLib.Object,
+ 
+     public CollectionAssertions<E> contains(E expected)
+         throws GLib.Error {
+-        E boxed_expected = box_value(expected);
++        E? boxed_expected = box_value(expected);
+         bool found = false;
+         for (int i = 0; i < this.actual.length; i++) {
+             try {
+@@ -281,7 +281,7 @@ internal class ValaUnit.ArrayCollectionAssertion<E> : GLib.Object,
+ 
+     public CollectionAssertions<E> not_contains(E expected)
+         throws GLib.Error {
+-        E boxed_expected = box_value(expected);
++        E? boxed_expected = box_value(expected);
+         for (int i = 0; i < this.actual.length; i++) {
+             try {
+                 assert_equal(box_value(this.actual[i]), boxed_expected);
+@@ -312,8 +312,8 @@ internal class ValaUnit.ArrayCollectionAssertion<E> : GLib.Object,
+                 this.context
+             );
+         }
+-        E boxed_actual = box_value(this.actual[index]);
+-        E boxed_expected = box_value(expected);
++        E? boxed_actual = box_value(this.actual[index]);
++        E? boxed_expected = box_value(expected);
+         try {
+             assert_equal(boxed_actual, boxed_expected);
+         } catch (TestError.FAILED err) {
+@@ -453,8 +453,8 @@ internal class ValaUnit.GeeCollectionAssertion<E> :
+         for (int i = 0; i <= index; i++) {
+             iterator.next();
+         }
+-        E boxed_actual = box_value(iterator.get());
+-        E boxed_expected = box_value(expected);
++        E? boxed_actual = box_value(iterator.get());
++        E? boxed_expected = box_value(expected);
+         try {
+             assert_equal(boxed_actual, boxed_expected);
+         } catch (TestError.FAILED err) {
+diff --git a/subprojects/vala-unit/src/mock-object.vala b/subprojects/vala-unit/src/mock-object.vala
+index 766777a43..eb086e10c 100644
+--- a/subprojects/vala-unit/src/mock-object.vala
++++ b/subprojects/vala-unit/src/mock-object.vala
+@@ -138,7 +138,7 @@ public interface ValaUnit.MockObject : GLib.Object, TestAssertions {
+         throws GLib.Error {
+         assert_false(this.expected.is_empty, "Unexpected call: %s".printf(name));
+ 
+-        ExpectedCall expected = this.expected.poll();
++        ExpectedCall expected = (!) this.expected.poll();
+         assert_equal(name, expected.name, "Unexpected call");
+         if (expected.expected_args != null) {
+             assert_args(args, expected.expected_args, "Call %s".printf(name));
+@@ -229,7 +229,7 @@ public interface ValaUnit.MockObject : GLib.Object, TestAssertions {
+                                           R default_return)
+         throws GLib.Error {
+         check_for_exception(expected);
+-        R? return_object = default_return;
++        R return_object = default_return;
+         if (expected.return_object != null) {
+             return_object = (R) expected.return_object;
+         }
+@@ -243,7 +243,7 @@ public interface ValaUnit.MockObject : GLib.Object, TestAssertions {
+         if (expected.return_object == null) {
+             throw default_error;
+         }
+-        return expected.return_object;
++        return (!) expected.return_object;
+     }
+ 
+     private inline void check_for_exception(ExpectedCall expected)
+diff --git a/subprojects/vala-unit/src/test-assertions.vala b/subprojects/vala-unit/src/test-assertions.vala
+index 784dd9fdd..e61fdf82d 100644
+--- a/subprojects/vala-unit/src/test-assertions.vala
++++ b/subprojects/vala-unit/src/test-assertions.vala
+@@ -21,8 +21,8 @@ namespace ValaUnit {
+ 
+     }
+ 
+-    internal inline void assert_equal<T>(T actual,
+-                                         T expected,
++    internal inline void assert_equal<T>(T? actual,
++                                         T? expected,
+                                          string? context = null)
+         throws TestError {
+         if ((actual == null && expected != null) ||
+@@ -107,9 +107,9 @@ namespace ValaUnit {
+      *
+      * This will only work when the values are not already boxed.
+      */
+-    internal T box_value<T>(T value) {
++    internal T? box_value<T>(T value) {
+         var type = typeof(T);
+-        T boxed = value;
++        T? boxed = value;
+ 
+         if (type == typeof(int) || type.is_enum()) {
+             int actual = (int) value;
+@@ -133,7 +133,7 @@ namespace ValaUnit {
+         return boxed;
+     }
+ 
+-    internal string to_display_string<T>(T value) {
++    internal string to_display_string<T>(T? value) {
+         var type = typeof(T);
+         var display = "";
+ 
+@@ -191,8 +191,8 @@ namespace ValaUnit {
+         );
+     }
+ 
+-    private void assert_equal_enum<T>(T actual,
+-                                      T expected,
++    private void assert_equal_enum<T>(T? actual,
++                                      T? expected,
+                                       string? context)
+         throws TestError {
+         int actual_val = (int) ((int?) actual);
+@@ -342,7 +342,7 @@ public interface ValaUnit.TestAssertions : GLib.Object {
+ 
+ 
+     /** Asserts a value is null */
+-    public void assert_non_null<T>(T actual, string? context = null)
++    public void assert_non_null<T>(T? actual, string? context = null)
+         throws TestError {
+         if (actual == null) {
+             ValaUnit.assert(
+@@ -353,7 +353,7 @@ public interface ValaUnit.TestAssertions : GLib.Object {
+     }
+ 
+     /** Asserts a value is null */
+-    public void assert_is_null<T>(T actual, string? context = null)
++    public void assert_is_null<T>(T? actual, string? context = null)
+         throws TestError {
+         if (actual != null) {
+             ValaUnit.assert(
+-- 
+GitLab
+
diff --git a/geary-type-arguments.patch b/geary-type-arguments.patch
new file mode 100644
index 0000000..02562e3
--- /dev/null
+++ b/geary-type-arguments.patch
@@ -0,0 +1,58 @@
+From 4a7ca820b1d3d6130fedf254dc5b4cd7efb58f2c Mon Sep 17 00:00:00 2001
+From: Rico Tzschichholz <ricotz at ubuntu.com>
+Date: Sat, 8 Apr 2023 13:06:50 +0200
+Subject: [PATCH] client: Add missing type-arguments for interfaces to fix
+ build with newer vala
+
+---
+ src/client/accounts/accounts-editor-row.vala          | 2 +-
+ src/client/accounts/accounts-editor-servers-pane.vala | 6 +++---
+ 2 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/src/client/accounts/accounts-editor-row.vala b/src/client/accounts/accounts-editor-row.vala
+index 6e7ac2ab9..70223d717 100644
+--- a/src/client/accounts/accounts-editor-row.vala
++++ b/src/client/accounts/accounts-editor-row.vala
+@@ -386,7 +386,7 @@ private abstract class Accounts.ServiceRow<PaneType,V> : AccountRow<PaneType,V>
+ 
+ 
+ /** Interface for rows that use a validator for editable values. */
+-internal interface Accounts.ValidatingRow : EditorRow {
++internal interface Accounts.ValidatingRow<PaneType> : EditorRow<PaneType> {
+ 
+ 
+     /** The row's validator */
+diff --git a/src/client/accounts/accounts-editor-servers-pane.vala b/src/client/accounts/accounts-editor-servers-pane.vala
+index 8bd9bde1f..982acd5cf 100644
+--- a/src/client/accounts/accounts-editor-servers-pane.vala
++++ b/src/client/accounts/accounts-editor-servers-pane.vala
+@@ -694,7 +694,7 @@ private class Accounts.SaveSentRow :
+ 
+ 
+ private class Accounts.ServiceHostRow :
+-    ServiceRow<EditorServersPane,Gtk.Entry>, ValidatingRow {
++    ServiceRow<EditorServersPane,Gtk.Entry>, ValidatingRow<EditorServersPane> {
+ 
+ 
+     public Components.Validator validator {
+@@ -848,7 +848,7 @@ private class Accounts.ServiceSecurityRow :
+ 
+ 
+ private class Accounts.ServiceLoginRow :
+-    ServiceRow<EditorServersPane,Gtk.Entry>, ValidatingRow {
++    ServiceRow<EditorServersPane,Gtk.Entry>, ValidatingRow<EditorServersPane> {
+ 
+ 
+     public Components.Validator validator {
+@@ -972,7 +972,7 @@ private class Accounts.ServiceLoginRow :
+ 
+ 
+ private class Accounts.ServicePasswordRow :
+-    ServiceRow<EditorServersPane,Gtk.Entry>, ValidatingRow {
++    ServiceRow<EditorServersPane,Gtk.Entry>, ValidatingRow<EditorServersPane> {
+ 
+ 
+     public Components.Validator validator {
+-- 
+GitLab
+
diff --git a/vala.patch b/vala.patch
deleted file mode 100644
index c07dfa3..0000000
--- a/vala.patch
+++ /dev/null
@@ -1,65 +0,0 @@
-From 0f75e7a84a39492d0748cec2ba6028e08cae3644 Mon Sep 17 00:00:00 2001
-From: Rico Tzschichholz <ricotz at ubuntu.com>
-Date: Sun, 30 Jan 2022 19:54:11 +0100
-Subject: [PATCH] Util.Cache.Lru: Workaround missing generic type argument
-
----
- src/client/util/util-cache.vala | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/client/util/util-cache.vala b/src/client/util/util-cache.vala
-index f054e32e5..ecc275e84 100644
---- a/src/client/util/util-cache.vala
-+++ b/src/client/util/util-cache.vala
-@@ -12,7 +12,7 @@ public class Util.Cache.Lru<T> : Geary.BaseObject {
-     private class CacheEntry<T> {
- 
- 
--        public static int lru_compare(CacheEntry<T> a, CacheEntry<T> b) {
-+        public static int lru_compare(CacheEntry a, CacheEntry b) {
-             if (a.key == b.key) {
-                 return 0;
-             }
--- 
-GitLab
-
-From 9bd4c82952a0a2c3308c5cc86c0b85650c1fb484 Mon Sep 17 00:00:00 2001
-From: Rico Tzschichholz <ricotz at ubuntu.com>
-Date: Tue, 30 Nov 2021 15:31:31 +0100
-Subject: [PATCH] Fix accessibility issues with initializer of constants
-
----
- src/client/application/application-client.vala | 14 +++++++-------
- 1 file changed, 7 insertions(+), 7 deletions(-)
-
-diff --git a/src/client/application/application-client.vala b/src/client/application/application-client.vala
-index 6ce19ce2a..e6ba85331 100644
---- a/src/client/application/application-client.vala
-+++ b/src/client/application/application-client.vala
-@@ -8,16 +8,16 @@
- 
- // Defined by CMake build script.
- extern const string GETTEXT_PACKAGE;
--extern const string _APP_ID;
--extern const string _BUILD_ROOT_DIR;
--extern const string _GSETTINGS_DIR;
--extern const string _INSTALL_PREFIX;
--extern const string _NAME_SUFFIX;
-+public extern const string _APP_ID;
-+public extern const string _BUILD_ROOT_DIR;
-+public extern const string _GSETTINGS_DIR;
-+public extern const string _INSTALL_PREFIX;
-+public extern const string _NAME_SUFFIX;
- extern const string _PLUGINS_DIR;
- extern const string _PROFILE;
- extern const string _REVNO;
--extern const string _SOURCE_ROOT_DIR;
--extern const string _VERSION;
-+public extern const string _SOURCE_ROOT_DIR;
-+public extern const string _VERSION;
- extern const string _WEB_EXTENSIONS_DIR;
- 
- 
--- 
-GitLab
-
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/geary.git/commitdiff/b177ebfc32aff7751ed4dd8dccaa0626c5ecf776



More information about the pld-cvs-commit mailing list