Changelog | gipc @ PyPI | gipc @ GitHub
Overview
gipc enables reliable child process management and non-blocking inter-process communication in software that uses gevent.
Using Python’s multiprocessing package in the context of a codebase that also uses gevent is error-prone and may break the application in various subtle ways. With gipc, multiprocessing.Process-based child processes can again safely be created in your gevent-powered application. The API of multiprocessing.Process objects is provided in a gevent-cooperative way. Also, gipc provides a pipe-based transport layer for gevent-cooperative inter-greenlet and inter-process communication. gipc is lightweight and easy to integrate.
From 2012 to 2018, gipc’s home was at bitbucket.org/jgehrcke/gipc. Since then development has continued on GitHub.
Code examples
Individual example programs can be found in the examples directory.
Documentation
Visit https://gehrcke.de/gipc for installation instructions, API docs, code examples, and in-depth information.
Platform support
The current version of gipc works on CPython 3.9 through 3.13. It supports gevent versions 1.5 and newer and supports both, Unix-like systems as well as Windows. On Linux and macOS, gipc also works with PyPy.
gipc’s continuous integration (CI) pipeline automatically executes a wide range of tests on Linux, Darwin (macOS), and Windows.
Who uses it?
MXCuBE (Macromolecular Xtallography Customized Beamline Environment)
AIT-Core (AMMOS Instrument Toolkit, developed for a number of ISS missions)
disco (Discord Python library)
Are you using gipc in your project? Please drop me a line!
How to run the tests?
gipc’s tests are written for pytest. With the repository’s root directory being the current working directory you can run the tests like this:
$ pip install -r requirements-tests.txt $ cd test && pytest -vv --cov-report term --cov-report html --cov gipc
Contact & help
Your feedback and questions are highly appreciated. Please contact me via mail at jgehrcke@googlemail.com or use the GitHub issue tracker.
Metadata
Release files for gipc 1.8.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| gipc-1.8.0.tar.gz | 35.2 kB | Details |
Release files / gipc-1.8.0.tar.gz
| Download URL | gipc-1.8.0.tar.gz |
|---|---|
| Size | 35.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c394881ef436edd6325a5cab5da05d7a4654e381268939e2f87e913e9a0a5963
|
|
BLAKE2b-256 checksum How to use checksums |
939e7c50b8959f8b34e2be6dd8582694042ae70a980a26bf9b61d4abf21eb964
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.2
|