Skip Menu |
 

This queue is for tickets about the File-Path CPAN distribution.

Report information
The Basics
Id: 105977
Status: resolved
Estimated: 10 min
Priority: 0/
Queue: File-Path

People
Owner: RICHE [...] cpan.org
Requestors: KENTNL [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Critical
Broken in: 2.11
Fixed in: (no value)



Subject: Upgrade failure on Perl 5.6.2

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
 

Download (untitled) / with headers
text/plain 1.1k
On Mon Jul 20 08:32:52 2015, KENTNL wrote: Show quoted text
> 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
Download (untitled) / with headers
text/plain 1.4k
On Mon Jul 20 09:25:23 2015, LEONT wrote: Show quoted text
> 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.
Download (untitled) / with headers
text/plain 2.9k
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
Download (untitled) / with headers
text/plain 183b
This has been merged to HEAD https://github.com/rpcme/File-Path/commit/6cff3b8a10f0e61489f5d09e96257d6875c68ad3 I will need to build 5.6 to verify, but the change seems reasonable.
Download (untitled) / with headers
text/plain 263b
On Wed Jul 22 10:54:32 2015, RICHE wrote: Show quoted text
> This has been merged to HEAD > > https://github.com/rpcme/File- > Path/commit/6cff3b8a10f0e61489f5d09e96257d6875c68ad3 > > I will need to build 5.6 to verify, but the change seems reasonable.
Verified fixed on HEAD.


This service is sponsored and maintained by Best Practical Solutions and runs on Perl.org infrastructure.

Please report any issues with rt.cpan.org to rt-cpan-admin@bestpractical.com.