On Saturday, December 6, 2003, at 07:57 AM, Randy W. Sims wrote:


On 12/4/2003 3:03 PM, Thomas Klausner wrote:
Hi!
On Thu, Dec 04, 2003 at 01:53:33PM -0500, Randy W. Sims wrote:
Thanks. I've already posted my final proposal to the Module-Build list <http://sourceforge.net/mailarchive/message.php?msg_id=6578408> for Ken
I'm not on the Module::Build list so I missed the discussion up so far, but
I find one important thing missing from your specification:
There should be a field in META.yml that specifies which version of the
META.yml-spec the file adheres to.
While it might be possible to deduce this from the value of 'generated_by',
I think it's easier for humans and parsers if there is a dedicated field.

Perhaps something like:


=head2 meta-spec

Example:

meta-spec: <http://module-build.sourceforge.net/META-spec.html> - v1.1

(Spec 1.1) [required] This field indicates the location of the version
of the F<META.yml> document specification being used along with the version number.

At the London CPLAN meeting, we discussed making (and I volunteered to write...) a perl module that would "implement" the META.yml specification. The idea is that it would parse the file and enforce the definitions laid out in [its version of] the specification.


We also talked about making it able to understand older versions of the spec, so you could say something like "parse this as a version-1.7 spec META.yml", but now I don't think that's necessary - every change we make to META.yml should always be 100% backward compatible, so future versions of such a module should be able to parse any current META.yml files.

So, given this, we could perhaps just use something like this (but with a MUCH better name than Module::MetaSpec) :

  meta-spec:
    module: Module::MetaSpec
    version: 1.1

-Ken



Reply via email to