All Projects → google → Python Subprocess32

google / Python Subprocess32

Licence: other
A backport of the Python 3 subprocess module for use on Python 2.

Programming Languages

python
139335 projects - #7 most used programming language
python2
120 projects

subprocess32

PyPI version POSIX Build Status Windows Build Status

This is a backport of the Python 3 subprocess module for use on Python 2. This code has not been tested on Windows or other non-POSIX platforms.

subprocess32 includes many important reliability bug fixes relevant on POSIX platforms. The most important of which is a C extension module used internally to handle the code path between fork() and exec(). This module is reliable when an application is using threads.

Refer to the Python 3.5 subprocess documentation for usage information.

  • Timeout support backported from Python 3.3 is included.
  • The run() API from Python 3.5 was backported in subprocess32 3.5.0.
  • Otherwise features are frozen at the 3.2 level.

Usage

The recommend pattern for cross platform code is to use the following:

if os.name == 'posix' and sys.version_info[0] < 3:
    import subprocess32 as subprocess
else:
    import subprocess

Or if you fully control your POSIX Python 2.7 installation, this can serve as a replacement for its subprocess module. Users will thank you by not filing concurrency bugs.

Got Bugs?

Try to reproduce them on the latest Python 3.x itself and file bug reports on bugs.python.org. Add gregory.p.smith to the Nosy list.

If you have can prove that the issue is specifically with this backport and not a problem in Python 3 itself, feel free to use the github issue tracker for others to collaborate with you on a fix, but do not expect any support.

Python 2 has reached EOL, as has this project.

-- Gregory P. Smith [email protected] [Google LLC]

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].