[Distutils] Alternate static metadata PEP submission...
David Lyon
david.lyon at preisshare.net
Wed Oct 14 06:03:25 CEST 2009
On Tue, 13 Oct 2009 22:05:25 -0500, Ian Bicking <ianb at colorstudy.com>
wrote:
> Could an example API be encapsulated in something like this in setup.py?
>
> from test_this_pep import setup_cfg
> setup(other args, **setup_cfg())
>
> Then packages could be converted to test it out, without breaking the
> package.
Actually, my proposal doesn't break any package. Distutils included.
There's one fatal flaw with patching distutils. That is that any
patches done to distutils won't automatically find their way onto all
the old systems that are out there.
What we actually need, and I am building, is a setup.py script
that is going to be a 'trimmed' version of distutils that includes
all neccessary package/application installation code to do the install
from the setup.info file.
In a radical departure from the old way, you *don't* edit the
setup.py. Just edit the setup.info. Then attach the setup.py
unmodified.
I'm very sure that Tarek is going to have many good suggestions
on the best way to write this *new* boiler-plate setup.py and
it is likely that it will turn out a joint effort, because he
writes nicer code than me. Maybe I will beg him to help me..
Still, I need to do a proof of concept. Thats what I'm starting
now.
---setup.py---------------------------------------------
#----------------------------------------------------
# -- DO NOT EDIT THIS FILE
#
# This file is the standard setup.py for your
# application and you don't need to edit it.
#
# It was provided from the new distutils setup system
# and can be downloaded from:
#
# www.python.org/distutils/standardsetup/setup.py
#
# Instead, modify your setup.info file and
# provide a pre-install or post-install script
# to do your custom processing if that is required.
#----------------------------------------------------
#
..
..
--------------------------------------------------------
---setup.info----
[setup]
name = artistflair
version = 1.2
description_file = artisticflair.rst
..
..
-----------------
David
yes - it's setup.py upside down...
More information about the Distutils-SIG
mailing list