Bug#871724: libcgi-compile-perl: FTBFS when debhelper does not export PERL_USE_UNSAFE_INC

Dominic Hargreaves dom at earth.li
Thu Aug 10 22:39:33 UTC 2017


Source: libcgi-compile-perl
Version: 0.21-1
Severity: normal
User: debian-perl at lists.debian.org
Usertags: debhelper-use-unsafe-inc-removal

This package FTBFS when debhelper is changed to not export
PERL_USE_UNSAFE_INC to the build environment. This export was added in
2016 at the same time that '.' was removed from INC by default, to
avoid breakage, but was a temporary change.

As well as allowing us to (eventually) remove this export from debhelper,
fixing this bug in your package will also help upstream, since this
change has been made in perl 5.26 upstream.

Additionally, it's possible that the problem may also exist at runtime
for your package (though from experience this is less likely).

Note that the rebuild testing was against a locally-modified version
of debhelper, but you can get the same effect by setting debhelper
compat level 11 in your package, which also removes the same
export.

For information about how to fix this class of issues, please refer
to the upstream release notes (in particular, 'Script authors' and
'Module Authors'):

http://perldoc.perl.org/perldelta.html#Removal-of-the-current-directory-(%22.%22)-from-%40INC

The relevant build failure logs are below:

   dh_auto_test
    perl Build test --verbose 1
