Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/smarie/python-spawny
Tiny utility to launch a script in a separate process, possibly using another python executable/environment. The script may be accessed from the main process through a proxy. This project relies on the default multiprocessing module, therefore the child environment does not require any particular package to be present (not even this package).
https://github.com/smarie/python-spawny
daemon distribute object process proxy python rpc spawn
Last synced: 3 months ago
JSON representation
Tiny utility to launch a script in a separate process, possibly using another python executable/environment. The script may be accessed from the main process through a proxy. This project relies on the default multiprocessing module, therefore the child environment does not require any particular package to be present (not even this package).
- Host: GitHub
- URL: https://github.com/smarie/python-spawny
- Owner: smarie
- License: bsd-3-clause
- Created: 2017-07-21T08:17:32.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2020-04-26T14:31:33.000Z (almost 5 years ago)
- Last Synced: 2024-10-13T18:09:04.610Z (4 months ago)
- Topics: daemon, distribute, object, process, proxy, python, rpc, spawn
- Language: Python
- Homepage: https://smarie.github.io/python-spawny/
- Size: 1.44 MB
- Stars: 4
- Watchers: 3
- Forks: 0
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# spawny
*Spawn python code in a separate python interpreter and communicate with it easily.*
[![Python versions](https://img.shields.io/pypi/pyversions/spawny.svg)](https://pypi.python.org/pypi/spawny/) [![Build Status](https://travis-ci.org/smarie/python-spawny.svg?branch=master)](https://travis-ci.org/smarie/python-spawny) [![Tests Status](https://smarie.github.io/python-spawny/junit/junit-badge.svg?dummy=8484744)](https://smarie.github.io/python-spawny/junit/report.html) [![codecov](https://codecov.io/gh/smarie/python-spawny/branch/master/graph/badge.svg)](https://codecov.io/gh/smarie/python-spawny)
[![Documentation](https://img.shields.io/badge/doc-latest-blue.svg)](https://smarie.github.io/python-spawny/) [![PyPI](https://img.shields.io/pypi/v/spawny.svg)](https://pypi.python.org/pypi/spawny/) [![Downloads](https://pepy.tech/badge/spawny)](https://pepy.tech/project/spawny) [![Downloads per week](https://pepy.tech/badge/spawny/week)](https://pepy.tech/project/spawny) [![GitHub stars](https://img.shields.io/github/stars/smarie/python-spawny.svg)](https://github.com/smarie/python-spawny/stargazers)
**This is the readme for developers.** The documentation for users is available here: [https://smarie.github.io/python-spawny/](https://smarie.github.io/python-spawny/)
## Want to contribute ?
Contributions are welcome ! Simply fork this project on github, commit your contributions, and create pull requests.
Here is a non-exhaustive list of interesting open topics: [https://github.com/smarie/python-spawny/issues](https://github.com/smarie/python-spawny/issues)
## Running the tests
This project uses `pytest`.
```bash
pytest -v spawny/tests/
```You may need to install requirements for setup beforehand, using
```bash
pip install -r ci_tools/requirements-test.txt
```## Packaging
This project uses `setuptools_scm` to synchronise the version number. Therefore the following command should be used for development snapshots as well as official releases:
```bash
python setup.py egg_info bdist_wheel rotate -m.whl -k3
```You may need to install requirements for setup beforehand, using
```bash
pip install -r ci_tools/requirements-setup.txt
```## Generating the documentation page
This project uses `mkdocs` to generate its documentation page. Therefore building a local copy of the doc page may be done using:
```bash
mkdocs build -f docs/mkdocs.yml
```You may need to install requirements for doc beforehand, using
```bash
pip install -r ci_tools/requirements-doc.txt
```## Generating the test reports
The following commands generate the html test report and the associated badge.
```bash
pytest --junitxml=junit.xml -v spawny/tests/
ant -f ci_tools/generate-junit-html.xml
python ci_tools/generate-junit-badge.py
```### PyPI Releasing memo
This project is now automatically deployed to PyPI when a tag is created. Anyway, for manual deployment we can use:
```bash
twine upload dist/* -r pypitest
twine upload dist/*
```