Re: Re: Module::Build and the PPM
by autarch (Hermit) on May 18, 2004 at 21:56 UTC
|
4. Why has Module::Build suddenly decided to affect CPAN without conferring with the module authors list, or the CPAN/PAUSE maintainers, or considering the bigger effects.
Personally I think the answers to these two questions are plain and simply Hubris. They think that its up to them to decide aspects of the future of perl without consultation with as much of the community as possible.
Actually, the answer to #4 is really, really simple. Barbie is on crack. Module::Build has nothing to do with people uploading PPMs to CPAN. Module::Build has some code that attempts to build a PPM. If that code has problems, patches and/or bug reports should be sent. If people are uploading PPMs to CPAN and this is causing problems, then the person doing the uploading should be contacted and/or PAUSE/CPAN should be modified.
As for #3, I don't get that naming scheme myself, but I don't think anyone working on Module::Build did it as some sort of "Perl domination scheme", contrary to your rather fevered imagination. If there's a better (aka more standard and accepted) naming scheme, I'm sure Ken would like a patch, especially considering that he doesn't use PPMs himself.
The paranoia and anger in this whole thread is really wacko. Instead of assuming Ken & co. have some horrible plot, or are motivated by some sort of overwhelming ego, maybe you should consider that Module::Build is still being built, and that for the Win32/PPM side there has been very little input from Win32 people besides Randy Sims and a few others, and basically nothing out of ActiveState. I suspect that those problems Barbie found which are the fault of Module::Build are problems created simply by lack of resources and input.
Have any of the people doing the complaining in this thread actually chimed in on the Module::Build mailing list?
| [reply] |
|
|
Have any of the people doing the complaining in this thread actually chimed in on the Module::Build mailing list?
Yes. Bug reports and complaints were ignored. When the subject of releasing packages into CPAN _without_ a Makefile.PL came up the reaction was not pleasant. This decision singlehandedly has turned a large part of Perl community against Module::Build. Encouraging people to release unbuildable modules on CPAN was a _bad_ idea, especially as for quite some time no-one on PM on a Win32 box (the single largest group of users of Perl) could even get it installed.
The paranoia and anger in this whole thread is really wacko.
Thanks for your comments autarch. With an attitude like that its no wonder you dont get the issues being raised here. Maybe if folks like yourself took the concerns of folks like us a little more seriously Module::Build would be in wider use, and recieve wider encouragement. I know that from observing the CB there is almost nobody championing Module::Build here, and I think that is a reflection of the poor comunity relations (and decisions) made by the group responsible.
I wish I could be more positive about this actually. I had breakfast with Ken once and I know he is a nice guy. But M::B has definately managed to turn me completely off, and I say that as someone who thought Kens ideas when he presented them were good. (Although iiirc I made the point that breaking the existing Build process was a bad plan even then.)
---
demerphq
First they ignore you, then they laugh at you, then they fight you, then you win.
-- Gandhi
| [reply] [d/l] |
|
|
Yes. Bug reports and complaints were ignored. When the subject of releasing packages into CPAN _without_ a Makefile.PL came up the reaction was not pleasant.
Are you claiming you actually got flamed? I find this hard to believe. Unfortunately, the list archives only appear to be available via the horrid sourceforge archive system, so it's hard to find the thread(s?) you're referring to.
Regardless, I don't recall seeing many instances of people releasing modules to CPAN with only a Build.PL file and no Makefile.PL of any sort whatsoever, so it appears that the people who've decided to use Module::Build have decided that it's best to include both. Certainly, that's what I do with my modules.
Thanks for your comments autarch. With an attitude like that its no wonder you dont get the issues being raised here. Maybe if folks like yourself took the concerns of folks like us a little more seriously Module::Build would be in wider use, and recieve wider encouragement.
Maybe you shouldn't start by accusing the people working on it of being arrogant and criticizing them for things they have no control over (like someone uploading PPMs to CPAN!). That sort of stuff makes it a little harder to listen, since it's hard to find the substance amid the noise being generated.
For example, if you dislike the PPM- prefix used by default, maybe suggest something else (actually, Barbie did, and his suggestions seem reasonable). It's worth noting that there really doesn't appear to be a standard for this. ActiveState appears to use something like "Foo-Bar-0.01.zip" and Randy Kobes' repository uses "Foo-Bar.tar.gz". If Module::Build were to generate something like this, it would obviously be much more problematic than prefixing it with "PPM-".
But really, this whole thread starts from a basic misapprehension of Barbie's, which is that somehow that Module::Build (aka, its developers), by making PPM building easier, is therefore responsible when someone uploads it to CPAN. If PPMs don't belong on CPAN (and I'm thinking that they probably don't) then ask the person doing the uploading to stop. Problem solved.
| [reply] |
|
|
|
|
|
|
|
I recently moved one of my modules over to Module::Build because I don't like make and all the things it entails, and ExtUtils::MakeMaker turned me off due to its complexity and uglyness for expansion.
The first thing that really annoyed me was, that there was no pass-through Makefile.PL included and that I had to hunt down one of your distributions to find a Makefile.PL so that the make && make test && make install dance still works. I don't like make, but it is a very convenient way to unify my automated nightly testing scripts. For something that claims to be the next best thing, this was a bad decision.
Recently, I've gone to writing some meta-packages that automate the installation of other modules, and while battling it out with ExtUtils::MakeMaker, I found it actually not that convoluted and ugly, as long as it is about generating one-shot makefiles and not some ingenious framework to do it all.
I think that the lack of Win32 feedback mostly stems from people shortly evaluating Module::Build under Win32 and then deciding that it's not worth the bother. If you want acceptance, you will have to actively seek out the people there, and not supporting a proper, automatic CPAN installation will not make people like Module::Build, at least, it made me not like it.
| [reply] |
|
|
The first thing that really annoyed me was, that there was no pass-through Makefile.PL included and that I had to hunt down one of your distributions to find a Makefile.PL so that the make && make test && make install dance still works. I don't like make, but it is a very convenient way to unify my automated nightly testing scripts. For something that claims to be the next best thing, this was a bad decision.
Module::Build has come with Module::Build::Compat for quite some time. Just do this:
Module::Build->new( module_name => ...,
create_makefile_pl => 'passthrough',
)->create_build_script;
There are other options that can be passed to "create_makefile_pl". See Module::Build::Compat for details.
The nice bit about this is that Module::Build will simply re-generate the Makefile.PL each time you run "./Build dist". So if Module::Build improves compatibility, you just install the new improved version and next time you create a distro tarball, you get the improved version of the Makefile.PL script automatically.
| [reply] [d/l] |
|
|
|
|
|
|
|
|
|
|
|
| [reply] |
|
|
I think you need to carefully think that reasoning through. People use Module::Build to create distributions so they can distribute them to a wider audience. Part of that distribution process, in many cases, involves uploading to CPAN. Why should it be automatically assumed that someone who creates a ppm package, using M::B, will not follow the same route as they have for other distributions? While it might not directly upload to CPAN, it is part of the process that people use to upload their modules onto CPAN.
I don't see how M::B will ever be able to create PPMs if the functionality isn't just put in there in some form. I still think it's a big jump to go from that to assuming people will upload PPMs to CPAN, and an even bigger jump to think that this should be discussed by the M::B developers before implementing the functionality. When I wrote some of the initial PPM/PPD-related code way back when, my only interest was in trying to make it easier to make PPMs/PPDs for the DateTime modules.
Why deal with the symptoms, which could cause a myriad of unforeseen problems, rather than look at the root of the problem? Blankly assuming you are right and everyone else is wrong, is not going to solve any issues there might be.
But there have always been tools to create PPMs. The only difference is that now a tool that creates regular CPAN-ish tarballs includes that functionality. This is not a huge radical change. Regardless, if PPMs don't belong on CPAN at all, there not much to be done besides asking people not to upload them there.
Wildly claiming I am "on crack", have a "fevered imagination" and an "overwhelming ego" is nothing short of a personal attack.
Well, I only wildly claimed you were on crack. The fevered imagination I attributed to demerphq, and, the "overwhelming ego" quote you've taken way out of context. I wrote "instead of assuming Ken & co. have some horrible plot, or are motivated by some sort of overwhelming ego ...". That wasn't directed at you or anyone else. If you want to be offended, at least be offended at what I actually said. I'm not even particularly irritated at you, though I think your original post is off the mark, since this problem has a lot more to do with one person uploading something to CPAN than Module::Build. I am irritated at the various responses which seem to just go along with that assumption and then blame that on the fact that there is some sort of attempt by Module::Build to take over the Perl community, or some other ridiculous theory.
As I've said, if there's a problem with the PPM generation of Module::Build, I think that people who actually use Windows would be greatly welcomed if they have ideas and/or code to contribute, because I know that I, for one, have no freaking clue about Windows, despite having written some of the PPD-related code.
| [reply] |