Bug#1026735: clusterssh: FTBFS: dh_auto_test: error: /usr/bin/perl Build test --verbose 1 returned exit code 255
Hi Gregor, On Tue, Dec 20, 2022 at 07:31:55PM +0100, gregor herrmann wrote: > Control: tag -1 + confirmed upstream > > On Tue, 20 Dec 2022 18:28:10 +0100, Lucas Nussbaum wrote: > > > Source: clusterssh > > Version: 4.16-3 > > Severity: serious > > Justification: FTBFS > > Tags: bookworm sid ftbfs > > User: lu...@debian.org > > Usertags: ftbfs-20221220 ftbfs-bookworm > > > > # Failed test 'returned ok' > > > # at t/15config.t line 546. > > > # got: 'die' > > > # expected: 'return' > > > > > > # Failed test 'Expecting no STDERR' > > > # at t/15config.t line 550. > > > # got: '' > > > # expected: 'Unable to write default $HOME/.clusterssh/config: Is a > > > directory > > > # > > > # ' > > > # Looks like you failed 2 tests of 155. > > > t/15config.t .. > > > > # check failure to write default config is caught > > > not ok 147 - returned ok > > > ok 148 - An object of class 'App::ClusterSSH::Config' isa > > > 'App::ClusterSSH::Config' > > > ok 149 - An object of class 'App::ClusterSSH::Config' isa > > > 'App::ClusterSSH::Config' > > > ok 150 - Expecting no STDOUT > > > not ok 151 - Expecting no STDERR > > > > Test Summary Report > > > --- > > > > t/15config.t(Wstat: 512 (exited 2) Tests: 155 Failed: 2) > > > Failed tests: 147, 151 > > > Non-zero exit status: 2 > > This reminds me of #1025722 in duck and is probably also caused by > this change in perl: > > perl (5.36.0-5) unstable; urgency=medium > > * Backported upstream changes: > + only clear the stream error state in readline() for glob() > (Closes: #1016369) > > The problem seems to be in lines 384 ff in write_user_config_file() > in lib/App/ClusterSSH/Config.pm: > >341 sub write_user_config_file { > >384 # Debian #673507 - migrate clusters prior to writing > ~/.clusterssh/config >385 # in order to update the extra_cluster_file property >386 if (%old_clusters) { >387 if ( open( my $fh, ">", "$ENV{HOME}/.clusterssh/clusters" ) ) > { >388 print $fh '# ' >389 . $self->loc('Tag definitions moved from old .csshrc > file'), >390 $/; >391 foreach ( sort( keys(%old_clusters) ) ) { >392 print $fh $_, ' ', join( ' ', $old_clusters{$_} ), $/; >393 } >394 close($fh); >395 } >396 else { >397 croak( >398 App::ClusterSSH::Exception::Config->throw( >399 error => $self->loc( >400 'Unable to write [_1]: [_2]' . $/, >401 '$HOME/.clusterssh/clusters', >402 $! >403 ), >404 ), >405 ); >406 } >407 } > > > As #673507 is from 2012, I guess this code (and the tests) can be > removed? I think reference to #673507 is merely for context and that the behavior implemented (with respect to the configuration file location and logic) is the desired behavior. Thank you for the pointer to the bug in duck [1]. I'll work on a patch. Cheers, tony [1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1025722 signature.asc Description: PGP signature
Bug#1026735: clusterssh: FTBFS: dh_auto_test: error: /usr/bin/perl Build test --verbose 1 returned exit code 255
Control: tag -1 + confirmed upstream On Tue, 20 Dec 2022 18:28:10 +0100, Lucas Nussbaum wrote: > Source: clusterssh > Version: 4.16-3 > Severity: serious > Justification: FTBFS > Tags: bookworm sid ftbfs > User: lu...@debian.org > Usertags: ftbfs-20221220 ftbfs-bookworm > > # Failed test 'returned ok' > > # at t/15config.t line 546. > > # got: 'die' > > # expected: 'return' > > > > # Failed test 'Expecting no STDERR' > > # at t/15config.t line 550. > > # got: '' > > # expected: 'Unable to write default $HOME/.clusterssh/config: Is a > > directory > > # > > # ' > > # Looks like you failed 2 tests of 155. > > t/15config.t .. > > # check failure to write default config is caught > > not ok 147 - returned ok > > ok 148 - An object of class 'App::ClusterSSH::Config' isa > > 'App::ClusterSSH::Config' > > ok 149 - An object of class 'App::ClusterSSH::Config' isa > > 'App::ClusterSSH::Config' > > ok 150 - Expecting no STDOUT > > not ok 151 - Expecting no STDERR > > Test Summary Report > > --- > > t/15config.t(Wstat: 512 (exited 2) Tests: 155 Failed: 2) > > Failed tests: 147, 151 > > Non-zero exit status: 2 This reminds me of #1025722 in duck and is probably also caused by this change in perl: perl (5.36.0-5) unstable; urgency=medium * Backported upstream changes: + only clear the stream error state in readline() for glob() (Closes: #1016369) The problem seems to be in lines 384 ff in write_user_config_file() in lib/App/ClusterSSH/Config.pm: 341 sub write_user_config_file { 384 # Debian #673507 - migrate clusters prior to writing ~/.clusterssh/config 385 # in order to update the extra_cluster_file property 386 if (%old_clusters) { 387 if ( open( my $fh, ">", "$ENV{HOME}/.clusterssh/clusters" ) ) { 388 print $fh '# ' 389 . $self->loc('Tag definitions moved from old .csshrc file'), 390 $/; 391 foreach ( sort( keys(%old_clusters) ) ) { 392 print $fh $_, ' ', join( ' ', $old_clusters{$_} ), $/; 393 } 394 close($fh); 395 } 396 else { 397 croak( 398 App::ClusterSSH::Exception::Config->throw( 399 error => $self->loc( 400 'Unable to write [_1]: [_2]' . $/, 401 '$HOME/.clusterssh/clusters', 402 $! 403 ), 404 ), 405 ); 406 } 407 } As #673507 is from 2012, I guess this code (and the tests) can be removed? Cheers, gregor -- .''`. https://info.comodo.priv.at -- Debian Developer https://www.debian.org : :' : OpenPGP fingerprint D1E1 316E 93A7 60A8 104D 85FA BB3A 6801 8649 AA06 `. `' Member VIBE!AT & SPI Inc. -- Supporter Free Software Foundation Europe `- signature.asc Description: Digital Signature
Bug#1026735: clusterssh: FTBFS: dh_auto_test: error: /usr/bin/perl Build test --verbose 1 returned exit code 255
Source: clusterssh Version: 4.16-3 Severity: serious Justification: FTBFS Tags: bookworm sid ftbfs User: lu...@debian.org Usertags: ftbfs-20221220 ftbfs-bookworm Hi, During a rebuild of all packages in sid, your package failed to build on amd64. Relevant part (hopefully): > debian/rules binary > dh binary --with bash-completion >dh_update_autotools_config >dh_autoreconf >dh_auto_configure > /usr/bin/perl Build.PL --installdirs vendor --config "optimize=-g -O2 > -ffile-prefix-map=/<>=. -fstack-protector-strong -Wformat > -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2" --config > "ld=x86_64-linux-gnu-gcc -g -O2 -ffile-prefix-map=/<>=. > -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro" > Could not get valid metadata. Error is: ERROR: Missing required field > 'dist_abstract' for metafile > > Could not create MYMETA files > Creating new 'Build' script for 'App-ClusterSSH' version '4.16' >dh_auto_build > /usr/bin/perl Build > Building App-ClusterSSH > Using perl binary: /usr/bin/perl > Using perl version v5.36.0 > Generating: /<>/bin_PL/cssh > Generating: /<>/bin_PL/csftp > Generating: /<>/bin_PL/ccon > Generating: /<>/bin_PL/crsh > Generating: /<>/bin_PL/ctel > Generating: /<>/bin_PL/clusterssh_bash_completion.dist >dh_auto_test > /usr/bin/perl Build test --verbose 1 > t/00-load.t ... > 1..1 > ok 1 - use App::ClusterSSH; > # Testing App::ClusterSSH 4.16, Perl 5.036000, /usr/bin/perl > ok > t/01l10n.t > 1..2 > ok 1 - use App::ClusterSSH::L10N; > ok 2 - An object of class 'App::ClusterSSH::L10N::en' isa > 'App::ClusterSSH::L10N' > ok > t/02base.t > ok 1 - use App::ClusterSSH::Base; > ok 2 - An object of class 'App::ClusterSSH::Base' isa 'App::ClusterSSH::Base' > ok 3 - returned ok > ok 4 - returned ok > ok 5 - Expecting no STDERR > ok 6 - got correct number of print lines > ok 7 - checking for expected print output > ok 8 - debug level is correct > ok 9 - returned ok > ok 10 - returned ok > ok 11 - Expecting no STDERR > ok 12 - got correct number of debug lines > ok 13 - checking for expected debug output > ok 14 - debug level is correct > ok 15 - returned ok > ok 16 - returned ok > ok 17 - Expecting no STDERR > ok 18 - got correct number of debug lines > ok 19 - checking for expected debug output > ok 20 - debug level is correct > ok 21 - returned ok > ok 22 - returned ok > ok 23 - Expecting no STDERR > ok 24 - got correct number of debug lines > ok 25 - checking for expected debug output > ok 26 - debug level is correct > ok 27 - returned ok > ok 28 - returned ok > ok 29 - Expecting no STDERR > ok 30 - got correct number of debug lines > ok 31 - checking for expected debug output > ok 32 - debug level is correct > ok 33 - returned ok > ok 34 - returned ok > ok 35 - Expecting no STDERR > ok 36 - got correct number of debug lines > ok 37 - checking for expected debug output > ok 38 - debug level is correct > ok 39 - returned ok > ok 40 - returned ok > ok 41 - Expecting no STDERR > ok 42 - got correct number of debug lines > ok 43 - checking for expected debug output > ok 44 - debug level is correct > ok 45 - returned ok > ok 46 - returned ok > ok 47 - Expecting no STDERR > ok 48 - got correct number of debug lines > ok 49 - checking for expected debug output > ok 50 - debug level is correct > ok 51 - returned ok > ok 52 - returned ok > ok 53 - Expecting no STDERR > ok 54 - got correct number of debug lines > ok 55 - checking for expected debug output > ok 56 - debug level is correct > ok 57 - returned ok > ok 58 - returned ok > ok 59 - Expecting no STDERR > ok 60 - got correct number of debug lines > ok 61 - checking for expected debug output > ok 62 - debug level is correct > ok 63 - returned ok > ok 64 - returned ok > ok 65 - Expecting no STDERR > ok 66 - got correct number of debug lines > ok 67 - checking for expected debug output > ok 68 - 'Caught exception object OK' isa 'App::ClusterSSH::Exception' > ok 69 - returned ok > ok 70 - Expecting no STDERR > ok 71 - Expecting no STDOUT > ok 72 - Got correct croak text > ok 73 - checking debug_level reset to 9 > ok 74 - An object of class 'App::ClusterSSH::Base' isa 'App::ClusterSSH::Base' > ok 75 - returned ok > ok 76 - returned ok > ok 77 - Expecting no STDERR > ok 78 - got new() debug output lines > ok 79 - got expected new() output > ok 80 - An object of class 'App::ClusterSSH::Base' isa 'App::ClusterSSH::Base' > ok 81 - returned ok > ok 82 - returned ok > ok 83 - Expecting no STDERR > ok 84 - got new() debug output lines > ok 85 - got expected new() output > ok 86 - An object of class 'App::ClusterSSH::Base' isa 'App::ClusterSSH::Base' > ok 87 - returned ok > ok 88 - returned ok > ok 89 - Expecting no STDERR > ok 90 - got new() debug output lines > ok 91 - got expected new() output > ok 92 - An object of class 'App::ClusterSSH::Base' isa 'App::ClusterSSH::Base' > ok 93 - returned ok > ok 94 - returned ok > ok 95 - Expecting no STDERR > ok 96 - got new()