Re: Kwalitee metric: Broken Installer

2006-07-19 Thread Steffen Mueller

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


This is the only viable solution. Anybody using Module::Install for 
their modules should be aware of that. Of course, if the changes between 
the Module::Install releases don't matter for your specific module, you 
needn't re-release. (E.g. better XS support and a pure Perl module.)


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 out of the question. It would never be allowed to go into the core.

Module::Install has a very different philosophy from other build tools 
(like Module::Build and ExtUtils::Makemaker): Only the module author 
installs it. The users get the bundled version.


Actually now I see a third resolution: don't use M::I for CPAN modules.  
CPAN (the software) handles dependency installing, it's standard with 
perl, good enough.  I do like M::I, I just can't think of why it's 
really necessary for CPAN modules.  (For non-CPAN perl packages, though, 
it's a GREAT idea.)


IMHO, it's convenient.

Steffen


Re: Kwalitee metric: Broken Installer

2006-07-19 Thread Steffen Mueller

Randy W. Sims schrieb:

Steffen Mueller wrote:
Feedback is welcome, though I'd rather not talk about the way I 
determine the version number. It works for all known versions of 
Module::Install.


I don't think I like it. It makes me nervous for some reason... For 
example, who's to say what constitutes a bad version of an installer 
(actually, this only applies to M::I, since the other installers aren't 
generally bundled, but I don't mind defending M::I here). In this case, 
you've declared every version prior to some arbitrary release to be bad. 
I doubt that is the case. I think there might have been problems with 
one or two releases, but being an old release is not the same as being a 
flawed release.


There is a particular incompatibility between Module::Install pre-0.61 
and the current ActiveState Perl release. (build 817). So yes, if you 
are on Windows, anything before 0.61 *is* bad!


This was discussed in a different thread recently.

If we found out that 0.62 had a really dangerous bug, but 0.61 and 0.63 
didn't, then we could easily add a hash of known-to-be-bad versions. 
Incidentially, that includes 0.60 and earlier. :)


Steffen


Re: Kwalitee metric: Broken Installer

2006-07-18 Thread Thomas Klausner
Hi!

On Tue, Jul 18, 2006 at 12:27:30PM +0200, Steffen Mueller wrote:
 
 we had a discussion about distributions with broken versions of 
 Module::Install. Using Module::CPANTS::Kwalitee::* as models I wrote a 
 simple plugin that calculates a Kwalitee metric uses_broken_installer.

Cool!

Maybe we should call it 'uses_broken_bundled_installer' or
'uses_broken_module_install'?

 The BrokenInstaller.pm file is attached. It's a straightforward adaption 
 of what the other metric plugins do.

I only took a short glance (/me is @work ATM), but it looks ok. I'll
take a closer look in the evening.

 
 domm: What do you think? Is this a good metric?

I think it's a good metric, but maybe Module::Install-supports will
disagree :-)

We could also add checks for problems in Makefile.PL/Build.PL...

 If so, would you like to 
 include the plugin in the distribution or do you want me to upload a 
 separate distribution?

I'd rather include it in MCA.

Thanks a lot!


-- 
#!/usr/bin/perl   http://domm.zsi.at
for(ref bless{},just'another'perl'hacker){s-:+-$-gprint$_.$/}


Re: Kwalitee metric: Broken Installer

2006-07-18 Thread David Golden

Thomas Klausner wrote:

I think it's a good metric, but maybe Module::Install-supports will
disagree :-)


Well, as long as it only picks up *certain* versions, that's probably OK.


We could also add checks for problems in Makefile.PL/Build.PL...


At the risk of going out on a limb here, maybe something that detects 
Module::Build::Compat in passthrough mode?


Regards,
David





Re: Kwalitee metric: Broken Installer

2006-07-18 Thread Steffen Mueller

Hi,

Thomas Klausner schrieb:

On Tue, Jul 18, 2006 at 12:27:30PM +0200, Steffen Mueller wrote:
we had a discussion about distributions with broken versions of 
Module::Install. Using Module::CPANTS::Kwalitee::* as models I wrote a 
simple plugin that calculates a Kwalitee metric uses_broken_installer.


Cool!

Maybe we should call it 'uses_broken_bundled_installer' or
'uses_broken_module_install'?


I don't think so. If a bug in certain Module::Build versions was to be 
discovered, the resulting broken Makefile.PL's or Build.PL's could also 
be included in this metric. So neither bundled nor module_install 
applies in that case.


The BrokenInstaller.pm file is attached. It's a straightforward adaption 
of what the other metric plugins do.


