{ "info": { "author": "Afonasev Evgeniy", "author_email": "ea.afonasev@gmail.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7" ], "description": "# flake8-return\n\n[![pypi](https://badge.fury.io/py/flake8-return.svg)](https://pypi.org/project/flake8-return)\n[![Python: 3.6+](https://img.shields.io/badge/Python-3.6+-blue.svg)](https://pypi.org/project/flake8-return)\n[![Downloads](https://img.shields.io/pypi/dm/flake8-return.svg)](https://pypistats.org/packages/flake8-return)\n[![Build Status](https://travis-ci.org/Afonasev/flake8-return.svg?branch=master)](https://travis-ci.org/Afonasev/flake8-return)\n[![Code coverage](https://codecov.io/gh/afonasev/flake8-return/branch/master/graph/badge.svg)](https://codecov.io/gh/afonasev/flake8-return)\n[![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://en.wikipedia.org/wiki/MIT_License)\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/ambv/black)\n\nFlake8 plugin that checks return values.\n\n## Installation\n\n```bash\npip install flake8-return\n```\n\n## Errors\n\n* R501 you shouldn\\`t add None at any return if function havn\\`t return value except None\n\n```python\ndef x(y):\n if not y:\n return\n return None # error!\n```\n\n* R502 you should add explicit value at every return if function have return value except None\n\n```python\ndef x(y):\n if not y:\n return # error!\n return 1\n```\n\n* R503 you should add explicit return at end of the function if function have return value except None\n\n```python\ndef x(y):\n if not y:\n return # error!\n return 1\n```\n\n* R504 you shouldn`t assign value to variable if it will be use only as return value\n\n```python\ndef x():\n a = 1\n # some code that not using `a`\n print('test')\n return a # error!\n```\n\nReturns in asyncio coroutines also supported.\n\n## License\n\nMIT\n\n## Change Log\n\nUnreleased\n-----\n\n* ...\n\n1.1.1 - 2019-09-21\n-----\n\n* fixed [#3](https://github.com/afonasev/flake8-return/issues/3) The R504 doesn't detect that the variable is modified in loop\n* fixed [#4](https://github.com/afonasev/flake8-return/issues/4) False positive with R503 inside async with clause\n\n1.1.0 - 2019-05-23\n-----\n\n* update flask_plugin_utils version to 1.0\n\n1.0.0 - 2019-05-13\n-----\n\n* skip assign after unpacking while unnecessary assign checking \"(x, y = my_obj)\"\n\n0.3.2 - 2019-04-01\n-----\n\n* allow \"assert False\" as last function return\n\n0.3.1 - 2019-03-11\n-----\n\n* add pypi deploy into travis config\n* add make bump_version command\n\n0.3.0 - 2019-02-26\n-----\n\n* skip functions that consist only `return None`\n* fix false positive when last return inner with statement\n* add unnecessary assign error\n* add support tuple in assign or return expressions\n* add suppport asyncio coroutines\n\n0.2.0 - 2019-02-21\n-----\n\n* fix explicit/implicit\n* add flake8-plugin-utils as dependency\n* allow raise as last function return\n* allow no return as last line in while block\n* fix if/elif/else cases\n\n0.1.1 - 2019-02-10\n-----\n\n* fix error messages\n\n0.1.0 - 2019-02-10\n-----\n\n* initial\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://pypi.org/project/flake8-return", "keywords": "flake8,plugin,return", "license": "MIT", "maintainer": "Afonasev Evgeniy", "maintainer_email": "ea.afonasev@gmail.com", "name": "flake8-return", "package_url": "https://pypi.org/project/flake8-return/", "platform": "", "project_url": "https://pypi.org/project/flake8-return/", "project_urls": { "Homepage": "https://pypi.org/project/flake8-return", "Repository": "https://github.com/afonasev/flake8-return" }, "release_url": "https://pypi.org/project/flake8-return/1.1.1/", "requires_dist": [ "flake8-plugin-utils (>=1.0,<2.0)" ], "requires_python": ">=3.6,<4.0", "summary": "Flake8 plugin that checks return values", "version": "1.1.1" }, "last_serial": 5863718, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "ad830ce833ce83002a4c72f667285f71", "sha256": "55c07b81c668f09ae15575cb467e3e00dacd3b8fafaaa927b72bf650ac9271a4" }, "downloads": -1, "filename": "flake8_return-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "ad830ce833ce83002a4c72f667285f71", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4.0", "size": 5435, "upload_time": "2019-02-09T19:04:41", "url": "https://files.pythonhosted.org/packages/b3/99/fd17d13861862a97cf02dc39eabba37ab8079be67408d84e7a9ce2f48b4c/flake8_return-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d62cbe99c6da94faab24f7e56d800079", "sha256": "ce54d3c47ba9751666135adeff22a92cdd9376b3e88e465ea097ea3835c97cb3" }, "downloads": -1, "filename": "flake8-return-0.1.0.tar.gz", "has_sig": false, "md5_digest": "d62cbe99c6da94faab24f7e56d800079", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4.0", "size": 2989, "upload_time": "2019-02-09T19:04:37", "url": "https://files.pythonhosted.org/packages/eb/ed/6eb57f36e1b0790448ac6ddb985179dd812276ca5a293a9b46a2f349a72e/flake8-return-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "79e8ce008c09af0f22b2ae7488a76d04", "sha256": "478725c9c6d95aa29cb12f2ceefb101ce5f49117465b094fc41c1d9364f2699b" }, "downloads": -1, "filename": "flake8_return-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "79e8ce008c09af0f22b2ae7488a76d04", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4.0", "size": 5434, "upload_time": "2019-02-09T19:09:58", "url": "https://files.pythonhosted.org/packages/94/5d/8b7e3c063b8bc7a5f0e6dafc1a028452b833dddf3667e1055646d1a9b189/flake8_return-0.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ca2e612501db1477b28ffcb68d83efcb", "sha256": "6c86aeb00c669565be7f14a0ea31dd203ff55df4e89630801c4e52d058081fa5" }, "downloads": -1, "filename": "flake8-return-0.1.1.tar.gz", "has_sig": false, "md5_digest": "ca2e612501db1477b28ffcb68d83efcb", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4.0", "size": 2966, "upload_time": "2019-02-09T19:09:56", "url": "https://files.pythonhosted.org/packages/21/d0/7d4cda7faf2c38a18f1301d1ebfc17350ec8b1deb27bc9931b7592f97927/flake8-return-0.1.1.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "890d494fcf5f3f1c9294ec306154a389", "sha256": "f50f6976bbb1696c1089db9d72ee4935cebd10eecbb8160ff0d77cf1b714c438" }, "downloads": -1, "filename": "flake8_return-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "890d494fcf5f3f1c9294ec306154a389", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4.0", "size": 6257, "upload_time": "2019-02-21T09:47:44", "url": "https://files.pythonhosted.org/packages/87/8c/922ff805c92a7c99f89fec2bd95b16bfd5f8e41336bcc67b1f2c21cc394a/flake8_return-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7c7385bbc98e4fd3bb54aade5b4a66fd", "sha256": "bd8340cf8c71a5e00bb9e7c9f6b8cff1b12d0b7d55786262322ded57f3189060" }, "downloads": -1, "filename": "flake8-return-0.2.0.tar.gz", "has_sig": false, "md5_digest": "7c7385bbc98e4fd3bb54aade5b4a66fd", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4.0", "size": 3283, "upload_time": "2019-02-21T09:47:43", "url": "https://files.pythonhosted.org/packages/03/28/698de174262306c0b59319aea0bdc8e2271e6036ef5a7bcc0daae71402a8/flake8-return-0.2.0.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "81b64bb3e18ebca6937e0921aa7ab058", "sha256": "70fe3b925c784fb4f1147e4de8a3026954c15e5971b751468d2ec11deb3ba629" }, "downloads": -1, "filename": "flake8_return-0.3.0-py3-none-any.whl", "has_sig": false, "md5_digest": "81b64bb3e18ebca6937e0921aa7ab058", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4.0", "size": 10512, "upload_time": "2019-02-26T10:08:50", "url": "https://files.pythonhosted.org/packages/33/c2/c0026d70d52b7f5222014c6585df4f434185cb0e40d56eb2ab477a4ecb17/flake8_return-0.3.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d2b2f60cf13406a817c3629d84ba5b50", "sha256": "87fd0a666e4c755cb93c26b0df32ebcd16ac58a35d5fe06d2a831de32225c9a0" }, "downloads": -1, "filename": "flake8-return-0.3.0.tar.gz", "has_sig": false, "md5_digest": "d2b2f60cf13406a817c3629d84ba5b50", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4.0", "size": 4550, "upload_time": "2019-02-26T10:08:48", "url": "https://files.pythonhosted.org/packages/d4/71/92cb30461501a0df724736b68e54a6995df212b10e6f5018cf20eb63818a/flake8-return-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "796173ef79a5c2f04e884946fe85d8c6", "sha256": "8f1a0c31e8904d9dfc6bc33775a0277832f887fc4b91db00f06012aff79f8e90" }, "downloads": -1, "filename": "flake8_return-0.3.1-py3-none-any.whl", "has_sig": false, "md5_digest": "796173ef79a5c2f04e884946fe85d8c6", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4.0", "size": 10557, "upload_time": "2019-03-11T15:04:15", "url": "https://files.pythonhosted.org/packages/1b/46/c7781e5bd309f520f3e69a40ee77a950fb5833ce4e7639284cad6a42017d/flake8_return-0.3.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9d704a02456c7d3daf55818102fd2c0b", "sha256": "db2b7b20566645c528b465719957df93ed1bcdddfdfbb7405ace687d7274db78" }, "downloads": -1, "filename": "flake8-return-0.3.1.tar.gz", "has_sig": false, "md5_digest": "9d704a02456c7d3daf55818102fd2c0b", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4.0", "size": 4517, "upload_time": "2019-03-11T15:04:14", "url": "https://files.pythonhosted.org/packages/53/49/c0d476d3e9a9ac683a26efaf27fcb588a5b5dd3cf62b8bfae0b971a32191/flake8-return-0.3.1.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "3e9d254d709f8d562c420089552aa135", "sha256": "3762509d5305c2bad8b9a286b40c4ee98fa3744fb274329d99133d9a01de9f99" }, "downloads": -1, "filename": "flake8_return-0.3.2-py3-none-any.whl", "has_sig": false, "md5_digest": "3e9d254d709f8d562c420089552aa135", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4.0", "size": 10795, "upload_time": "2019-04-01T17:33:43", "url": "https://files.pythonhosted.org/packages/ef/65/9e3708ced4c4c098405a77ab453ad6009a84a0b6d28a5f3873c8613b8f74/flake8_return-0.3.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "304094de56e404b8d6a0dc7f5c205e06", "sha256": "364dae3100c4724f132150e7811e89875a2024725eb96753b032a914c2e1812c" }, "downloads": -1, "filename": "flake8-return-0.3.2.tar.gz", "has_sig": false, "md5_digest": "304094de56e404b8d6a0dc7f5c205e06", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4.0", "size": 4580, "upload_time": "2019-04-01T17:33:42", "url": "https://files.pythonhosted.org/packages/88/6b/c2b4d650ab088369afb6b949ef728aa1812cd46560cd914f98a1bf34f26e/flake8-return-0.3.2.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "ed5c6362d2f0efabc4a4801cee7f3e46", "sha256": "04d8e367ef135a1dc2e823d32c502c89169a42db1eee177953b000789a91d134" }, "downloads": -1, "filename": "flake8_return-1.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "ed5c6362d2f0efabc4a4801cee7f3e46", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4.0", "size": 5770, "upload_time": "2019-05-13T11:40:59", "url": "https://files.pythonhosted.org/packages/df/a7/c6587950617fd959d926803200a81ae47b9ed11609343abe42487e1af80e/flake8_return-1.0.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "599437f4a8b47ba2220076423a8b8934", "sha256": "fbd68fdeba82e29de03119551159526f96a47fff10c004cf2bc9b9bddf45f83d" }, "downloads": -1, "filename": "flake8-return-1.0.0.tar.gz", "has_sig": false, "md5_digest": "599437f4a8b47ba2220076423a8b8934", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4.0", "size": 4860, "upload_time": "2019-05-13T11:40:58", "url": "https://files.pythonhosted.org/packages/9a/17/b3db6213bb74e354cfe1dffebc281c549501fced8b4a9c5d56de7e08bbe4/flake8-return-1.0.0.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "b25ef637016dff7ece590acb3e9014b0", "sha256": "6af2665ec37aab4ca72941cac3fe1263749310832bf8906b2ab2023d0fc1f02b" }, "downloads": -1, "filename": "flake8_return-1.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "b25ef637016dff7ece590acb3e9014b0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4.0", "size": 11308, "upload_time": "2019-05-23T11:42:09", "url": "https://files.pythonhosted.org/packages/32/52/f08dfedbb96dba316fd57477b7a0b1b6e539ec54367734cd3e4eb5bd9be6/flake8_return-1.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "efa71c431bd8c03e1537bd40a199129c", "sha256": "bebd739bb111d095fe53a5d638cda59496ad950745949cef67f1cad8cd9a85d5" }, "downloads": -1, "filename": "flake8-return-1.1.0.tar.gz", "has_sig": false, "md5_digest": "efa71c431bd8c03e1537bd40a199129c", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4.0", "size": 4926, "upload_time": "2019-05-23T11:42:07", "url": "https://files.pythonhosted.org/packages/20/51/f1122140c709ed54011cc1f980580160a4b5fed1ae456175319f534d8ecc/flake8-return-1.1.0.tar.gz" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "64640a9306993c4816fc312dd216dfb3", "sha256": "a219b619cdca3cd07dae150772f21083a11ce5280e2198acbac82bd9be0f574f" }, "downloads": -1, "filename": "flake8_return-1.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "64640a9306993c4816fc312dd216dfb3", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4.0", "size": 6007, "upload_time": "2019-09-20T19:04:38", "url": "https://files.pythonhosted.org/packages/ea/6b/7e509df710d7bd849a356edb58f8d9b9da2fab5a28bbb4f0d8ba91e469d9/flake8_return-1.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9056b43d18fc590b0c3c4b18dfa6f7e3", "sha256": "03b920cf2784370af4447a754fb7133ce165a6ecf6d4f506a95c4032ece48d8a" }, "downloads": -1, "filename": "flake8-return-1.1.1.tar.gz", "has_sig": false, "md5_digest": "9056b43d18fc590b0c3c4b18dfa6f7e3", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4.0", "size": 5116, "upload_time": "2019-09-20T19:04:36", "url": "https://files.pythonhosted.org/packages/70/eb/96e53f7aac8959c37a54c9c4674ad4cea2dcb9b3af38cf1c5b4accf247a0/flake8-return-1.1.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "64640a9306993c4816fc312dd216dfb3", "sha256": "a219b619cdca3cd07dae150772f21083a11ce5280e2198acbac82bd9be0f574f" }, "downloads": -1, "filename": "flake8_return-1.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "64640a9306993c4816fc312dd216dfb3", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4.0", "size": 6007, "upload_time": "2019-09-20T19:04:38", "url": "https://files.pythonhosted.org/packages/ea/6b/7e509df710d7bd849a356edb58f8d9b9da2fab5a28bbb4f0d8ba91e469d9/flake8_return-1.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9056b43d18fc590b0c3c4b18dfa6f7e3", "sha256": "03b920cf2784370af4447a754fb7133ce165a6ecf6d4f506a95c4032ece48d8a" }, "downloads": -1, "filename": "flake8-return-1.1.1.tar.gz", "has_sig": false, "md5_digest": "9056b43d18fc590b0c3c4b18dfa6f7e3", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4.0", "size": 5116, "upload_time": "2019-09-20T19:04:36", "url": "https://files.pythonhosted.org/packages/70/eb/96e53f7aac8959c37a54c9c4674ad4cea2dcb9b3af38cf1c5b4accf247a0/flake8-return-1.1.1.tar.gz" } ] }