Re: Need help improving my Kwalitee

2008-07-24 Thread Eric Wilhelm
# from David Cantrell
# on Wednesday 23 July 2008 13:10:

I know, after testing every single module on the CPAN,
that more modules don't work because of Module::Build bugs than
 because of ExtUtils::MakeMaker bugs, so if EU::MM is too broken
 then M::B has to also be too broken because it is *more* broken.
  Which is a shame, cos M::B is a good idea.

Please report M::B bugs in RT.

  http://rt.cpan.org/Public/Dist/Display.html?Name=Module-Build

Thanks,
Eric
-- 
Anyone who has the power to make you believe absurdities has the power
to make you commit injustices.
--Voltaire
---
http://scratchcomputing.com
---


Re: Need help improving my Kwalitee

2008-07-24 Thread Ken Williams
I've been reading this thread with some interest.  Bill, I agree that
if you don't want to try M::B and you're happy with EU::MM then by all
means stick with it.  But I do want to defend M::B's reason for
existence.

It's true IMO that the main problem with EU::MM is its reliance on
'make', but not for the reasons already discussed in this thread.  I
[mostly] agree that platform differences in make dialects aren't
really a big deal.

The biggest problem with EU::MM is its whole paradigm: it has to
squeeze all its functionality and abstractions through the little
pigeonhole of Makefile syntax.  That has lots of yucky implications,
e.g. customization becomes difficult (if not downright dangerous), all
actions must be performed via shell commands (which *do* vary wildly
in syntax on different platforms), and trying to understand the
dependency graph of the Makefile, which IMO is what Makefiles are
*for*, is an exercise in headbanging.

I'm sure it must have seemed like a good idea at the time EU::MM was
written[1] to use 'make' for building Perl distributions, but IMO the
bang we get for it is way less than the buck it takes from us.

 -Ken

[1] Actually, it wasn't so much written as extracted through the
nose of various scripts  misc. other code that was hanging around
during the transition from perl4 to perl5.


Re: Need help improving my Kwalitee

2008-07-23 Thread Burak Gürsoy
You can bundle a Build.PL (Module::Build) and use it to generate the dist, and 
you'll get a shiny meta file :) Or you can drop EU::MM and use only M::B which 
has some transition mechanism for EU::MM users. However I prefer to use a 
native Makefile.PL...

 Original-Nachricht 
 Datum: Mon, 21 Jul 2008 17:53:38 -0700
 Von: Bill Ward [EMAIL PROTECTED]
 An: module-authors@perl.org
 Betreff: Re: Need help improving my Kwalitee

 On Mon, Jul 21, 2008 at 3:56 PM, Thomas Klausner [EMAIL PROTECTED] wrote:
  Hi!
 
  On Mon, Jul 21, 2008 at 02:57:20PM -0700, Bill Ward wrote:
  My module Number::Format has some red areas in its Kwalitee report
  http://cpants.perl.org/dist/kwalitee/Number-Format
 
  When I release 1.60, I tried to fix a lot of the kwalitee issues with
  the previous version, 1.52.  However, it appears that some of my
  fixes didn't work.  For example, my META.yml file was barebones in
  1.52, and I wanted to bring it up to modern standards.  I could not
  find any tool that would help me generate it, so I cobbled one
  together by hand using examples from other modules.  Yet I still see
  dings against the kwalitee there.
 
  Maybe cpants_lint.pl (comes with Module::CPANTS::Anaylse) is helpfull.
  Although I have to admit that there are some nasty bugs in cpants ATM,
  and I'm still low on tuits. I will spend some time on cpants before
  YAPC, though...
 
 I looked into installing Module::CPANTS::Analyse but it has a zillion
 dependencies, most of which I'm not familiar with.  I generally try to
 avoid installing Perl modules without good reason, and prefer those
 that are not heavily dependent on others because it can make it
 horribly difficult to debug problems... but I will think about it.

-- 
GMX startet ShortView.de. Hier findest Du Leute mit Deinen Interessen!
Jetzt dabei sein: http://www.shortview.de/[EMAIL PROTECTED]


