Update to 3.47.2

This commit is contained in:
Milan Crha 2023-02-10 09:11:46 +01:00
parent f8dcb8b74b
commit e6bbe50814
4 changed files with 6 additions and 184 deletions

View File

@ -57,18 +57,13 @@
### Abstract ### ### Abstract ###
Name: evolution-data-server Name: evolution-data-server
Version: 3.47.1 Version: 3.47.2
Release: 4%{?dist} Release: 1%{?dist}
Summary: Backend data server for Evolution Summary: Backend data server for Evolution
License: LGPL-2.0-or-later License: LGPL-2.0-or-later
URL: https://wiki.gnome.org/Apps/Evolution URL: https://wiki.gnome.org/Apps/Evolution
Source: http://download.gnome.org/sources/%{name}/3.47/%{name}-%{version}.tar.xz Source: http://download.gnome.org/sources/%{name}/3.47/%{name}-%{version}.tar.xz
# https://gitlab.gnome.org/GNOME/evolution-data-server/-/merge_requests/112
Patch0: webkitgtk-2.39.5.patch
# https://gitlab.gnome.org/GNOME/evolution-data-server/-/merge_requests/114
Patch1: webkitgtk-2.39.6.patch
Provides: evolution-webcal = %{version} Provides: evolution-webcal = %{version}
Obsoletes: evolution-webcal < 2.24.0 Obsoletes: evolution-webcal < 2.24.0
@ -493,6 +488,9 @@ find $RPM_BUILD_ROOT -name '*.so.*' -exec chmod +x {} \;
%{_datadir}/installed-tests %{_datadir}/installed-tests
%changelog %changelog
* Fri Feb 10 2023 Milan Crha <mcrha@redhat.com> - 3.47.2-1
- Update to 3.47.2
* Wed Feb 01 2023 Michael Catanzaro <mcatanzaro@redhat.com> - 3.47.1-4 * Wed Feb 01 2023 Michael Catanzaro <mcatanzaro@redhat.com> - 3.47.1-4
- Build against WebKitGTK 2.39.6 - Build against WebKitGTK 2.39.6

View File

@ -1 +1 @@
SHA512 (evolution-data-server-3.47.1.tar.xz) = b4014cdc6a2c1f654b961db281b313ab869dea9ef19af44833e7d4eb2c33f77a9cc15e6dbf456996039004560a7edbcd9636b5398c6b4cac0ee3e75895fa0227 SHA512 (evolution-data-server-3.47.2.tar.xz) = c3b352889b6578f02142ee9d933a53a05e04673fe18539942a27dbbde061b8d0b01176f0d7a0c8a1f64f3f603e06b19d0e255a77a65a3cf098e79c69bb9928c6

View File

