Chris Dolan wrote:
Personally, The best solution is to have an official policy for adding
non-standard additions. "X-" is bad for reasons that many people have
shared. I like the idea of a per-module special prefs area. To insure
that collisions are impossible, how about a URI for the prefs wrapper
like below (sorry, not sure if this is valid YAML)
extensions:
'http://search.cpan.org/dist/CPAN-Reporter/':
cc_author: 0
That will enable the extension mechanism to work for non-Perl code too.
To me, that feels a little like the "-moz-*" CSS extensions that Mozilla
and others use.
I endorse this product/service/concept.
That said, the biggest drawback of this whole thing is that it's just
one more piece of information that module authors need to think about
when writing code. Writing a good CPAN module is already a fairly hefty
task. I'm not saying there's an alternative, but really what we need is
the module creator's equivalent of Perl Best Practices.
META.yaml is a standardized data interchange format for intersystem
communication. It probably shouldn't be being written by hand, but being
generated by the configure (Makefile.PL,Build.PL) script.
Special additions to the META.yml for some specific case should thus
ideally be implemented via some command in the configuration module.
So in Module::Install for example...
cc_author 0;
... would cause the above extension code to be inserted.
Adam K