Skip Menu |

This queue is for tickets about the Module-Install CPAN distribution.

Report information
The Basics
Id: 51055
Status: open
Priority: 0/
Queue: Module-Install

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

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



Subject: 10% of all Module::Install-driven CPAN dists have wrong version in META.yml
The attached file lists all Module::Install-driven distributions at CPAN which seem to have a wrong version in their META.yml. It looks like this problem systemically happens because META.yml is only regenerated when inc/ is recreated, but this is not forced in any phase when building the distribution package (unlike in EUMM, where META.yml is generated right before creating the distribution package). I stumbled over this problem in my own distro Image-Info-1.30. Regards, Slaven
Subject: mismatch.log

Message body is not shown because it is too large.

Hi. Thanks for the list. It'd help us much when we urge early users to upgrade Module::Install in the future. However, the problem is not Module::Install doesn't recreate META.yml while packaging. In fact Module::Install recreates it each time a distribution author runs "perl Makefile.PL" (if the META.yml is created automatically by Module::Install). The real problem is packaging/releasing by someone other than the author (at least for Module::Install, which checks inc/.author directory to see if they are authors or not). This happens most probably because an inc directory created by the original author is included in a distribution's repository (except for the hidden inc/.author). In this case, what they check out looks the same as what they download from CPAN, thus Module::Install won't try to recreate META.yml etc, and then *kaboom*. Maybe a piece of documentation would help a bit, and it's not that hard to check version integrity while running "perl Makefile.PL", but I think this needs to be discussed further. On 2009-11-02 Mon 18:02:01, SREZIC wrote: Show quoted text
> The attached file lists all Module::Install-driven distributions at
CPAN Show quoted text
> which seem to have a wrong version in their META.yml. It looks like
this Show quoted text
> problem systemically happens because META.yml is only regenerated when > inc/ is recreated, but this is not forced in any phase when building
the Show quoted text
> distribution package (unlike in EUMM, where META.yml is generated
right Show quoted text
> before creating the distribution package). > > I stumbled over this problem in my own distro Image-Info-1.30. > > Regards, > Slaven
On 2010-04-05 12:54:19, ISHIGAKI wrote: Show quoted text
> Hi. Thanks for the list. It'd help us much when we urge early users to > upgrade Module::Install in the future. > > However, the problem is not Module::Install doesn't recreate META.yml > while packaging. In fact Module::Install recreates it each time a > distribution author runs "perl Makefile.PL" (if the META.yml is created > automatically by Module::Install). > > The real problem is packaging/releasing by someone other than the > author (at least for Module::Install, which checks inc/.author > directory to see if they are authors or not). This happens most > probably because an inc directory created by the original author is > included in a distribution's repository (except for the hidden > inc/.author). In this case, what they check out looks the same as what > they download from CPAN, thus Module::Install won't try to recreate > META.yml etc, and then *kaboom*. > > Maybe a piece of documentation would help a bit, and it's not that hard > to check version integrity while running "perl Makefile.PL", but I > think this needs to be discussed further. >
Hello ISHIGAKI, I have to disagree. Traditionally (that is, when using stock EUMM), META.yml is only created when doing "make dist". I think this should also happen with Module::Install. No additional documentation necessary, everything's working out-of-the box, no problems when authors change. Regards, Slaven Show quoted text
> > On 2009-11-02 Mon 18:02:01, SREZIC wrote:
> > The attached file lists all Module::Install-driven distributions at
> CPAN
> > which seem to have a wrong version in their META.yml. It looks like
> this
> > problem systemically happens because META.yml is only regenerated when > > inc/ is recreated, but this is not forced in any phase when building
> the
> > distribution package (unlike in EUMM, where META.yml is generated
> right
> > before creating the distribution package). > > > > I stumbled over this problem in my own distro Image-Info-1.30. > > > > Regards, > > Slaven
> >
I ran into this issue today too in one of my program. My META.yml had been out of sync for the last few releases. I tried 'perl Makefile.PL' but it did not help. 'make dist' did not help either, in that possibly it created the new META.yml in the tarball, but not in my current directory. I had to remove inc and run 'perl Makefile.PL' to have the META.yml be regenerated and up-tp-date.