I only took a short glance (/me is @work ATM), but it looks ok. I'll
take a closer look in the evening.


Since http://steffen-mueller.net/mi_old.html is generated using very 
similar heuristics, the part in analyse() should be fine. I just took 
::Files.pm and replaced the obvious pieces with my code.



domm: What do you think? Is this a good metric?


I think it's a good metric, but maybe Module::Install-supports will
disagree :-)


I doubt that. It's not aimed at Module::Install or anything. If anybody 
knows about deficiencies in older M::I releases, it's the 
Module::Install maintainers!



We could also add checks for problems in Makefile.PL/Build.PL...


Exactly. That's why I'd like to keep this from being Module::Install 
specific. Separate metric seem overkill.


If so, would you like to 
include the plugin in the distribution or do you want me to upload a 
separate distribution?


I'd rather include it in MCA.


Perfect.

Steffen


Re: Kwalitee metric: Broken Installer

2006-07-18 Thread A. Pagaltzis
* Randy W. Sims [EMAIL PROTECTED] [2006-07-19 00:20]:
 For example, who's to say what constitutes a bad version of an
 installer 

How about the installer maintainer himself? As in the case of
M::I…

Regards,
-- 
Aristotle Pagaltzis // http://plasmasturm.org/


Re: Kwalitee metric: Broken Installer

2006-07-18 Thread Randy W. Sims

Steffen Mueller wrote:

Hi domm, hi perl.qa,

we had a discussion about distributions with broken versions of 
Module::Install. Using Module::CPANTS::Kwalitee::* as models I wrote a 
simple plugin that calculates a Kwalitee metric uses_broken_installer.


- If the distribution doesn't use Module::Install, it's fine for now.
- If it uses a recent Module::Install, that okay, too.
- If it uses a version of Module::Install that's known to be broken, it 
doesn't get the kwalitee point.


The BrokenInstaller.pm file is attached. It's a straightforward adaption 
of what the other metric plugins do.


Feedback is welcome, though I'd rather not talk about the way I 
determine the version number. It works for all known versions of 
Module::Install.


domm: What do you think? Is this a good metric? If so, would you like to 
include the plugin in the distribution or do you want me to upload a 
separate distribution?


I don't think I like it. It makes me nervous for some reason... For 
example, who's to say what constitutes a bad version of an installer 
(actually, this only applies to M::I, since the other installers aren't 
generally bundled, but I don't mind defending M::I here). In this case, 
you've declared every version prior to some arbitrary release to be bad. 
I doubt that is the case. I think there might have been problems with 
one or two releases, but being an old release is not the same as being a 
flawed release.


Randy.


Re: Kwalitee metric: Broken Installer

2006-07-18 Thread Jonathan Rockway

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...)


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!).


The other solutions (like kwality or whatever it's called) are stopgap 
measures that don't fix anything.  Anyone that knows about the kwality 
site probably reads this list ;) and knows to update M::I anyway.  The 
other 90% of the modules are one-offs whose authors have better things 
to do, probably, than re-release their module whenever a point release 
of some obscure dependency is released :). 

For the time being, maybe someone just needs to download the broken 
modules, fix the inc directory, and upload them back to the CPAN ;)  
That would actually solve the problem. (And introduce many others, but...)


Actually now I see a third resolution: don't use M::I for CPAN modules.  
CPAN (the software) handles dependency installing, it's standard with 
perl, good enough.  I do like M::I, I just can't think of why it's 
really necessary for CPAN modules.  (For non-CPAN perl packages, though, 
it's a GREAT idea.)


Regards,
Jonathan Rockway

I don't think I like it. It makes me nervous for some reason... For 
example, who's to say what constitutes a bad version of an installer 
(actually, this only applies to M::I, since the other installers 
aren't generally bundled, but I don't mind defending M::I here). In 
this case, you've declared every version prior to some arbitrary 
release to be bad. I doubt that is the case. I think there might have 
been problems with one or two releases, but being an old release is 
not the same as being a flawed release.




Re: Kwalitee metric: Broken Installer

2006-07-18 Thread chromatic
On Tuesday 18 July 2006 15:57, Jonathan Rockway wrote:

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

For various values of everyone and everywhere perhaps.

 Actually now I see a third resolution: don't use M::I for CPAN modules.
 CPAN (the software) handles dependency installing, it's standard with
 perl, good enough.  I do like M::I, I just can't think of why it's
 really necessary for CPAN modules.  (For non-CPAN perl packages, though,
 it's a GREAT idea.)

That's my preference as well.

-- c