. Unfortunately the line separator variable is global. Undefining $/ will interfere with checking some module dependencies, e.g. Net::LDAP, specifically when useing Net::LDAP::Constant.
Admittedly, modules should probably not be using the global $/, however it may be in Twiki's best interest to protect itself against this scenario by updating the check_dep subroutine in tools/extender.pl to include a line near the top of the subroutine such as:
per se.
root@cPHPBB:/var/www/twiki# ./LdapContrib_installer
.
.
.
##########################################################
Checking dependency on Net::LDAP....
***
LdapContrib depends on cpan package Net::LDAP >=0.33
which is described as "Required"
But when I tried to find it I got this error:
"LDAP_SUCCESS" is not exported by the Net::LDAP::Constant module
"LDAP_COMPARE_TRUE" is not exported by the Net::LDAP::Constant module
"LDAP_COMPARE_FALSE" is not exported by the Net::LDAP::Constant module
Can't continue after import errors at /usr/local/share/perl/5.14.2/Net/LDAP/Message.pm line 8
BEGIN failed--compilation aborted at /usr/local/share/perl/5.14.2/Net/LDAP/Message.pm line 8, <DATA> chunk 1.
at /usr/local/share/perl/5.14.2/Net/LDAP/Message.pm line 8
require Net/LDAP/Message.pm called at /usr/local/share/perl/5.14.2/Net/LDAP.pm line 13
Net::LDAP::BEGIN() called at /usr/local/share/perl/5.14.2/Net/LDAP/Message.pm line 8
eval {...} called at /usr/local/share/perl/5.14.2/Net/LDAP/Message.pm line 8
require Net/LDAP.pm called at (eval 137) line 2
TWiki::Extender::BEGIN() called at /usr/local/share/perl/5.14.2/Net/LDAP/Message.pm line 8
eval {...} called at /usr/local/share/perl/5.14.2/Net/LDAP/Message.pm line 8
eval 'use Net::LDAP
;' called at tools/extender.pl line 167
TWiki::Extender::check_dep('HASH(0x3af5ea0)') called at tools/extender.pl line 226
TWiki::Extender::satisfy('HASH(0x3af5ea0)') called at tools/extender.pl line 924
TWiki::Extender::_install('ARRAY(0x3b47340)', 'LdapContrib') called at tools/extender.pl line 1056
TWiki::Extender::install('http://twiki.org/p/pub/Plugins', 'LdapContrib', 'LdapContrib', 'MANIFEST', 'data/TWiki/LdapContrib.txt,0644,\x{a}lib/TWiki/Contrib/LdapContri...', 'DEPENDENCIES', 'Authen::SASL,>=2.00,1,cpan,Optional\x{a}DB_File,>=1.00,1,cpan,Req...') called at ./LdapContrib_installer line 104
Compilation failed
can download and install it from here. The module will be installed
to wherever you configured CPAN to install to.
Would you like me to try to download and install the latest version of Net::LDAP from cpan.org? [y/n] y
.
.
.
Net::LDAP is up to date (0.56).
#########################################################################
# WARNING: I still can't find the module Net::LDAP
#
# If you installed the module in a non-standard directory, make sure you
# have followed the instructions in bin/setlib.cfg and added it
# to your
@INC
path.
#########################################################################
.
.
.
section and defining constants from it, but because of the aforementioned change of the line seperator variable it doesn't read its
section correctly and henceforth doesn't define the constants.
Thanks Ian, I'll take this into the next release.
I've posted the error(s) in the message. Please see above.
Thank you Ian! This is now in trunk and 5.1 branch.