Skip Menu |

This queue is for tickets about the PPM-Make CPAN distribution.

Report information
The Basics
Id: 22699
Status: resolved
Priority: 0/
Queue: PPM-Make

People
Owner: Nobody in particular
Requestors: albers [...] cpan.org
Cc:
AdminCc:

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



Subject: make_ppm puts wrong $VERSION in ppd file
szenario: I want to produce a ppd distribution from a local project with "make_ppm" or "make_ppm --cpan". An older version of the same module is installed. problem: When creating the SOFTPKG and PROVIDES elements of the ppd file, make_ppd takes the version information from the currently installed modules. It should gather this information from the modules in the current project directory (blib if VERSION_FROM is supplied or Makefile.pl if it contains a VERSION. This problem exists in PPM::Make 0.88 and 0.89. perl: ActivePerl v5.8.8.819 on Windows XP
On Mon Oct 30 11:09:19 2006, ALBERS wrote: Show quoted text
> szenario: > I want to produce a ppd distribution from a local project with > "make_ppm" or "make_ppm --cpan". An older version of the same module is > installed. > > problem: > When creating the SOFTPKG and PROVIDES elements of the ppd file, > make_ppd takes the version information from the currently installed > modules. > It should gather this information from the modules in the current > project directory (blib if VERSION_FROM is supplied or Makefile.pl if it > contains a VERSION. > > This problem exists in PPM::Make 0.88 and 0.89. > perl: ActivePerl v5.8.8.819 on Windows XP
Could you give an example of an older installed module that leads to this problem? I tried making a ppm package for a few modules which were installed on my system that had older versions, and PPM::Make picked up the correct version. However, there may have been something special about these particular modules that led to this. Thanks. -- best regards, Randy
Subject: Re: [rt.cpan.org #22699] make_ppm puts wrong $VERSION in ppd file
Date: Mon, 30 Oct 2006 20:19:18 +0100
To: bug-PPM-Make [...] rt.cpan.org
From: "Harald Albers" <albers [...] folk.de>
Show quoted text
> Could you give an example of an older installed module that leads to > this problem? I tried making a ppm package for a few modules which were > installed on my system that had older versions, and PPM::Make picked up > the correct version. However, there may have been something special > about these particular modules that led to this. Thanks.
Dear Randy, Thanks for your quick response. I just found the real reason for the wrong version numbers. The modules in question were Test::Harness 2.64 an my own module Config::LotusNotes 0.23 (not yet released). In both cases the distribution directory contained an outdated META.yml file. The incorrect version was taken from there. Example: A clean install of ActivePerl 5.8.8.819 has Test::Harness 2.56. The current CPAN release is 2.64, but its META.yml still contains the version 2.63_02. make_ppm gives a ppd file with VERSION="2,63_02,0,0". With META.yml removed from the distribution, the ppd version gets 2.64. With Config::LotusNotes, the META.yml version number happened to be the same as my installed one. I'm sorry I did not check the Test::Harness case properly. So the bug report turns out to be a feature request: make_ppm should rebuild an existing META.yml file. If someone relies on make_ppm --cpan to build his CPAN distributions, there is a good chance he forgets to update META.yml. As far as I know it's only updated by make dist. Regards, Harald Albers
On Mon Oct 30 14:37:48 2006, albers@folk.de wrote: Show quoted text
> > Could you give an example of an older installed module that leads to > > this problem? I tried making a ppm package for a few modules which
> were
> > installed on my system that had older versions, and PPM::Make picked
> up
> > the correct version. However, there may have been something special > > about these particular modules that led to this. Thanks.
> > Dear Randy, > Thanks for your quick response. > I just found the real reason for the wrong version numbers. > > The modules in question were Test::Harness 2.64 an my own module > Config::LotusNotes > 0.23 (not yet released). > > In both cases the distribution directory contained an outdated > META.yml file. > The incorrect version was taken from there.
Hi Harald, Thanks for the example, and elaboration. I've also come across situations where an older META.yml file led to the wrong version being picked up by PPM::Make. I originally thought to leave it at that, as META.yml is much easier and quicker to use, and at some point, one has to trust the author. However, this problem seems to be not so isolated, so what I think I'll do is use META.yml for getting the version number as a last resort, when other means (such as a VERSION_FROM specifying a file) isn't available. Rebuilding the distribution, as well as being more expensive, may not always work, as some authors specify NO_META to disable writing the meta file. This is handy when, for example, the distribution is under cvs or svn control, and you want to maintain the META.yml file by hand. -- best regards, Randy
This issue is resolved in PPM-Make-0.91, which will be released to CPAN shortly.
From: cpan [...] folk.de
Thank you. I can confirm that the problem no longer exists. Bye, Harald
issue resolved