Bug#1121184: trixie-pu: package yorick-gy/0.0.6-1~deb13u1
Thibaut Paumard
thibaut at debian.org
Sat Nov 22 14:15:27 GMT 2025
Package: release.debian.org
Severity: normal
Tags: trixie
X-Debbugs-Cc: yorick-gy at packages.debian.org, thibaut at debian.org
Control: affects -1 + src:yorick-gy
User: release.debian.org at packages.debian.org
Usertags: pu
[ Reason ]
Yorick is an interpreted language. yorick-gy provides bindings to GObject
Introspection, with facilities for Gtk 3.
The proposed update brings bug fixes from unstable, especially
https://bugs.debian.org/1121171 which is very much user-visible. The (by far)
main reason for users to have yorick-gy installed is to use cubeview (from
yorick-cubeview) or gyotoy (from yorick-gyoto), which are both broken by this
bug.
Both GUIs still use Gtk and Gdk 3. gy_gtk.i from yorick-gy uses introspection
to load both libraries. Already in Bookworm, it explicitly loaded version 3 of
Gtk, which was then enough to run the two GUIs. Since Trixie it has also become
necessary to specify the version of Gdk as well. Unfortunately this has not
been caught prior to the release.
I could make a package that fixes only this bug. What I propose, though, is to
use the package that I just uploaded to unstable and that has a few more FTBFS
fixes for GCC 14 and GCC 15.
[ Impact ]
If not approved, affected users will not be able to run either cubeview or
gyotoy out of the box. They will be able to do so after manually putting a
corrected copy of gy_gtk.i in their Yorick path. I would also upload the fixed
package to trixie-backports.
[ Tests ]
I have compiled the package in a clean trixie chroot, installed it on by trixie
production laptop and launched cubeview and gyotoy successfully.
[ Risks ]
I don't see any risks. yorick-gy is used only in the two GUIs mentioned above,
which are both broken at the moment.
[ Checklist ]
[×] *all* changes are documented in the d/changelog
[×] I reviewed all changes and I approve them
[×] attach debdiff against the package in stable
[×] the issue is verified as fixed in unstable
[ Changes ]
Changes to upstream:
- update of the ChangeLog
- gy_gtk.i: specify version when loading Gdk*
- gy.info: update version information, fix typo
- gy_object.c, gy_repository.c: fix FTBFS with
GCC 14 and 15 by using explicit casts and fixing
a call with wrong signature
Changes debian/:
- changelog: update, reinstate entry for version 0.0.5-2 which had been
accidentally altered in a later version
- control: fix for #1118937
- patches/: remove gcc-14 and gcc-15, applied upstream
- watch: update to version 5
-------------- next part --------------
diff -Nru yorick-gy-0.0.5/ChangeLog yorick-gy-0.0.6/ChangeLog
--- yorick-gy-0.0.5/ChangeLog 2013-07-29 10:39:29.000000000 +0200
+++ yorick-gy-0.0.6/ChangeLog 2025-11-22 09:53:37.000000000 +0100
@@ -1,3 +1,7 @@
+Version 0.0.6
+ * Specify version when requiring modules in gy_gtk.i.
+ -- Thibaut Paumard <thibaut.paumard at obspm.fr> Sat, 22 Nov 2025 09:46:20 +0100
+
Version 0.0.5
* fix typo in gy.c: Typelist -> Typelib
-- Thibaut Paumard <paumard at users.sourceforge.net> Mon, 29 Jul 2013 10:29:57 +0200
diff -Nru yorick-gy-0.0.5/debian/changelog yorick-gy-0.0.6/debian/changelog
--- yorick-gy-0.0.5/debian/changelog 2025-02-28 16:52:35.000000000 +0100
+++ yorick-gy-0.0.6/debian/changelog 2025-11-22 11:11:17.000000000 +0100
@@ -1,3 +1,21 @@
+yorick-gy (0.0.6-1~deb13u1) trixie; urgency=medium
+
+ * Rebuild for trixie
+
+ -- Thibaut Paumard <thibaut at debian.org> Sat, 22 Nov 2025 11:11:17 +0100
+
+yorick-gy (0.0.6-1) unstable; urgency=medium
+
+ * New upstream release
+ + incorporates our patches gcc-14 and gcc-15.
+ + fixes: "gy_gtk.i mixes incompatible versions of Gtk and Gdk"
+ (Closes: #1121171).
+ * Bug fix: "depends on non-multiarch-friendly libgirepository1.0-dev",
+ thanks to Simon McVittie (Closes: #1118937).
+ * Update watch file format.
+
+ -- Thibaut Paumard <thibaut at debian.org> Sat, 22 Nov 2025 10:50:31 +0100
+
yorick-gy (0.0.5-4) unstable; urgency=medium
* Bug fix: "ftbfs with GCC-15", thanks to Matthias Klose (Closes:
@@ -16,7 +34,9 @@
yorick-gy (0.0.5-2) unstable; urgency=high
* Update debhelper compatibility level.
- * Bump policy standard to 4.6.0. No changes required.
+ + replace debian/compat by Build-Depends: debhelper-compat (= 13).
+ * Bump policy standard to 4.6.0.
+ + change Priority to optional.
-- Thibaut Paumard <thibaut at debian.org> Mon, 17 Jan 2022 14:47:09 +0100
diff -Nru yorick-gy-0.0.5/debian/control yorick-gy-0.0.6/debian/control
--- yorick-gy-0.0.5/debian/control 2025-02-28 16:48:54.000000000 +0100
+++ yorick-gy-0.0.6/debian/control 2025-11-22 10:10:40.000000000 +0100
@@ -4,7 +4,7 @@
Maintainer: Debian Science Maintainers <debian-science-maintainers at lists.alioth.debian.org>
Uploaders: Thibaut Paumard <thibaut at debian.org>
Build-Depends: debhelper-compat (= 13), yorick-dev (>= 2.2),
- libgirepository1.0-dev
+ libgirepository-1.0-dev
Standards-Version: 4.7.0
Vcs-Git: https://salsa.debian.org/science-team/yorick-gy.git
Vcs-Browser: https://salsa.debian.org/science-team/yorick-gy
diff -Nru yorick-gy-0.0.5/debian/patches/gcc-14 yorick-gy-0.0.6/debian/patches/gcc-14
--- yorick-gy-0.0.5/debian/patches/gcc-14 2025-02-28 16:48:54.000000000 +0100
+++ yorick-gy-0.0.6/debian/patches/gcc-14 1970-01-01 01:00:00.000000000 +0100
@@ -1,52 +0,0 @@
-Description: Satisfy GCC-14
- Make explicit pointer cast where needed.
-Author: Thibaut Paumard <thibaut at debian.org>
-Origin: vendor
-Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1075702
-Applied-Upstream: commit:356e5f6835a8bcace99d71a1a35a83d8cbfadb59
-Last-Update: 2024-07-29
----
-This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
---- a/gy_object.c
-+++ b/gy_object.c
-@@ -156,7 +156,7 @@
- }
-
- if (action == GYLIST_ACTION_SIZE) {
-- GList* lst = o->object;
-+ GList* lst = (GList*) o->object;
- if (!lst) {
- ypush_long(0);
- return;
-@@ -189,9 +189,9 @@
- } else {
- out -> info = o -> info;
- if (action==GYLIST_ACTION_NEXT)
-- out -> object = ((GList*) o->object) -> next;
-+ out -> object = (GObject*) ((GList*) o->object) -> next;
- else if (action==GYLIST_ACTION_PREV)
-- out -> object = ((GList*) o->object) -> prev;
-+ out -> object = (GObject*) ((GList*) o->object) -> prev;
- }
- g_base_info_ref(out -> info);
- return;
-@@ -392,7 +392,7 @@
- if (type !=GI_TYPE_TAG_GLIST && type !=GI_TYPE_TAG_GSLIST)
- y_error("Unimplemented");
- if (!o->object) y_error("G(S)List is nil");
-- GList* lst = o->object;
-+ GList* lst = (GList*) o->object;
- long idx = ygets_l(argc-1)-1;
- gy_Object * out = ypush_gy_Object();
- if (type !=GI_TYPE_TAG_GLIST)
---- a/gy_repository.c
-+++ b/gy_repository.c
-@@ -176,7 +176,7 @@
- if (yarg_string(argc-1)) namespace = ygets_q(argc-1);
- else namespace = yget_gy_Typelib(argc-1)->namespace;
-
-- GSList * lst = g_irepository_enumerate_versions(r->repo, namespace);
-+ GSList * lst = (GSList*) g_irepository_enumerate_versions(r->repo, namespace);
- GSList * cur = 0;
- long count =0;
-
diff -Nru yorick-gy-0.0.5/debian/patches/gcc-15 yorick-gy-0.0.6/debian/patches/gcc-15
--- yorick-gy-0.0.5/debian/patches/gcc-15 2025-02-28 16:50:29.000000000 +0100
+++ yorick-gy-0.0.6/debian/patches/gcc-15 1970-01-01 01:00:00.000000000 +0100
@@ -1,21 +0,0 @@
-Description: fix FTB FS with GCC 15
- ypush_gy_Object() does not take any arguments.
-Author: Thibaut Paumard <thibaut at debian.org>
-Origin: vendor
-Bug: https://github.com/paumard/yorick-gy/issues/2
-Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1098193
-Applied-Upstream: https://github.com/paumard/yorick-gy/commit/9f231b27549e202a78e1e02438ddd6dfa0fabb0b
-Last-Update: 2025-02-28
----
-This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
---- a/gy_object.c
-+++ b/gy_object.c
-@@ -414,7 +414,7 @@
-
- if (isobject || isitrf || isstruct) {
- GY_DEBUG("Pushing gy_Object return value\n");
-- gy_Object* out = ypush_gy_Object(0);
-+ gy_Object* out = ypush_gy_Object();
-
- out->info=o->info;
- g_base_info_ref(o->info);
diff -Nru yorick-gy-0.0.5/debian/patches/series yorick-gy-0.0.6/debian/patches/series
--- yorick-gy-0.0.5/debian/patches/series 2025-02-28 16:48:54.000000000 +0100
+++ yorick-gy-0.0.6/debian/patches/series 2025-11-22 10:13:24.000000000 +0100
@@ -1,2 +0,0 @@
-gcc-14
-gcc-15
diff -Nru yorick-gy-0.0.5/debian/watch yorick-gy-0.0.6/debian/watch
--- yorick-gy-0.0.5/debian/watch 2025-02-28 16:48:54.000000000 +0100
+++ yorick-gy-0.0.6/debian/watch 2025-11-22 10:10:40.000000000 +0100
@@ -1,3 +1,5 @@
-version=3
-opts=filenamemangle=s/.+\/v?(.*)\.tar\.gz/yorick-gy-$1.tar.gz/ \
- https://github.com/paumard/yorick-gy/tags .*/v?(\d[\d\.]+)\.tar\.gz
+Version: 5
+
+Template: Github
+Owner: paumard
+Project: yorick-gy
diff -Nru yorick-gy-0.0.5/gy_gtk.i yorick-gy-0.0.6/gy_gtk.i
--- yorick-gy-0.0.5/gy_gtk.i 2013-07-29 10:39:29.000000000 +0200
+++ yorick-gy-0.0.6/gy_gtk.i 2025-11-22 09:53:37.000000000 +0100
@@ -88,9 +88,10 @@
SEE ALSO: gy_gtk_i
*/
Gtk = gy.require("Gtk", "3.0");
-Gdk = gy.Gdk;
+Gdk = gy.require("Gdk", "3.0");
+GdkX11 = gy.require("GdkX11", "3.0");
+GdkPixbuf = gy.require("GdkPixbuf", "2.0");
GLib = gy.GLib;
-GdkPixbuf = gy.GdkPixbuf;
func __gyterm_init
{
diff -Nru yorick-gy-0.0.5/gy.info yorick-gy-0.0.6/gy.info
--- yorick-gy-0.0.5/gy.info 2013-07-29 10:39:29.000000000 +0200
+++ yorick-gy-0.0.6/gy.info 2025-11-22 09:53:37.000000000 +0100
@@ -1,12 +1,12 @@
Package: gy
Kind: plugin
Version: 0.0
-Revision: 3
+Revision: 6
Description: GObject introspection and Gtk widgets
License: GPLv3
Author: Thibaut Paumard
Maintainer: Thibaut Paumard <paumard at users.sourceforge.net>
-OS: architecture independant
+OS: architecture independent
Depends: yorick(>=2.2.02)
Source: https://github.com/paumard/yorick-gy
Source-MD5:
diff -Nru yorick-gy-0.0.5/gy_object.c yorick-gy-0.0.6/gy_object.c
--- yorick-gy-0.0.5/gy_object.c 2013-07-29 10:39:29.000000000 +0200
+++ yorick-gy-0.0.6/gy_object.c 2025-11-22 09:53:37.000000000 +0100
@@ -156,7 +156,7 @@
}
if (action == GYLIST_ACTION_SIZE) {
- GList* lst = o->object;
+ GList* lst = (GList*) o->object;
if (!lst) {
ypush_long(0);
return;
@@ -189,9 +189,9 @@
} else {
out -> info = o -> info;
if (action==GYLIST_ACTION_NEXT)
- out -> object = ((GList*) o->object) -> next;
+ out -> object = (GObject*) ((GList*) o->object) -> next;
else if (action==GYLIST_ACTION_PREV)
- out -> object = ((GList*) o->object) -> prev;
+ out -> object = (GObject*) ((GList*) o->object) -> prev;
}
g_base_info_ref(out -> info);
return;
@@ -392,7 +392,7 @@
if (type !=GI_TYPE_TAG_GLIST && type !=GI_TYPE_TAG_GSLIST)
y_error("Unimplemented");
if (!o->object) y_error("G(S)List is nil");
- GList* lst = o->object;
+ GList* lst = (GList*) o->object;
long idx = ygets_l(argc-1)-1;
gy_Object * out = ypush_gy_Object();
if (type !=GI_TYPE_TAG_GLIST)
@@ -414,7 +414,7 @@
if (isobject || isitrf || isstruct) {
GY_DEBUG("Pushing gy_Object return value\n");
- gy_Object* out = ypush_gy_Object(0);
+ gy_Object* out = ypush_gy_Object();
out->info=o->info;
g_base_info_ref(o->info);
diff -Nru yorick-gy-0.0.5/gy_repository.c yorick-gy-0.0.6/gy_repository.c
--- yorick-gy-0.0.5/gy_repository.c 2013-07-29 10:39:29.000000000 +0200
+++ yorick-gy-0.0.6/gy_repository.c 2025-11-22 09:53:37.000000000 +0100
@@ -176,7 +176,7 @@
if (yarg_string(argc-1)) namespace = ygets_q(argc-1);
else namespace = yget_gy_Typelib(argc-1)->namespace;
- GSList * lst = g_irepository_enumerate_versions(r->repo, namespace);
+ GSList * lst = (GSList*) g_irepository_enumerate_versions(r->repo, namespace);
GSList * cur = 0;
long count =0;
More information about the debian-science-maintainers
mailing list