[DRE-maint] Bug#1104416: FTBFS: Building is stuck at cleanup phase

Gunnar Wolf gwolf at debian.org
Wed Apr 30 18:59:41 BST 2025


Chris Hofstaedtler dijo [Wed, Apr 30, 2025 at 11:18:32AM +0200]:
>* Gunnar Wolf <gwolf at gwolf.org> [250429 22:00]:
>>When building ruby-fugit, the build process seems to run successfully,
>>until it reaches the cleanup stage. The last output I get is:
>>
>>   cd debian/ruby-fugit/usr/share/rubygems-integration/all
>>   rm -rf bin
>>   rm -rf build_info
>>   rm -rf cache
>>   rm -rf doc
>>   rm -rf extensions
>>   rmdir plugins
>>   cd gems/fugit-1.11.1
>>   rm -f
>>   chmod 644 lib/fugit/at.rb lib/fugit/cron.rb lib/fugit/duration.rb lib/fugit/misc.rb lib/fugit/nat.rb lib/fugit/parse.rb lib/fugit.rb
>>   find lib/ -type d -empty -delete
>> (...)
>
>I just tried rebuilding ruby-fugit in sbuild (from testing) on arm64 
>and it built fine for me. Total build time incl. autopkgtests
>was < 1min30s.
>
>Does this build failure happen reliably for you?

Weird. I tried it repeatedly at my work machine, both using gbp and debuild
(but didn't try building in a chroot), and it failed several times.

I tried today from my home computer, and it (reliably) passes this point no
issues.

The package fails to build because of four test failures, but that's a
completely different issue 😉

Failures:
   1) Fugit::Cron#previous_time succeeds "21 0 * * 1%2 America/Sao_Paulo" 2024-03-13 12:00 -> "2024-03-04 04:21:00" in Europe/Paris
      Failure/Error:
        fail RuntimeError.new(
          "too many loops for #{@original.inspect} #previous_time, breaking, " +
          "cron expression most likely invalid (Feb 30th like?), " +
          "please fill an issue at https://git.io/fjJCQ"
        ) if (i += 1) > MAX_ITERATION_COUNT
      RuntimeError:
        too many loops for "21 0 * * 1%2 America/Sao_Paulo" #previous_time, breaking, cron expression most likely invalid (Feb 30th like?), please fill an issue at https://git.io/fjJCQ
      # ./lib/fugit/cron.rb:319:in `block in previous_time'
      # ./lib/fugit/cron.rb:317:in `previous_time'
      # ./spec/cron_spec.rb:925:in `block (5 levels) in <top (required)>'
      # ./spec/spec_helper.rb:29:in `in_zone'
      # ./spec/cron_spec.rb:918:in `block (4 levels) in <top (required)>'
   2) Fugit::Cron#brute_frequency computes "dmin: 1D, dmax: 1D, ocs: 365, spn: 52W1D, spnys: 1, yocs: 365" for "0 0 * * *"
      Failure/Error: expect(f).to eq(freq)
        expected: "dmin: 1D, dmax: 1D, ocs: 365, spn: 52W1D, spnys: 1, yocs: 365"
             got: "dmin: 23h, dmax: 1D1h, ocs: 365, spn: 52W1D, spnys: 1, yocs: 365"
        (compared using ==)
      # ./spec/cron_spec.rb:1015:in `block (4 levels) in <top (required)>'
   3) Fugit::Cron#brute_frequency computes "dmin: 1W, dmax: 1W, ocs: 53, spn: 53W, spnys: 1, yocs: 52" for "0 0 * * sun"
      Failure/Error: expect(f).to eq(freq)
        expected: "dmin: 1W, dmax: 1W, ocs: 53, spn: 53W, spnys: 1, yocs: 52"
             got: "dmin: 6D23h, dmax: 1W1h, ocs: 53, spn: 53W, spnys: 1, yocs: 52"
        (compared using ==)
      # ./spec/cron_spec.rb:1015:in `block (4 levels) in <top (required)>'
   4) Fugit::Cron#brute_frequency accepts a year argument
      Failure/Error:
        expect(
          Fugit::Cron.parse('0 0 * * sun').brute_frequency(2016).to_debug_s
        ).to eq(
          'dmin: 1W, dmax: 1W, ocs: 52, spn: 52W, spnys: 0, yocs: 52'
        )
        expected: "dmin: 1W, dmax: 1W, ocs: 52, spn: 52W, spnys: 0, yocs: 52"
             got: "dmin: 6D23h, dmax: 1W1h, ocs: 52, spn: 52W, spnys: 0, yocs: 52"
        (compared using ==)
      # ./spec/cron_spec.rb:1021:in `block (3 levels) in <top (required)>'
Finished in 50.81 seconds (files took 0.20173 seconds to load)
1437 examples, 4 failures, 1 pending
Failed examples:
rspec './spec/cron_spec.rb[1:3:30]' # Fugit::Cron#previous_time succeeds "21 0 * * 1%2 America/Sao_Paulo" 2024-03-13 12:00 -> "2024-03-04 04:21:00" in Europe/Paris
rspec './spec/cron_spec.rb[1:4:2]' # Fugit::Cron#brute_frequency computes "dmin: 1D, dmax: 1D, ocs: 365, spn: 52W1D, spnys: 1, yocs: 365" for "0 0 * * *"
rspec './spec/cron_spec.rb[1:4:3]' # Fugit::Cron#brute_frequency computes "dmin: 1W, dmax: 1W, ocs: 53, spn: 53W, spnys: 1, yocs: 52" for "0 0 * * sun"
rspec ./spec/cron_spec.rb:1019 # Fugit::Cron#brute_frequency accepts a year argument



More information about the Pkg-ruby-extras-maintainers mailing list