Skip Menu |

This queue is for tickets about the IO-Zlib CPAN distribution.

Report information
The Basics
Id: 31952
Status: resolved
Priority: 0/
Queue: IO-Zlib

People
Owner: Nobody in particular
Requestors: imacat [...] mail.imacat.idv.tw
Cc:
AdminCc:

Bug Information
Severity: Important
Broken in: 1.08
Fixed in: (no value)



Subject: Shadowed By the Core Version
Dear Tom Hughes, Hi. This is imacat from Taiwan. I found that your IO-Zlib-1.08 was shadowed from the core IO::Zlib 1.07 supplied by Perl 5.10.0. As a result, the installation of IO::Zlib 1.08 is unusable. imacat@rinse perl/5.10.0 % find -name Zlib.pm ./lib/5.10.0/x86_64-linux-thread-multi-ld/Compress/Raw/Zlib.pm ./lib/5.10.0/x86_64-linux-thread-multi-ld/Compress/Zlib.pm ./lib/5.10.0/IO/Zlib.pm ./lib/site_perl/5.10.0/IO/Zlib.pm imacat@rinse perl/5.10.0 % grep '$VERSION = ' ./lib/5.10.0/IO/Zlib.pm ./lib/site_perl/5.10.0/IO/Zlib.pm ./lib/5.10.0/IO/Zlib.pm:$VERSION = "1.07"; ./lib/site_perl/5.10.0/IO/Zlib.pm:$VERSION = "1.08"; imacat@rinse perl/5.10.0 % ./bin/perl -mIO::Zlib -e'print $IO::Zlib::VERSION;'; echo 1.07 imacat@rinse perl/5.10.0 % I tried to make a simple patch in the hope that it helps. Please tell me if you need any more information, or if I could be of any help.
Subject: IO-Zlib-1.08-installdirs.diff
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 diff -u -r IO-Zlib-1.08.orig/Makefile.PL IO-Zlib-1.08/Makefile.PL - --- IO-Zlib-1.08.orig/Makefile.PL 2007-03-04 23:54:02.000000000 +0800 +++ IO-Zlib-1.08/Makefile.PL 2007-12-28 12:03:33.000000000 +0800 @@ -5,5 +5,6 @@ VERSION_FROM => 'Zlib.pm', PREREQ_PM => { 'Compress::Zlib' => 0 }, SIGN => 1, + INSTALLDIRS => ($] >= 5.010000 ? 'perl' : 'site'), dist => { COMPRESS => 'gzip', SUFFIX => 'gz' }, ); -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.8 (GNU/Linux) iEYEARECAAYFAkd0du0ACgkQi9gubzC5S1xCqgCfSv2MluLi4pnlg0UPZssIynxB BLoAoJp46CzbH4NrvICgr6VFkBXW0yzY =hV1x -----END PGP SIGNATURE-----
From: tom [...] compton.nu
On Thu Dec 27 23:11:32 2007, IMACAT wrote: Show quoted text
> Hi. This is imacat from Taiwan. I found that your IO-Zlib-1.08 was > shadowed from the core IO::Zlib 1.07 supplied by Perl 5.10.0. As a > result, the installation of IO::Zlib 1.08 is unusable.
You're supposed to use UNINST=1 or the equivalent when installing from CPAN so that any shadowed copies are removed. Show quoted text
> I tried to make a simple patch in the hope that it helps. Please > tell me if you need any more information, or if I could be of any help.
That patch makes the CPAN version of IO-Zlib install in the core perl library for 5.10 and greater which is wrong for several reasons... Firstly I don't think 5.10 is the first version to include it, and secondly as far as I'm aware CPAN modules are supposed to install in the site library not the core library. Tom
Well... I'm not expecting this answer, but still thank you anyway, for some people simply do not answer. I suppose it is Perl's policy that core modules should do this. You may refer to the following discussion tbreads: CPAN-ification of core modules - dual life modules http://www.nntp.perl.org/group/perl.perl5.porters/2006/09/msg116117.html Fwd: [rt.cpan.org #20528] Module-Build installs into wrong location with bleadperl http://www.nntp.perl.org/group/perl.module.build/2007/10/msg948.html In fact, most of the core Perl modules, like CPAN, ExtUtils::MakeMaker, Encode, Locale::Maketext, CGI, File::Temp, Test::Simple, etc., following this. http://search.cpan.org/src/ANDK/CPAN-1.92_55/Makefile.PL http://search.cpan.org/src/MSCHWERN/ExtUtils-MakeMaker-6.42/Makefile.PL http://search.cpan.org/src/DANKOGAI/Encode-2.23/Makefile.PL http://search.cpan.org/src/PETDANCE/Locale-Maketext-1.12/Makefile.PL http://search.cpan.org/src/LDS/CGI.pm-3.32/Makefile.PL http://search.cpan.org/src/TJENNESS/File-Temp-0.20/Makefile.PL http://search.cpan.org/src/MSCHWERN/Test-Simple-0.74/Makefile.PL You may imagine what will happen if they did not set INSTALLDIRS to 'perl', and require users to run UNINST=1 before upgrading. What I was suggesting is helping your users and following the Perl policy. Please tell me if you need any more information, or if I could be of any help. Thank you. On Sat Dec 29 11:01:26 2007, TOMHUGHES wrote: Show quoted text
> On Thu Dec 27 23:11:32 2007, IMACAT wrote:
> > Hi. This is imacat from Taiwan. I found that your IO-Zlib-1.08 was > > shadowed from the core IO::Zlib 1.07 supplied by Perl 5.10.0. As a > > result, the installation of IO::Zlib 1.08 is unusable.
> You're supposed to use UNINST=1 or the equivalent when installing from > CPAN so that any shadowed copies are removed.
> > I tried to make a simple patch in the hope that it helps. Please > > tell me if you need any more information, or if I could be of any help.
> That patch makes the CPAN version of IO-Zlib install in the core perl > library for 5.10 and greater which is wrong for several reasons... > Firstly I don't think 5.10 is the first version to include it, and > secondly as far as I'm aware CPAN modules are supposed to install in the > site library not the core library.
On Sat Dec 29 11:01:26 2007, TOMHUGHES wrote: Show quoted text
> On Thu Dec 27 23:11:32 2007, IMACAT wrote: >
> > Hi. This is imacat from Taiwan. I found that your IO-Zlib-1.08 was > > shadowed from the core IO::Zlib 1.07 supplied by Perl 5.10.0. As a > > result, the installation of IO::Zlib 1.08 is unusable.
> > You're supposed to use UNINST=1 or the equivalent when installing from > CPAN so that any shadowed copies are removed. >
> > I tried to make a simple patch in the hope that it helps. Please > > tell me if you need any more information, or if I could be of any help.
> > That patch makes the CPAN version of IO-Zlib install in the core perl > library for 5.10 and greater which is wrong for several reasons... > Firstly I don't think 5.10 is the first version to include it,
According to corelist IO::Zlib is part of the perl core since 5.9.3. So the attached patch should be corrected to use 5.009003 instad of 5.010. Show quoted text
> and > secondly as far as I'm aware CPAN modules are supposed to install in the > site library not the core library.
I am here with imacat. A dual-life module should set INSTALLDIRS to perl. Regards, Slaven
I've just always had UNINST=1 in my default options because it was the only way to make things worked, so I assumed everybody else did. If policy is to change it to install in the core library directory then fine - it would have been nice if the person that decided to add it to the core had actually told me that and asked me to make the change though! Not every CPAN author reads p5p... The 1.09 release that I have just uploaded should resolve this anyway.