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