[Distutils] Plugins for the MANIFEST file
ziade.tarek at gmail.com
Wed Apr 8 14:58:07 CEST 2009
On Wed, Apr 8, 2009 at 2:23 PM, Tres Seaver <tseaver at palladion.com> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> Tarek Ziadé wrote:
>> On Tue, Apr 7, 2009 at 8:47 PM, Lennart Regebro <regebro at gmail.com> wrote:
>>> On Tue, Apr 7, 2009 at 20:18, Tarek Ziadé <ziade.tarek at gmail.com> wrote:
>>>> If anyone wants to work on it, or comment,
>>> Some comments:
>>>> "MANIFEST.in is fine"
>>> Except that it introduces Yet Another Domain Specific Language. Wtf
>>> does "prune" mean? It's not obvious. The docs indicate that it
>>> actually excludes, but why it's not called "exclude" is then strange.
>>> We already have a language, Python. We don't need more. ;-)
>>> And the fact that is uses a separate file doesn't help.
>>> Yes, I know I'm just whining. But I don't agree that MANIFEST.in is
>>> fine. I think it is unfine. :)
>> I agree with this. Remember: I wanted to deprecate MANIFEST.in in favor of
>> a pure python description. Then people strongly objected.
> I want *less* stuff (ideally nothing) spelled in imperative Python, with
> some common declarative file replacing both the information currently in
> setup.py and MANIFEST.in. I thought we were in agreement that
> non-introspectable metadata was a Bad Thing(TM)?
I consider the MANIFEST static file itself to be part of the metadata.
and the discussions we had were related to the way to *build* this file.
which is not incompatible to what you have proposed I think.
I can imagine a declaration in setup.cfg to provide the commands the options
to use to build metadata, like:
metadata-builder= LIST OF PLUGINS TO USE
for example, a Mercurial script + a MANIFEST.in reader would write in setup.cfg:
Or someone could write another plugin that builds the file in
imperative Python, but that is
not part of setup.py.
Maybe we could start to write down examples of such setup.cfg files
for a few project out there, in this wiki page.
More information about the Distutils-SIG