#title Perl 5.26
#author Stefan Hornburg (Racke)
#lang en
** Modules
Many modules are broken with Perl 5.26 by the removal of the current directory .
from @INC
. See the [[http://blogs.perl.org/users/todd_rinaldo/2016/11/how-removing-from-inc-is-about-to-break-cpan.html][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 " -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 [[https://rt.cpan.org/Public/Bug/Display.html?id=120079][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.