Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (
Help us improve Python packaging - Donate today!

subprocess-like API for starting local and remote processes

Project Description

Superprocess facilitates extending the built-in subprocess module. You can extend superprocess to add custom behaviour or use the bundled extensions, most notably support for running remote processes.


Requires Python 2.6, 2.7 or 3.4+.

To install superprocess, simply:

$ pip install superprocess


Run a remote command:

>>> superprocess.check_output('echo $SSH_CONNECTION', netloc='', shell=True)
b' 56924 22\n'

Open a pipe to a command:

>>> with superprocess.popen('ls') as f:
...   for line in f:
...     print(line.strip())

Note: close() will raise a CalledProcessError if the return code is non-zero:

>>> f = superprocess.popen('echo Hello World!; exit 1', shell=True)
'Hello World!\n'
>>> f.close()
Traceback (most recent call last):
subprocess.CalledProcessError: Command 'echo Hello World!; exit 1' returned non-zero exit status 1

Customise an instance of superprocess to use the shell by default:

>>> from superprocess import Superprocess
>>> superprocess = Superprocess()
>>> = functools.partial(, shell=True)
>>>'exit 1')


Licensed under the Apache License, Version 2.0.

Release History

This version
History Node


History Node


History Node


History Node


History Node

Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, Size & Hash SHA256 Hash Help File Type Python Version Upload Date
(5.6 kB) Copy SHA256 Hash SHA256
Source None Aug 25, 2015

Supported By

Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Kabu Creative Kabu Creative UX & Design Google Google Cloud Servers Fastly Fastly CDN StatusPage StatusPage Statuspage DigiCert DigiCert EV Certificate