@ -1,28 +0,0 @@
From 6f4d38537ec2192d7066a7ba145ca7ab0f607e56 Mon Sep 17 00:00:00 2001
From: Michael Catanzaro <mcatanzaro@redhat.com>
Date: Thu, 19 Jan 2023 20:12:04 -0600
Subject: [PATCH] M!112 - Update for removal of WebKitGTK sandbox API
WebKitGTK 2.39.5 contains an ABI break. The sandbox is now mandatory, so
the function to enable/disable it has been removed.
---
src/libedataserverui/e-credentials-prompter-impl-oauth2.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/libedataserverui/e-credentials-prompter-impl-oauth2.c b/src/libedataserverui/e-credentials-prompter-impl-oauth2.c
index 099a8f20c..0e5fb582f 100644
--- a/src/libedataserverui/e-credentials-prompter-impl-oauth2.c
+++ b/src/libedataserverui/e-credentials-prompter-impl-oauth2.c
@@ -1149,7 +1149,9 @@ e_credentials_prompter_impl_oauth2_show_dialog (ECredentialsPrompterImplOAuth2 *
NULL);
web_context = webkit_web_context_new ();
+#if !GTK_CHECK_VERSION(4, 0, 0) || !WEBKIT_CHECK_VERSION(2, 39, 5)
webkit_web_context_set_sandbox_enabled (web_context, TRUE);
+#endif
credentials_prompter_impl_oauth2_set_proxy (web_context, e_credentials_prompter_get_registry (prompter), prompter_oauth2->priv->auth_source);
widget = g_object_new (WEBKIT_TYPE_WEB_VIEW,
--
GitLab

View File

@ -1,148 +0,0 @@
From 816deda308279c3e5a8a816ae2d94542c9084555 Mon Sep 17 00:00:00 2001
From: Michael Catanzaro <mcatanzaro@redhat.com>
Date: Wed, 1 Feb 2023 13:36:21 -0600
Subject: [PATCH 1/2] M!114 - OAuth2: stop trying to disable WebKit plugins
WebKitGTK removed support for plugins in 2.32, but evolution-data-server
already requires 2.34 at least. This property is gone in 2.39.5.
---
src/libedataserverui/e-credentials-prompter-impl-oauth2.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/src/libedataserverui/e-credentials-prompter-impl-oauth2.c b/src/libedataserverui/e-credentials-prompter-impl-oauth2.c
index 7e116fc7f..7a1f40e10 100644
--- a/src/libedataserverui/e-credentials-prompter-impl-oauth2.c
+++ b/src/libedataserverui/e-credentials-prompter-impl-oauth2.c
@@ -1205,7 +1205,6 @@ e_credentials_prompter_impl_oauth2_show_dialog (ECredentialsPrompterImplOAuth2 *
"enable-html5-local-storage", FALSE,
"enable-offline-web-application-cache", FALSE,
"enable-page-cache", FALSE,
- "enable-plugins", FALSE,
"media-playback-allows-inline", FALSE,
"hardware-acceleration-policy", WEBKIT_HARDWARE_ACCELERATION_POLICY_NEVER,
NULL);
--
GitLab
From 02703b28d798931afccebf79c842b54625a8dcd0 Mon Sep 17 00:00:00 2001
From: Michael Catanzaro <mcatanzaro@redhat.com>
Date: Wed, 1 Feb 2023 13:46:15 -0600
Subject: [PATCH 2/2] M!114 - OAuth2: use WebKitNetworkSession to manage proxy
settings
With WebKitGTK 2.39.6, network proxy settings moved from
WebKitWebsiteDataManager to WebKitNetworkSession.
---
.../e-credentials-prompter-impl-oauth2.c | 40 +++++++++++++++++--
1 file changed, 36 insertions(+), 4 deletions(-)
diff --git a/src/libedataserverui/e-credentials-prompter-impl-oauth2.c b/src/libedataserverui/e-credentials-prompter-impl-oauth2.c
index 7a1f40e10..9a3918b61 100644
--- a/src/libedataserverui/e-credentials-prompter-impl-oauth2.c
+++ b/src/libedataserverui/e-credentials-prompter-impl-oauth2.c
@@ -679,7 +679,12 @@ credentials_prompter_impl_oauth2_sanitize_host (gchar *host)
}
static void
-credentials_prompter_impl_oauth2_set_proxy (WebKitWebContext *web_context,
+credentials_prompter_impl_oauth2_set_proxy (
+#if GTK_CHECK_VERSION(4, 0, 0) && WEBKIT_CHECK_VERSION(2, 39, 6)
+ WebKitNetworkSession *network_session,
+#else
+ WebKitWebsiteDataManager *data_manager,
+#endif
ESourceRegistry *registry,
ESource *auth_source)
{
@@ -704,7 +709,6 @@ credentials_prompter_impl_oauth2_set_proxy (WebKitWebContext *web_context,
if (proxy_source && e_source_has_extension (proxy_source, E_SOURCE_EXTENSION_PROXY)) {
ESourceProxy *proxy;
- WebKitWebsiteDataManager *data_manager;
WebKitNetworkProxySettings *proxy_settings = NULL;
GUri *guri;
gchar **ignore_hosts = NULL;
@@ -712,11 +716,14 @@ credentials_prompter_impl_oauth2_set_proxy (WebKitWebContext *web_context,
guint16 port;
proxy = e_source_get_extension (proxy_source, E_SOURCE_EXTENSION_PROXY);
- data_manager = webkit_web_context_get_website_data_manager (web_context);
switch (e_source_proxy_get_method (proxy)) {
case E_PROXY_METHOD_DEFAULT:
+#if GTK_CHECK_VERSION(4, 0, 0) && WEBKIT_CHECK_VERSION(2, 39, 6)
+ webkit_network_session_set_proxy_settings (network_session, WEBKIT_NETWORK_PROXY_MODE_DEFAULT, NULL);
+#else
webkit_website_data_manager_set_network_proxy_settings (data_manager, WEBKIT_NETWORK_PROXY_MODE_DEFAULT, NULL);
+#endif
break;
case E_PROXY_METHOD_MANUAL:
ignore_hosts = e_source_proxy_dup_ignore_hosts (proxy);
@@ -770,13 +777,21 @@ credentials_prompter_impl_oauth2_set_proxy (WebKitWebContext *web_context,
}
g_free (tmp);
+#if GTK_CHECK_VERSION(4, 0, 0) && WEBKIT_CHECK_VERSION(2, 39, 6)
+ webkit_network_session_set_proxy_settings (network_session, WEBKIT_NETWORK_PROXY_MODE_CUSTOM, proxy_settings);
+#else
webkit_website_data_manager_set_network_proxy_settings (data_manager, WEBKIT_NETWORK_PROXY_MODE_CUSTOM, proxy_settings);
+#endif
break;
case E_PROXY_METHOD_AUTO:
/* not supported by WebKitGTK */
break;
case E_PROXY_METHOD_NONE:
+#if GTK_CHECK_VERSION(4, 0, 0) && WEBKIT_CHECK_VERSION(2, 39, 6)
+ webkit_network_session_set_proxy_settings (network_session, WEBKIT_NETWORK_PROXY_MODE_NO_PROXY, proxy_settings);
+#else
webkit_website_data_manager_set_network_proxy_settings (data_manager, WEBKIT_NETWORK_PROXY_MODE_NO_PROXY, NULL);
+#endif
break;
}
@@ -899,6 +914,11 @@ e_credentials_prompter_impl_oauth2_show_dialog (ECredentialsPrompterImplOAuth2 *
GtkWidget *progress_bar;
WebKitSettings *webkit_settings;
WebKitWebContext *web_context;
+#if GTK_CHECK_VERSION(4, 0, 0) && WEBKIT_CHECK_VERSION(2, 39, 6)
+ WebKitNetworkSession *network_session;
+#else
+ WebKitWebsiteDataManager *data_manager;
+#endif
#endif /* WITH_WEBKITGTK */
gchar *title, *uri;
GString *info_markup;
@@ -1213,9 +1233,18 @@ e_credentials_prompter_impl_oauth2_show_dialog (ECredentialsPrompterImplOAuth2 *
#if !GTK_CHECK_VERSION(4, 0, 0) || !WEBKIT_CHECK_VERSION(2, 39, 5)
webkit_web_context_set_sandbox_enabled (web_context, TRUE);
#endif
- credentials_prompter_impl_oauth2_set_proxy (web_context, e_credentials_prompter_get_registry (prompter), prompter_oauth2->priv->auth_source);
+#if GTK_CHECK_VERSION(4, 0, 0) && WEBKIT_CHECK_VERSION(2, 39, 6)
+ network_session = webkit_network_session_new (NULL, NULL);
+ credentials_prompter_impl_oauth2_set_proxy (network_session, e_credentials_prompter_get_registry (prompter), prompter_oauth2->priv->auth_source);
+#else
+ data_manager = webkit_web_context_get_website_data_manager (web_context);
+ credentials_prompter_impl_oauth2_set_proxy (data_manager, e_credentials_prompter_get_registry (prompter), prompter_oauth2->priv->auth_source);
+#endif
widget = g_object_new (WEBKIT_TYPE_WEB_VIEW,
+#if GTK_CHECK_VERSION(4, 0, 0) && WEBKIT_CHECK_VERSION(2, 39, 6)
+ "network-session", network_session,
+#endif
"settings", webkit_settings,
"web-context", web_context,
NULL);
@@ -1231,6 +1260,9 @@ e_credentials_prompter_impl_oauth2_show_dialog (ECredentialsPrompterImplOAuth2 *
gtk_scrolled_window_set_child (GTK_SCROLLED_WINDOW (scrolled_window), widget);
#else
gtk_container_add (GTK_CONTAINER (scrolled_window), widget);
+#endif
+#if GTK_CHECK_VERSION(4, 0, 0) && WEBKIT_CHECK_VERSION(2, 39, 6)
+ g_object_unref (network_session);
#endif
g_object_unref (webkit_settings);
g_object_unref (web_context);
--
GitLab