develooper Front page | perl.perl5.porters | Postings from August 2016

Re: Internals:: undocumented

Thread Previous | Thread Next
August 15, 2016 08:19
Re: Internals:: undocumented
Message ID:
On 14 August 2016 at 23:12, Aristotle Pagaltzis <> wrote:
> * demerphq <> [2016-08-14 14:24]:
>> I have pushed a patch series which moves the Hash::Util related stuff
>> out of universal.c, and removes hv_clear_placeholders() from
>> Internals. I am pretty sure this should not affect anything sane.
> It seems to have about a dozen actual callers on CPAN:

One of them is me in DDS. They all follow the same pattern. Someone
read the code to Hash::Util and then unrolled what it does to lock

Personally I am disinclined to be sympathetic to this type of
violation of abstraction layers. But ill do whatever the porters think
is best.

> It’s not a big effort to send patches for those, but there is enough use
> that I assume there must be a small amount of use in the DarkPAN also,
> and we can’t patch that. So this seems to call for a whiny placeholder
> to get people to switch, which loads and calls Hash::Util for them in
> the meantime (like FatherC’s approach with arybase).

I dont think that is necessary. hv_clear_placeholders is an internals
API call. Having two wrappers, one in Hash::Util and the other in
Internals is not a big deal IMO.

> Also I guess its deprecation warning should mention which version of
> Hash::Util callers need to depend on when they switch, so people don’t
> forget to ensure that they do.
> (I didn’t look at the other functions yet, so I can’t say about any of
> them. Hopefully they don’t all need stubs.)

I honestly think that people should just use the functions in
Hash::Util directly and not use hv_clear_placeholders at all.


perl -Mre=debug -e "/just|another|perl|hacker/"

Thread Previous | Thread Next Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About