Re: Need help improving my Kwalitee

2008-07-23 Thread David Precious
On 07/21/2008 10:57 PM, Bill Ward wrote:
 My module Number::Format has some red areas in its Kwalitee report
 http://cpants.perl.org/dist/kwalitee/Number-Format
 
 When I release 1.60, I tried to fix a lot of the kwalitee issues with
 the previous version, 1.52.  However, it appears that some of my
 fixes didn't work.  For example, my META.yml file was barebones in
 1.52, and I wanted to bring it up to modern standards.  I could not
 find any tool that would help me generate it, so I cobbled one
 together by hand using examples from other modules.  Yet I still see
 dings against the kwalitee there.

I let EU::MM generate my META.yml files for me.

I hit problems getting it to include the licence field, as some old
EU::MM installs choked on the LICENCE field (they were too old to
recognise it - we're talking quite old, but still in use so I'd still
rather my module build didn't die on them).

To get round that, I use the following in my Makefile.PL :


WriteMakefile(
...snipped the normal params...
# include the LICENSE param, as long as EU::MM is new enough to
# support it:
($ExtUtils::MakeMaker::VERSION = 6.3002 ? (LICENSE = perl) : (),
);



 Also, how do I test the kwalitee without releasing a new version and
 waiting for CPANTS to find it?  I wish the CPANTS site had
 instructions on how to install the Kwalitee code on my own box for
 pre-release testing.  I see a number of modules in CPAN that relate to
 kwalitee but am not sure which one(s) I need.

As Thomas already said, cpants_lint.pl from the Module::CPANTS::Analyse
distribution will do the job nicely for you.  Yes, it has some
dependencies, but I don't see that as a good reason to avoid installing
a new module.  Avoiding wheel re-invention is kind of the point of CPAN,
so it's hardly surprising to rely on several modules rather than
pointlessly re-implement them in your own distribution :)

Cheers

Dave P




Re: Need help improving my Kwalitee

2008-07-23 Thread Burak Gürsoy
 I'm not interested in Module::Build.

I've checked your Makefile.PL and you're not doing anything special with it 
(like subclassing or XS stuff, etc.), so it'll be straight forward to add 
Module::Build support to your module. And since M::B is in core starting with 
5.10, I think it's the way to go (although I know there are haters of M::B in 
the Perl world).


 Original-Nachricht 
 Datum: Wed, 23 Jul 2008 01:20:28 -0700
 Von: Bill Ward [EMAIL PROTECTED]
 An: Burak Gürsoy [EMAIL PROTECTED]
 CC: module-authors@perl.org
 Betreff: Re: Need help improving my Kwalitee

 I'm not interested in Module::Build.  I'm a stickler for tradition.
 Test::More is a little new-fangled for me but I've grudgingly adopted
 it...
 
 On Wed, Jul 23, 2008 at 1:15 AM, Burak Gürsoy [EMAIL PROTECTED]
 wrote:
  You can bundle a Build.PL (Module::Build) and use it to generate the
 dist, and you'll get a shiny meta file :) Or you can drop EU::MM and use only
 M::B which has some transition mechanism for EU::MM users. However I prefer
 to use a native Makefile.PL...
 
   Original-Nachricht 
  Datum: Mon, 21 Jul 2008 17:53:38 -0700
  Von: Bill Ward [EMAIL PROTECTED]
  An: module-authors@perl.org
  Betreff: Re: Need help improving my Kwalitee
 
  On Mon, Jul 21, 2008 at 3:56 PM, Thomas Klausner [EMAIL PROTECTED] wrote:
   Hi!
  
   On Mon, Jul 21, 2008 at 02:57:20PM -0700, Bill Ward wrote:
   My module Number::Format has some red areas in its Kwalitee report
   http://cpants.perl.org/dist/kwalitee/Number-Format
  
   When I release 1.60, I tried to fix a lot of the kwalitee issues
 with
   the previous version, 1.52.  However, it appears that some of my
   fixes didn't work.  For example, my META.yml file was barebones in
   1.52, and I wanted to bring it up to modern standards.  I could not
   find any tool that would help me generate it, so I cobbled one
   together by hand using examples from other modules.  Yet I still see
   dings against the kwalitee there.
  
   Maybe cpants_lint.pl (comes with Module::CPANTS::Anaylse) is
 helpfull.
   Although I have to admit that there are some nasty bugs in cpants
 ATM,
   and I'm still low on tuits. I will spend some time on cpants before
   YAPC, though...
 
  I looked into installing Module::CPANTS::Analyse but it has a zillion
  dependencies, most of which I'm not familiar with.  I generally try to
  avoid installing Perl modules without good reason, and prefer those
  that are not heavily dependent on others because it can make it
  horribly difficult to debug problems... but I will think about it.
 
  --
  GMX startet ShortView.de. Hier findest Du Leute mit Deinen Interessen!
  Jetzt dabei sein:
 http://www.shortview.de/[EMAIL PROTECTED]
 

