{ "info": { "author": "Michal Charemza", "author_email": "michal@charemza.name", "bugtrack_url": null, "classifiers": [ "Framework :: AsyncIO", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "# lowhaio-retry\n\nWrapper that retries failed [lowhaio](https://github.com/michalc/lowhaio) HTTP requests. Allows retries of exceptions from failed HTTP requests.\n\n\n## Installation\n\n```bash\npip install lowhaio_retry\n```\n\n\n## Usage\n\nThe `request` function returned from `lowhaio.Pool` must be wrapped with `lowhaio_retry.retry`, as in the below example. This will retry the request, waiting the specified interval between retries. If the request still fails, the final exception will be bubbled up to client code.\n\nSo instead of a request like\n\n```python\nfrom lowhaio import Pool\n\nrequest, _ = Pool()\n\nbody = ...\n\ncode, headers, body = await request(\n b'PUT', 'https://example.com/path', body=body,\n headers=((b'content-length', b'1234'),),\n)\n```\n\nyou can write\n\n```python\nfrom lowhaio import Pool, HttpConnectionError, HttpDataError\nfrom lowhaio_retry import retry\n\nrequest, _ = Pool()\n\nretriable_request = retry(request,\n exception_intervals=(\n # Seconds to wait after each exception\n (HttpConnectionError, (0, 0, 0)),\n (HttpDataError, (0, 1, 2, 4)),\n ),\n)\n\nbody = ...\n\ncode, headers, body = await retriable_request(\n b'PUT', 'https://example.com/path', body=body,\n headers=((b'content-length', b'1234'),),\n)\n```\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/michalc/lowhaio-retry", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "lowhaio-retry", "package_url": "https://pypi.org/project/lowhaio-retry/", "platform": "", "project_url": "https://pypi.org/project/lowhaio-retry/", "project_urls": { "Homepage": "https://github.com/michalc/lowhaio-retry" }, "release_url": "https://pypi.org/project/lowhaio-retry/0.0.5/", "requires_dist": null, "requires_python": ">=3.6.3", "summary": "Wrapper that retries failed lowhaio HTTP requests", "version": "0.0.5" }, "last_serial": 5293526, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "2a3f95211fdd9f7e0591254aedaa6272", "sha256": "33c7753b3a6cd751f811817822d9a948034dde255c58d4e62979c618092c256d" }, "downloads": -1, "filename": "lowhaio_retry-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "2a3f95211fdd9f7e0591254aedaa6272", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6.3", "size": 3013, "upload_time": "2019-05-07T19:58:58", "url": "https://files.pythonhosted.org/packages/b1/74/0cf2560101d0c8dceac75c7e9e3db7e1f3cf078c5382e07e8f4daaa345b9/lowhaio_retry-0.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "307cda79fcb331c9a3067f440d74fca1", "sha256": "faa95ea7d9dc17acb01a69b267ca91fb5d0794d52d32828f1592787b49d9d01a" }, "downloads": -1, "filename": "lowhaio_retry-0.0.1.tar.gz", "has_sig": false, "md5_digest": "307cda79fcb331c9a3067f440d74fca1", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.3", "size": 1977, "upload_time": "2019-05-07T19:59:00", "url": "https://files.pythonhosted.org/packages/b0/ef/f68b1c5b4ba954bf45426dffa4d303ce612b3e4537c453ecd0b3dc6b5ea7/lowhaio_retry-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "2b523ab6e4e57621f28ad4ee45bf60c2", "sha256": "bfa3ac0c82d73614d031c25f23a162f2a67ad5927304c670d382f87990b22ff3" }, "downloads": -1, "filename": "lowhaio_retry-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "2b523ab6e4e57621f28ad4ee45bf60c2", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6.3", "size": 3027, "upload_time": "2019-05-07T20:02:49", "url": "https://files.pythonhosted.org/packages/16/83/6fce7f6ed49639123042465cb997631a0a61c0e2e99c7b45412e401942d6/lowhaio_retry-0.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "fe31396aee3313fb9114a9296430e463", "sha256": "08ffb60a47980a16b3d1071d4638ea9d068c3a5de7cf0b5ca2681c2ea9edee54" }, "downloads": -1, "filename": "lowhaio_retry-0.0.2.tar.gz", "has_sig": false, "md5_digest": "fe31396aee3313fb9114a9296430e463", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.3", "size": 1989, "upload_time": "2019-05-07T20:02:50", "url": "https://files.pythonhosted.org/packages/55/70/7a30d7c55906be261f88037ce4173372ae135e41573f39be9ac1e1d4e864/lowhaio_retry-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "2a60690c149aacf05647cd5657cd18e6", "sha256": "148207918448eb76af3ea8d7d2cce4a61c37bfa1505dfcfeec764fcccc560bf8" }, "downloads": -1, "filename": "lowhaio_retry-0.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "2a60690c149aacf05647cd5657cd18e6", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6.3", "size": 3019, "upload_time": "2019-05-20T05:05:31", "url": "https://files.pythonhosted.org/packages/e2/4a/ccde2316faae2dd69fc6e852721370220ace92da27ca367ccf09c9f19458/lowhaio_retry-0.0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6fbd3896158d8d4022dbcca22dd32f57", "sha256": "5731e292b3daf363019dd48e7b0c4d444ac9124c44118405ac6626d25273c928" }, "downloads": -1, "filename": "lowhaio_retry-0.0.3.tar.gz", "has_sig": false, "md5_digest": "6fbd3896158d8d4022dbcca22dd32f57", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.3", "size": 1958, "upload_time": "2019-05-20T05:05:32", "url": "https://files.pythonhosted.org/packages/fb/5b/2708612e3f2969691949bce5f84bd06c392bfb036c3329abc37d737bd626/lowhaio_retry-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "d1f3f412170ed9790f05dfd785c8d871", "sha256": "271546e220ecf7ce887a75baf436243f3a8a45d7525aa29f22a1d73ef047fe7a" }, "downloads": -1, "filename": "lowhaio_retry-0.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "d1f3f412170ed9790f05dfd785c8d871", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6.3", "size": 3019, "upload_time": "2019-05-20T06:12:53", "url": "https://files.pythonhosted.org/packages/b3/18/a0d45a068676c85719700fe1c5a9722deec92f60d226cd4661e85e0c9bb2/lowhaio_retry-0.0.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ec1ecd54c551dab4168e2c19766dd226", "sha256": "f314486f1e0012771c93b59cd3083b64c52eb1f68792ec00487fdf9de0795944" }, "downloads": -1, "filename": "lowhaio_retry-0.0.4.tar.gz", "has_sig": false, "md5_digest": "ec1ecd54c551dab4168e2c19766dd226", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.3", "size": 1958, "upload_time": "2019-05-20T06:12:54", "url": "https://files.pythonhosted.org/packages/56/cb/f65f6d3ddaccd84289ad0c652df2d61b7b223446c9e57d6c03ff5934bd6e/lowhaio_retry-0.0.4.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "9e19a977137591e53607bef245c772b1", "sha256": "587a71f85db754d53d72d13239bacbf3c30cb372e682cafe8088a82f297eb5c4" }, "downloads": -1, "filename": "lowhaio_retry-0.0.5-py3-none-any.whl", "has_sig": false, "md5_digest": "9e19a977137591e53607bef245c772b1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6.3", "size": 3019, "upload_time": "2019-05-20T17:53:28", "url": "https://files.pythonhosted.org/packages/b6/da/9da9c328cac8259c89651b59aae146a8580f3886bf2cabf086fadf0a4ba0/lowhaio_retry-0.0.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "93b224db1ddf2a5006eb3648e82cef49", "sha256": "1ec4a70777307a828ce103af07c578eedf8f0d3d39644111a723a5edda4f994d" }, "downloads": -1, "filename": "lowhaio_retry-0.0.5.tar.gz", "has_sig": false, "md5_digest": "93b224db1ddf2a5006eb3648e82cef49", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.3", "size": 1955, "upload_time": "2019-05-20T17:53:30", "url": "https://files.pythonhosted.org/packages/0b/57/09b998a03b60d5fa564adc32fd513eb479100f157c2b05202288b8770e5f/lowhaio_retry-0.0.5.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "9e19a977137591e53607bef245c772b1", "sha256": "587a71f85db754d53d72d13239bacbf3c30cb372e682cafe8088a82f297eb5c4" }, "downloads": -1, "filename": "lowhaio_retry-0.0.5-py3-none-any.whl", "has_sig": false, "md5_digest": "9e19a977137591e53607bef245c772b1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6.3", "size": 3019, "upload_time": "2019-05-20T17:53:28", "url": "https://files.pythonhosted.org/packages/b6/da/9da9c328cac8259c89651b59aae146a8580f3886bf2cabf086fadf0a4ba0/lowhaio_retry-0.0.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "93b224db1ddf2a5006eb3648e82cef49", "sha256": "1ec4a70777307a828ce103af07c578eedf8f0d3d39644111a723a5edda4f994d" }, "downloads": -1, "filename": "lowhaio_retry-0.0.5.tar.gz", "has_sig": false, "md5_digest": "93b224db1ddf2a5006eb3648e82cef49", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.3", "size": 1955, "upload_time": "2019-05-20T17:53:30", "url": "https://files.pythonhosted.org/packages/0b/57/09b998a03b60d5fa564adc32fd513eb479100f157c2b05202288b8770e5f/lowhaio_retry-0.0.5.tar.gz" } ] }