{ "info": { "author": "Dave Chevell", "author_email": "chevell@gmail.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "Flask-Executor\n==============\n\n[![Build Status](https://travis-ci.org/dchevell/flask-executor.svg?branch=master)](https://travis-ci.org/dchevell/flask-executor)\n[![Coverage Status](https://coveralls.io/repos/github/dchevell/flask-executor/badge.svg)](https://coveralls.io/github/dchevell/flask-executor)\n[![PyPI Version](https://img.shields.io/pypi/v/Flask-Executor.svg)](https://pypi.python.org/pypi/Flask-Executor)\n[![GitHub license](https://img.shields.io/github/license/dchevell/flask-executor.svg)](https://github.com/dchevell/flask-executor/blob/master/LICENSE)\n\nSometimes you need a simple task queue without the overhead of separate worker processes or powerful-but-complex libraries beyond your requirements. Flask-Executor is an easy to use wrapper for the `concurrent.futures` module that lets you initialise and configure executors via common Flask application patterns. It's a great way to get up and running fast with a lightweight in-process task queue.\n\nInstallation\n------------\n\nFlask-Executor is available on PyPI and can be installed with:\n\n pip install flask-executor\n\n\nQuick start\n-----------\n\nHere's a quick example of using Flask-Executor inside your Flask application:\n\n```python\nfrom flask import Flask\nfrom flask_executor import Executor\n\napp = Flask(__name__)\n\nexecutor = Executor(app)\n\n\ndef send_email(recipient, subject, body):\n # Magic to send an email\n return True\n\n\n@app.route('/signup')\ndef signup():\n # Do signup form\n executor.submit(send_email, recipient, subject, body)\n```\n\n\nContexts\n--------\n\nWhen calling `submit()` or `map()` Flask-Executor will wrap `ThreadPoolExecutor` callables with a\ncopy of both the current application context and current request context. Code that must be run in\nthese contexts or that depends on information or configuration stored in `flask.current_app`,\n`flask.request` or `flask.g` can be submitted to the executor without modification.\n\nNote: due to limitations in Python's default object serialisation and a lack of shared memory space between subprocesses, contexts cannot be pushed to `ProcessPoolExecutor()` workers. \n\n\nFutures\n-------\n\nYou may want to preserve access to Futures returned from the executor, so that you can retrieve the\nresults in a different part of your application. Flask-Executor allows Futures to be stored within\nthe executor itself and provides methods for querying and returning them in different parts of your\napp::\n\n```python\n@app.route('/start-task')\ndef start_task():\n executor.submit_stored('calc_power', pow, 323, 1235)\n return jsonify({'result':'success'})\n\n@app.route('/get-result')\ndef get_result():\n if not executor.futures.done('calc_power'):\n return jsonify({'status': executor.futures._state('calc_power')})\n future = executor.futures.pop('calc_power')\n return jsonify({'status': done, 'result': future.result()})\n```\n\n\nDecoration\n----------\n\nFlask-Executor lets you decorate methods in the same style as distributed task queues like\nCelery:\n\n```python\n@executor.job\ndef fib(n):\n if n <= 2:\n return 1\n else:\n return fib(n-1) + fib(n-2)\n\n@app.route('/decorate_fib')\ndef decorate_fib():\n fib.submit(5)\n fib.submit_stored('fibonacci', 5)\n fib.map(range(1, 6))\n return 'OK'\n```\n\n\nDefault Callbacks\n-----------------\n\nFuture objects can have callbacks attached by using `Future.add_done_callback`. Flask-Executor\nlets you specify default callbacks that will be applied to all new futures created by the executor:\n\n```python\ndef some_callback(future):\n # do something with future\n\nexecutor.add_default_done_callback(some_callback)\n\n# Callback will be added to the below task automatically\nexecutor.submit(pow, 323, 1235)\n```\n\n\nPropagate Exceptions\n--------------------\n\nNormally any exceptions thrown by background threads or processes will be swallowed unless explicitly\nchecked for. To instead surface all exceptions thrown by background tasks, Flask-Executor can add\na special default callback that raises any exceptions thrown by tasks submitted to the executor::\n\n```python\napp.config['EXECUTOR_PROPAGATE_EXCEPTIONS'] = True \n```\n\n\nDocumentation\n-------------\n\nCheck out the full documentation at [flask-executor.readthedocs.io](https://flask-executor.readthedocs.io)!\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/dchevell/flask-executor", "keywords": "flask,concurrent.futures", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "Flask-Executor", "package_url": "https://pypi.org/project/Flask-Executor/", "platform": "", "project_url": "https://pypi.org/project/Flask-Executor/", "project_urls": { "Homepage": "https://github.com/dchevell/flask-executor" }, "release_url": "https://pypi.org/project/Flask-Executor/0.9.3/", "requires_dist": [ "Flask", "futures (>=3.1.1) ; python_version == \"2.7\"" ], "requires_python": "", "summary": "An easy to use Flask wrapper for concurrent.futures", "version": "0.9.3" }, "last_serial": 5663210, "releases": { "0.1.1": [ { "comment_text": "", "digests": { "md5": "2fa82bf4e8480e4c7bd8c7b7c0d95941", "sha256": "3ed20d63f5d22e9fcd77ae8159cb00ced69fdfa792d74202d9a29442e2c3d150" }, "downloads": -1, "filename": "Flask_Executor-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "2fa82bf4e8480e4c7bd8c7b7c0d95941", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.3.0", "size": 2137, "upload_time": "2018-08-19T06:41:39", "url": "https://files.pythonhosted.org/packages/b0/33/48002e308173bc995713cc6bb9938603ab180ec2bd66f80cf4f93af7963c/Flask_Executor-0.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "50fb8c0fd9a8fbfb30ec5e7cb2047780", "sha256": "72c72c5135cc2112cd3324dde18fd2493b3747ef4eb7a8836631dee1b738f17e" }, "downloads": -1, "filename": "Flask-Executor-0.1.1.tar.gz", "has_sig": false, "md5_digest": "50fb8c0fd9a8fbfb30ec5e7cb2047780", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.3.0", "size": 1788, "upload_time": "2018-08-19T06:41:40", "url": "https://files.pythonhosted.org/packages/d6/c1/8e15ae748a5c907ebe9634ec376495acc549b6a5f4580c089cabc05db694/Flask-Executor-0.1.1.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "80a13113a8c49892ff97e906ab12f666", "sha256": "21dabee9032cdbab1b010185982ef8df8f8b41114a54c01fd93578df2c7640b1" }, "downloads": -1, "filename": "Flask_Executor-0.1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "80a13113a8c49892ff97e906ab12f666", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.3.0", "size": 2977, "upload_time": "2018-08-19T23:08:20", "url": "https://files.pythonhosted.org/packages/48/e7/09d17e08c0d8a8bfc88a0842caeb942c1fb0bfb59d8ae7c99662545c639a/Flask_Executor-0.1.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "186b94f1eb000973f00581aac74a4789", "sha256": "eb3c9d439ec3a661326a260629eb8a9a2f908e95f6591219262e1df2a074623c" }, "downloads": -1, "filename": "Flask-Executor-0.1.3.tar.gz", "has_sig": false, "md5_digest": "186b94f1eb000973f00581aac74a4789", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.3.0", "size": 2838, "upload_time": "2018-08-19T23:08:21", "url": "https://files.pythonhosted.org/packages/77/11/2235f89167e22e32ad8c36f5ccf89e081103cabc0cf0b8d6d39bb4c1f175/Flask-Executor-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "9322da84d4f000c3e4af990c0c5d2601", "sha256": "4d485ea61182394a8130b3b30ee146dc4a450c0c77de3435e6b1cfd9305abbb3" }, "downloads": -1, "filename": "Flask_Executor-0.1.4-py3-none-any.whl", "has_sig": false, "md5_digest": "9322da84d4f000c3e4af990c0c5d2601", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.3.0", "size": 2956, "upload_time": "2018-08-19T23:38:55", "url": "https://files.pythonhosted.org/packages/7b/1b/fb99f19f7f8ba020cb58d285b5c8ec181b1ec6af613b635d60762b5a8111/Flask_Executor-0.1.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "91b27afb2a899fca9aa960c55c99b954", "sha256": "33f920c3abfa3cbf15be1114e8201fc19aba06ff4501b7b246945fee0ec26a18" }, "downloads": -1, "filename": "Flask-Executor-0.1.4.tar.gz", "has_sig": false, "md5_digest": "91b27afb2a899fca9aa960c55c99b954", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.3.0", "size": 2795, "upload_time": "2018-08-19T23:38:56", "url": "https://files.pythonhosted.org/packages/17/46/bb43d1df5b9d0e251aa5c30fdf1428656e7d6a3949cc90b9ef3ea1e88796/Flask-Executor-0.1.4.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "7b3d97ddd6a2caefe07c87dc0973f8d7", "sha256": "3930e727e8907234b10580a71e6abf257ca7c0eb34edc58ca33069b25b2457d7" }, "downloads": -1, "filename": "Flask_Executor-0.1.5-py3-none-any.whl", "has_sig": false, "md5_digest": "7b3d97ddd6a2caefe07c87dc0973f8d7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.3.0", "size": 2954, "upload_time": "2018-08-20T00:59:57", "url": "https://files.pythonhosted.org/packages/d7/1e/3dac5e5536f357c5a4268b161448105487584bce71d729dbf11cff9435f3/Flask_Executor-0.1.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a5c692535e4ff98453e454e414b270aa", "sha256": "d411886b466a2e89b12c571d3246eead2a5d1821ca89a1e72bea1d440f1e55cb" }, "downloads": -1, "filename": "Flask-Executor-0.1.5.tar.gz", "has_sig": false, "md5_digest": "a5c692535e4ff98453e454e414b270aa", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.3.0", "size": 2907, "upload_time": "2018-08-20T00:59:58", "url": "https://files.pythonhosted.org/packages/44/40/097f964b0ffd80a0ea5961aeac7a7f2704315e5cd5398ba5f0abd2372a5b/Flask-Executor-0.1.5.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "420d9b75756fda7bc71cc8b7dcfd3041", "sha256": "4700199db97ee4e3227eacc173bbb93c7c332b2dc7e127979a377f8441f5ba52" }, "downloads": -1, "filename": "Flask_Executor-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "420d9b75756fda7bc71cc8b7dcfd3041", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.3.0", "size": 3164, "upload_time": "2018-08-22T02:48:49", "url": "https://files.pythonhosted.org/packages/fd/0a/b6644a5d7046d9409093c1e91cebeb82b734fe754afc781010b237bc5304/Flask_Executor-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f1caa8b1b1359ae9726d84c8bc7689e4", "sha256": "32d02db1e4917e3949378711e5644a4d879128fe1a9e21b65c5d6a6f2ffdc091" }, "downloads": -1, "filename": "Flask-Executor-0.2.0.tar.gz", "has_sig": false, "md5_digest": "f1caa8b1b1359ae9726d84c8bc7689e4", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.3.0", "size": 3159, "upload_time": "2018-08-22T02:48:50", "url": "https://files.pythonhosted.org/packages/f0/3b/a83cb66c659ff4abab068991ab00a4057a65c20e4f6011b708c48fdedf6f/Flask-Executor-0.2.0.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "e9275dcac09e0688667e531a4b85a733", "sha256": "de14d138a643b71e8ae283bf8523f1e29d0a56b3c1f3f4cd79a5822a790abe60" }, "downloads": -1, "filename": "Flask_Executor-0.3.0-py3-none-any.whl", "has_sig": false, "md5_digest": "e9275dcac09e0688667e531a4b85a733", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.3.0", "size": 3461, "upload_time": "2018-08-23T04:58:29", "url": "https://files.pythonhosted.org/packages/7c/68/481c8383ea66ad72a06e85b86950c0625b8b76926ae40181b036a503bd32/Flask_Executor-0.3.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "44f0924931faea6476aa85e537a96213", "sha256": "c9c9c0d155f47c20c6d4686e2f8071670e5feaaab10c81c80c3b9a0f6b41c00a" }, "downloads": -1, "filename": "Flask-Executor-0.3.0.tar.gz", "has_sig": false, "md5_digest": "44f0924931faea6476aa85e537a96213", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.3.0", "size": 3459, "upload_time": "2018-08-23T04:58:30", "url": "https://files.pythonhosted.org/packages/38/8b/66b449e7c743760b0c15eb0fe944b0da850dfa3c8825add712420cd24860/Flask-Executor-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "58de81d95de7f467d913da0cd3955577", "sha256": "c2adcec6df0f3cc1fba20b32d4010717fb69d8c66e7f0fa8a8f0f61dfe237b7c" }, "downloads": -1, "filename": "Flask_Executor-0.3.1-py3-none-any.whl", "has_sig": false, "md5_digest": "58de81d95de7f467d913da0cd3955577", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3629, "upload_time": "2018-08-26T14:58:23", "url": "https://files.pythonhosted.org/packages/01/9d/ada6a160463bb72a80a4d25e9b91d6c19348871ae9636fec9f334ecc2cac/Flask_Executor-0.3.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8aa989cccefe643b29e032040ecfb0dd", "sha256": "b2b30231cf30397e69bf7a321fec8c35fc042bacc5a8d68ee126119f8b3b3d1d" }, "downloads": -1, "filename": "Flask-Executor-0.3.1.tar.gz", "has_sig": false, "md5_digest": "8aa989cccefe643b29e032040ecfb0dd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3675, "upload_time": "2018-08-26T14:58:25", "url": "https://files.pythonhosted.org/packages/70/e2/f1aaf194fbf42b9cea2600f9bf39a8b9da45981a5132e35a9ec64acb1203/Flask-Executor-0.3.1.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "164df69d51d03f7bfda4177987813875", "sha256": "9f016a95150ddfdbafa36519c641627fb330a78070ada08385d25388f060f137" }, "downloads": -1, "filename": "Flask_Executor-0.4.0-py3-none-any.whl", "has_sig": false, "md5_digest": "164df69d51d03f7bfda4177987813875", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3684, "upload_time": "2018-09-20T07:56:33", "url": "https://files.pythonhosted.org/packages/d8/e3/6e85f0d90a22c017df41765bf4f073776f8968b0e5863bf0426e93dfd9b5/Flask_Executor-0.4.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a6a14e2fc00d3504589f2a313b146a76", "sha256": "f72cd4858ba47669e08b187dd3b4a0db05b52604039d664e01cb65f068cb892f" }, "downloads": -1, "filename": "Flask-Executor-0.4.0.tar.gz", "has_sig": false, "md5_digest": "a6a14e2fc00d3504589f2a313b146a76", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3729, "upload_time": "2018-09-20T07:56:35", "url": "https://files.pythonhosted.org/packages/0a/f6/123cae75b398ebeb50d19a585ad7075b2a4950aa0bedbd00e80bcebc9f28/Flask-Executor-0.4.0.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "70ad6c9174553458a079e7177212c825", "sha256": "1c00514e7ce2ffdb2102694a90b2d47767de8bce9ced6dcf40d2827ce9e75799" }, "downloads": -1, "filename": "Flask_Executor-0.5.0-py3-none-any.whl", "has_sig": false, "md5_digest": "70ad6c9174553458a079e7177212c825", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3729, "upload_time": "2018-09-20T22:16:44", "url": "https://files.pythonhosted.org/packages/72/79/c8502eb8558a684b14d69519dcb27a00abc8af84f921c781b0d4d86f39bf/Flask_Executor-0.5.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bc5da62a0a422d650c0e5ff6529b172c", "sha256": "ca24c3fa2b997f003f4dae2c1e3e1cede18fc0a6bcc21e807ef6231c38feae56" }, "downloads": -1, "filename": "Flask-Executor-0.5.0.tar.gz", "has_sig": false, "md5_digest": "bc5da62a0a422d650c0e5ff6529b172c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3780, "upload_time": "2018-09-20T22:16:46", "url": "https://files.pythonhosted.org/packages/b6/4c/7cd642470ca307c8bdb02ce2194ab9ecb50d6141fba7e0135a3380f114f3/Flask-Executor-0.5.0.tar.gz" } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "c55cf5a37245cef9cccc5338a933ced5", "sha256": "c890e2a8a0aab79190edb74cbe519b374438cf447ad1749e7ce0fdd6dea7137c" }, "downloads": -1, "filename": "Flask_Executor-0.6.0-py3-none-any.whl", "has_sig": false, "md5_digest": "c55cf5a37245cef9cccc5338a933ced5", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 8125, "upload_time": "2018-10-02T22:38:20", "url": "https://files.pythonhosted.org/packages/e3/8e/8fd533f0d0a6681a9b9729a6fec9310996427d88c55815eab9a16f82dcb2/Flask_Executor-0.6.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "75dd00ebfd9ec1cde6583a3e4968a639", "sha256": "b582fc68755cc49b8ca1b91867955c864cb47e13f5160f42a3bdbdda0915e1d1" }, "downloads": -1, "filename": "Flask-Executor-0.6.0.tar.gz", "has_sig": false, "md5_digest": "75dd00ebfd9ec1cde6583a3e4968a639", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6438, "upload_time": "2018-10-02T22:38:22", "url": "https://files.pythonhosted.org/packages/b2/3b/c790064b7f04ef76280642dac41fbd5704f423eec234755b15fc4bf05892/Flask-Executor-0.6.0.tar.gz" } ], "0.6.1": [ { "comment_text": "", "digests": { "md5": "91f3a3982215056112c85d4ee4f0a3d1", "sha256": "bafae2b830a348452ab62ddb1c845b1b90d5b6f26aee0ffda51c0eb15aae3164" }, "downloads": -1, "filename": "Flask_Executor-0.6.1-py3-none-any.whl", "has_sig": false, "md5_digest": "91f3a3982215056112c85d4ee4f0a3d1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 8182, "upload_time": "2018-10-03T10:53:28", "url": "https://files.pythonhosted.org/packages/73/b6/d723a04738fce5551886d6263fb440e07f2e1c0ac1eda319c7eefa02835c/Flask_Executor-0.6.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d86efb8ca6510978446ef341a3c40e22", "sha256": "faaa064e5b4280d2925fa1d9cbec2bde572562a6b8473f19af082f77feab6f86" }, "downloads": -1, "filename": "Flask-Executor-0.6.1.tar.gz", "has_sig": false, "md5_digest": "d86efb8ca6510978446ef341a3c40e22", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6509, "upload_time": "2018-10-03T10:53:29", "url": "https://files.pythonhosted.org/packages/c6/0b/547ce9bd09f5aa5a2857621998e3bb63ffbabd6afa63228878923fe5a588/Flask-Executor-0.6.1.tar.gz" } ], "0.7.0": [ { "comment_text": "", "digests": { "md5": "d7f99a3ab2d8680155805a49287c2e67", "sha256": "47ecf02617424a5a0930d352fb2a4a9c03e5ff837d58549c8e36c8c6fe2833a8" }, "downloads": -1, "filename": "Flask_Executor-0.7.0-py3-none-any.whl", "has_sig": false, "md5_digest": "d7f99a3ab2d8680155805a49287c2e67", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9352, "upload_time": "2018-11-14T21:40:02", "url": "https://files.pythonhosted.org/packages/3d/a2/2d2ab87841d210fb81945770a52eb396bc066169a3a442b0fbcf5d06ec76/Flask_Executor-0.7.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "86e982cfcad3feed445b4ed809f7cb59", "sha256": "c7ec2d10bbb27a235186c876a88b2be987a1673e85d24526a8d85eec3e71af13" }, "downloads": -1, "filename": "Flask-Executor-0.7.0.tar.gz", "has_sig": false, "md5_digest": "86e982cfcad3feed445b4ed809f7cb59", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7550, "upload_time": "2018-11-14T21:40:05", "url": "https://files.pythonhosted.org/packages/c2/11/f76c9764e5e494fada330bf1668da4ae41442ea798022d61b8403c3d2f2f/Flask-Executor-0.7.0.tar.gz" } ], "0.7.1": [ { "comment_text": "", "digests": { "md5": "2e115c5ea66c14395c7b3edde45ff2ac", "sha256": "df43416fb16c2ba87bbaf8539ea324ec6f5893c9d51e862e03f60e664163ee9d" }, "downloads": -1, "filename": "Flask_Executor-0.7.1-py3-none-any.whl", "has_sig": false, "md5_digest": "2e115c5ea66c14395c7b3edde45ff2ac", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9360, "upload_time": "2018-11-21T19:28:13", "url": "https://files.pythonhosted.org/packages/44/81/b8a9b519c0e3963181874c5035ed81335e0ca7083233e80735381fe0c34b/Flask_Executor-0.7.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2b5d327b259d886134ead2393d795350", "sha256": "453a44fb2a4de40908e2d0d4f42b7e3c43f5307f9a4535562d2c11247e0cd169" }, "downloads": -1, "filename": "Flask-Executor-0.7.1.tar.gz", "has_sig": false, "md5_digest": "2b5d327b259d886134ead2393d795350", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7563, "upload_time": "2018-11-21T19:28:15", "url": "https://files.pythonhosted.org/packages/8f/45/3c963f4762f348d844605201e14d68fe107a039c4f8e2b57bceda0383093/Flask-Executor-0.7.1.tar.gz" } ], "0.8.0": [ { "comment_text": "", "digests": { "md5": "a2c303a5e3630959546173d001174ccb", "sha256": "dccddaa0d99837bc456175bd127a844d1c01372598b9adbbf56602bbf93291bd" }, "downloads": -1, "filename": "Flask_Executor-0.8.0-py3-none-any.whl", "has_sig": false, "md5_digest": "a2c303a5e3630959546173d001174ccb", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10915, "upload_time": "2018-11-24T12:10:05", "url": "https://files.pythonhosted.org/packages/d0/47/2edc870b155cd03b09ce16e42e905e83e83c93d9c64a6dc6af3ff65b1e37/Flask_Executor-0.8.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5327fe25b4e61956b5c9295808655956", "sha256": "cb2b0e357e4c21515b88f73af24576a47a9ddc24d42d5123ed9d9767702845ee" }, "downloads": -1, "filename": "Flask-Executor-0.8.0.tar.gz", "has_sig": false, "md5_digest": "5327fe25b4e61956b5c9295808655956", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8211, "upload_time": "2018-11-24T12:10:07", "url": "https://files.pythonhosted.org/packages/0c/de/30fc92dc6dc31d9c4368b59fa79a56f412e67fbd3f3f30b1626916190082/Flask-Executor-0.8.0.tar.gz" } ], "0.8.1": [ { "comment_text": "", "digests": { "md5": "5e1f3a9934f731b7982201db280727ed", "sha256": "0c78c1a31cbdc20ba22af71b95f7d0861e9ca30bf5b2ed852df6b86e8479a0f6" }, "downloads": -1, "filename": "Flask_Executor-0.8.1-py3-none-any.whl", "has_sig": false, "md5_digest": "5e1f3a9934f731b7982201db280727ed", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10972, "upload_time": "2018-11-24T23:04:09", "url": "https://files.pythonhosted.org/packages/22/02/ee25d06222930dfab65e824dd5ae2c373fa40ee8c38726ab54919fbce292/Flask_Executor-0.8.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9adf636f284c6a60144c1ffd5689c595", "sha256": "33f65d31ec187582301e08fdc921cc3c24750c3dbb1c865449d87d718157f38f" }, "downloads": -1, "filename": "Flask-Executor-0.8.1.tar.gz", "has_sig": false, "md5_digest": "9adf636f284c6a60144c1ffd5689c595", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8254, "upload_time": "2018-11-24T23:04:10", "url": "https://files.pythonhosted.org/packages/0a/41/2a0d2a225e4206cbcdb9f12481052065b72f820a07d2f0a85fdd8bb240a2/Flask-Executor-0.8.1.tar.gz" } ], "0.8.2": [ { "comment_text": "", "digests": { "md5": "a0f919341ef91e8b173112aed6774d2c", "sha256": "40899cf0df91bec2a9205080ea7f106c27af8165437dbdcea5b07faceeb5e5b1" }, "downloads": -1, "filename": "Flask_Executor-0.8.2-py3-none-any.whl", "has_sig": false, "md5_digest": "a0f919341ef91e8b173112aed6774d2c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 11009, "upload_time": "2018-11-26T11:07:37", "url": "https://files.pythonhosted.org/packages/93/69/4c714447e292155cabc95952fb9ac09ae6f296ac300d2d40f301a480aa2b/Flask_Executor-0.8.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3d84cac9fa5611e23e4e145d30b95f04", "sha256": "a62ccad272c8cd912cd7f02b5bff1f4956277c5f09dc99c45d546f3e631ec5bc" }, "downloads": -1, "filename": "Flask-Executor-0.8.2.tar.gz", "has_sig": false, "md5_digest": "3d84cac9fa5611e23e4e145d30b95f04", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8286, "upload_time": "2018-11-26T11:07:38", "url": "https://files.pythonhosted.org/packages/6c/9b/abcd0334f09ba34d3f6d1bf9085429dad428628138dba37f04b8cefb0662/Flask-Executor-0.8.2.tar.gz" } ], "0.8.3": [ { "comment_text": "", "digests": { "md5": "96f79d68e894b55184e47d52f65d5250", "sha256": "fd6301729e82b46736635e458b8f2a9b3b1cef450801c079976eca4eba0bee58" }, "downloads": -1, "filename": "Flask_Executor-0.8.3-py3-none-any.whl", "has_sig": false, "md5_digest": "96f79d68e894b55184e47d52f65d5250", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 11004, "upload_time": "2019-01-10T22:47:26", "url": "https://files.pythonhosted.org/packages/7f/2c/9d8773526d3b89c92bc8fe5baf28c7bc74258478ca8e70e22174506cf617/Flask_Executor-0.8.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3eafd33d77f609bbc2085a1e73839040", "sha256": "705ccd7323e94334456e0143f39c1cf740914bfef6fe34df35833b185fd1d80b" }, "downloads": -1, "filename": "Flask-Executor-0.8.3.tar.gz", "has_sig": false, "md5_digest": "3eafd33d77f609bbc2085a1e73839040", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8307, "upload_time": "2019-01-10T22:47:29", "url": "https://files.pythonhosted.org/packages/90/37/7d98ea5c5b3fe955b89a8a683688f21b66b1ff763a4b92772f7bb1526a13/Flask-Executor-0.8.3.tar.gz" } ], "0.9.0": [ { "comment_text": "", "digests": { "md5": "80eab920c56d7f94a1638224baa35082", "sha256": "bf91db35aebe540ef72ae156d20a2160f051574c73f6dbf13a718c50d17584d7" }, "downloads": -1, "filename": "Flask_Executor-0.9.0-py3-none-any.whl", "has_sig": false, "md5_digest": "80eab920c56d7f94a1638224baa35082", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 11595, "upload_time": "2019-04-08T05:24:37", "url": "https://files.pythonhosted.org/packages/ab/eb/a98841f419055cb133b3b4693d3fcccec2822cdaba7013c50a4db4dbf467/Flask_Executor-0.9.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d3063772514dc9b5d9898f353c5261b1", "sha256": "d2a21f2558a4e69535c7954266b4383a1613de0eca71e6956db682ad21ac7758" }, "downloads": -1, "filename": "Flask-Executor-0.9.0.tar.gz", "has_sig": false, "md5_digest": "d3063772514dc9b5d9898f353c5261b1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8989, "upload_time": "2019-04-08T05:24:38", "url": "https://files.pythonhosted.org/packages/6c/83/f7b2a85ef5d9813ac9c996929c1adee3f0efdbc6c092f00c0c0d149188b6/Flask-Executor-0.9.0.tar.gz" } ], "0.9.1": [ { "comment_text": "", "digests": { "md5": "1c5bbd164e539424730116459f4d81e9", "sha256": "7322dd214843cf8ad7206b3ef191bf1ff2c95094f974824c30a75f34acc0e5a6" }, "downloads": -1, "filename": "Flask_Executor-0.9.1-py3-none-any.whl", "has_sig": false, "md5_digest": "1c5bbd164e539424730116459f4d81e9", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 11653, "upload_time": "2019-04-12T06:57:30", "url": "https://files.pythonhosted.org/packages/47/9b/f6e1021fc722bdb691967a7f459afe61e28ec6ac80cb1bd230166ef8a0e3/Flask_Executor-0.9.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "72058f97c902cca583baa459469d70fa", "sha256": "8cab3256591a0c5a9aae70e05be80e56084f46736fb99b3b6a4f2c25ffac52e5" }, "downloads": -1, "filename": "Flask-Executor-0.9.1.tar.gz", "has_sig": false, "md5_digest": "72058f97c902cca583baa459469d70fa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9076, "upload_time": "2019-04-12T06:57:32", "url": "https://files.pythonhosted.org/packages/3c/fd/924201f83e72346b4c629c8883af55bb3717b0bfbccc80faa46e38c0101a/Flask-Executor-0.9.1.tar.gz" } ], "0.9.2": [ { "comment_text": "", "digests": { "md5": "07e74b7ae0e9f2b9068a1f58ce164479", "sha256": "ab486a82a9c5a8d937c16f1e930c6b8fe2979707c3c9ec6d88e188717ebd4e03" }, "downloads": -1, "filename": "Flask_Executor-0.9.2-py3-none-any.whl", "has_sig": false, "md5_digest": "07e74b7ae0e9f2b9068a1f58ce164479", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 12138, "upload_time": "2019-04-16T11:44:51", "url": "https://files.pythonhosted.org/packages/4b/10/cdb80faf57b97dc56070906a7966f59f036c7637f9cbec16f6c4b6e52c39/Flask_Executor-0.9.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2fc58c010c51a547967a6ade33878eb8", "sha256": "af8ba37bd73f86f08b93504c4efac0aadc4d62ccf91382609359e221b64191c1" }, "downloads": -1, "filename": "Flask-Executor-0.9.2.tar.gz", "has_sig": false, "md5_digest": "2fc58c010c51a547967a6ade33878eb8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9476, "upload_time": "2019-04-16T11:44:53", "url": "https://files.pythonhosted.org/packages/53/4d/4e5811a66ad8d35205c964eadc16668e160162eb28b6b1cc0a5d7dae0e97/Flask-Executor-0.9.2.tar.gz" } ], "0.9.3": [ { "comment_text": "", "digests": { "md5": "87e88c5f3c227d1dd3690f611c53b7b8", "sha256": "31a3a04bc2e4828ee3b6bd58aba6939c0aeec94ddab455ccc76993d20b281bb1" }, "downloads": -1, "filename": "Flask_Executor-0.9.3-py3-none-any.whl", "has_sig": false, "md5_digest": "87e88c5f3c227d1dd3690f611c53b7b8", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9313, "upload_time": "2019-08-11T20:33:42", "url": "https://files.pythonhosted.org/packages/fb/f3/7c2b745f422bda8543fd09da6de6f81630b4e5bf83bb2262d8e9afa690fb/Flask_Executor-0.9.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ea77b94d6c421ccefcb2ed6f44018653", "sha256": "a36ae8304f0f26c7b0b5341c9faf8e524c4035fb14b5100302400fed1245cec2" }, "downloads": -1, "filename": "Flask-Executor-0.9.3.tar.gz", "has_sig": false, "md5_digest": "ea77b94d6c421ccefcb2ed6f44018653", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7602, "upload_time": "2019-08-11T20:33:44", "url": "https://files.pythonhosted.org/packages/42/45/40e2abc7dbe88f0e45c5f35fe2649ddcec7c9f38d4212c277cef77856cb9/Flask-Executor-0.9.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "87e88c5f3c227d1dd3690f611c53b7b8", "sha256": "31a3a04bc2e4828ee3b6bd58aba6939c0aeec94ddab455ccc76993d20b281bb1" }, "downloads": -1, "filename": "Flask_Executor-0.9.3-py3-none-any.whl", "has_sig": false, "md5_digest": "87e88c5f3c227d1dd3690f611c53b7b8", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9313, "upload_time": "2019-08-11T20:33:42", "url": "https://files.pythonhosted.org/packages/fb/f3/7c2b745f422bda8543fd09da6de6f81630b4e5bf83bb2262d8e9afa690fb/Flask_Executor-0.9.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ea77b94d6c421ccefcb2ed6f44018653", "sha256": "a36ae8304f0f26c7b0b5341c9faf8e524c4035fb14b5100302400fed1245cec2" }, "downloads": -1, "filename": "Flask-Executor-0.9.3.tar.gz", "has_sig": false, "md5_digest": "ea77b94d6c421ccefcb2ed6f44018653", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7602, "upload_time": "2019-08-11T20:33:44", "url": "https://files.pythonhosted.org/packages/42/45/40e2abc7dbe88f0e45c5f35fe2649ddcec7c9f38d4212c277cef77856cb9/Flask-Executor-0.9.3.tar.gz" } ] }