On Tue, 13 Oct 2009 22:05:25 -0500, Ian Bicking
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...