Modules

Many modules are broken with Perl 5.26 by the removal of the current directory . from @INC. See the blog post from Todd Rinaldo for more information.

Fix the problem on GitHub

Released Perl modules can be found on Github under https://github.com/gitpan.

We can fork the gitpan repository for the broken module, e.g. for String::CamelCase I forked https://github.com/gitpan/String-CamelCase to https://github.com/racke/String-CamelCase.

Now clone it on your own machine:

git clone git@github.com:racke/String-CamelCase.git

For this module, there is already an patch available. So I did apply it as follows:

wget https://rt.cpan.org/Ticket/Attachment/1702614/914478/String-CamelCase.patch
cd String-CamelCase
patch -p 1 < ../String-CamelCase.patch

Next step is to test the result:

perl Makefile.PL
make test

If that works, we can publish the patch. Also, I attributed the author of the patch.

git add Makefile.PL
git commit --author="Jim Keenan <jkeenan@cpan.org>" -m "Add current directory to @INC (RT #120079)"
git push

Now everyone can install the patched module as follows:

cpanm git@github.com:racke/String-CamelCase.git

String::CamelCase

Last release in 2009. Problem reported.

Configuring String-CamelCase-0.02 ... Can't locate inc/ExtUtils/MY_Metafile.pm in @INC (you may need to install the inc::ExtUtils::MY_Metafile module) (@INC contains: /home/racke/linuxia/lib /home/racke/datafilter/lib /home/racke/perl5/perlbrew/perls/perl-5.26.0/lib/site_perl/5.26.0/x86_64-linux /home/racke/perl5/perlbrew/perls/perl-5.26.0/lib/site_perl/5.26.0 /home/racke/perl5/perlbrew/perls/perl-5.26.0/lib/5.26.0/x86_64-linux /home/racke/perl5/perlbrew/perls/perl-5.26.0/lib/5.26.0) at Makefile.PL line 4.
BEGIN failed--compilation aborted at Makefile.PL line 4.