Subject: | t/01-core.t fails (random sort order) |
The test suite usually fails on newer perl installations (5.18 and up):
...
not ok 4 - Makefile.PL - show
# Failed test 'Makefile.PL - show'
# at t/01-core.t line 32.
# Got stdout:
# Running [/usr/perl5.31.8p/bin/perl5.31.8 -MCPANPLUS::Internals::Utils::Autoflush /usr/home/cpansand/.cpan/build/2020022107/CPANPLUS-Shell-Default-Plugins-Prereqs-0.10-0/t/mm1/Makefile.PL]...
# Generating a Unix-style Makefile
# Writing Makefile for CPANPLUS::Shell::Default::Plugins::Prereqs
# Writing MYMETA.yml and MYMETA.json
#
# Module Req Ver Installed CPAN Satisfied
# Hash::Util 0 0.23 0.22 Yes
# Prerequisite 'stuff' was not found on CPAN
# ExtUtils::MakeMaker 0 7.44 7.44 Yes
# Test::More 0 1.302171 1.302171 Yes
# File::Spec 0 3.78 3.75 Yes
#
# Got stderr:
# Warning: prerequisite stuff 0 not found.
#
# Expected stdout: (?^s:'stuff' was not found.*Hash::Util)
# Expected stderr: (?^:.*)
...
It seems that the sort order of reported prereqs is not as expected --- usually "Hash::Util" is listed before "stuff", causing the test to fail.
The breaking point (5.18) suggests that it might be related to the then introduced hash randomization feature, however I could not find a suitable PERL_HASH_SEED value to make the test suite pass.
Overview of test reports: http://matrix.cpantesters.org/?dist=CPANPLUS-Shell-Default-Plugins-Prereqs+0.10