Control: clone -1 -2 Control: reassign -2 gem2deb Control: retitle -2 gem2deb: includes architecture qualifiers in ${ruby:Depends}
On Wed, Dec 01, 2021 at 09:16:13PM +0100, Paul Gevers wrote: > Package: ruby-jaeger-client > Version: 1.2.0-1 > Severity: serious > Justification: uninstallable > > ruby-jaeger-client is on my radar because it doesn't migrate for a > long time. I was very puzzled by the output of britney: > > ruby-jaeger-client/amd64 has unsatisfiable dependency > > ruby-jaeger-client/arm64 has unsatisfiable dependency > > Turns out this is probably a bug in britney, but it does point out an > issue on all architectures but amd64. ruby-jaeger-client has a arch > specifier in its depends: ruby-thrift:amd64. As I couldn't find this > in the d/control file, I guess it's a tool chain issue (or a logical > flow inside this package). > > You can see the uninstallability in action on ci.debian.net where all > architectures fail in unstable except amd64. > > See below, grabbed from the arm64 Packages. > > Paul > > Package: ruby-jaeger-client > Version: 1.2.0-1 > Installed-Size: 183 > Maintainer: Debian Ruby Team > <pkg-ruby-extras-maintain...@lists.alioth.debian.org> > Architecture: all > Depends: ruby:any, ruby-opentracing (>= 0.3), ruby-thrift:amd64 > Description: OpenTracing Tracer implementation for Jaeger > Homepage: https://github.com/salemove/jaeger-client-ruby > Description-md5: a7ce2ef441d13cf5a973833acaa48379 > Ruby-Versions: all > Section: ruby > Priority: optional > Filename: pool/main/r/ruby-jaeger-client/ruby-jaeger-client_1.2.0-1_all.deb > Size: 32476 > MD5sum: 0d382dbd396d9496ce63cd2aa3360ec8 > SHA256: 6df406498b9d15f095ece5355255c0a980ca70263c17bb0d3ab694261365d230 This happens because the mapping between Rubygems package names and Debian packages sometimes will include an architecture qualifier, because it uses the output of dpkg -S. I'm not sure why it doesn't happen for all arch:any packages, though: $ dpkg -S /usr/share/rubygems-integration/*/specifications/* | grep ruby-thrift ruby-thrift:amd64: /usr/share/rubygems-integration/2.7.0/specifications/thrift-0.14.0.gemspec ruby-thrift:amd64: /usr/share/rubygems-integration/3.0.0/specifications/thrift-0.14.0.gemspec $ dpkg -S /usr/share/rubygems-integration/*/specifications/* | grep ruby-ffi: ruby-ffi: /usr/share/rubygems-integration/2.7.0/specifications/ffi-1.12.2.gemspec ruby-ffi: /usr/share/rubygems-integration/3.0.0/specifications/ffi-1.12.2.gemspec gem2deb needs to be modified to strip the architecture off the package name, and then ruby-jaeger-client needs to build depend on a new version of gem2deb that contains the fix.
signature.asc
Description: PGP signature