t/00_compile.t ......... 
1..1
ok 1 - use CGI::Compile;
ok
t/author-pod-syntax.t .. skipped: these tests are for testing by the author
t/chained_exit.t ....... 
1..2
ok 1 - exit chained to CORE::GLOBAL::exit
ok 2 - no warnings
ok
t/chdir.t .............. 
ok 1
1..1
ok
Can't locate t/Capture.pm in @INC (you may need to install the t::Capture module) (@INC contains: /<<PKGBUILDDIR>>/blib/arch /<<PKGBUILDDIR>>/blib/lib /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.26.0 /usr/local/share/perl/5.26.0 /usr/lib/x86_64-linux-gnu/perl5/5.26 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.26 /usr/share/perl/5.26 /usr/local/lib/site_perl /usr/lib/x86_64-linux-gnu/perl-base) at t/coderef_args.t line 2.
BEGIN failed--compilation aborted at t/coderef_args.t line 2.
t/coderef_args.t ....... 
Dubious, test returned 2 (wstat 512, 0x200)
No subtests run 
Can't locate t/Capture.pm in @INC (you may need to install the t::Capture module) (@INC contains: /<<PKGBUILDDIR>>/blib/arch /<<PKGBUILDDIR>>/blib/lib /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.26.0 /usr/local/share/perl/5.26.0 /usr/lib/x86_64-linux-gnu/perl5/5.26 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.26 /usr/share/perl/5.26 /usr/local/lib/site_perl /usr/lib/x86_64-linux-gnu/perl-base) at t/compile.t line 3.
BEGIN failed--compilation aborted at t/compile.t line 3.
t/compile.t ............ 
Dubious, test returned 2 (wstat 512, 0x200)
No subtests run 
Can't locate t/Capture.pm in @INC (you may need to install the t::Capture module) (@INC contains: /<<PKGBUILDDIR>>/blib/arch /<<PKGBUILDDIR>>/blib/lib /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.26.0 /usr/local/share/perl/5.26.0 /usr/lib/x86_64-linux-gnu/perl5/5.26 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.26 /usr/share/perl/5.26 /usr/local/lib/site_perl /usr/lib/x86_64-linux-gnu/perl-base) at t/data_end.t line 3.
BEGIN failed--compilation aborted at t/data_end.t line 3.
t/data_end.t ........... 
Dubious, test returned 2 (wstat 512, 0x200)
No subtests run 
t/eval-my-variables.t .. 
1..12
ok 1 - exception self
ok 2 - compilation failed self
ok 3 - exception VERSION
ok 4 - compilation failed VERSION
ok 5 - exception data
ok 6 - compilation failed data
ok 7 - exception path
ok 8 - compilation failed path
ok 9 - exception dir
ok 10 - compilation failed dir
ok 11 - exception self
ok 12 - compilation failed self
ok
t/exit-code.t .......... 
1..52
ok 1 - fall-through exit 0
ok 2 - function exit 0
ok 3 - fall-through exit 1
ok 4 - fall-through float rounded up to int
ok 5 - fall-through float rounded down to int
ok 6 - function exit 1
ok 7 - fall-through exit string
ok 8 - function exit string
ok 9 - fall-through exit empty string
ok 10 - function exit empty string
ok 11 - fall-through exit undef
ok 12 - function exit implicit undef
ok 13 - function exit explicit undef
ok 14 - fall-through exit 0
ok 15 - function exit 0
ok 16 - fall-through exit 1
ok 17 - fall-through float rounded up to int
ok 18 - fall-through float rounded down to int
ok 19 - function exit 1
ok 20 - fall-through exit string
ok 21 - function exit string
ok 22 - fall-through exit empty string
ok 23 - function exit empty string
ok 24 - fall-through exit undef
ok 25 - function exit implicit undef
ok 26 - function exit explicit undef
ok 27
ok 28 - fall-through exit 0
ok 29
ok 30 - function exit 0
ok 31
ok 32 - fall-through exit 1
ok 33
ok 34 - fall-through float rounded up to int
ok 35
ok 36 - fall-through float rounded down to int
ok 37
ok 38 - function exit 1
ok 39
ok 40 - fall-through exit string
ok 41
ok 42 - function exit string
ok 43
ok 44 - fall-through exit empty string
ok 45
ok 46 - function exit empty string
ok 47
ok 48 - fall-through exit undef
ok 49
ok 50 - function exit implicit undef
ok 51
ok 52 - function exit explicit undef
ok
Can't locate t/Capture.pm in @INC (you may need to install the t::Capture module) (@INC contains: /<<PKGBUILDDIR>>/blib/arch /<<PKGBUILDDIR>>/blib/lib /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.26.0 /usr/local/share/perl/5.26.0 /usr/lib/x86_64-linux-gnu/perl5/5.26 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.26 /usr/share/perl/5.26 /usr/local/lib/site_perl /usr/lib/x86_64-linux-gnu/perl-base) at t/exit.t line 4.
BEGIN failed--compilation aborted at t/exit.t line 4.
# Looks like your test exited with 2 before it could output anything.
t/exit.t ............... 
1..2
Dubious, test returned 2 (wstat 512, 0x200)
Failed 2/2 subtests 
Can't locate t/Capture.pm in @INC (you may need to install the t::Capture module) (@INC contains: /<<PKGBUILDDIR>>/blib/arch /<<PKGBUILDDIR>>/blib/lib /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.26.0 /usr/local/share/perl/5.26.0 /usr/lib/x86_64-linux-gnu/perl5/5.26 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.26 /usr/share/perl/5.26 /usr/local/lib/site_perl /usr/lib/x86_64-linux-gnu/perl-base) at t/local-SIG.t line 3.
BEGIN failed--compilation aborted at t/local-SIG.t line 3.
t/local-SIG.t .......... 
Dubious, test returned 2 (wstat 512, 0x200)
No subtests run 
t/psgi.t ............... skipped: Test requires module 'CGI::Emulate::PSGI' but it's not found
t/return-val.t ......... 
ok 1 - return val from CGI
ok 2 - nonzero exit val from CGI
ok 3 - return val from CGI
ok 4 - return val from CGI
ok 5 - return val from CGI
ok 6 - return val from CGI
ok 7 - return val from CGI
ok 8 - return val from CGI
ok 9 - return val from CGI
ok 10 - return val from CGI
ok 11 - return val from CGI
ok 12 - nonzero exit val from CGI
ok 13 - return val from CGI
ok 14 - return val from CGI
ok 15 - return val from CGI
ok 16 - return val from CGI
ok 17 - return val from CGI
ok 18 - return val from CGI
ok 19 - return val from CGI
ok 20 - return val from CGI
ok 21 - return val from CGI
ok 22 - return val from CGI
ok 23 - return val from CGI
ok 24 - return val from CGI
ok 25 - return val from CGI
ok 26 - nonzero exit val from CGI
ok 27 - return val from CGI
ok 28 - return val from CGI
ok 29 - return val from CGI
ok 30 - return val from CGI
ok 31 - nonzero exit val from CGI
ok 32 - nonzero exit val from CGI
ok 33 - return val from CGI
ok 34 - nonzero exit val from CGI
ok 35 - return val from CGI
ok 36 - return val from CGI
ok 37 - no warnings
1..37
ok
Can't locate t/Capture.pm in @INC (you may need to install the t::Capture module) (@INC contains: /<<PKGBUILDDIR>>/blib/arch /<<PKGBUILDDIR>>/blib/lib /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.26.0 /usr/local/share/perl/5.26.0 /usr/lib/x86_64-linux-gnu/perl5/5.26 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.26 /usr/share/perl/5.26 /usr/local/lib/site_perl /usr/lib/x86_64-linux-gnu/perl-base) at t/source.t line 3.
BEGIN failed--compilation aborted at t/source.t line 3.
t/source.t ............. 
Dubious, test returned 2 (wstat 512, 0x200)
No subtests run 
t/source_filter.t ...... skipped: Test requires module 'Switch' but it's not found
Can't locate t/Capture.pm in @INC (you may need to install the t::Capture module) (@INC contains: /<<PKGBUILDDIR>>/blib/arch /<<PKGBUILDDIR>>/blib/lib /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.26.0 /usr/local/share/perl/5.26.0 /usr/lib/x86_64-linux-gnu/perl5/5.26 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.26 /usr/share/perl/5.26 /usr/local/lib/site_perl /usr/lib/x86_64-linux-gnu/perl-base) at t/warnings.t line 2.
BEGIN failed--compilation aborted at t/warnings.t line 2.
t/warnings.t ........... 
Dubious, test returned 2 (wstat 512, 0x200)
No subtests run 

