Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BBC: HIO/ExtUtils-MY_Metafile-0.09.tar.gz fails since perl 5.31.9 #17590

Closed
eserte opened this issue Feb 27, 2020 · 4 comments
Closed

BBC: HIO/ExtUtils-MY_Metafile-0.09.tar.gz fails since perl 5.31.9 #17590

eserte opened this issue Feb 27, 2020 · 4 comments
Labels
BBC Blead Breaks CPAN - changes in blead broke a cpan module(s)

Comments

@eserte
Copy link
Contributor

eserte commented Feb 27, 2020

Output of test failure:

#   Failed test '[default] eval: Attempt to reload inc/ExtUtils/MY_Metafile.pm aborted.
# Compilation failed in require at (eval 14) line 1.
# BEGIN failed--compilation aborted at (eval 14) line 1.
# '
#   at t/01_inc_import.t line 36.
# Looks like you failed 1 test of 2.
t/01_inc_import.t .......... 
Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/2 subtests 

http://fast-matrix.cpantesters.org/?dist=ExtUtils-MY_Metafile%200.09 shows that the failure started with perl 5.31.9.

@eserte eserte added BBC Blead Breaks CPAN - changes in blead broke a cpan module(s) Needs Triage affects-5.31 labels Feb 27, 2020
@Leont
Copy link
Contributor

Leont commented Feb 28, 2020

That sounds like the recent change in meaning of undef in %INC @tonycoz

@jkeenan
Copy link
Contributor

jkeenan commented Feb 28, 2020

Output of test failure:

#   Failed test '[default] eval: Attempt to reload inc/ExtUtils/MY_Metafile.pm aborted.
# Compilation failed in require at (eval 14) line 1.
# BEGIN failed--compilation aborted at (eval 14) line 1.
# '
#   at t/01_inc_import.t line 36.
# Looks like you failed 1 test of 2.
t/01_inc_import.t .......... 
Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/2 subtests 

http://fast-matrix.cpantesters.org/?dist=ExtUtils-MY_Metafile%200.09 shows that the failure started with perl 5.31.9.

Confirming Leon's hunch, bisection points to:

commit 4b004c43ef26ce175181122a7dfc3acd7dacb170
Author:     Tony Cook <tony@develop-help.com>
AuthorDate: Tue Jan 21 16:12:44 2020 +1100
Commit:     Tony Cook <tony@develop-help.com>
CommitDate: Mon Jan 27 10:23:08 2020 +1100

    always treat undef in %INC as a failed require
    
    Previously require would check for the specific \&PL_sv_undef
    SV in %INC, this meant that if %INC was copied, or undef
    assigned to a member the entry would erroneously be treated as if
    a previous require of that file was successful.
    
    So check for SvOK() instead, with appropriate magic tests.
    
    fixes #17428

I suspect that this is a case where we'll rule in favor of blead, but ...
Tony, can you take a look?

Thank you very much.
Jim Keenan

@jkeenan
Copy link
Contributor

jkeenan commented Feb 28, 2020

I have submitted a patch upstream to correct the test failure.

@tonycoz Is this ticket now closable?

@jkeenan jkeenan added the Closable? We might be able to close this ticket, but we need to check with the reporter label Feb 28, 2020
@tonycoz
Copy link
Contributor

tonycoz commented Mar 9, 2020

Yes, I think so.

The change means the undef that test code assigns is now (reasonably) treated as having failed to load the module, rather than as having successfully loaded the module.

Closed.

@tonycoz tonycoz closed this as completed Mar 9, 2020
@jkeenan jkeenan removed the Closable? We might be able to close this ticket, but we need to check with the reporter label Mar 23, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
BBC Blead Breaks CPAN - changes in blead broke a cpan module(s)
Projects
None yet
Development

No branches or pull requests

4 participants