{ "info": { "author": "Steve Brettschneider", "author_email": "steve@bluehousefamily.com", "bugtrack_url": null, "classifiers": [], "description": "====================\nPython PromiseKeeper\n====================\n\nThis module creates a multi-threaded system that you can submit work to, to be\nexecuted asynchronously. It will return immediately with a Promise that you\ncan periodically check to see if the work is done.\n\nThe main idea is to instantiate an instance of the PromiseKeeper and then\nsubmit requests for it to do work on your behalf. It will schedule your\nrequest to be executed on a thread and return a Promise instance to you.\nYou can look at the Promise to determine the status of the execution.\n\nThe PromiseKeeper will track the results (return value) of your requested\nwork and include it in the Promise that it returned to you. If your work\nrequest raises an exception, the PromiseKeeper will capture the exception\nand include that in the Promise as well.\n\nHere's a quick example:\n\n::\n\n #!/usr/bin/env python\n\n from promise_keeper import PromiseKeeper\n from random import random\n from time import sleep\n\n def slow_square(x):\n sleep(random() * 3)\n return x*x\n\n pk = PromiseKeeper()\n\n # doesn't block\n promise = pk.submit(slow_square, (10,))\n\n # while the promise is being processed\n # you can go on and do other work.\n\n while not promise.is_ready():\n # do other work here.\n print '.',\n\n # Check the result of your work\n print promise.get_result()\n\nMore documentation and examples can be found\n`here `_.\n\nCopyright (c) 2017, Steve Brettschneider.\nLicense: MIT (see LICENSE for details)\n", "description_content_type": null, "docs_url": null, "download_url": "https://github.com/brettschneider/python_promise_keeper/archive/0.3.tar.gz", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/brettschneider/python_promise_keeper", "keywords": "promise,async,threading,aynchronous,simple", "license": "", "maintainer": "", "maintainer_email": "", "name": "promise_keeper", "package_url": "https://pypi.org/project/promise_keeper/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/promise_keeper/", "project_urls": { "Download": "https://github.com/brettschneider/python_promise_keeper/archive/0.3.tar.gz", "Homepage": "https://github.com/brettschneider/python_promise_keeper" }, "release_url": "https://pypi.org/project/promise_keeper/0.3/", "requires_dist": null, "requires_python": "", "summary": "A simple async processing helper", "version": "0.3" }, "last_serial": 2711588, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "a9d97eff920e572282c3e747198489b5", "sha256": "988b77c9c878a58cba8255c59eadd5de7e9dd8cec4e0e793f428108efcdd42d0" }, "downloads": -1, "filename": "promise_keeper-0.1.tar.gz", "has_sig": false, "md5_digest": "a9d97eff920e572282c3e747198489b5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 667, "upload_time": "2017-03-08T21:06:29", "url": "https://files.pythonhosted.org/packages/22/b4/4d848b839eb90195fc93049d723b049a6e3cb5f1567e23566e5f2a06fdf3/promise_keeper-0.1.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "21ee1ccae8a362130af12d75f847ff55", "sha256": "3796d83e124a3989141f7ae323df0cb2876036e4ee5ac119c98d5211e7f9cb9d" }, "downloads": -1, "filename": "promise_keeper-0.2-py2-none-any.whl", "has_sig": false, "md5_digest": "21ee1ccae8a362130af12d75f847ff55", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 4418, "upload_time": "2017-03-09T01:28:48", "url": "https://files.pythonhosted.org/packages/81/17/7988e07eedb404ffc387734a2a80440e7517bf9d6d0ec58dea7de6fd8f9c/promise_keeper-0.2-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cf7f425f0e9121eedca1c133f6e955a1", "sha256": "00c0b99cf0a39178b0aed2d2803748429ad79a6c5e913f0d09474569636d91c1" }, "downloads": -1, "filename": "promise_keeper-0.2.tar.gz", "has_sig": false, "md5_digest": "cf7f425f0e9121eedca1c133f6e955a1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2945, "upload_time": "2017-03-09T01:28:49", "url": "https://files.pythonhosted.org/packages/89/af/1dac336c104ac10dd0d185fd19aa9ce0191594a8e0cabeae8f578dd051a1/promise_keeper-0.2.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "6c286c198e4d28026b8fc41c94b5451f", "sha256": "ff4082f12f14f045a8e0088c07d8650a60b13cdce806a8175bf7565a85154dbc" }, "downloads": -1, "filename": "promise_keeper-0.3-py2-none-any.whl", "has_sig": false, "md5_digest": "6c286c198e4d28026b8fc41c94b5451f", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 4614, "upload_time": "2017-03-17T01:40:39", "url": "https://files.pythonhosted.org/packages/85/b2/392d149fab22ef7fa700774f232ba360c9be2b043e5fd514b1b589acc34b/promise_keeper-0.3-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "67c21f4435216451e974d803a3744f00", "sha256": "10bac5d1ac478344d471f3f7676a0fc0b9ae65d8a06e6ed09d8a7bbdd98de4e2" }, "downloads": -1, "filename": "promise_keeper-0.3.tar.gz", "has_sig": false, "md5_digest": "67c21f4435216451e974d803a3744f00", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3957, "upload_time": "2017-03-17T01:40:41", "url": "https://files.pythonhosted.org/packages/7e/64/9ecc45a801f313d9e12434f2161a617f003d427e654f505142f7094f81f3/promise_keeper-0.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "6c286c198e4d28026b8fc41c94b5451f", "sha256": "ff4082f12f14f045a8e0088c07d8650a60b13cdce806a8175bf7565a85154dbc" }, "downloads": -1, "filename": "promise_keeper-0.3-py2-none-any.whl", "has_sig": false, "md5_digest": "6c286c198e4d28026b8fc41c94b5451f", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 4614, "upload_time": "2017-03-17T01:40:39", "url": "https://files.pythonhosted.org/packages/85/b2/392d149fab22ef7fa700774f232ba360c9be2b043e5fd514b1b589acc34b/promise_keeper-0.3-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "67c21f4435216451e974d803a3744f00", "sha256": "10bac5d1ac478344d471f3f7676a0fc0b9ae65d8a06e6ed09d8a7bbdd98de4e2" }, "downloads": -1, "filename": "promise_keeper-0.3.tar.gz", "has_sig": false, "md5_digest": "67c21f4435216451e974d803a3744f00", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3957, "upload_time": "2017-03-17T01:40:41", "url": "https://files.pythonhosted.org/packages/7e/64/9ecc45a801f313d9e12434f2161a617f003d427e654f505142f7094f81f3/promise_keeper-0.3.tar.gz" } ] }