Test Summary Report
-------------------
t/coderef_args.t     (Wstat: 512 Tests: 0 Failed: 0)
  Non-zero exit status: 2
  Parse errors: No plan found in TAP output
t/compile.t          (Wstat: 512 Tests: 0 Failed: 0)
  Non-zero exit status: 2
  Parse errors: No plan found in TAP output
t/data_end.t         (Wstat: 512 Tests: 0 Failed: 0)
  Non-zero exit status: 2
  Parse errors: No plan found in TAP output
t/exit.t             (Wstat: 512 Tests: 0 Failed: 0)
  Non-zero exit status: 2
  Parse errors: Bad plan.  You planned 2 tests but ran 0.
t/local-SIG.t        (Wstat: 512 Tests: 0 Failed: 0)
  Non-zero exit status: 2
  Parse errors: No plan found in TAP output
t/source.t           (Wstat: 512 Tests: 0 Failed: 0)
  Non-zero exit status: 2
  Parse errors: No plan found in TAP output
t/warnings.t         (Wstat: 512 Tests: 0 Failed: 0)
  Non-zero exit status: 2
  Parse errors: No plan found in TAP output
Files=16, Tests=105,  1 wallclock secs ( 0.02 usr  0.01 sys +  0.52 cusr  0.06 csys =  0.61 CPU)
Result: FAIL

Please feel feel free to get in touch with the Debian Perl team at              debian-perl at lists.debian.org if you need any more information or                assistance to fix this issue.              

Cheers,
Dominic.



More information about the pkg-perl-maintainers mailing list