Package: rednotebook
Version: 2.31+ds-4
Severity: normal
Tags: patch trixie sid
User: pkg-gnome-maintain...@lists.alioth.debian.org
Usertags: girepository-2.0

rednotebook contains code that explicitly loads the GIRepository-2.0
typelib. This is currently part of gir1.2-glib-2.0, but it will need
to be moved to a separate binary package during the GNOME 46 cycle,
as a result of most of gir1.2-glib-2.0 moving to src:glib2.0 (which has
broken some of the API/ABI in the process, resulting in it shipping an
incompatible GIRepository-3.0 instead).

python3-gi will continue to pull in the GIRepository-2.0 from
src:gobject-introspection, at least for a while, but it will be easier to
keep track of which packages will be affected by a future transition from
GIRepository-2.0 to GIRepository-3.0 if we make the dependency explicit.
Please consider applying the attached patch 0001 to achieve this.

While checking this, I also noticed that the package imports some typelibs
that are shipped as part of a larger composite binary package. I think it
would be a little clearer that the dependencies are correct if rednotebook
explicitly depended on the systematic package names corresponding to these
typelibs, as in the attached patch 0002.

The patches are untested (I don't use rednotebook myself) but are simple
enough that I hope they're correct.

Thanks,
    smcv
>From 3f25321ebae795bf4dc1adb59f358cdc7616c819 Mon Sep 17 00:00:00 2001
From: Simon McVittie <s...@debian.org>
Date: Fri, 29 Dec 2023 13:49:07 +0000
Subject: [PATCH 1/2] d/control: Explicitly depend on gir1.2-girepository-2.0

This is currently a virtual package provided by gir1.2-glib-2.0, but it
will need to be split into a separate package during the
GNOME 46/GLib 2.79.x cycle.

Making this dependency explicit will also help to keep track of which
packages will need coordination when PyGI switches from GIRepository 2.0
to GIRepository 3.0.
---
 debian/control | 1 +
 1 file changed, 1 insertion(+)

diff --git a/debian/control b/debian/control
index 01bb242..cf3e117 100644
--- a/debian/control
+++ b/debian/control
@@ -18,6 +18,7 @@ Architecture: all
 Depends: ${python3:Depends},
          ${misc:Depends},
          gir1.2-gdkpixbuf-2.0,
+         gir1.2-girepository-2.0,
          gir1.2-glib-2.0,
          gir1.2-gtk-3.0,
          gir1.2-gtksource-4,
-- 
2.43.0

>From 3ccd3f7a4f436418c9a95f56f68bdb138a7f157d Mon Sep 17 00:00:00 2001
From: Simon McVittie <s...@debian.org>
Date: Fri, 29 Dec 2023 13:50:24 +0000
Subject: [PATCH 2/2] d/control: Explicitly depend on typelibs for Gio-2.0,
 GObject-2.0, Gdk-3.0

This is only for completeness: the systematic names gir1.2-gio-2.0
and gir1.2-gobject-2.0 are currently virtual packages provided by
the "real" binary package gir1.2-glib-2.0, and they are unlikely to be
split into independent binary packages. Similarly, gir1.2-gdk-3.0 is
a virtual package provided by gir1.2-gtk-3.0. However, it seems more
robust if we explicitly depend on the systematic package name for every
typelib that rednotebook explicitly imports.
---
 debian/control | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/debian/control b/debian/control
index cf3e117..f923b1a 100644
--- a/debian/control
+++ b/debian/control
@@ -17,9 +17,12 @@ Package: rednotebook
 Architecture: all
 Depends: ${python3:Depends},
          ${misc:Depends},
+         gir1.2-gdk-3.0,
          gir1.2-gdkpixbuf-2.0,
+         gir1.2-gio-2.0,
          gir1.2-girepository-2.0,
          gir1.2-glib-2.0,
+         gir1.2-gobject-2.0,
          gir1.2-gtk-3.0,
          gir1.2-gtksource-4,
          gir1.2-pango-1.0,
-- 
2.43.0

Reply via email to