A flake8 extension that checks for assignment and return in Python
Project description
no-assignment-and-return
A flake8 extension that checks for assignment and return in Python
A Flake8 lint based on Clippy's
let_and_return
and Microsoft's TSLint lint
no-unnecessary-local-variable
.
For more info on the structure of this lint, see the accompanying blog post.
examples
# error
def foo():
x = bar()
return x
# allowed
def foo():
x, _ = bar()
return x
see: flake8_assign_and_return.py
for all the test cases
dev
# install dependencies
poetry install
# install plugin to work with flake8
poetry run python setup.py install
# test
poetry run pytest
# or with watch
poetry run ptw
# typecheck
poetry run mypy *.py
# format
poetry run black .
# lint
poetry run flake8 .
uploading a new version to PyPi
# increment `__version__` and pyproject.toml `version`
# build new distribution files
rm -rf dist && poetry run python setup.py sdist bdist_wheel
# upload to pypi (Note: this will ask for login credentials)
poetry run twine upload dist/*
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file flake8-assign-and-return-0.0.4.tar.gz
.
File metadata
- Download URL: flake8-assign-and-return-0.0.4.tar.gz
- Upload date:
- Size: 3.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ffd1cc6c21b0a786c44b445d188b646b3f17b33c2fe49649a5bd2ff735610721 |
|
MD5 | 0619c48d592c47fadcdc6a63dbc1bcf0 |
|
BLAKE2b-256 | 119d9ae41189edfd9758b96e46d8a3c53aa2348c35992ced6ef4d87cfac00fb7 |
File details
Details for the file flake8_assign_and_return-0.0.4-py3-none-any.whl
.
File metadata
- Download URL: flake8_assign_and_return-0.0.4-py3-none-any.whl
- Upload date:
- Size: 3.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 959fbcad1737cb68d4be96547a40d9b15e6501a29286b37509b9e73f3d387002 |
|
MD5 | 4adae8ea9c09f29c83da521e5aea6d41 |
|
BLAKE2b-256 | b9027797c07976e548d65fe4aeaf32074f10603258a519fb9c61ea517021ac6e |