-- 
GMX Kostenlose Spiele: Einfach online spielen und Spaß haben mit Pastry Passion!
http://games.entertainment.gmx.net/de/entertainment/games/free/puzzle/6169196


Re: Need help improving my Kwalitee

2008-07-23 Thread Ovid
--- On Wed, 23/7/08, Burak Gürsoy [EMAIL PROTECTED] wrote:

  I'm not interested in Module::Build.
 
 I've checked your Makefile.PL and you're not doing
 anything special with it (like subclassing or XS stuff,
 etc.), so it'll be straight forward to add
 Module::Build support to your module. And since M::B is in
 core starting with 5.10, I think it's the way to go
 (although I know there are haters of M::B in the Perl
 world).

If we had started with Module::Build from day one instead of 
ExtUtil::MakeMaker, life would be a better place as many MB issues would have 
been long resolved[1].  Regrettably, this isn't the case, so people ignore the 
theoretical technical superiority of the MB idea and instead focus on the fact 
that it doesn't do what they want.  We'll ignore the fact that many features 
that people want for EMM have not been added because while they're trivial in 
MB, they're a nightmare for EMM[2]

This has now led to others building competing systems which support different 
features and people are falling back to EMM as safe, but if I have complex 
build needs, it's anything but :(

Cheers,
Ovid

1.  'PREFIX', for example, has been the bane of many developers who work on 
build systems (there are plenty of us), but people who consume the modules 
generally don't care that it's broken because *they're* not the ones who have 
to do the hard work.  http://www.perlmonks.org/?node_id=458436 (that's from 
Schwern and the language is not safe for work).

2.  For each OS and OS version, take the number of different make programs 
and their different, subtly incompatible formats and features and you can get 
an idea of the scope of the problem.
--
Buy the book - http://www.oreilly.com/catalog/perlhks/
Tech blog- http://use.perl.org/~Ovid/journal/
Twitter  - http://twitter.com/OvidPerl
Official Perl 6 Wiki - http://www.perlfoundation.org/perl6


Re: Need help improving my Kwalitee

2008-07-23 Thread Bill Ward
On Wed, Jul 23, 2008 at 4:28 AM, Burak Gürsoy [EMAIL PROTECTED] wrote:
 I'm not interested in Module::Build.

 I've checked your Makefile.PL and you're not doing anything special with it 
 (like subclassing or XS stuff, etc.), so it'll be straight forward to add 
 Module::Build support to your module. And since M::B is in core starting with 
 5.10, I think it's the way to go (although I know there are haters of M::B in 
 the Perl world).

Lots of people are still on 5.8 or 5.6 so being in core from 5.10
isn't good enough.

But to my mind, the may problem with M::B is that it's moving away
from the traditional Unix concept of using make to install things.
And I'm not willing to go there.


Re: Need help improving my Kwalitee

2008-07-23 Thread Elliot Shank

Bill Ward wrote:

But to my mind, the may problem with M::B is that it's moving away
from the traditional Unix concept of using make to install things.
And I'm not willing to go there.


Just as a counterpoint, I refuse to use EU::MM in new code.  It's too broken 
and there's no reason to use a non-perl tool when you don't have to.


