[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