Perl-Toolchain-Gang / ExtUtils-MakeMaker

Perl module to make Makefiles and build modules (what backs Makefile.PL)
https://metacpan.org/release/ExtUtils-MakeMaker
64 stars 76 forks source link

Latest EU::MM fails on perl 5.12 and below when JSON::PP 4.08 is installed #416

Closed DrHyde closed 2 years ago

DrHyde commented 2 years ago

This change in JSON::PP, first released in JSON::PP 4.08, seems to cause extra warnings on Ye Olde Perle, which in turn cause EU::MM to fail several of its tests, such as:

t/min_perl_version.t ...... 1/35
#   Failed test 'MIN_PERL_VERSION=5 does not trigger a warning'
#   at t/min_perl_version.t line 90.
#          got: 'Unicode non-character 0x10ffff is illegal for interchange at /Users/david/perl5/perlbrew/perls/perl-5.12.5/lib/site_perl/5.12.5/JSON/PP.pm line 1276.
# '
#     expected: ''
t/min_perl_version.t ...... 30/35 # Looks like you failed 1 test of 35.
t/min_perl_version.t ...... Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/35 subtests

This only happens for perl 5.12 and below with JSON::PP 4.08 and above. Later perls are fine with an up-to-date JSON::PP, and 5.12 is fine with JSON::PP 4.07.

I've not tested any perl older than 5.12.5, but the failures spat out in my CI for 5.10 and 5.8 look the same

DrHyde commented 2 years ago

Mentioning @makamaka so he is aware

haarg commented 2 years ago

makamaka/JSON-PP#68 should fix this

DrHyde commented 2 years ago

Yep, EU::MM on Ye Olde Perle passes its tests when JSON::PP 4.09 is installed.