Skip to content

Data::OptList cannot be installed against perl built with NO_TAINT_SUPPORT #3

@jkeenan

Description

@jkeenan

Last week I built a perl with this configuration:

$ uname -mrs
Linux 5.19.0-41-generic x86_64

$ ./bin/perl -Ilib -v | head -2 | tail -1
This is perl 5, version 37, subversion 12 (v5.37.12 (v5.37.11-5-gcf4572e56a)) built for x86_64-linux

$ ./bin/perl -Ilib -V:config_args
config_args='-des -Dusedevel -Accflags=-DNO_TAINT_SUPPORT -Dprefix=/home/jkeenan/testing/blead -Uversiononly -Dman1dir=none -Dman3dir=none';

I installed cpanm against that perl, then tried to install Task::CPAN::Reporter against that perl. The installation failed. The first module to FAIL in that attempt appears to have been Data::OptList.

$ ./bin/cpanm Test::Reporter::Transport::Metabase
--> Working on Test::Reporter::Transport::Metabase
Fetching http://www.cpan.org/authors/id/D/DA/DAGOLDEN/Test-Reporter-Transport-Metabase-1.999010.tar.gz ... OK
Configuring Test-Reporter-Transport-Metabase-1.999010 ... OK
==> Found dependencies: Metabase::User::Profile, Metabase::User::Secret, Metabase::Client::Simple, CPAN::Testers::Report
--> Working on Metabase::User::Profile
Fetching http://www.cpan.org/authors/id/D/DA/DAGOLDEN/Metabase-Fact-0.025.tar.gz ... OK
Configuring Metabase-Fact-0.025 ... OK
==> Found dependencies: Data::GUID
--> Working on Data::GUID
Fetching http://www.cpan.org/authors/id/R/RJ/RJBS/Data-GUID-0.051.tar.gz ... OK
Configuring Data-GUID-0.051 ... OK
==> Found dependencies: Sub::Exporter
--> Working on Sub::Exporter
Fetching http://www.cpan.org/authors/id/R/RJ/RJBS/Sub-Exporter-0.989.tar.gz ... OK
Configuring Sub-Exporter-0.989 ... OK
==> Found dependencies: Data::OptList
--> Working on Data::OptList
Fetching http://www.cpan.org/authors/id/R/RJ/RJBS/Data-OptList-0.113.tar.gz ... OK
Configuring Data-OptList-0.113 ... OK
Building and testing Data-OptList-0.113 ... FAIL
! Installing Data::OptList failed. See /home/jkeenan/.cpanm/work/1682727875.48095/build.log for details. Retry with --force to force install it.
! Installing the dependencies failed: Module 'Data::OptList' is not installed
! Bailing out the installation for Sub-Exporter-0.989.
! Installing the dependencies failed: Module 'Sub::Exporter' is not installed
! Bailing out the installation for Data-GUID-0.051.
! Installing the dependencies failed: Module 'Data::GUID' is not installed
! Bailing out the installation for Metabase-Fact-0.025.
--> Working on Metabase::Client::Simple
Fetching http://www.cpan.org/authors/id/D/DA/DAGOLDEN/Metabase-Client-Simple-0.012.tar.gz ... OK
Configuring Metabase-Client-Simple-0.012 ... OK
==> Found dependencies: Metabase::User::Secret, Metabase::User::Profile, URI
--> Working on URI
Fetching http://www.cpan.org/authors/id/O/OA/OALDERS/URI-5.17.tar.gz ... OK
Configuring URI-5.17 ... OK
Building and testing URI-5.17 ... FAIL
! Installing URI failed. See /home/jkeenan/.cpanm/work/1682727875.48095/build.log for details. Retry with --force to force install it.
! Installing the dependencies failed: Module 'URI' is not installed, Module 'Metabase::User::Profile' is not installed, Module 'Metabase::User::Secret' is not installed
! Bailing out the installation for Metabase-Client-Simple-0.012.
--> Working on CPAN::Testers::Report
Fetching http://www.cpan.org/authors/id/D/DA/DAGOLDEN/CPAN-Testers-Report-1.999003.tar.gz ... OK
Configuring CPAN-Testers-Report-1.999003 ... OK
==> Found dependencies: Metabase::Fact::Hash, Metabase::Fact::String, Metabase::Report
! Installing the dependencies failed: Module 'Metabase::Fact::Hash' is not installed, Module 'Metabase::Fact::String' is not installed, Module 'Metabase::Report' is not installed
! Bailing out the installation for CPAN-Testers-Report-1.999003.
! Installing the dependencies failed: Module 'CPAN::Testers::Report' is not installed, Module 'Metabase::Client::Simple' is not installed, Module 'Metabase::User::Secret' is not installed, Module 'Metabase::User::Profile' is not installed
! Bailing out the installation for Test-Reporter-Transport-Metabase-1.999010.
...
==> Found dependencies: Data::OptList
Searching Data::OptList (0.100) on cpanmetadb ...
--> Working on Data::OptList
Fetching http://www.cpan.org/authors/id/R/RJ/RJBS/Data-OptList-0.113.tar.gz
-> OK
Unpacking Data-OptList-0.113.tar.gz
Entering Data-OptList-0.113
Checking configure dependencies from META.json
Checking if you have ExtUtils::MakeMaker 6.78 ... Yes (7.70)
Configuring Data-OptList-0.113
Running Makefile.PL
...
t/00-report-prereqs.t .. ok
t/hash.t ............... ok
This perl was compiled without taint support. Cowardly refusing to run with -t or -T flags.
t/mkopt.t .............. 
Dubious, test returned 29 (wstat 7424, 0x1d00)
No subtests run 

Test Summary Report
-------------------
t/mkopt.t            (Wstat: 7424 (exited 29) Tests: 0 Failed: 0)
  Non-zero exit status: 29
  Parse errors: No plan found in TAP output
Files=3, Tests=14,  0 wallclock secs ( 0.01 usr  0.00 sys +  0.08 cusr  0.01 csys =  0.10 CPU)
Result: FAIL
Failed 1/3 test programs. 0/14 subtests failed.
make: *** [Makefile:859: test_dynamic] Error 29
-> FAIL Installing Data::OptList failed. See /home/jkeenan/.cpanm/work/1682727875.48095/build.log for details. Retry with --force to force install it.
...

This in turn led to failures in other Task::CPAN::Reporter prerequisites, including:

-> FAIL Bailing out the installation for Sub-Exporter-0.989.
-> FAIL Installing the dependencies failed: Module 'Sub::Exporter' is not installed
-> FAIL Bailing out the installation for Data-GUID-0.051.
-> FAIL Installing the dependencies failed: Module 'Data::GUID' is not installed
-> FAIL Bailing out the installation for Metabase-Fact-0.025.

I note that there may be other NO_TAINT_SUPPORT-related failures in other, distinct prerequisites for Task::CPAN::Reporter, so simply fixing this distro may not suffice re doing CPANtesters reporting against this type of build.

I believe @DrHyde has been looking into this kind of problem, but I don't know if we've established any S.O.P. as to how to write tests against this kind of perl.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions