-----------------------------------------------------------------
multiprocess: better multiprocessing and multithreading in Python
-----------------------------------------------------------------
About Multiprocess
==================
``multiprocess`` is a fork of ``multiprocessing``. ``multiprocess`` extends ``multiprocessing`` to provide enhanced serialization, using `dill`. ``multiprocess`` leverages ``multiprocessing`` to support the spawning of processes using the API of the Python standard library's ``threading`` module. ``multiprocessing`` has been distributed as part of the standard library since Python 2.6.
``multiprocess`` is part of ``pathos``, a Python framework for heterogeneous computing.
``multiprocess`` is in active development, so any user feedback, bug reports, comments,
or suggestions are highly appreciated. A list of issues is located at https://github.com/uqfoundation/multiprocess/issues, with a legacy list maintained at https://uqfoundation.github.io/project/pathos/query.
Major Features
==============
``multiprocess`` enables:
- objects to be transferred between processes using pipes or multi-producer/multi-consumer queues
- objects to be shared between processes using a server process or (for simple data) shared memory
``multiprocess`` provides:
- equivalents of all the synchronization primitives in ``threading``
- a ``Pool`` class to facilitate submitting tasks to worker processes
- enhanced serialization, using ``dill``
Current Release
===============
The latest released version of ``multiprocess`` is available from:
https://pypi.org/project/multiprocess
``multiprocess`` is distributed under a 3-clause BSD license, and is a fork of ``multiprocessing``.
Development Version
===================
You can get the latest development version with all the shiny new features at:
https://github.com/uqfoundation
If you have a new contribution, please submit a pull request.
Installation
============
``multiprocess`` can be installed with ``pip``::
$ pip install multiprocess
For Python 2, a C compiler is required to build the included extension module from source. Python 3 and binary installs do not require a C compiler.
Requirements
============
``multiprocess`` requires:
- ``python`` (or ``pypy``), **>=3.8**
- ``setuptools``, **>=42**
- ``dill``, **>=0.3.9**
Basic Usage
===========
The ``multiprocess.Process`` class follows the API of ``threading.Thread``.
For example ::
from multiprocess import Process, Queue
def f(q):
q.put('hello world')
if __name__ == '__main__':
q = Queue()
p = Process(target=f, args=[q])
p.start()
print (q.get())
p.join()
Synchronization primitives like locks, semaphores and conditions are
available, for example ::
>>> from multiprocess import Condition
>>> c = Condition()
>>> print (c)
<Condition(<RLock(None, 0)>), 0>
>>> c.acquire()
True
>>> print (c)
<Condition(<RLock(MainProcess, 1)>), 0>
One can also use a manager to create shared objects either in shared
memory or in a server process, for example ::
>>> from multiprocess import Manager
>>> manager = Manager()
>>> l = manager.list(range(10))
>>> l.reverse()
>>> print (l)
[9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
>>> print (repr(l))
<Proxy[list] object at 0x00E1B3B0>
Tasks can be offloaded to a pool of worker processes in various ways,
for example ::
>>> from multiprocess import Pool
>>> def f(x): return x*x
...
>>> p = Pool(4)
>>> result = p.map_async(f, range(10))
>>> print (result.get(timeout=1))
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
When ``dill`` is installed, serialization is extended to most objects,
for example ::
>>> from multiprocess import Pool
>>> p = Pool(4)
>>> print (p.map(lambda x: (lambda y:y**2)(x) + x, xrange(10)))
[0, 2, 6, 12, 20, 30, 42, 56, 72, 90]
More Information
================
Probably the best way to get started is to look at the documentation at
http://multiprocess.rtfd.io. Also see ``multiprocess.tests`` for scripts that
demonstrate how ``multiprocess`` can be used to leverge multiple processes
to execute Python in parallel. You can run the test suite with
``python -m multiprocess.tests``. As ``multiprocess`` conforms to the
``multiprocessing`` interface, the examples and documentation found at
http://docs.python.org/library/multiprocessing.html also apply to
``multiprocess`` if one will ``import multiprocessing as multiprocess``.
See https://github.com/uqfoundation/multiprocess/tree/master/py3.12/examples
for a set of examples that demonstrate some basic use cases and benchmarking
for running Python code in parallel. Please feel free to submit a ticket on
github, or ask a question on stackoverflow (**@Mike McKerns**). If you would
like to share how you use ``multiprocess`` in your work, please send an email
(to **mmckerns at uqfoundation dot org**).
Citation
========
If you use ``multiprocess`` to do research that leads to publication, we ask that you
acknowledge use of ``multiprocess`` by citing the following in your publication::
M.M. McKerns, L. Strand, T. Sullivan, A. Fang, M.A.G. Aivazis,
"Building a framework for predictive science", Proceedings of
the 10th Python in Science Conference, 2011;
http://arxiv.org/pdf/1202.1056
Michael McKerns and Michael Aivazis,
"pathos: a framework for heterogeneous computing", 2010- ;
https://uqfoundation.github.io/project/pathos
Please see https://uqfoundation.github.io/project/pathos or
http://arxiv.org/pdf/1202.1056 for further information.
Raw data
{
"_id": null,
"home_page": "https://github.com/uqfoundation/multiprocess",
"name": "multiprocess",
"maintainer": "Mike McKerns",
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": "mmckerns@uqfoundation.org",
"keywords": null,
"author": "Mike McKerns",
"author_email": "mmckerns@uqfoundation.org",
"download_url": "https://files.pythonhosted.org/packages/e9/34/1acca6e18697017ad5c8b45279b59305d660ecf2fbed13e5f406f69890e4/multiprocess-0.70.17.tar.gz",
"platform": "Linux",
"description": "-----------------------------------------------------------------\nmultiprocess: better multiprocessing and multithreading in Python\n-----------------------------------------------------------------\n\nAbout Multiprocess\n==================\n\n``multiprocess`` is a fork of ``multiprocessing``. ``multiprocess`` extends ``multiprocessing`` to provide enhanced serialization, using `dill`. ``multiprocess`` leverages ``multiprocessing`` to support the spawning of processes using the API of the Python standard library's ``threading`` module. ``multiprocessing`` has been distributed as part of the standard library since Python 2.6.\n\n``multiprocess`` is part of ``pathos``, a Python framework for heterogeneous computing.\n``multiprocess`` is in active development, so any user feedback, bug reports, comments,\nor suggestions are highly appreciated. A list of issues is located at https://github.com/uqfoundation/multiprocess/issues, with a legacy list maintained at https://uqfoundation.github.io/project/pathos/query.\n\n\nMajor Features\n==============\n\n``multiprocess`` enables:\n\n - objects to be transferred between processes using pipes or multi-producer/multi-consumer queues\n - objects to be shared between processes using a server process or (for simple data) shared memory\n\n``multiprocess`` provides:\n\n - equivalents of all the synchronization primitives in ``threading``\n - a ``Pool`` class to facilitate submitting tasks to worker processes\n - enhanced serialization, using ``dill``\n\n\nCurrent Release\n===============\n\nThe latest released version of ``multiprocess`` is available from:\n\n https://pypi.org/project/multiprocess\n\n``multiprocess`` is distributed under a 3-clause BSD license, and is a fork of ``multiprocessing``.\n\n\nDevelopment Version\n===================\n\nYou can get the latest development version with all the shiny new features at:\n\n https://github.com/uqfoundation\n\nIf you have a new contribution, please submit a pull request.\n\n\nInstallation\n============\n\n``multiprocess`` can be installed with ``pip``::\n\n $ pip install multiprocess\n\nFor Python 2, a C compiler is required to build the included extension module from source. Python 3 and binary installs do not require a C compiler.\n\n\nRequirements\n============\n\n``multiprocess`` requires:\n\n - ``python`` (or ``pypy``), **>=3.8**\n - ``setuptools``, **>=42**\n - ``dill``, **>=0.3.9**\n\n\nBasic Usage\n===========\n\nThe ``multiprocess.Process`` class follows the API of ``threading.Thread``.\nFor example ::\n\n from multiprocess import Process, Queue\n\n def f(q):\n q.put('hello world')\n\n if __name__ == '__main__':\n q = Queue()\n p = Process(target=f, args=[q])\n p.start()\n print (q.get())\n p.join()\n\nSynchronization primitives like locks, semaphores and conditions are\navailable, for example ::\n\n >>> from multiprocess import Condition\n >>> c = Condition()\n >>> print (c)\n <Condition(<RLock(None, 0)>), 0>\n >>> c.acquire()\n True\n >>> print (c)\n <Condition(<RLock(MainProcess, 1)>), 0>\n\nOne can also use a manager to create shared objects either in shared\nmemory or in a server process, for example ::\n\n >>> from multiprocess import Manager\n >>> manager = Manager()\n >>> l = manager.list(range(10))\n >>> l.reverse()\n >>> print (l)\n [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]\n >>> print (repr(l))\n <Proxy[list] object at 0x00E1B3B0>\n\nTasks can be offloaded to a pool of worker processes in various ways,\nfor example ::\n\n >>> from multiprocess import Pool\n >>> def f(x): return x*x\n ...\n >>> p = Pool(4)\n >>> result = p.map_async(f, range(10))\n >>> print (result.get(timeout=1))\n [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]\n\nWhen ``dill`` is installed, serialization is extended to most objects,\nfor example ::\n\n >>> from multiprocess import Pool\n >>> p = Pool(4)\n >>> print (p.map(lambda x: (lambda y:y**2)(x) + x, xrange(10)))\n [0, 2, 6, 12, 20, 30, 42, 56, 72, 90]\n\n\nMore Information\n================\n\nProbably the best way to get started is to look at the documentation at\nhttp://multiprocess.rtfd.io. Also see ``multiprocess.tests`` for scripts that\ndemonstrate how ``multiprocess`` can be used to leverge multiple processes\nto execute Python in parallel. You can run the test suite with\n``python -m multiprocess.tests``. As ``multiprocess`` conforms to the\n``multiprocessing`` interface, the examples and documentation found at\nhttp://docs.python.org/library/multiprocessing.html also apply to\n``multiprocess`` if one will ``import multiprocessing as multiprocess``.\nSee https://github.com/uqfoundation/multiprocess/tree/master/py3.12/examples\nfor a set of examples that demonstrate some basic use cases and benchmarking\nfor running Python code in parallel. Please feel free to submit a ticket on\ngithub, or ask a question on stackoverflow (**@Mike McKerns**). If you would\nlike to share how you use ``multiprocess`` in your work, please send an email\n(to **mmckerns at uqfoundation dot org**).\n\n\nCitation\n========\n\nIf you use ``multiprocess`` to do research that leads to publication, we ask that you\nacknowledge use of ``multiprocess`` by citing the following in your publication::\n\n M.M. McKerns, L. Strand, T. Sullivan, A. Fang, M.A.G. Aivazis,\n \"Building a framework for predictive science\", Proceedings of\n the 10th Python in Science Conference, 2011;\n http://arxiv.org/pdf/1202.1056\n\n Michael McKerns and Michael Aivazis,\n \"pathos: a framework for heterogeneous computing\", 2010- ;\n https://uqfoundation.github.io/project/pathos\n\nPlease see https://uqfoundation.github.io/project/pathos or\nhttp://arxiv.org/pdf/1202.1056 for further information.\n",
"bugtrack_url": null,
"license": "BSD-3-Clause",
"summary": "better multiprocessing and multithreading in Python",
"version": "0.70.17",
"project_urls": {
"Bug Tracker": "https://github.com/uqfoundation/multiprocess/issues",
"Documentation": "http://multiprocess.rtfd.io",
"Download": "https://pypi.org/project/multiprocess/#files",
"Homepage": "https://github.com/uqfoundation/multiprocess",
"Source Code": "https://github.com/uqfoundation/multiprocess"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "f297e57eaa8a4dc4036460d13162470eb0da520e6496a90b943529cf1ca40ebd",
"md5": "11f74243bd3b53dde9712d51a4f5e77b",
"sha256": "7ddb24e5bcdb64e90ec5543a1f05a39463068b6d3b804aa3f2a4e16ec28562d6"
},
"downloads": -1,
"filename": "multiprocess-0.70.17-pp310-pypy310_pp73-macosx_10_15_x86_64.whl",
"has_sig": false,
"md5_digest": "11f74243bd3b53dde9712d51a4f5e77b",
"packagetype": "bdist_wheel",
"python_version": "pp310",
"requires_python": ">=3.8",
"size": 135007,
"upload_time": "2024-09-30T18:05:45",
"upload_time_iso_8601": "2024-09-30T18:05:45.421323Z",
"url": "https://files.pythonhosted.org/packages/f2/97/e57eaa8a4dc4036460d13162470eb0da520e6496a90b943529cf1ca40ebd/multiprocess-0.70.17-pp310-pypy310_pp73-macosx_10_15_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "8f0abb06ea45e5b400cd9944e05878fdbb9016ba78ffb9190c541eec9c8e8380",
"md5": "b7116987ac38c0d35b5b3b7b3bd120cc",
"sha256": "d729f55198a3579f6879766a6d9b72b42d4b320c0dcb7844afb774d75b573c62"
},
"downloads": -1,
"filename": "multiprocess-0.70.17-pp310-pypy310_pp73-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "b7116987ac38c0d35b5b3b7b3bd120cc",
"packagetype": "bdist_wheel",
"python_version": "pp310",
"requires_python": ">=3.8",
"size": 135008,
"upload_time": "2024-09-30T18:05:46",
"upload_time_iso_8601": "2024-09-30T18:05:46.711663Z",
"url": "https://files.pythonhosted.org/packages/8f/0a/bb06ea45e5b400cd9944e05878fdbb9016ba78ffb9190c541eec9c8e8380/multiprocess-0.70.17-pp310-pypy310_pp73-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "20e3db48b10f0a25569c5c3a20288d82f9677cb312bccbd1da16cf8fb759649f",
"md5": "3bc09e2d9c2bf4c53bc9a289bd6d838f",
"sha256": "c2c82d0375baed8d8dd0d8c38eb87c5ae9c471f8e384ad203a36f095ee860f67"
},
"downloads": -1,
"filename": "multiprocess-0.70.17-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl",
"has_sig": false,
"md5_digest": "3bc09e2d9c2bf4c53bc9a289bd6d838f",
"packagetype": "bdist_wheel",
"python_version": "pp310",
"requires_python": ">=3.8",
"size": 135012,
"upload_time": "2024-09-30T18:05:48",
"upload_time_iso_8601": "2024-09-30T18:05:48.073887Z",
"url": "https://files.pythonhosted.org/packages/20/e3/db48b10f0a25569c5c3a20288d82f9677cb312bccbd1da16cf8fb759649f/multiprocess-0.70.17-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "2924a0be32891f474f58adb1f732c6c7e1eb68d932920168a517a3939c7193ea",
"md5": "8ff34c6d4c55b1bd105e9fc29ab68018",
"sha256": "a22a6b1a482b80eab53078418bb0f7025e4f7d93cc8e1f36481477a023884861"
},
"downloads": -1,
"filename": "multiprocess-0.70.17-pp38-pypy38_pp73-macosx_10_9_arm64.whl",
"has_sig": false,
"md5_digest": "8ff34c6d4c55b1bd105e9fc29ab68018",
"packagetype": "bdist_wheel",
"python_version": "pp38",
"requires_python": ">=3.8",
"size": 132807,
"upload_time": "2024-09-30T18:05:49",
"upload_time_iso_8601": "2024-09-30T18:05:49.549291Z",
"url": "https://files.pythonhosted.org/packages/29/24/a0be32891f474f58adb1f732c6c7e1eb68d932920168a517a3939c7193ea/multiprocess-0.70.17-pp38-pypy38_pp73-macosx_10_9_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "38f067f2ae380115f43e8f2cb04bcd7d784841ee485be4ba98d88425d5e02e26",
"md5": "37a8a480fca19b0f810d120eb8ae4b60",
"sha256": "349525099a0c9ac5936f0488b5ee73199098dac3ac899d81d326d238f9fd3ccd"
},
"downloads": -1,
"filename": "multiprocess-0.70.17-pp38-pypy38_pp73-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "37a8a480fca19b0f810d120eb8ae4b60",
"packagetype": "bdist_wheel",
"python_version": "pp38",
"requires_python": ">=3.8",
"size": 132808,
"upload_time": "2024-09-30T18:05:50",
"upload_time_iso_8601": "2024-09-30T18:05:50.877551Z",
"url": "https://files.pythonhosted.org/packages/38/f0/67f2ae380115f43e8f2cb04bcd7d784841ee485be4ba98d88425d5e02e26/multiprocess-0.70.17-pp38-pypy38_pp73-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "c1bcf85768d4d9889219e69aae5c94c333a2e56c9929befc941d3206648194b9",
"md5": "aaa4ad26bcb7eeff7ad04d2e0c1659bf",
"sha256": "27b8409c02b5dd89d336107c101dfbd1530a2cd4fd425fc27dcb7adb6e0b47bf"
},
"downloads": -1,
"filename": "multiprocess-0.70.17-pp38-pypy38_pp73-manylinux_2_28_x86_64.whl",
"has_sig": false,
"md5_digest": "aaa4ad26bcb7eeff7ad04d2e0c1659bf",
"packagetype": "bdist_wheel",
"python_version": "pp38",
"requires_python": ">=3.8",
"size": 135095,
"upload_time": "2024-09-30T18:05:52",
"upload_time_iso_8601": "2024-09-30T18:05:52.312106Z",
"url": "https://files.pythonhosted.org/packages/c1/bc/f85768d4d9889219e69aae5c94c333a2e56c9929befc941d3206648194b9/multiprocess-0.70.17-pp38-pypy38_pp73-manylinux_2_28_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "60a13359dd7d4ecee40ce05f952bef3737075d0d1cccab04b59e732dac26534c",
"md5": "c06fdbe100f5c61903adbe8b27a8cc2e",
"sha256": "2ea0939b0f4760a16a548942c65c76ff5afd81fbf1083c56ae75e21faf92e426"
},
"downloads": -1,
"filename": "multiprocess-0.70.17-pp39-pypy39_pp73-macosx_10_13_arm64.whl",
"has_sig": false,
"md5_digest": "c06fdbe100f5c61903adbe8b27a8cc2e",
"packagetype": "bdist_wheel",
"python_version": "pp39",
"requires_python": ">=3.8",
"size": 133534,
"upload_time": "2024-09-30T18:05:53",
"upload_time_iso_8601": "2024-09-30T18:05:53.747675Z",
"url": "https://files.pythonhosted.org/packages/60/a1/3359dd7d4ecee40ce05f952bef3737075d0d1cccab04b59e732dac26534c/multiprocess-0.70.17-pp39-pypy39_pp73-macosx_10_13_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "127359682eecafc2c7880141a7b9c0cf65d6491ffd67a2a8453396976f2a4f33",
"md5": "80cfb83cd3a5c5c109e9dcc6777fb81e",
"sha256": "2b12e081df87ab755190e227341b2c3b17ee6587e9c82fecddcbe6aa812cd7f7"
},
"downloads": -1,
"filename": "multiprocess-0.70.17-pp39-pypy39_pp73-macosx_10_13_x86_64.whl",
"has_sig": false,
"md5_digest": "80cfb83cd3a5c5c109e9dcc6777fb81e",
"packagetype": "bdist_wheel",
"python_version": "pp39",
"requires_python": ">=3.8",
"size": 133532,
"upload_time": "2024-09-30T18:05:55",
"upload_time_iso_8601": "2024-09-30T18:05:55.075373Z",
"url": "https://files.pythonhosted.org/packages/12/73/59682eecafc2c7880141a7b9c0cf65d6491ffd67a2a8453396976f2a4f33/multiprocess-0.70.17-pp39-pypy39_pp73-macosx_10_13_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "d6beefe661a064d9348bcc4a21bcdb6c8c02a2ab61ec337a70fbdeaeb75693e0",
"md5": "45a0f9138eebc321020e59b94a845fc3",
"sha256": "a0f01cd9d079af7a8296f521dc03859d1a414d14c1e2b6e676ef789333421c95"
},
"downloads": -1,
"filename": "multiprocess-0.70.17-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl",
"has_sig": false,
"md5_digest": "45a0f9138eebc321020e59b94a845fc3",
"packagetype": "bdist_wheel",
"python_version": "pp39",
"requires_python": ">=3.8",
"size": 133535,
"upload_time": "2024-09-30T18:05:56",
"upload_time_iso_8601": "2024-09-30T18:05:56.856081Z",
"url": "https://files.pythonhosted.org/packages/d6/be/efe661a064d9348bcc4a21bcdb6c8c02a2ab61ec337a70fbdeaeb75693e0/multiprocess-0.70.17-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e7a939cf856d03690af6fd570cf40331f1f79acdbb3132a9c35d2c5002f7f30b",
"md5": "1cdc0bae6a5c7f38a58cc2fbe03746a1",
"sha256": "38357ca266b51a2e22841b755d9a91e4bb7b937979a54d411677111716c32744"
},
"downloads": -1,
"filename": "multiprocess-0.70.17-py310-none-any.whl",
"has_sig": false,
"md5_digest": "1cdc0bae6a5c7f38a58cc2fbe03746a1",
"packagetype": "bdist_wheel",
"python_version": "py310",
"requires_python": ">=3.8",
"size": 134830,
"upload_time": "2024-09-30T18:05:58",
"upload_time_iso_8601": "2024-09-30T18:05:58.145230Z",
"url": "https://files.pythonhosted.org/packages/e7/a9/39cf856d03690af6fd570cf40331f1f79acdbb3132a9c35d2c5002f7f30b/multiprocess-0.70.17-py310-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "b2078cbb75d6cfbe8712d8f7f6a5615f083c6e710ab916b748fbb20373ddb142",
"md5": "1eeaf7b155d27baedba4502403cd9b5d",
"sha256": "2884701445d0177aec5bd5f6ee0df296773e4fb65b11903b94c613fb46cfb7d1"
},
"downloads": -1,
"filename": "multiprocess-0.70.17-py311-none-any.whl",
"has_sig": false,
"md5_digest": "1eeaf7b155d27baedba4502403cd9b5d",
"packagetype": "bdist_wheel",
"python_version": "py311",
"requires_python": ">=3.8",
"size": 144346,
"upload_time": "2024-09-30T18:05:59",
"upload_time_iso_8601": "2024-09-30T18:05:59.272806Z",
"url": "https://files.pythonhosted.org/packages/b2/07/8cbb75d6cfbe8712d8f7f6a5615f083c6e710ab916b748fbb20373ddb142/multiprocess-0.70.17-py311-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "a469d3f343a61a2f86ef10ed7865a26beda7c71554136ce187b0384b1c2c9ca3",
"md5": "239e414db63e1a088895d5c4acc12f9c",
"sha256": "2818af14c52446b9617d1b0755fa70ca2f77c28b25ed97bdaa2c69a22c47b46c"
},
"downloads": -1,
"filename": "multiprocess-0.70.17-py312-none-any.whl",
"has_sig": false,
"md5_digest": "239e414db63e1a088895d5c4acc12f9c",
"packagetype": "bdist_wheel",
"python_version": "py312",
"requires_python": ">=3.8",
"size": 147990,
"upload_time": "2024-09-30T18:06:00",
"upload_time_iso_8601": "2024-09-30T18:06:00.634325Z",
"url": "https://files.pythonhosted.org/packages/a4/69/d3f343a61a2f86ef10ed7865a26beda7c71554136ce187b0384b1c2c9ca3/multiprocess-0.70.17-py312-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "c8b72e9a4fcd871b81e1f2a812cd5c6fb52ad1e8da7bf0d7646c55eaae220484",
"md5": "b921e0f51f378369030bb72ec374fc0c",
"sha256": "20c28ca19079a6c879258103a6d60b94d4ffe2d9da07dda93fb1c8bc6243f522"
},
"downloads": -1,
"filename": "multiprocess-0.70.17-py313-none-any.whl",
"has_sig": false,
"md5_digest": "b921e0f51f378369030bb72ec374fc0c",
"packagetype": "bdist_wheel",
"python_version": "py313",
"requires_python": ">=3.8",
"size": 149843,
"upload_time": "2024-09-30T18:06:02",
"upload_time_iso_8601": "2024-09-30T18:06:02.261979Z",
"url": "https://files.pythonhosted.org/packages/c8/b7/2e9a4fcd871b81e1f2a812cd5c6fb52ad1e8da7bf0d7646c55eaae220484/multiprocess-0.70.17-py313-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "aed7fd7a092fc0ab1845a1a97ca88e61b9b7cc2e9d6fcf0ed24e9480590c2336",
"md5": "56bfd4352e2526a2491786437cefdbae",
"sha256": "1d52f068357acd1e5bbc670b273ef8f81d57863235d9fbf9314751886e141968"
},
"downloads": -1,
"filename": "multiprocess-0.70.17-py38-none-any.whl",
"has_sig": false,
"md5_digest": "56bfd4352e2526a2491786437cefdbae",
"packagetype": "bdist_wheel",
"python_version": "py38",
"requires_python": ">=3.8",
"size": 132635,
"upload_time": "2024-09-30T18:06:03",
"upload_time_iso_8601": "2024-09-30T18:06:03.878499Z",
"url": "https://files.pythonhosted.org/packages/ae/d7/fd7a092fc0ab1845a1a97ca88e61b9b7cc2e9d6fcf0ed24e9480590c2336/multiprocess-0.70.17-py38-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "f9410618ac724b8a56254962c143759e04fa01c73b37aa69dd433f16643bd38b",
"md5": "7db43aaa13a93e5a0dc6cad7caf6ee0f",
"sha256": "c3feb874ba574fbccfb335980020c1ac631fbf2a3f7bee4e2042ede62558a021"
},
"downloads": -1,
"filename": "multiprocess-0.70.17-py39-none-any.whl",
"has_sig": false,
"md5_digest": "7db43aaa13a93e5a0dc6cad7caf6ee0f",
"packagetype": "bdist_wheel",
"python_version": "py39",
"requires_python": ">=3.8",
"size": 133359,
"upload_time": "2024-09-30T18:06:05",
"upload_time_iso_8601": "2024-09-30T18:06:05.627184Z",
"url": "https://files.pythonhosted.org/packages/f9/41/0618ac724b8a56254962c143759e04fa01c73b37aa69dd433f16643bd38b/multiprocess-0.70.17-py39-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e9341acca6e18697017ad5c8b45279b59305d660ecf2fbed13e5f406f69890e4",
"md5": "25990efb2cc669639df2535425c9193a",
"sha256": "4ae2f11a3416809ebc9a48abfc8b14ecce0652a0944731a1493a3c1ba44ff57a"
},
"downloads": -1,
"filename": "multiprocess-0.70.17.tar.gz",
"has_sig": false,
"md5_digest": "25990efb2cc669639df2535425c9193a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 1785744,
"upload_time": "2024-09-30T18:06:07",
"upload_time_iso_8601": "2024-09-30T18:06:07.718928Z",
"url": "https://files.pythonhosted.org/packages/e9/34/1acca6e18697017ad5c8b45279b59305d660ecf2fbed13e5f406f69890e4/multiprocess-0.70.17.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-09-30 18:06:07",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "uqfoundation",
"github_project": "multiprocess",
"travis_ci": true,
"coveralls": true,
"github_actions": false,
"tox": true,
"lcname": "multiprocess"
}