mirror of
https://github.com/PyCQA/flake8.git
synced 2026-03-29 10:36:53 +00:00
flake8 is a python tool that glues together pycodestyle, pyflakes, mccabe, and third-party plugins to check the style and quality of some python code.
https://flake8.pycqa.org
complexity-analysisflake8linterlinter-flake8pep8pythonpython3static-analysisstatic-code-analysisstyle-guidestyleguidestylelint
| bin | ||
| flake8 | ||
| .hgignore | ||
| .hgtags | ||
| CONTRIBUTORS.txt | ||
| LICENSE | ||
| MANIFEST.in | ||
| README | ||
| setup.py | ||
======
Flake8
======
Flake8 is a wrapper around these tools:
- PyFlakes
- pep8
- Ned's MacCabe script
Flake8 runs all tools by launching the single 'flake8' script, but ignores pep8
and PyFlakes extended options and just uses defaults. It displays the warnings
in a per-file, merged output.
It also adds a few features:
- files that starts with this header are skipped::
# flake8: noqa
- lines that contains a "# NOQA" comment at the end will not issue a warning
- a Mercurial hook
- more things to come..
Original projects:
- pep8: http://github.com/jcrocholl/pep8/
- PyFlakes: http://divmod.org/trac/wiki/DivmodPyflakes
- McCabe: http://nedbatchelder.com/blog/200803/python_code_complexity_microtool.html
Mercurial hook
==============
To use the Mercurial hook on any *commit* or *qrefresh*, change your .hg/rc file
like this::
[hooks]
commit = python:flake8.run.hg_hook
qrefresh = python:flake8.run.hg_hook
[flake8]
strict = 0
If *strict* option is set to **1**, any warning will block the commit. When
*strict* is set to **0**, warnings are just displayed in the standard output.
CHANGES
=======
0.7 - 2010-02-18
----------------
- Fix pep8 intialization when run through Hg
- Make pep8 short options work when run throug the command line
- skip duplicates when controlling files via Hg
0.6 - 2010-02-15
----------------
- Fix the McCabe metric on some loops