[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1068679: port-to-libsoup3.patch looks bad



Package: libtimezonemap
Version: 0.4.6-6
Severity: normal
Tags: patch
User: ubuntu-devel@lists.ubuntu.com
Usertags: origin-ubuntu noble ubuntu-patch

Hello,

This is a follow-up to bug #1037940 which is now archived.

With the move of webkit2gtk to libsoup3, this now becomes non-negotiable for
us in Ubuntu, as ubiquity requires both webkit and libtimezonemap.

I have taken a stab at fixing this patch up based on the feedback in the
other bug and have something that passes libtimezonemap's own build-time
tests, and ubiquity's tests, though it's hard to tell how much the latter
actually matters for verifying libtimezonemap correctness due to mocking.

Please consider this for inclusion in Debian as well.

Thanks,
-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                   https://www.debian.org/
slangasek@ubuntu.com                                     vorlon@debian.org
diff -Nru libtimezonemap-0.4.6/debian/control libtimezonemap-0.4.6/debian/control
--- libtimezonemap-0.4.6/debian/control	2024-03-07 21:30:43.000000000 -0800
+++ libtimezonemap-0.4.6/debian/control	2024-04-08 16:33:09.000000000 -0700
@@ -1,8 +1,7 @@
 Source: libtimezonemap
 Section: misc
 Priority: optional
-Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
-XSBC-Original-Maintainer: Debian Cinnamon Team <debian-cinnamon@lists.debian.org>
+Maintainer: Debian Cinnamon Team <debian-cinnamon@lists.debian.org>
 Uploaders:
  Maximiliano Curia <maxy@debian.org>,
  Margarita Manterola <marga@debian.org>,
@@ -20,7 +19,7 @@
                libgtk-3-dev (>= 3.1.4),
                libcairo2-dev (>= 1.10),
                libjson-glib-dev,
-               libsoup2.4-dev
+               libsoup-3.0-dev (>= 3.0.7)
 Standards-Version: 4.6.2
 Homepage: https://launchpad.net/timezonemap
 Vcs-Browser: https://salsa.debian.org/cinnamon-team/libtimezonemap
diff -Nru libtimezonemap-0.4.6/debian/patches/port-to-libsoup3.patch libtimezonemap-0.4.6/debian/patches/port-to-libsoup3.patch
--- libtimezonemap-0.4.6/debian/patches/port-to-libsoup3.patch	2023-06-20 23:54:22.000000000 -0700
+++ libtimezonemap-0.4.6/debian/patches/port-to-libsoup3.patch	2024-04-08 16:31:23.000000000 -0700
@@ -5,11 +5,11 @@
 Forwarded: not-yet
 Last-Update: 2022-08-06
 ---
-diff --git a/configure.ac b/configure.ac
-index 3f74dae..4e90e64 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -50,13 +50,13 @@ GDK_REQUIRED_VERSION=2.22
+Index: libtimezonemap/configure.ac
+===================================================================
+--- libtimezonemap.orig/configure.ac
++++ libtimezonemap/configure.ac
+@@ -50,13 +50,13 @@
  GLIB_REQUIRED_VERSION=2.26
  GTK3_REQUIRED_VERSION=3.1.4
  GIO_REQUIRED_VERSION=2.5.11
@@ -25,23 +25,24 @@
                                    json-glib-1.0)
  LIBTIMEZONEMAP_LIBS="$LIBTIMEZONEMAP_LIBS $LIBM"
  
-diff --git a/src/timezone-completion.c b/src/timezone-completion.c
-index d310235..6971ae9 100644
---- a/src/timezone-completion.c
-+++ b/src/timezone-completion.c
-@@ -271,8 +271,10 @@ geonames_data_ready (GObject *object, GAsyncResult *res, gpointer user_data)
+Index: libtimezonemap/src/timezone-completion.c
+===================================================================
+--- libtimezonemap.orig/src/timezone-completion.c
++++ libtimezonemap/src/timezone-completion.c
+@@ -270,9 +270,10 @@
+   CcTimezoneCompletionPrivate * priv = completion->priv;
    GError * error = NULL;
    GInputStream * stream;
-   SoupMessage *message;
+-  SoupMessage *message;
 +  const gchar * reason_phrase;
 +  SoupStatus status_code;
  
 -  stream = soup_request_send_finish (SOUP_REQUEST (object), res, &error);
-+  stream = soup_session_send_finish (SOUP_SESSION (object), res, &error);
++  stream = soup_session_send_finish (priv->soup_session, res, &error);
    if (stream == NULL)
      {
        if (!g_error_matches (error, G_IO_ERROR, G_IO_ERROR_CANCELLED))
-@@ -283,8 +285,9 @@ geonames_data_ready (GObject *object, GAsyncResult *res, gpointer user_data)
+@@ -283,8 +284,9 @@
        return;
      }
  
@@ -53,7 +54,7 @@
      {
        JsonParser *parser;
  
-@@ -296,7 +299,7 @@ geonames_data_ready (GObject *object, GAsyncResult *res, gpointer user_data)
+@@ -296,10 +298,10 @@
    else
      {
        g_warning ("Unable to fetch geonames (server responded with: %u %s)",
@@ -61,8 +62,12 @@
 +                 status_code, reason_phrase);
      }
  
-   g_object_unref (message);
-@@ -362,7 +365,7 @@ static gboolean
+-  g_object_unref (message);
++  g_object_unref (object);
+   g_object_unref (stream);
+ }
+ 
+@@ -362,7 +364,7 @@
  request_zones (CcTimezoneCompletion * completion)
  {
    CcTimezoneCompletionPrivate * priv = completion->priv;
@@ -71,28 +76,17 @@
    GError *error = NULL;
  
    priv->queued_request = 0;
-@@ -388,13 +391,14 @@ request_zones (CcTimezoneCompletion * completion)
-   gchar * version = get_version ();
-   gchar * locale = get_locale ();
-   gchar * url = g_strdup_printf (GEONAME_URL, escaped, version, locale);
-+  GAsyncResult * res;
+@@ -391,10 +393,11 @@
    g_free (locale);
    g_free (escaped);
  
 -  req = soup_session_request (priv->soup_session, url, &error);
-+  req = soup_message_new_from_uri (NULL, (GUri *) url);
++  req = soup_message_new (NULL, url);
    if (req)
      {
 -      soup_request_send_async (req, priv->cancel, geonames_data_ready, completion);
-+      soup_session_get_async_result_message (SOUP_SESSION (req), res);
++      soup_session_send_async (priv->soup_session, req, G_PRIORITY_DEFAULT,
++                               priv->cancel, geonames_data_ready, completion);
        g_object_unref (req);
      }
    else
-@@ -403,6 +407,7 @@ request_zones (CcTimezoneCompletion * completion)
-       g_error_free (error);
-     }
- 
-+  g_free (res);
-   g_free (url);
-   return FALSE;
- }
diff -Nru libtimezonemap-0.4.6/debian/patches/series libtimezonemap-0.4.6/debian/patches/series
--- libtimezonemap-0.4.6/debian/patches/series	2023-06-20 23:54:22.000000000 -0700
+++ libtimezonemap-0.4.6/debian/patches/series	2024-04-08 14:26:38.000000000 -0700
@@ -1,3 +1,3 @@
+port-to-libsoup3.patch
 tz-Include-UI-files-from-installed-path.patch
 timezone-map-Never-try-to-access-to-free-d-or-null-values.patch
-#port-to-libsoup3.patch - need fixes, see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1037940

Reply to: