I wanted to say thank you. I think your comment in this thread and in your reply here cover my feelings about M::B very well, and also offer a good explanation of the mismatch between the views of Schwern and the M::B crew and the view that all to regularly is expressed here about M::B.

Most perlmonks first signifigant encounter with M::B will be when it breaks CPAN during a bulk install. There will be two reasons for this: first they don't have M::B installed anyway, second that they have M::B installed but somebody using it listened to the ridiculous advice about not providing a Makefile.PL.

The first is fixable more or less. I have to admit that I personally found this scenario particularly annoying for quite some as every time I tried to install M::B it died due to some silly non-portable oversight, or some other related forgetfulness related to deploying in a Win32 enviornment. Recent installs of M::B havent had this problem so presumably they have learned not to realease without doing proper Win32 testing first.

The problem of the second scenario is much more annoying, as I am one of those who for various reasons often has to use an old CPAN. In this scenario there is nothing I can do to prevent modules using M::B from breaking my module builds and generally adding stress and hassle to my day. Starting a bulk CPAN install which results in multiple failures because M::B using modules haven't provided a Makefile.PL is a real pain, especially when the M::B modules are prereq's that I didnt directly ask for and that were NOT using M::B the last time they were built. What this does is make me deeply deeply hate M::B.

The other side of this coin is what the M::B folks and module producers and people like Schwern see. They see M::B as a solution to a whole host of their personal project problems. Nightmare issues maintaining EU::MM (ive had patches applied to it, I know how twisty and horrible it is), handling nonstandard dependency requirements and the like are all easier in M::B than in EU::MM. Since these people presumably are more concerned with dealing with their direct packaging and installation problems than the spurious install issue related to old software it makes sense that they dont see any problem with M::B.

The problem with all of this is I dont see how the situation can be resolved happily except maybe M::B publically deprecating the use of Build.PL scripts and switching over to using Makefile.PL's always. Even then there is still going to be a lot modules set up with the old code which makes such a switchover less attractive than we might wish. Until there arent any modules out there that gratuitiously break CPAN its going to be hard for Ken and the M::B crowd to convince a lot of people that using M::B is a good idea. I think history has proved this, and that had Ken not taken this path he would have found himself with considerably more community support for M::B, both in switching over to it and to developing it as a project.

Oh and for the record I know that some people were saying this from the very beginning. Im sure I did when i attended Kens lecture at YAPC::EU::Munich.

---
$world=~s/war/peace/g


In reply to Re^6: Why Module::Build? by demerphq
in thread Why Module::Build? by Ovid

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.