On Aug 2, 2008, at 07:17, Shlomi Fish wrote:

http://xrl.us/bi6n9 (link to svn.berlios.de) is a functional spec for a way to tag and classify CPAN modules. Those tags and catgories should end up in the META.yml. However, inserting them by hand by editing the Build.PL will be:

You are aware of the keywords param to new(), right?

=item keywords

For describing the distribution using keyword (or "tags") in order to
make CPAN.org indexing and search more efficient and useful.

See L<http://module-build.sourceforge.net/META-spec-current.html#keywords >.

1. Error-prone.

Why is that?

2. Not capabale of being manipulated by an external program - "Only perl can
understand Perl, etc.".

It looks like M::B does not current put the keywords into the META.yml file when you run `make distmeta`. It ought to. That's where you should start your patch, IMHO. Once the're in the META.yml, any YAML- compliant program can of course read them.

Of course, this is not limited to this issue. I've overheard a conversation on
a #perl where some people said they'd like to have all the (non-code)
parameters to Module::Build be speicified in a YAML format or so.

Um, what for? Write a YAML file to be read by M::B to write out META.yml? Seems silly to me.

So I've been thinking of having a special file or files for this (or
alternatively possibly re-use the __DATA__ section of the Build.PL) in order
to specify machine-manipulatable parameters to the Build process.

I find Perl easier to type than YAML. YAML is much more error-prone, IMO.

Given enough willingness, I'm willing to volunteer the time to implement it in the current version of M::B (and possibly EU::MM and M::I). I suppose it can also be implemented as a user-land wrapper around Module::Build, but would
like to get some input first.

As a start, all of the keys specified in the META spec should be written to META.yml. Beyond that, well, just know that the Ant folks started out just using XML in their build files, but then needed processing, and so created a Turing-complete XML programming language. James Duncan Davidson has since told me that if he had to do it again, Ant build files would just have been written in Python or Ruby or something, rather than XML.

So, let's not try to learn that lesson in reverse, eh?

Best,

David

Reply via email to