develooper Front page | perl.perl5.porters | Postings from February 2020

Hints hash changes

Thread Next
From:
David Cantrell
Date:
February 17, 2020 10:58
Subject:
Hints hash changes
Message ID:
20200217105756.GC15881@bytemark.barnyard.co.uk
Thanks to the CPAN-testers I came across a change in how the hints hash
is handled which I can't find documented, nor can I see any commit
message about it, leading me to think that the change might have been an
accidental side-effect.

It happened somewhere in between 5.31.6 and 5.31.7, as can be seen here:
  http://matrix.cpantesters.org/?dist=Devel-Hide+0.0012

That version of the code, while processing the argument list in
something like `use Devel::Hide qw(blah blah blah)`, reads from the
hints hash as extracted from caller() and writes to %^H. It would write
configuration data to %^H, and then later attempt to read from the
optree via caller() to determine how to handle later args.

A fixed version, which works with everything from 5.8.9 to blead, both
reads and writes %^H while working on the import list, and only grovels
around in caller() later.

It *appears* that data used to get transferred from %^H to the optree
as soon as it was set, but now it only gets transferred later - at the
end of BEGIN? Assuming that I'm correct in this, there's a doco-patch
attached.

Was my code buggy to start with and only worked by accident?

Was that change deliberate?

Do we know how much of the CPAN might be affected?

-- 
David Cantrell | Hero of the Information Age

Please stop rolling your Jargon Dice and explain the problem
you are having to me in plain English, using small words.
  -- John Hardin, in the Monastery

Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About