Skip Menu |

This queue is for tickets about the FindBin-libs CPAN distribution.

Report information
The Basics
Id: 72251
Status: resolved
Worked: 5.3 hours (320 min)
Priority: 0/
Queue: FindBin-libs

People
Owner: LEMBARK [...] cpan.org
Requestors: felix.ostmann [...] thewar.de
Cc: chisel [...] chizography.net
AdminCc:

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



Subject: not installable via cpan-shell
"i /FindBin::libs/" find this module in the cpan-shell, but a "install FindBin::libs" failes with cannot find, try "i FindBin::libs". It is also missing from metacpan!
From: felix.ostmann [...] thewar.de
i am the last one using this? Every time i have to download this and build it manually! Am Mo 07. Nov 2011, 08:29:34, Sadrak schrieb: Show quoted text
> "i /FindBin::libs/" find this module in the cpan-shell, but a "install > FindBin::libs" failes with cannot find, try "i FindBin::libs". > > It is also missing from metacpan!
On Mon Nov 07 08:29:34 2011, Sadrak wrote: Show quoted text
> "i /FindBin::libs/" find this module in the cpan-shell, but a "install > FindBin::libs" failes with cannot find, try "i FindBin::libs". > > It is also missing from metacpan!
All I can do is keep re-uploading the thing and see if pause will tell me why it didn't get indexed properly... Sorry for any inconvienence, 1.55 should be on Pause in the next few minutes.
It's still not indexed correctly. Seems to be a problem with the version number. cpan[1]> i /FindBin::libs/ Module id = FindBin::libs DESCRIPTION access lib & subdirs via $FindBin::Bin CPAN_USERID LEMBARK (Steven Lembark <lembark@wrkhors.com>) CPAN_VERSION undef CPAN_FILE Contact Author Steven Lembark <lembark@wrkhors.com> DSLIP_STATUS Mdppp (mature,developer,perl,pragma,Standard-Perl) INST_FILE (not installed) cpan[2]> test FindBin::libs Running test for module 'FindBin::libs' The module FindBin::libs isn't available on CPAN. Either the module has not yet been uploaded to CPAN, or it is temporary unavailable. Please contact the author to find out more about the status. Try 'i FindBin::libs'. CPAN_VERSION is reported as undef.
On Wed Dec 07 12:12:37 2011, TINITA wrote: Show quoted text
> It's still not indexed correctly. Seems to be a problem with the > version number.
Just to join in, I've been hit by the problem of this module 'disappearing' too. http://blogs.perl.org/users/chisel/2011/12/cant-locate-findbinlibspm-in-inc.html I've had a look at http://search.cpan.org/~lembark/FindBin-libs-1.55/ but can't see any obvious reason for it failing to index. I don't think our systems (and maybe CPAN) has seen it since 1.5100 $ perlversion FindBin::libs [FindBin::libs] 1.5100 This looks to have been removed from CPAN. There's nothing obviously broken in the META.yml differences: ➔ diff -Nau META.yml-1.51 META.yml-1.55 --- META.yml-1.51 2011-12-07 12:54:40.000000000 +0000 +++ META.yml-1.55 2011-12-07 12:54:26.000000000 +0000 @@ -1,6 +1,6 @@ --- #YAML:1.0 name: FindBin-libs -version: 1.51 +version: 1.55 abstract: Locate and 'use lib' directories along author: [] license: unknown @@ -21,7 +21,7 @@ directory: - t - inc -generated_by: ExtUtils::MakeMaker version 6.56 +generated_by: ExtUtils::MakeMaker version 6.57_05 meta-spec: url: http://module-build.sourceforge.net/META-spec-v1.4.html version: 1.4 Very strange!
On Wed Dec 07 12:55:45 2011, CHISEL wrote: Show quoted text
> On Wed Dec 07 12:12:37 2011, TINITA wrote:
> > It's still not indexed correctly. Seems to be a problem with the > > version number.
May or may not be related but: http://cpansearch.perl.org/src/LEMBARK/FindBin-libs-1.55/lib/FindBin/libs.pm has: our $VERSION = v1.54; While META.yml has: version: 1.55
Am Mi 07. Dez 2011, 07:55:45, CHISEL schrieb: Show quoted text
> I've had a look at http://search.cpan.org/~lembark/FindBin-libs-1.55/ > but can't see any obvious reason for it failing to index.
the $VERSION in http://cpansearch.perl.org/src/LEMBARK/FindBin-libs-1.55/ lib/FindBin/libs.pm is 1.54: our $VERSION = v1.54; instead of 1.55. this looks like a good candidate for the problem.
On Wed Dec 07 08:02:50 2011, TINITA wrote: Show quoted text
> Am Mi 07. Dez 2011, 07:55:45, CHISEL schrieb: >
> > I've had a look at http://search.cpan.org/~lembark/FindBin-libs-1.55/ > > but can't see any obvious reason for it failing to index.
> > the $VERSION in http://cpansearch.perl.org/src/LEMBARK/FindBin-libs-1.55/ > lib/FindBin/libs.pm is 1.54: > > our $VERSION = v1.54; > > instead of 1.55. > > this looks like a good candidate for the problem.
Also, don't just change it to our $VERSION = v1.55; Because that's completely different from the 1.55 specified in the META.yml. v1.55 isa the same as 1.055. It would probably be best not to use the version string in the mode since it's not used in the packaging. out $VERSION = '1.55'; Would be better. You can see that v1.55 and 1.55 are not the same with the following: perl -Mversion -E 'say version->new("v1.55") == version->new("1.55") ? "yep" : "nope"' Also also that v1.55 is actually 1.055 with the following: perl -Mversion -E 'say version->new("v1.55")->numify'
I think this patch would fix the issue we're currently seeing and would prevent the same thing happening again in the future. Also attached as a patch file against 1.55. [534][chisel@shell:FindBin-libs-1.55][master⚡]➔ cat version-fix.patch diff --git a/Makefile.PL b/Makefile.PL index 562e2a0..9d8c34d 100644 --- a/Makefile.PL +++ b/Makefile.PL @@ -5,7 +5,7 @@ WriteMakefile ( NAME => 'FindBin::libs', - VERSION => '1.55', + VERSION_FROM => 'lib/FindBin/libs.pm', ABSTRACT_FROM => 'lib/FindBin/libs.pm', PREREQ_PM => { @@ -13,6 +13,7 @@ WriteMakefile # are unlikely to cause pain. strict => 0, + version => 0, warnings => 0, Carp => 0, Cwd => 0, diff --git a/lib/FindBin/libs.pm b/lib/FindBin/libs.pm index f409159..1def993 100644 --- a/lib/FindBin/libs.pm +++ b/lib/FindBin/libs.pm @@ -78,8 +78,7 @@ BEGIN ######################################################################## # package variables ######################################################################## - -our $VERSION = v1.54; +use version; our $VERSION = version->new("v1.56"); my %defaultz = (
Subject: version-fix.patch
diff --git a/Makefile.PL b/Makefile.PL index 562e2a0..9d8c34d 100644 --- a/Makefile.PL +++ b/Makefile.PL @@ -5,7 +5,7 @@ WriteMakefile ( NAME => 'FindBin::libs', - VERSION => '1.55', + VERSION_FROM => 'lib/FindBin/libs.pm', ABSTRACT_FROM => 'lib/FindBin/libs.pm', PREREQ_PM => { @@ -13,6 +13,7 @@ WriteMakefile # are unlikely to cause pain. strict => 0, + version => 0, warnings => 0, Carp => 0, Cwd => 0, diff --git a/lib/FindBin/libs.pm b/lib/FindBin/libs.pm index f409159..1def993 100644 --- a/lib/FindBin/libs.pm +++ b/lib/FindBin/libs.pm @@ -78,8 +78,7 @@ BEGIN ######################################################################## # package variables ######################################################################## - -our $VERSION = v1.54; +use version; our $VERSION = version->new("v1.56"); my %defaultz = (
Is this enough information to attempt a new release? If so - is there a rough ETA?
Show quoted text
> If so - is there a rough ETA?
I'm in the process of splitting the module into two units for use on older perl distros (< v5.12). If I can avoid botching the Makfile.PL and MANIFEST long enough to get a working version then it'll be on Pause today.
On Thu Dec 15 09:25:23 2011, CHISEL wrote: Show quoted text
> Is this enough information to attempt a new release? > > If so - is there a rough ETA?
See if this works for you. It should be on CPAN fairly soon.
Subject: FindBin-libs-1.59.tar.gz
Download FindBin-libs-1.59.tar.gz
application/x-gzip 14.7k

Message body not shown because it is not plain text.

Subject: FB::l 1.59 is indexed, installs here (5.14).
Please check if this works for you. cpan[1]> i /FindBin::libs/ Done!Module id = FindBin::libs DESCRIPTION access lib & subdirs via $FindBin::Bin CPAN_USERID LEMBARK (Steven Lembark <lembark@wrkhors.com>) CPAN_VERSION 1.58 CPAN_FILE L/LE/LEMBARK/FindBin-libs-1.59.tar.gz DSLIP_STATUS Mdppp (mature,developer,perl,pragma,Standard-Perl) MANPAGE FindBin::libs - Locate and 'use lib' directories along the path of $FindBin::Bin to automate locating modules. Uses File::Spec and Cwd's abs_path to accomodate multiple O/S and redundant symlinks. INST_FILE /opt/perl/5.14/lib/site_perl/5.14.1/FindBin/libs.pm INST_VERSION 1.5100 cpan [2]> install FindBin::libs Running install for module 'FindBin::libs' Running make for L/LE/LEMBARK/FindBin-libs-1.59.tar.gz Fetching with LWP: http://mirror.team-cymru.org/CPAN/authors/id/L/LE/LEMBARK/FindBin- libs-1.59.tar.gz Fetching with LWP: http://mirror.team-cymru.org/CPAN/authors/id/L/LE/LEMBARK/CHECKSUMS Checksum for /scratch/CPAN/sources/authors/id/L/LE/LEMBARK/FindBin- libs-1.59.tar.gz ok Scanning cache /var/tmp/CPAN for sizes DONE CPAN.pm: Going to build L/LE/LEMBARK/FindBin-libs-1.59.tar.gz CPAN::Reporter not installed. No reports will be sent. Checking if your kit is complete... Looks good Writing Makefile for FindBin::libs Writing MYMETA.yml cp lib/FindBin/libs_5_8.pm blib/lib/FindBin/libs_5_8.pm cp lib/FindBin/libs.pm blib/lib/FindBin/libs.pm cp lib/FindBin/libs_curr.pm blib/lib/FindBin/libs_curr.pm Manifying blib/man3/FindBin::libs.3 Manifying blib/man3/FindBin::libs_5_8.3 Manifying blib/man3/FindBin::libs_curr.3 LEMBARK/FindBin-libs-1.59.tar.gz /usr/bin/make -- OK Running make test PERL_DL_NONLAZY=1 /opt/perl/5.14/bin/perl "-MExtUtils::Command::MM" "- e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t t/01-use-ok.t ................. ok t/03-export-base.t ............ ok t/04-export-nouse-base.t ...... Found */bin: /var/tmp/CPAN/FindBin-libs-1.59-M8xpBk/bin /bin t/04-export-nouse-base.t ...... ok t/05-export-subdir.t .......... ok t/06-base-subdir-subonly.t .... ok t/06-export-subdir-subonly.t .. ok t/08-base-subdir-subonly.t .... ok All tests successful. Files=7, Tests=13, 0 wallclock secs ( 0.07 usr 0.02 sys + 0.46 cusr 0.06 csys = 0.61 CPU) Result: PASS LEMBARK/FindBin-libs-1.59.tar.gz /usr/bin/make test -- OK Running make install Installing /opt/perl/5.14/lib/site_perl/5.14.1/FindBin/libs_curr.pm Installing /opt/perl/5.14/lib/site_perl/5.14.1/FindBin/libs.pm Installing /opt/perl/5.14/lib/site_perl/5.14.1/FindBin/libs_5_8.pm Installing /opt/perl/5.14/man/man3/FindBin::libs_curr.3 Installing /opt/perl/5.14/man/man3/FindBin::libs_5_8.3 Installing /opt/perl/5.14/man/man3/FindBin::libs.3 Appending installation info to /opt/perl/5.14/lib/5.14.1/x86_64-linux/ perllocal.pod LEMBARK/FindBin-libs-1.59.tar.gz /usr/bin/make install UNINST=1 -- OK
Am Mo 19. Dez 2011, 11:03:04, LEMBARK schrieb: Show quoted text
> Please check if this works for you.
* the libs_5_8.pm does not compile (missing semicolon) * you are still using a version string * the package is called FindBin-libs-1.59 but $VERSION is set to v1.58 while META.yml and Makefile.PL say 1.59
On Tue Dec 20 08:00:57 2011, TINITA wrote: Show quoted text
> Am Mo 19. Dez 2011, 11:03:04, LEMBARK schrieb:
> > Please check if this works for you.
> > * the libs_5_8.pm does not compile (missing semicolon) > * you are still using a version string > * the package is called FindBin-libs-1.59 but $VERSION is set to
v1.58 Show quoted text
> while META.yml and Makefile.PL say 1.59
WTF... it compiled here. Ack. Suggestion: Don't hack code at your mother's funeral. The 5.8.8 system here handles v-strings properly (at least where I've used them so far). The Makefile.PL uses an A.B string. There will be different versions for the three modules & the distro since each of them might change and I may modify the metadata separately from the modules. Any upload requires a new version in Makefile.PL, even if I only update the README. For example, I just updated the versions of libs_5_8.pm and Makfile.PL to account for the typo and to get a new version for the complete distribution file. I've added separate use_ok tests for each of the modules, so at least I won't ship you anything that doesn't compile any more.
Subject: FindBin-libs-1.60.tar.gz
Download FindBin-libs-1.60.tar.gz
application/x-gzip 15k

Message body not shown because it is not plain text.

On Tue Dec 20 23:17:41 2011, LEMBARK wrote: Show quoted text
> Any upload requires a new version in Makefile.PL, even if I only
update the README. This in one reason I finally decided to give all packages in a distro the same version number ... whether they changed or not they're part of the new distro x.yy. Trying to maintain different suv-versions per package was just an extra level of pain I felt I could live without.
Show quoted text
> Trying to maintain different suv-versions per package was just an extra > level of pain I felt I could live without.
At this point the two modules have the same version; from now on the 5_8.pm file will sit at 1.62, the current one will advance and I'll set the distro version from the current one. This is much easier to manage with Module::Builder.
Subject: FindBin-libs-1.62.tar.gz
Download FindBin-libs-1.62.tar.gz
application/x-gzip 19.1k

Message body not shown because it is not plain text.

At this point FB::l has been moved to Module::Build and uses $^V to check for post-5.10 versions. Eventually I'll have to add a switch for various versions; guessing there will eventually be some sort of $^V-specific alternative packaging built into M::B to handle this gracefully. So far as I know at this point the install works on any perl installation that supports M::B (which may exclude VMS at this point, I'm not sure yet). If VMS is a problem warn me and we can see what alternatives are available -- though M::B is the future so making that work will be the Right Way (tm).