On 01/03/2010 19:22, Chris Withers wrote:
P.J. Eby wrote:
At 10:41 AM 2/25/2010 -0500, Olemis Lang wrote:
PS: BTW, how could I trigger easy_install(ation) at a given point
while implementing a distutils command, and let the command perform
further actions if deps are installed correctly ?
Setuptools' "Distribution" object has a method for fetching
dependencies. See setuptools' "test" command for an example. (This
doesn't install the dependencies globally, just drops eggs into the
build directory. But they're there and available to be reused for
installation in a later phase, under normal circumstances.)
...which is all pretty grim. If you use this with other packaging
tools, like, say, buildout, the testing dependencies just get dumped
into your buildout, which is a bit yucky to put it mildly.
How about putting them where other eggs get put but only making them
available for the tests?
Failing that, how about putting them somewhere temporary?
For distutils 2 / distribute I think the idea is something along the
lines of:
There will be a Test-Requires-Dist (or equivalent) field for specifying
test dependencies - still to be confirmed
distutils2 by default won't install any dependencies for you - so
neither "setup.py install" nor "setup.py test" will install test
dependencies
distribute will install standard dependencies but not test dependencies
by default
with distribute "setup.py test" will *not* install test dependencies -
there will be a new parameter for install to tell it to fetch test
dependencies (if necessary)
This is all still subject to discussion and really belongs on the
distutils mailing list rather than here. It may be possible for
"setup.py test" with distribute to have another parameter telling it to
install test dependencies temporarily and then uninstall them afterwards...
All the best,
Michael
Chris
--
http://www.ironpythoninaction.com/
http://www.voidspace.org.uk/blog
READ CAREFULLY. By accepting and reading this email you agree, on behalf of
your employer, to release me from all obligations and waivers arising from any
and all NON-NEGOTIATED agreements, licenses, terms-of-service, shrinkwrap,
clickwrap, browsewrap, confidentiality, non-disclosure, non-compete and
acceptable use policies (”BOGUS AGREEMENTS”) that I have entered into with your
employer, its partners, licensors, agents and assigns, in perpetuity, without
prejudice to my ongoing rights and privileges. You further represent that you
have the authority to release me from any BOGUS AGREEMENTS on behalf of your
employer.
_______________________________________________
Distutils-SIG maillist - [email protected]
http://mail.python.org/mailman/listinfo/distutils-sig