user debian-cr...@lists.debian.org
usertags 1093724 + bdsat
affects 1093724 + src:gitlab src:grpc src:grpc-java src:hivex src:libguestfs 
src:libprelude src:libselinux src:libsemanage src:mecab src:ninix-aya 
src:obexftp src:ohcount src:passenger src:protobuf src:puma src:qdbm 
src:redland-bindings src:remctl src:rrdtool src:ruby-aliyun-sdk src:ruby-atomic 
src:ruby-augeas src:ruby-bcrypt src:ruby-bcrypt-pbkdf src:ruby-bert 
src:ruby-bindex src:ruby-binding-ninja src:ruby-bootsnap src:ruby-bson 
src:ruby-byebug src:ruby-cairo src:ruby-cbor src:ruby-character-set 
src:ruby-charlock-holmes src:ruby-commonmarker src:ruby-concurrent 
src:ruby-cool.io src:ruby-curb src:ruby-curses src:ruby-damerau-levenshtein 
src:ruby-dbm src:ruby-debian src:ruby-debug-inspector src:ruby-eb 
src:ruby-ed25519 src:ruby-enumerable-statistics src:ruby-escape-utils 
src:ruby-eventmachine src:ruby-exif src:ruby-fast-blank src:ruby-fast-stemmer 
src:ruby-fast-xs src:ruby-fcgi src:ruby-ffi src:ruby-ffi-yajl src:ruby-fftw3 
src:ruby-fssm src:ruby-fusefs src:ruby-gd src:ruby-github-linguist 
src:ruby-github-markdown src:ruby-gnome src:ruby-gpgme src:ruby-grib 
src:ruby-gsl src:ruby-haml src:ruby-hamlit src:ruby-hdfeos5 src:ruby-hiredis 
src:ruby-hitimes src:ruby-http-parser src:ruby-http-parser.rb 
src:ruby-jaro-winkler src:ruby-json src:ruby-kakasi-ffi src:ruby-kgio 
src:ruby-kyotocabinet src:ruby-lapack src:ruby-levenshtein src:ruby-libvirt 
src:ruby-libxml src:ruby-liquid-c src:ruby-mimemagic src:ruby-mmap2 
src:ruby-mpi src:ruby-msgpack src:ruby-multibitnums src:ruby-murmurhash3 
src:ruby-mysql2 src:ruby-narray src:ruby-ncurses src:ruby-netcdf src:ruby-nfc 
src:ruby-nio4r src:ruby-nokogiri src:ruby-odbc src:ruby-oily-png src:ruby-oj 
src:ruby-oj-introspect src:ruby-ox src:ruby-password src:ruby-pcaprub 
src:ruby-pg src:ruby-pgplot src:ruby-posix-spawn src:ruby-prof 
src:ruby-prometheus-client-mmap src:ruby-psych src:ruby-raindrops 
src:ruby-rblineprof src:ruby-rbtrace src:ruby-rbtree src:ruby-rdiscount 
src:ruby-re2 src:ruby-redcarpet src:ruby-redcloth 
src:ruby-regexp-property-values src:ruby-rinku src:ruby-rmagick 
src:ruby-rpam-ruby19 src:ruby-rpatricia src:ruby-ruby-magic-static 
src:ruby-rugged src:ruby-sdbm src:ruby-sdl src:ruby-sequel-pg 
src:ruby-serialport src:ruby-shadow src:ruby-sqlite3 src:ruby-stackprof 
src:ruby-strptime src:ruby-termios src:ruby-timfel-krb5-auth src:ruby-tioga 
src:ruby-tokyocabinet src:ruby-uconv src:ruby-unf-ext src:ruby-unicode 
src:ruby-version-sorter src:ruby-vmstat src:ruby-websocket-driver 
src:ruby-xmlparser src:ruby-yajl src:ruby-zoom src:sonic-pi src:stfl 
src:sup-mail src:thin src:thrift src:trocla src:unicorn src:unicorn-engine 
src:vagrant src:xdotool src:xmms2
thanks

On Thu, Feb 20, 2025 at 09:00:40AM -0300, Antonio Terceiro wrote:
> Given ruby-minitest is a test runner, and that when cross compiling
> tests should not be executed, any packages only used to run tests should
> be marked as <!nocheck> in the build dependencies.

Yes. That's the theory. Now let's figure out how packages end up
depending on it. For a lot of packages the chain goes like this:

Source: ...
Build-Depends: dh-sequence-ruby

Package: gem2deb
Provides: dh-sequence-ruby
Depends: gem2deb-test-runner

Package: gem2deb-test-runner
Depends: ruby-minitest

Package: ruby-minitest
Architecture: all
Multi-Arch: no

In this chain, the only dependency that could be annotated <!nocheck> is
dh-sequence-ruby, because build profiles cannot be applied to runtime
dependencies. (They can in the source control template, but they're
fully evaluated once the package is built.)

> On the other hand, I see 130+ packages that build-depend on
> ruby-minitest, so maybe doing this could be a shortcut.

And that's how you get this big number.

> Can you ellaborate on the context in which this was necessary in Ubuntu?

This is not just Ubuntu being affected. It is Debian proper. As such I
appreciate a solution for trixie as it also affects packages in the
cross bootstrap set.

We have two ways of fixing this. One is moving forward with Multi-Arch:
foreign here (which I think is harmless as long as ruby-minitest remains
a pure ruby module without dependencies of its own) or we break the
aforementioned dependency chain at some point. For instance, gem2deb
could stop depending on gem2deb-test-runner and packages wanting to run
tests could Build-Depends on something like dh-sequence-ruby-test
<!nocheck>. I don't think this approach would be suitable for trixie
though.

Helmut

Reply via email to