472,119 Members | 1,516 Online
Bytes | Software Development & Data Engineering Community
Post +

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 472,119 software developers and data experts.

Build tool for Python

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
6 1675
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
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
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


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
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
"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.

Similar topics

10 posts views Thread by Hung Jung Lu | last post: by
4 posts views Thread by Torsten Mohr | last post: by
12 posts views Thread by David Murmann | last post: by
4 posts views Thread by Anastasios Hatzis | last post: by
reply views Thread by leo001 | last post: by

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.