Re: Need help improving my Kwalitee

2008-07-23 Thread Steffen Schwigon
Bill Ward [EMAIL PROTECTED] writes:
 But to my mind, the may problem with M::B is that it's moving away
 from the traditional Unix concept of using make to install things.

A lot of Perl is about platform-independence. Probably even more than
other languages that occupied this cliché ad nauseam. make is not.

Kind regards,
Steffen
-- 
Steffen Schwigon [EMAIL PROTECTED]


Re: Need help improving my Kwalitee

2008-07-23 Thread David Cantrell

Elliot Shank wrote:

Bill Ward wrote:

But to my mind, the may problem with M::B is that it's moving away
from the traditional Unix concept of using make to install things.
And I'm not willing to go there.


Avoiding something because it's not what you're used to strikes me as 
being a bit silly.  If I thought like that then I'd still be suffering 
Windows cos it used to be what I was used to.


Just as a counterpoint, I refuse to use EU::MM in new code.  It's too 
broken and there's no reason to use a non-perl tool when you don't have to.


As a counter-counter-point, if you're going to refuse to use EU::MM 
because it's too broken, you have to refuse to use Module::Build for the 
same reason.  I know, after testing every single module on the CPAN, 
that more modules don't work because of Module::Build bugs than because 
of ExtUtils::MakeMaker bugs, so if EU::MM is too broken then M::B has 
to also be too broken because it is *more* broken.  Which is a shame, 
cos M::B is a good idea.


--
David Cantrell | Cake Smuggler Extraordinaire

fdisk format reinstall, doo-dah, doo-dah;
fdisk format reinstall, it's the Windows way


Re: Need help improving my Kwalitee

2008-07-23 Thread Bill Ward
On Wed, Jul 23, 2008 at 1:06 PM, Steffen Schwigon [EMAIL PROTECTED] wrote:
 Bill Ward [EMAIL PROTECTED] writes:
 But to my mind, the may problem with M::B is that it's moving away
 from the traditional Unix concept of using make to install things.

 A lot of Perl is about platform-independence. Probably even more than
 other languages that occupied this cliché ad nauseam. make is not.

Platform independence is not a priority for me.  All that really means
is Windows compatible since Mac OS and Linux are Unix variants these
days, and the only other widely used OS is Microsoft, which I have no
desire to encourage.  Legacy mainframe/minicomputer OS's are of no
interest to me either, and are mostly either obsolete or
Unix-compatible anyway.


Re: Need help improving my Kwalitee

2008-07-23 Thread Elliot Shank

David Cantrell wrote:
As a counter-counter-point, if you're going to refuse to use EU::MM 
because it's too broken, you have to refuse to use Module::Build for the 
same reason.


Ah.  Ok, I'll use nothing.


Re: Need help improving my Kwalitee

2008-07-23 Thread David Cantrell

Elliot Shank wrote:

David Cantrell wrote:
As a counter-counter-point, if you're going to refuse to use EU::MM 
because it's too broken, you have to refuse to use Module::Build for 
the same reason.

Ah.  Ok, I'll use nothing.


Well done! Ten out of ten for deliberately misunderstanding!

--
David Cantrell | Hero of the Information Age

  Irregular English:
ladies glow; gentlemen perspire; brutes, oafs and athletes sweat


Re: Need help improving my Kwalitee

2008-07-23 Thread Bill Ward
On Wed, Jul 23, 2008 at 2:09 PM, David Cantrell [EMAIL PROTECTED] wrote:
 Even if you only care about Unix-a-likes, you still need to remember that
 GNU make, Sun make, SGI make, etc are only partially compatible. Then
 consider that GNU software tends to break in stupid ways from one release to
 another, and older versions of make may support fewer features than whatever
 version you (and Schwern) are developing against.

 GNU have even managed to break *cp* and *rm* from one release to the next,
 so I treat GNU make with suspicion - it's far more complex, so far more
 likely to get a visit from the Fuckup Fairy.

