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

Re: The tricky issue of do()

Thread Previous | Thread Next
From:
Christian Walde
Date:
February 27, 2017 14:07
Subject:
Re: The tricky issue of do()
Message ID:
op.ywbn69q6ydyjqt@digitizedsqueak
On Mon, 27 Feb 2017 14:56:23 +0100, Sawyer X <xsawyerx@gmail.com> wrote:

>>> The point has been raised by haarg and leont that that might not be
>>> entirely straight-forward due to shared code between use/require, but i
>>> think in this case backwards compatibiliy should trump, even if the core
>>> code looks a little more ugly as a result.
>> Although I lean towards the backwards compatility camp, note that we can't
>> provide *exact* backcompat even if we wanted to: the old behaviour of do()
>> was strictly to search @INC, and @INC just happened often to have '.' as
>> its last member.
>>
>> The most obvious backcompat strategy is to make 'do' always treat @INC as
>> having an implicit trailing '.' when loading a 'do' file; but this will
>> mean that code which explicitly removed '.' from @INC for security or
>> other reasons will suddenly have 'do' loading files from locations it
>> previously wouldn't have.
>
> This is why I believe a warning would be useful here instead.

And correction of the documentation, which was only correct for 99% of cases before, but after '.' removal would be correct for only 1%.

-- 
With regards,
Christian Walde

Thread Previous | 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