Pyrseus: Serial Executors and the `ExecutorCtx` Factory
======================================================
Pyrseus extends Python's `concurrent.futures` asynchronous and concurrent
programming package with
- a collection of non-concurrent executors for light workloads and
troubleshooting,
- `ExecutorCtx`, a factory for easily switching between different executors,
and
- a collection of ready-built `ExecutorCtx` plugins, supporting executors from
[concurrent.futures](https://docs.python.org/3/library/concurrent.futures.html),
[ipyparallel](https://ipyparallel.readthedocs.io),
[loky](https://loky.readthedocs.io), [mpi4py](https://mpi4py.readthedocs.io),
and itself. Where relevant, optional
[cloudpickle](https://github.com/cloudpipe/cloudpickle)-enhanced plugins are
also provided.
Installation
------------
Pyrseus supports Linux, macOS, and Windows.
To install just Pyrseus and no plugins for 3rd party executors, run:
python -m pip install pyrseus
To ensure that the [ipyparallel](https://ipyparallel.readthedocs.io),
[loky](https://loky.readthedocs.io), and/or
[mpi4py](https://mpi4py.readthedocs.io) plugins are also ready to use, run a
command like the following, removing the names of any plugins you don't need::
python -m pip install 'pyrseus[ipyparallel,loky,mpi4py]'
Note that Pyrseus will auto-detect those packages, so if they're installed
through other means, then the relevant Pyrseus plugins will be automatically
enabled.
For additional instructions, see the [installation
guide](https://pyrseus.readthedocs.io/en/latest/install.html).
Full Documentation
------------------
For full documenation, see the [Pyrseus
Documentation](https://pyrseus.readthedocs.io/). It includes installation
instructions, a detailed summary of all of the executor plugins, guidance for
writing your own plugins, API documenation, and several notebooks showing
example use cases.
Raw data
{
"_id": null,
"home_page": null,
"name": "pyrseus",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": "Executor, ExecutorCtx, InlineExecutor, NoCatchExecutor, concurrent.futures, executor",
"author": "Gerald Dalley",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/4e/f6/512e4e4c9d67ffe533bfd35d55bcdd30c808a9d36fa15e024e8c1ab310eb/pyrseus-0.1.0.tar.gz",
"platform": null,
"description": "Pyrseus: Serial Executors and the `ExecutorCtx` Factory\n======================================================\n\nPyrseus extends Python's `concurrent.futures` asynchronous and concurrent\nprogramming package with\n\n - a collection of non-concurrent executors for light workloads and\n troubleshooting,\n - `ExecutorCtx`, a factory for easily switching between different executors,\n and\n - a collection of ready-built `ExecutorCtx` plugins, supporting executors from\n [concurrent.futures](https://docs.python.org/3/library/concurrent.futures.html),\n [ipyparallel](https://ipyparallel.readthedocs.io),\n [loky](https://loky.readthedocs.io), [mpi4py](https://mpi4py.readthedocs.io),\n and itself. Where relevant, optional\n [cloudpickle](https://github.com/cloudpipe/cloudpickle)-enhanced plugins are\n also provided.\n\nInstallation\n------------\n\nPyrseus supports Linux, macOS, and Windows.\n\nTo install just Pyrseus and no plugins for 3rd party executors, run:\n\n python -m pip install pyrseus\n\nTo ensure that the [ipyparallel](https://ipyparallel.readthedocs.io),\n[loky](https://loky.readthedocs.io), and/or\n[mpi4py](https://mpi4py.readthedocs.io) plugins are also ready to use, run a\ncommand like the following, removing the names of any plugins you don't need::\n\n python -m pip install 'pyrseus[ipyparallel,loky,mpi4py]'\n\nNote that Pyrseus will auto-detect those packages, so if they're installed\nthrough other means, then the relevant Pyrseus plugins will be automatically\nenabled.\n\nFor additional instructions, see the [installation\nguide](https://pyrseus.readthedocs.io/en/latest/install.html).\n\nFull Documentation\n------------------\n\nFor full documenation, see the [Pyrseus\nDocumentation](https://pyrseus.readthedocs.io/). It includes installation\ninstructions, a detailed summary of all of the executor plugins, guidance for\nwriting your own plugins, API documenation, and several notebooks showing\nexample use cases.\n",
"bugtrack_url": null,
"license": null,
"summary": "ExecutorCtx factory, its plugins, and various serial Executors",
"version": "0.1.0",
"project_urls": {
"Homepage": "https://github.com/dalleyg/pyrseus",
"Issues": "https://github.com/dalleyg/pyrseus/issues"
},
"split_keywords": [
"executor",
" executorctx",
" inlineexecutor",
" nocatchexecutor",
" concurrent.futures",
" executor"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "e4df3ba4261089794c5c7031bffa9671da48dd9dc420076461c361382d1de531",
"md5": "60b72a1ee27efaee79c1c17d3616fbb3",
"sha256": "589ef27c1ff3f1165c05bddaf7f09f44700de0da50ce9719cc0b15fca8b1554c"
},
"downloads": -1,
"filename": "pyrseus-0.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "60b72a1ee27efaee79c1c17d3616fbb3",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 59609,
"upload_time": "2024-04-14T18:24:14",
"upload_time_iso_8601": "2024-04-14T18:24:14.971669Z",
"url": "https://files.pythonhosted.org/packages/e4/df/3ba4261089794c5c7031bffa9671da48dd9dc420076461c361382d1de531/pyrseus-0.1.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "4ef6512e4e4c9d67ffe533bfd35d55bcdd30c808a9d36fa15e024e8c1ab310eb",
"md5": "79cb3cfa94800efcf58276c372f3ba93",
"sha256": "0f67495aba1738cff719979c4e4f1de8a0f75ebdaed144c8f20bdb76e81563db"
},
"downloads": -1,
"filename": "pyrseus-0.1.0.tar.gz",
"has_sig": false,
"md5_digest": "79cb3cfa94800efcf58276c372f3ba93",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 81891,
"upload_time": "2024-04-14T18:24:16",
"upload_time_iso_8601": "2024-04-14T18:24:16.848665Z",
"url": "https://files.pythonhosted.org/packages/4e/f6/512e4e4c9d67ffe533bfd35d55bcdd30c808a9d36fa15e024e8c1ab310eb/pyrseus-0.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-04-14 18:24:16",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "dalleyg",
"github_project": "pyrseus",
"travis_ci": false,
"coveralls": true,
"github_actions": true,
"requirements": [],
"lcname": "pyrseus"
}