process.py -- a Python module for process control

Home http://trentm.com/projects/process/
License MIT (more details at OSI)
Platforms Windows, Linux, Mac OS X, Solaris, other Un*x
Current Version 0.7.1 What's new?
Dev Status fairly mature, heavily used in a commercial product, not perfect though
Requirements Python >= 2.3, which.py >= 1.0

What's new?

I have moved hosting of process.py from my old Starship pages to this site. The current version includes a number of fixes that we at ActiveState had made to Komodo's private copy of process.py.

WARNING: If you upgrade my which.py to v1.1.0 and use this process.py, you must use v0.7.1 or greater. This is because of a slight _version_/__version__ semantic change in which.py.

Why process.py?

process.py is a (rather large) Python module to make process control easier and more consistent on Windows, Linux, and Mac OS X (and other Un*ces). The current mechanisms (os.popen*, os.system, os.exec*, os.spawn*) all have limitations.

A quick list of some reasons to use process.py:

Note that since I developed process.py, Python has grown (in version 2.4) the new subprocess module. I haven't yet had the chance to do a feature comparison of process.py and subprocess but the latter is definitely more capable than the older Python process control mechanisms. If you are considering using process.py you should definitely checkout subprocess as well.

Install Notes

Download the latest process.py source package, unzip it, and run setup.py install:

unzip process-0.7.1.zip
cd process-0.7.1
python setup.py install

If your install fails then please visit the Troubleshooting FAQ.

Getting Started

Currently the best intro to process.py is its module documentation. Either install process.py and run:

pydoc process

or just take a look at process.py in your editor or here.

Change Log

v0.7.1

v0.7.0

TODO: recover changelog from before this version