http://www.perlmonks.org?node_id=354717


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

So wait, if I choose to convert to using Module::Build not only do I inconvenience all of my users who dont have Module::Build, I also lock out the ones who can't get it to work, and as an added bonus get to spend hours converting non trivial Makefile.Pl's over to Build.Pl framework? Gee sign me up.

So don't freaking use it. Sheesh, no one has ever said "run out and convert all your existing modules, especially the ones that have heavily customized Makefile.PL files".

OTOH, if you're writing a new module, or looking into adding custom bits to a Makefile.PL for an existing module, then Module::Build is probably worth looking at, as creating a customized build/install process with it is much, much easier than with EU::MM. I've done both, so I'm in a good position to know.

Replies are listed 'Best First'.
Re: Re: Re^7: Module::Build and the PPM
by demerphq (Chancellor) on May 19, 2004 at 20:14 UTC

    Sheesh, no one has ever said "run out and convert all your existing modules, especially the ones that have heavily customized Makefile.PL files".

    No? You mean all those mails ive seen saying EU::MM shouldnt be modified except for maintenance and that any new development efforts should occur in M::B, and that all those posts ive seen saying EU::MM and CPAN will be replaced by M::B and CPANPLUS by 5.10 dont count?

    It seems to me that lots of people have been intimating that M::B should replace EU::MM Real Soon Now™ so when 5.10 comes out presumably EU::MM will be deprecated, and by 5.12 itll be removed. So by that time ill have to support both people who wont or cant use M::B and those who dont have EU::MM.

    So as long as the intention is to ultimately replace EU::MM with M::B then I am essentially forced to use it. And given the issues raised, the problems of backward compat etc, im afraid that im not real confident in the Brave New world that the M::B folks seem to want to bring to me.

    Really, save your time here. Go talk to Ken. Tell him that the Build.pl _sucks_ and that a lot of people hate it and that its very likely that policy of breaking CPAN is having a backlash against the whole effort. Talk some sense into the M::B crew and I promise youll see a lot of folks who have negative feelings about it turn in to its biggest champions.


    ---
    demerphq

      First they ignore you, then they laugh at you, then they fight you, then you win.
      -- Gandhi


      No? You mean all those mails ive seen saying EU::MM shouldnt be modified except for maintenance and that any new development efforts should occur in M::B, and that all those posts ive seen saying EU::MM and CPAN will be replaced by M::B and CPANPLUS by 5.10 dont count?

      Heh, that's funny. The mails saying EU::MM shouldn't be modified except for maintenance have mostly come from Michael Schwern, who is the maintainer for EU::MM. He says this based on his experience actually maintaining the EU::MM code. See his presentation MakeMaker is DOOMED for details.

      Of course, nothing stops you from taking over new development of EU::MM. I'm sure Michael would be willing to discuss it with you.

      It seems to me that lots of people have been intimating that M::B should replace EU::MM Real Soon Now™ so when 5.10 comes out presumably EU::MM will be deprecated, and by 5.12 itll be removed.

      I think "lots of people" is a gross overstatement. In fact, I don't think Ken has ever said it will happen "real soon now". The few people I've seen discussing putting M::B in 5.10 were Hugo van der Sanden, the 5.10 pumpking, and maybe a few other people on the p5p list. I know that Ken hasn't been pushing this. His attitude has always been that it can go in the core when a pumpking thinks it's ready.

      As to removing EU::MM entirely, I really don't think anyone has ever proposed that. There are tons of older modules on CPAN that aren't going to be updated with a Build.PL file anytime soon, and those should still be installable with 5.12.

      I really wonder who you've been talking to, because I know you haven't gotten any of these strange ideas from Ken, me, or other people who've contributed to M::B.

      So as long as the intention is to ultimately replace EU::MM with M::B then I am essentially forced to use it.

      The intention is to provide a better way of installing modules, and to replace EU::MM in the sense that people willingly choose M::B. EU::MM is not going away, and will never be removed from the core, even if it is not actively developed with new features.

      Really, save your time here. Go talk to Ken. Tell him that the Build.pl _sucks_ and that a lot of people hate it and that its very likely that policy of breaking CPAN is having a backlash against the whole effort.

      You seem to have some really, really strange unfounded ideas about this stuff. Maybe I should tell Ken about that, but if you have a real complaint, I encourage you to tell him yourself.

        I think "lots of people" is a gross overstatement. In fact, I don't think Ken has ever said it will happen "real soon now". The few people I've seen discussing putting M::B in 5.10 were Hugo van der Sanden, the 5.10 pumpking, and maybe a few other people on the p5p list. I know that Ken hasn't been pushing this. His attitude has always been that it can go in the core when a pumpking thinks it's ready.
        I'm one of the few other people; as far as I can see, there's a vicious spiral going on; Hugo (and please correct me if I'm wrong) would like to see it stable before going into bleadperl. Until it gets into bleadperl, it won't get fixed to work on "minor" platforms. Until it works on all platforms, it isn't stable. The answer, to me, is to stick it in, perhaps converting a sampling of the core modules to be built with it, and deal with the failures.

        In the meantime, it's a little scary seeing how many modules are using Module::Build without any clue how portable it actually is.

        Mea culpa: I've occasionally tried it on cygwin and had many test failures; I haven't had time to look further into them and been reluctant to report them without at least a making a stab at providing a patch. FWIW, on a current cygwin snapshot, using the stock cygwin perl release, I get:

        Failed Test Stat Wstat Total Fail Failed List of Failed ---------------------------------------------------------------------- +--------- t/compat.t 57 1 1.75% 53 t/install.t 27 1 3.70% 20 t/manifypods.t 22 5632 21 38 180.95% 3-21 t/runthrough.t 28 6 21.43% 14-17 19-20 1 test skipped. Failed 4/10 test scripts, 60.00% okay. 27/188 subtests failed, 85.64% +okay.