True, but those kinds of problems are really rather rare, especially
if you stay away from the bleeding edge, and tend to only crop up in
esoteric situations.  The uses of make that EU::MM generates are
pretty standard and ordinary, and pretty much the same for all
modules.  Anyway, I've never had it break on me.


Need help improving my Kwalitee

2008-07-21 Thread Bill Ward
My module Number::Format has some red areas in its Kwalitee report
http://cpants.perl.org/dist/kwalitee/Number-Format

When I release 1.60, I tried to fix a lot of the kwalitee issues with
the previous version, 1.52.  However, it appears that some of my
fixes didn't work.  For example, my META.yml file was barebones in
1.52, and I wanted to bring it up to modern standards.  I could not
find any tool that would help me generate it, so I cobbled one
together by hand using examples from other modules.  Yet I still see
dings against the kwalitee there.

Also, how do I test the kwalitee without releasing a new version and
waiting for CPANTS to find it?  I wish the CPANTS site had
instructions on how to install the Kwalitee code on my own box for
pre-release testing.  I see a number of modules in CPAN that relate to
kwalitee but am not sure which one(s) I need.


Re: Need help improving my Kwalitee

2008-07-21 Thread Thomas Klausner
Hi!

On Mon, Jul 21, 2008 at 02:57:20PM -0700, Bill Ward wrote:
 My module Number::Format has some red areas in its Kwalitee report
 http://cpants.perl.org/dist/kwalitee/Number-Format
 
 When I release 1.60, I tried to fix a lot of the kwalitee issues with
 the previous version, 1.52.  However, it appears that some of my
 fixes didn't work.  For example, my META.yml file was barebones in
 1.52, and I wanted to bring it up to modern standards.  I could not
 find any tool that would help me generate it, so I cobbled one
 together by hand using examples from other modules.  Yet I still see
 dings against the kwalitee there.

Maybe cpants_lint.pl (comes with Module::CPANTS::Anaylse) is helpfull.
Although I have to admit that there are some nasty bugs in cpants ATM, 
and I'm still low on tuits. I will spend some time on cpants before 
YAPC, though...

 Also, how do I test the kwalitee without releasing a new version and
 waiting for CPANTS to find it?  I wish the CPANTS site had
 instructions on how to install the Kwalitee code on my own box for
 pre-release testing.  I see a number of modules in CPAN that relate to
 kwalitee but am not sure which one(s) I need.

Gabor recently asked me to write up how to set up a complete CPANTS 
testing thingy (that tests all of CPAN). I've starte this, but it's 
currently only available from svn:
http://code.google.com/p/cpants/source/browse/trunk/Module-CPANTS-ProcessCPAN/lib/Module/CPANTS/ProcessCPAN.pm

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


Re: Need help improving my Kwalitee

2008-07-21 Thread Bill Ward
On Mon, Jul 21, 2008 at 3:56 PM, Thomas Klausner [EMAIL PROTECTED] wrote:
 Hi!

 On Mon, Jul 21, 2008 at 02:57:20PM -0700, Bill Ward wrote:
 My module Number::Format has some red areas in its Kwalitee report
 http://cpants.perl.org/dist/kwalitee/Number-Format

 When I release 1.60, I tried to fix a lot of the kwalitee issues with
 the previous version, 1.52.  However, it appears that some of my
 fixes didn't work.  For example, my META.yml file was barebones in
 1.52, and I wanted to bring it up to modern standards.  I could not
 find any tool that would help me generate it, so I cobbled one
 together by hand using examples from other modules.  Yet I still see
 dings against the kwalitee there.

 Maybe cpants_lint.pl (comes with Module::CPANTS::Anaylse) is helpfull.
 Although I have to admit that there are some nasty bugs in cpants ATM,
 and I'm still low on tuits. I will spend some time on cpants before
 YAPC, though...

I looked into installing Module::CPANTS::Analyse but it has a zillion
dependencies, most of which I'm not familiar with.  I generally try to
avoid installing Perl modules without good reason, and prefer those
that are not heavily dependent on others because it can make it
horribly difficult to debug problems... but I will think about it.