[Distutils] [PATCH] Write distribution meta-data an XML file
Amos Latteier
amos@digicool.com
Sat Mar 10 00:36:00 2001
> Amos, we had agreed to this step at the conference. Great
> mind reading!
Actually it you guys who were reading my mind ;-)
> I agreed to send information about some potential
> existing XML formats.
Let's first figure out our requirements. My main concern is
to allow the catalog to get access to a distribution's
meta-data. I don't think that it's too important to choose
an existing stardard because we already have a distutils
meta-data schema (though not a standard XML representation
of it) and I don't see much need to communicate distutils
distribution meta-data to existing systems (with the
exception of the Vaults of Parnasus - though I don't think
it has any support for this now). Perhaps others disagree.
Given these requirements, I think that the home-cooked
format that I proposed is fine. BTW, for those who haven't
checked out the patch here an example of the format:
<metadata>
<item>
<name>name</name>
<value>Distutils</value>
</item>
<item>
<name>version</name>
<value>1.0.1</value>
</item>
...
</metadata>
This format has the advantages of not requiring that
meta-data names be legal XML element names. It also does not
impose any particular meta-data schema. It just requires
that meta-data consist of a sequence of name, value pairs.
If we adapt an existing format it will probably require
changing the meta-data schema that the distutils currently
use. My guess is that unless this buys us compatibility with
some useful existing system it will not be worth it,
considering how hard-coded the existing meta-data schema
seems to be within the distutils code.
> Programmer's Package Description (PPD) is defined here:
>
> http://velocity.activestate.com/docs/ActivePerl/site/lib/XML/PPD.html
This has some Perl specific stuff. It also uses different
meta-data than the distutils currently does. I'm not sure if
this format has much to offer us.
> PPD is based on OSD:
>
> http://www.w3.org/TR/NOTE-OSD.html
>
> which is a pseudo-standard that never got much traction.
Are there any systems that use this format? It has some
interesting features, but again, I don't think it maps very
well onto the existing distutils meta-data schema.
> I've also stumbled across this one:
>
> http://www.asp-shareware.org/pad/
This seems again to be more complex than we need, and does't
seem to map well onto the existing meta-data schema, and
doesn't seem to be used by any relevant systems.
I think the real question is whether we want to change the
distutils meta-data schema or not.
Meta-data schemas seem to be a contentious issue. I don't
have any stong feelings on the matter. I just want to make
meta-data easily available outside setup.py.
-Amos