pipettor - robust, easy to use Unix process pipelines
Project description
Pipettor Overview
pipettor - robust, easy to use Python package for running Unix process pipelines
Features
- Creating process pipelines in Python is either complex (e.g.
subprocess
), or not robust (e.g.os.system()
). This package aims to address these shortcomings. - Command pipelines are simply specified as a sequence of commands, with each command represented as a sequence of arguments.
- Failure of any process in the pipeline results in an exception, with
stderr
included in the exception. - Pipeline
stdin/stdout/stderr
can be passed through from parent process, redirected to a file, or read/written by the parent process. - Asynchronous reading and writing to and from the pipeline maybe done without risk of deadlock.
- Pipeline can run asynchronously or block until completion.
- Popen-style File-like objects for reading or writing a pipeline.
- Documentation: https://pipettor.readthedocs.org.
History
0.8.0 (2023-02-05)
- make most optional arguments require keyword form to help prevent errors, especially if open() options are assumed
- added more functions to make Popen objects file-like objects
0.7.0 (2023-01-06)
- don't fail if invalid UTF-8 characters are written to capture stderr
0.6.0 (2022-11-16)
- remove use of deprecated pipes module
0.5.0 (2020-12-25)
- Removed Python-2 support.
- Switch to using subprocess as a base rather interface directly with Unix system calls. This lets subprocess deal with various issues dealing with the Python interpreter environment.
0.4.0 (2018-04-21)
- Allow passing through universial newline mode for PY2.
- Fix bug with not using specified log level.
0.3.0 (2018-02-25)
- added open-stying buffering, encoding, and errors options
- source cleanup
0.2.0 (2017-09-19)
- Simplified and log of info and errors levels by removing logLevel options.
- Improvements to documentation.
0.1.3 (2017-06-13)
- Documentation fixes
0.1.2 (2017-06-11)
- First public release on PyPI.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pipettor-0.8.0.tar.gz
(35.1 kB
view details)
Built Distribution
pipettor-0.8.0-py3-none-any.whl
(15.5 kB
view details)
File details
Details for the file pipettor-0.8.0.tar.gz
.
File metadata
- Download URL: pipettor-0.8.0.tar.gz
- Upload date:
- Size: 35.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ef9f6e0faf592005902fdf12ea62b851eea23f242b46e5e55972daed2af11408 |
|
MD5 | 676f551e04bdcf10be045b3afefd8f7c |
|
BLAKE2b-256 | e4e47a7ec5c2a96622a22db616077390ce69d0d13c7e94adb0b01d8d404d96dc |
File details
Details for the file pipettor-0.8.0-py3-none-any.whl
.
File metadata
- Download URL: pipettor-0.8.0-py3-none-any.whl
- Upload date:
- Size: 15.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 26ddb19d701f1df82643ba49cc350cdf6a53d944bdb251a355c389bf0e61fca9 |
|
MD5 | 6f31fe6ea9e3b8839bb0c358f324cb8c |
|
BLAKE2b-256 | cdff97228b5b2b0519cfdd0c16e19ba29e1d6efeffe54244d8374dbeebb715ed |