473,776 Members | 1,498 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

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 1783
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...@gma il.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...@gma il.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********@gma il.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.gr eenend.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.e duwrote in message
news:ma******** *************** *************@p ython.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 thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

10
3206
by: Hung Jung Lu | last post by:
Hi, Does anyone know whether there is any generic GUI-based build system around? (Python-based would be great. Also, for now I am only looking for Windows OS.) By "build system" I mean something similar the "make/makefile" system, but somewhat more generic/powerful/flexible/higher-level/etc, so that if you have a sequence (maybe even some simple conditional branches and loops) of system tasks to perform, you can more easily visualize...
4
4728
by: Torsten Mohr | last post by:
Hi, i'd like to build an executable file that is linked with a python library and executes a script via PyRun_SimpleString or similar functions. Is there a static library of python available, so the users don't need to install python?
12
1724
by: David Murmann | last post by:
hi all! i just built revision 41809 under winxp using a rather uncommon setup (at least i think so). since i have no visual studio here, i only used freely available tools: cygwin to get the source, the microsoft compiler/linker and NAnt (nant.sf.net) as the build tool to interpret the .vcproj-files (which may be the uncommon part). as far as i understand this setup is not supported in any way, but i noticed two problems, that could...
4
2382
by: Anastasios Hatzis | last post by:
I'm looking for a pattern where different client implementations can use the same commands of some fictive tool ("foo") by accessing some kind of API. Actually I have the need for such pattern for my own tool (http://openswarm.sourceforge.net). I already started restructuring my code to separate the actual command implementations from the command-line scripts (which is optparser-based now) and have some ideas how to proceed. But probably...
5
1395
by: Jas11 | last post by:
I want to build python software and applications. What build tool do you think i should use?Please Help Me!!!!!!!!!
0
1148
by: Mathieu Prevot | last post by:
2008/9/24 Jaime Huerta Cepas <jhuerta@cipf.es>: IMHO this is too complex to commit. Macport is a way to do what you want, but packages may not be up to date enough. Maybe the easiest and simplest way for you to do this is to write a script that will download, compile and install everything. The script should work like: sudo all_in_one_script.py
0
986
by: kwatch | last post by:
Hi all, I have released pyKook 0.0.1. http://pypi.python.org/pypi/Kook/0.0.1 http://www.kuwata-lab.com/kook/ http://www.kuwata-lab.com/kook/pykook-users-guide.html pyKook is a simple build tool similar to Make, Ant, Rake, or SCons. pyKook regards software project as cooking. Terms used in pyKook are cooking terms.
0
2458
by: Akira Kitada | last post by:
Hi list, I was trying to build Python 2.6 on FreeBSD 4.11 and found it failed to build some of the modules. """ Failed to find the necessary bits to build these modules: _bsddb _sqlite3 _tkinter gdbm linuxaudiodev spwd sunaudiodev
0
1530
by: M.-A. Lemburg | last post by:
On 2008-10-25 08:39, Akira Kitada wrote: Please post a bug report on python.org about these failures. The multiprocessing module is still fairly new and obviously needs more fine tuning for the large set of platforms on which Python can run. However, please also note that FreeBSD4 is a rather old version of that OS. FWIW: Python 2.6 compiles just fine on FreeBSD6. Thanks.
0
9628
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
10289
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
10120
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
0
8952
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
0
6722
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
5367
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
0
5493
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
4031
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
2
3622
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.

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.