Skip to content
A simple program which checks Python source files for errors.
Python
Find file
Latest commit aec68a7 Nov 26, 2015 @jayvdb jayvdb Importation classes with imported name and alias
In order to solve many corner cases related to imports,
more information is needed about each import.

This change creates two new classes:
- SubmoduleImportation
- ImportationFrom

And adds an optional parameter full_name to the super class
Importation.

Functionally, this change only improves existing error messages
to report the full imported name where previously an error
would include only the import alias.

README.rst

Pyflakes

A simple program which checks Python source files for errors.

Pyflakes analyzes programs and detects various errors. It works by parsing the source file, not importing it, so it is safe to use on modules with side effects. It's also much faster.

It is available on PyPI and it supports all active versions of Python from 2.5 to 3.5.

Installation

It can be installed with:

$ pip install --upgrade pyflakes

Useful tips:

  • Be sure to install it for a version of Python which is compatible with your codebase: for Python 2, pip2 install pyflakes and for Python3, pip3 install pyflakes.
  • You can also invoke Pyflakes with python3 -m pyflakes . or python2 -m pyflakes . if you have it installed for both versions.
  • If you require more options and more flexibility, you could give a look to Flake8 too.

Design Principles

Pyflakes makes a simple promise: it will never complain about style, and it will try very, very hard to never emit false positives.

Pyflakes is also faster than Pylint or Pychecker. This is largely because Pyflakes only examines the syntax tree of each file individually. As a consequence, Pyflakes is more limited in the types of things it can check.

If you like Pyflakes but also want stylistic checks, you want flake8, which combines Pyflakes with style checks against PEP 8 and adds per-project configuration ability.

Mailing-list

Share your feedback and ideas: subscribe to the mailing-list

Contributing

Patches may be submitted via a GitHub pull request or via the mailing list if you prefer. If you are comfortable doing so, please rebase your changes so they may be applied to master with a fast-forward merge, and each commit is a coherent unit of work with a well-written log message. If you are not comfortable with this rebase workflow, the project maintainers will be happy to rebase your commits for you.

All changes should be include tests and pass flake8.

Build status
Something went wrong with that request. Please try again.