in reply to Re: Re: Re: Module::Build and the PPM
in thread Module::Build and the PPM

Well, I think your paraphrase of the Module::Build::Compat docs leaves quite a bit to be desired. Here's the actual text:

Just include a Build.PL script (without a Makefile.PL script), and give installation directions in a README or INSTALL document explaining how to install the module. In particular, explain that the user must install Module::Build before installing your module. I prefer this method, mainly because I believe that the woes and hardships of doing this are far less significant than most people would have you believe. It's also the simplest method, which is nice. But anyone with an older version of CPAN or CPANPLUS on their system will probably have problems installing your module with it.

So basically, Ken's saying that he prefers to just include a Build.PL file in his modules. He also points out the problems with this. Presumably, anyone using Module::Build is well aware of the fact that it isn't as well supported as EU::MM with common tools, and is capable of making a reasonable choice of what amount of backwards compatibility to provide, and won't be unduly swayed by Ken's opinion. The really funny thing is that Ken appears to be providing an auto-generated Makefile.PL with all his distros, despite what he writes in Module::Build::Compat ;)

  • Comment on Re: Re: Re: Re: Module::Build and the PPM

Replies are listed 'Best First'.
Re: Re: Re: Re: Re: Module::Build and the PPM
by Corion (Patriarch) on May 19, 2004 at 07:58 UTC

    I find it not very much in the style of sensible defaults not to include a Makefile.PL. To recommend such a "solution" in the face of the fact that older versions "propably have problems installing your module" defies the use of a module to handle the installation. If I wanted to create problems during installation, I would write the Makefile myself. If I give up installation to a module, I expect that the module tries its best to work in all situations. ExtUtils::MakeMaker works in all situations, while Module::Build doesn't unless I make special provisions, like including a passthrough Makefile.PL for compatibility.

    Why can it be a design decision to make it easier for people to create broken distributions that won't install using CPAN by default?