Bitbucket is a code hosting site with unlimited public and private repositories. We're also free for small teams!

Close

README for Pylint - http://www.pylint.org/

Pylint is a Python source code analyzer which looks for programming errors, helps enforcing a coding standard and sniffs for some code smells (as defined in Martin Fowler's Refactoring book).

Pylint has many rules enabled by default, way too much to silence them all on a minimally sized program. It's highly configurable and handle pragmas to control it from within your code. Additionally, it is possible to write plugins to add your own checks.

It's a free software distributed under the GNU Public Licence.

Development is hosted on bitbucket: https://bitbucket.org/logilab/pylint/

You can use the code-quality@python.org mailing list to discuss about Pylint. Subscribe at http://lists.python.org/mailman/listinfo/code-quality or read the archives at http://lists.python.org/pipermail/code-quality/

Install

Pylint requires the astroid (the later the better; formerly known as logilab-astng) and logilab-common (version >= 0.53) packages.

From the source distribution, extract the tarball and run

python setup.py install

You'll have to install dependencies in a similar way. For debian and rpm packages, use your usual tools according to your Linux distribution.

More information about installation and available distribution format may be found in the user manual in the doc subdirectory.

Documentation

Look in the doc/ subdirectory or at http://docs.pylint.org

Pylint is shipped with following additional commands:

  • pyreverse: an UML diagram generator
  • symilar: an independent similarities checker
  • epylint: Emacs and Flymake compatible Pylint
  • pylint-gui: a graphical interface

Recent activity

George Sakkis

George Sakkis pushed 45 commits to gsakkis/pylint

46b4f2f - Move all source under a pylint/ directory so that setuptools.develop works
50a1da7 - [design analysis] fix badly implemented protocol for read-only containers like tuple. Close #25
443e97c - Do not emit [fixme] for every line if the config value 'notes' is empty, but [fixme] is enabled.
e7aad70 - Emit warnings about lines exceeding the column limit when those lines are inside multiline docstrings.
3e994f1 - Do not double-check parameter names with the regex for parameters and inline variables.
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.