[DRE-maint] Bug#950219: ruby-gnome: please Build-Depend on libgirepository1.0-dev (>= 1.62.0-4~) and libffi-dev (>= 3.3)
Simon McVittie
smcv at debian.org
Thu Jan 30 08:48:22 GMT 2020
Source: ruby-gnome
Severity: normal
Tags: bullseye sid
During the libffi transition, we've encountered an autopkgtest regression
in pygobject that might also indicate crashes on arm64 in other bindings
that use GObject-Introspection and libffi. The libffi maintainer
recommended that we add some versioned Depends/Breaks to force the right
things to happen. To be safe, ruby-gnome should probably do the same.
The libffi6 -> libffi7 transition involves an ABI break on arm64, and
GObject-Introspection exposes libffi data structures in its own API,
which are used by bindings like pygobject and ruby-gnome. We've found
that in practice, pygobject crashes on arm64 if either:
(A) gobject-introspection is old (built against libffi6) and pygobject is
new (built against libffi7), or
(B) gobject-introspection is new (built against libffi7) and pygobject is
old (built against libffi6)
ruby-gnome seems to call into GObject-Introspection's libffi-related APIs,
so it probably has a similar issue, replacing pygobject with ruby-gnome.
To prevent broken partial upgrades, please make ruby-gnome Build-Depend
on libgirepository1.0-dev (>= 1.62.0-4~) and libffi-dev (>= 3.3);
this will result in a runtime dependency on
libgirepository-1.0-0 (>= 1.62.0-4~) and libffi7, preventing (A).
Then we can add a Breaks: ruby-gobject-introspection (<< x~) in
libgirepository-1.0-0, where x is the version in which you made that
change, to prevent (B).
Thanks,
smcv
More information about the Pkg-ruby-extras-maintainers
mailing list