By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
426,115 Members | 894 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 426,115 IT Pros & Developers. It's quick & easy.

Build tool for Python

P: n/a
Hi.
Apache Ant is the de facto building tool for Java (whether JSE, JEE
and JME) application.
With Ant you can do what ever you want: compile, generate docs,
generate code, packing, deploy, connecting to remote servers and every
thing.
Do we have such a tool for Python projects?
Thank you.
Jul 29 '08 #1
Share this Question
Share on Google+
6 Replies


P: n/a
Hussein B wrote:
Hi.
Apache Ant is the de facto building tool for Java (whether JSE, JEE
and JME) application.
With Ant you can do what ever you want: compile, generate docs,
generate code, packing, deploy, connecting to remote servers and every
thing.
Do we have such a tool for Python projects?
distutils and setuptools are used to create distributions of
python-packages, potentially compiling e.g. C or pyrex-sources, and you can
hook into them to create e.g. api-docs.

Diez
Jul 29 '08 #2

P: n/a
On Jul 29, 11:08*am, Hussein B <hubaghd...@gmail.comwrote:
Hi.
Apache Ant is the de facto building tool for Java (whether JSE, JEE
and JME) application.
With Ant you can do what ever you want: compile, generate docs,
generate code, packing, deploy, connecting to remote servers and every
thing.
Do we have such a tool for Python projects?
Thank you.
You might want to take a look at Paver. http://www.blueskyonmars.com/projects/paver/

Tim
Jul 29 '08 #3

P: n/a
On 29 Jul, 17:08, Hussein B <hubaghd...@gmail.comwrote:
Apache Ant is the de facto building tool for Java (whether JSE, JEE
and JME) application.
With Ant you can do what ever you want: compile, generate docs,
generate code, packing, deploy, connecting to remote servers and every
thing.
Do we have such a tool for Python projects?
There are quite a few similar tools here:

http://wiki.python.org/moin/ConfigurationAndBuildTools

Having looked at a few such tools recently, I found myself considering
using plain old make for automating various non-compilation-related
activities, but then again, plain Python is actually very good for
automation if you get into the right mindset. Consequently, I've just
written a bunch of functions which run programs, test outputs and
potentially feed those outputs to other programs.

Where most of the available generic tools seem to frustrate is in
their support of the often necessary but complicated behaviour
required to minimise the amount of unnecessary work performed, through
frameworks which seem to obscure the nature of the work itself. I do
understand that it can be awkward to work out which object files need
recompiling due to changes in source files, for example, and that one
doesn't want to see the logic involved reproduced all over the place,
but I do wonder whether the machinery around such matters isn't
sometimes more complicated in these tools as soon as one strays
outside the common cases.

It seems to me that some common build-related primitives implemented
as functions combined with plain Python would be a good enough
combination for a lot of tasks in this domain.

Paul
Jul 29 '08 #4

P: n/a


Hussein B wrote:
Hi.
Apache Ant is the de facto building tool for Java (whether JSE, JEE
and JME) application.
With Ant you can do what ever you want: compile, generate docs,
generate code, packing, deploy, connecting to remote servers and every
thing.
Do we have such a tool for Python projects?
Also see thread Continuous integration for Python projects and mention
of buildbot.

Jul 29 '08 #5

P: n/a
Hussein B <hu********@gmail.comwrote:
>Apache Ant is the de facto building tool for Java (whether JSE, JEE
and JME) application.
With Ant you can do what ever you want: [ ... ]
.... bash your head against your desk for hours trying to make sense
of its classloader system, struggle for days on end trying to make
it understand building anything outside the Java world, write piles
of tedious and often boilerplate XML, wonder what happened to javac's
ability to resolve dependencies to make this necessary ...

Put it like this, my experience has lead me to regard Ant as a
retrograde step compared to make. I can't understand why anyone
would want to inflict such a thing on a Python project.

--
\S -- si***@chiark.greenend.org.uk -- http://www.chaos.org.uk/~sion/
"Frankly I have no feelings towards penguins one way or the other"
-- Arthur C. Clarke
her nu becomež se bera eadward ofdun hlęddre heafdes bęce bump bump bump
Jul 30 '08 #6

P: n/a
"Terry Reedy" <tj*****@udel.eduwrote in message
news:ma************************************@python .org...
>

Hussein B wrote:
>Hi.
Apache Ant is the de facto building tool for Java (whether JSE, JEE
and JME) application.
With Ant you can do what ever you want: compile, generate docs,
generate code, packing, deploy, connecting to remote servers and every
thing.
Do we have such a tool for Python projects?

Also see thread Continuous integration for Python projects and mention of
buildbot.
Surprised no one has mentioned SCons, http://www.scons.org/
I've used it a bit and found it pretty good, out of the box.

--Tim Arnold
Jul 30 '08 #7

This discussion thread is closed

Replies have been disabled for this discussion.