Jonathan Rockway wrote:
I see two resolutions to this problem:

1) Module authors need to re-release their modules whenever Module::Install is updated.

This is extremely inconvenient, but not a terrible demand. If other authors are like me, they accumulate small minor changes to their modules, and then release when something important comes along. A new M::I is "important" and would force us to keep our "stable" CPAN modules up-to-date with our svn repositories or whatever. That's a good thing ;) , but probably not the right way of going about it. (For the record, all my M::I modules use the latest version, and I went to no special effort to ensure that. So maybe this isn't as hard as it sounds.) (The right way of going about this, BTW, is out of the scope of this e-mail... but I do have some ideas...)

Not all authors need to upgrade with every release. I'm trying to note in the release notes which authors need to upgrade. Sometimes that is just going to be "anybody using the no_index command manually should upgrade" or something. But keeping M:I up to date so that your normal releases get the latest version is very positive.

2) Get M::I into the core of perl, so that everyone has a known-good tested-everywhere version.

This is the best idea. CPAN works so well because everyone has it and it's a good piece of software (lately CPANPLUS has gotten rather buggy and I've gone back to regular CPAN!).

This is _bad_ idea.

Not only is the entire design of Module::Install centered around the idea that the end-user DOESN'T have to have it installed, but the fact it has done so well despite what on a normal module would be hideous failures is a positive.

We can add new commands and new functionality, and the end-user doesn't have to upgrade.

Further, Module::Install is in no condition to even think of going core in any case, there are a good dozen issues that are NOT a problem in the current usage model that would become show-stoppers if we had to put it into the core and support it forever.

The other solutions (like "kwality" or whatever it's called) are stopgap measures that don't fix anything.

Oh but they do.

What Kwalitee REALLY does is acknowledge that it's hard for authors to keep track of all the niggly details, and summarise all the things they need to fix across their entire set.

This is important for people with 5 or 10 modules. It reduces the amount of attention and brainpower they have to expend to track problems in the distributions.

It's absolutely essential for the top 25 or so guys with dozens or modules, or for the few of us up in the 100 range.

http://cpants.dev.zsi.at/author/ADAMK

Take a look at that list. There's no way in the world I could keep track of everything.

Kwalitee fixes things ecologically, by providing greater awareness of problems. And fixing it by derivative methods is still fixing things.

And I for one would be incredibly happy if the list of modules I need to do incremental releases for to clear out old M:I versions was just a column on the CPANTS table, as with all the other idea for Kwalitee metrics that floated across the list (non-executable Makefile.PL et al).

Adam K

Reply via email to