Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/google/python-subprocess32

A backport of the Python 3 subprocess module for use on Python 2.
https://github.com/google/python-subprocess32

backport posix-platforms python2 subprocess

Last synced: 3 months ago
JSON representation

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

Awesome Lists containing this project

README

        

subprocess32
------------
[![PyPI version](https://badge.fury.io/py/subprocess32.svg)](https://badge.fury.io/py/subprocess32)
[![POSIX Build Status](https://travis-ci.org/google/python-subprocess32.svg?branch=master)](https://travis-ci.org/google/python-subprocess32)
[![Windows Build Status](https://ci.appveyor.com/api/projects/status/53apbb2jk1uslj0m?svg=true
)](https://ci.appveyor.com/project/gpshead/python-subprocess32)

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](https://docs.python.org/3.5/library/subprocess.html)
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:

```python
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](https://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]