Bug#577340: [lemonldap-ng-dev] Re: Bug in Net-LDAP causing FTBFS in lemonldap-ng [was: Processed: reassign]

Xavier x.guimard at free.fr
Wed Apr 14 05:44:23 UTC 2010


----- "Damyan Ivanov" <dmn at debian.org> wrote :
> ...
> A bit of explaination would have been nice :/

Hi,

sorry, it was the first time I use "reassign"

> After some bouncing of ideas on IRC, it appears the bug is really in 
> Net-LDAP, but only lemonldap-ng's test suite manages to trigger it.
> 
> The read-only value in question is $_, which is aliased to a constant.
> 
> Thanks to the world-dominating search engine, we have found this 
> educational link[1]
> 
>     [1] http://www.perlmonks.org/?node_id=570712#default_unlocalized
> 
> In essence, this doesn't work:
> 
>     perl -we'for(1,2) { require Net::LDAP }'
> 
> How lemonldap-ng's test suite manages to alias $_ to a constant is not
> yet known, but the details are not important. The above code sould 
> work even if it looks weird.

Lemonldap::NG loads 2 modules (following the configuration): "authentication" and "userDB" in a loop where $_ points to one of those words (as a constant). In the test which failed, both inherits from Lemonldap::NG::Portal::_LDAP which contains "use Net::LDAP".

> My proposal is to patch Constants.pm to use
> 
>     local $_;
>     while(<DATA>) { ... }
> 
> instead of
> 
>     while(<DATA>) { ... }
> 
> Any objections?

Lemonldap::NG use this feature for a long time, and it has been tested many times on the CPAN (http://www.cpantesters.org/distro/L/Lemonldap-NG-Portal.html), and today only 1 Debian amd64 test has failed. I don't understand why...

Best regards,
Xavier





More information about the pkg-perl-maintainers mailing list