Busy busy...

Purdy on 2004-12-08T21:52:54

I think I'm getting the hang of this CPAN thing! Unfortunately, Mark Stosberg threw me a curve by introducing me to Module::Build, so now I'm wondering what's the best way to build CPAN modules ... the Makefile.PL way or the Build.PL way? Guess I need to buy Writing Perl Modules for CPAN.

Anyway, I have released two new-from-scratch modules:

I'm also starting to prepare for my trip. I hope I can find my power adapter. I'm not sure what to pack for the weather (besides rain ;)) - my expat friend says now's an arctic time, but weather.com says it'll be around 50. Must be that global warming... ;)

Peace,

Jason


EU::MM and M::B

dug on 2004-12-09T03:33:16

so now I'm wondering what's the best way to build CPAN modules ... the Makefile.PL way or the Build.PL way? Guess I need to buy Writing Perl Modules for CPAN.


I don't think that Module::Build existed when that book was written. I'm always slightly annoyed when I run a Build.PL script that wasn't written with create_makefile_pl => traditional. If EU::MM is already installed and works, why should I have to go and install another module in order to build this one?

That said I suppose if M::B become the canonical way to build modules I won't care too much. But in the mean time, I appreciate traditional compatibility.

Just my free advice, which is worth exactly what you paid for it {grin}.

-- Douglas Hunter

please don't

perrin on 2004-12-09T05:37:53

I like Ken Williams' work a lot, but Module::Build is not shipped with Perl. Don't use Module::Build unless you have a problem that it solves better than MakeMaker. That would be something like interactive questions for the user.

Alternatively, support both equally well by using the "traditional" option for creating a Makefile.PL from Module::Build. Otherwise I would have to install Module::Build on every machine where I want to put your module, for no good reason.

Re:please don't

knowmad on 2004-12-09T13:28:18

I too really like Module::Build and use it exclusively when developing internal projects. However, I think that wisdom of the previous two posters prevails until such time as M::B is shipping with a mainstream version of Perl.

Because I haven't released many modules to CPAN, I didn't even realize M::B could generate a traditional Makefile.PL. Indeed the create_makefile_pl parameter to new() in conjunction with Module::Build::Compat should generate the file as Perrin describes. Cool!

Re:please don't

knowmad on 2004-12-09T13:46:16

Doh, I also meant to mention ExtUtils::ModuleMaker which I use for creating my base packages. It can generate EU::MM, M::B, or M::B with a proxy Makefile.PL packages. The latter option isn't much help to you since it would still require M::B to be installed on the target system (it's like the 'small' style of create_makefile_pl).

Module::Release{::Extras}

nik on 2004-12-09T10:40:18

If you're releasing stuff to CPAN you should take a look at Module::Release, and the associated release(1) command, which makes the process much easier.

And if you do use Module::Release with either Subversion or Module::Build then you should probably look at Module::Release::Extras too...

N

Re:Module::Release{::Extras}

chromatic on 2004-12-09T22:34:49

I found Module::Release::Extras on the CPAN but not Module::Release. Can you give a link?

Re:Module::Release{::Extras}

nik on 2004-12-10T03:10:47

Er, that's odd. It certainly used to be on CPAN. Last I knew, brian d foy was planning a new release -- you can see this from the horses mouth.

There's "release" on CPAN, listed under brian's software list, but that looks like it's a very old version (from before release(1) was split out in to Module::Release). I wonder if brian's uploaded an old version by mistake at some point.

Re:Module::Release{::Extras}

petdance on 2004-12-10T03:11:38

There is apparently bad reindexing bummers running around. Apparenlty I have the latest release, but I'm no longer the registered owner since brian came back.

Please ping brian directly and ask him to upload a new one, if only to get the version bumped, and then I'll delete all my versions.