On Mon Jul 20 10:37:41 2015, RICHE wrote:
Show quoted text> On Mon Jul 20 09:25:23 2015, LEONT wrote:
> > On Mon Jul 20 08:32:52 2015, KENTNL wrote:
> > > The module builds and passes tests and installs, but post-
> > > installation
> > > the
> > > previous version still takes precedence.
> > >
> > > grep 'VERSION' $( perl -e 'print qq[$_/File/Path.pm\n] for @INC' )
> > > grep:
> > > /home/perl-smoke/perl5/perlbrew/perls/perl-5.6.2/lib/5.6.2/x86_64-
> > > linux/File/Path.pm:
> > > No such file or directory
> > > /home/perl-smoke/perl5/perlbrew/perls/perl-
> > > 5.6.2/lib/5.6.2/File/Path.pm:our
> > > $VERSION = "1.0404";
> > > grep:
> > > /home/perl-smoke/perl5/perlbrew/perls/perl-
> > > 5.6.2/lib/site_perl/5.6.2/x86_64-linux/File/Path.pm:
> > > No such file or directory
> > > /home/perl-smoke/perl5/perlbrew/perls/perl-
> > > 5.6.2/lib/site_perl/5.6.2/File/Path.pm:use
> > > vars qw($VERSION @ISA @EXPORT @EXPORT_OK);
> > > /home/perl-smoke/perl5/perlbrew/perls/perl-
> > > 5.6.2/lib/site_perl/5.6.2/File/Path.pm:$VERSION
> > > = '2.11';
> > > /home/perl-smoke/perl5/perlbrew/perls/perl-
> > > 5.6.2/lib/site_perl/5.6.2/File/Path.pm:$VERSION
> > > = eval $VERSION;
> > > /home/perl-smoke/perl5/perlbrew/perls/perl-
> > > 5.6.2/lib/site_perl/5.6.2/File/Path.pm:=head1
> > > VERSION
> >
> > This is clearly using the wrong INSTALLDIRS value. Instead of «$] >=
> > 5.008001 ? 'perl' : 'site'» it should be «$] <= 5.011000 ? 'perl' :
> > 'site'».
> >
> > Leon
>
>
> Well, that's messed up. I think it must have been an issue for quite
> some time, I don't think we changed it recently. I will pop out a dev
> release this evening with the fix.
Please see the discussion in
https://rt.perl.org/Ticket/Display.html?id=116479. In that ticket, we had an ongoing project to correct the INSTALLDIRS value for packages distributed with the Perl 5 core. I was one of the contributors to that project.
Based on the discussion in that ticket, I believe the correct invocation is:
INSTALLDIRS => ($] < 5.011 ? 'perl' : 'site'),
See this pull request:
https://github.com/rpcme/File-Path/pull/28
Note: I used perlbrew to get to a 5.6.2 installation, then called 'perl Makefile.PL && make && make test'. All tests passed (albeit with some warnings now being thrown -- but that's an issue for another ticket). I then said:
#####
$ make install
Installing /home/jkeenan/perl5/perlbrew/perls/perl-5.6.2/lib/5.6.2/File/Path.pm
Installing /home/jkeenan/perl5/perlbrew/perls/perl-5.6.2/man/man3/File::Path.3
Writing /home/jkeenan/perl5/perlbrew/perls/perl-5.6.2/lib/5.6.2/x86_64-linux/auto/File/Path/.packlist
Appending installation info to /home/jkeenan/perl5/perlbrew/perls/perl-5.6.2/lib/5.6.2/x86_64-linux/perllocal.pod
#####
After that I said:
#####
$ perl -MFile::Path -e 'print $File::Path::VERSION, "\n";'
2.11
#####
But please double check this, as I have rarely said 'make install' against a perlbrew-installed perl of such age as 5.6.2.
Thank you very much.
Jim Keenan