Skip to content
unified lint recurses over directories runs e.g. pychecker, pylint, pep8, cppcheck
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
scripts reduce self-warnings Feb 13, 2013
src fix bad duplicates removal Mar 8, 2013
test fix bad duplicates removal Mar 8, 2013
.gitignore ignore dist Jul 1, 2012
.travis.yml pep8 and pylint from apt- Nov 23, 2012
LICENSE.txt link to git-lint Jan 4, 2015 reduce self-warnings Feb 13, 2013

This project currently is not continued, check for an alternative

unilint: unified static code analysis reports

Works on Linux, depends on GNU find, grep and xargs. Requires separate installation of static code analysers, currently supports

  • pep8
  • pychecker
  • pylint
  • pyflakes
  • cppcheck
  • cpplint (from pypi)


You can install/update unilint via pip:

sudo pip install -U unilint

To get the static code analysers, run

sudo apt-get install pychecker cppcheck
sudo pip install -U pep8 pyflakes pylint cpplint

You can also get pep8, pyflakes and pylint using apt-get, but those will often be older versions, so decide for yourself.


Usage: unilint [OPTIONS] [PATH]

  -h, --help            show this help message and exit
  -v, --verbose         verbose output.
  --version             print version and meta information
  --debug               debug output.
  -l LEVEL, --level=LEVEL
                        A number or one of
  -p, --plugins         List Available plugins
                        Choose plugins by comma separated id, all others
                        Choose plugins by comma separated id, ignored with
  -t, --tests           Also check unit tests
  -g, --generated       Also check generated Files
  --format=FORMAT       Custom line format using flags $f,$F,$M,$L,$P,$C,$T,$S
  -f FORMATTER, --formatter=FORMATTER
                        One of: full,brief,short
  -o, --ordered         Orders issues by file and line
  -r, --raw             Just prints the output of the checker as is

roslint: unilint for the ROS Robot Operating System

The roslint command is a small extension to the unilint command which also takes ROS packages and stacks as arguments, and will look for python script files in more folders.

Usage: roslint [OPTIONS] [PATH or STACK or PACKAGE]



  • more pylint bugs, also use pylint for whole packages
  • fix pep8 relative path showing when not desired
  • reactive pyflakes, as pychecker was disabled
  • some duplicate detection bugs fixed


  • Improved pylint behavior, fixed several minor bugs around it


  • travis-ci integration tests
  • filter warning about multiple statement on one line
  • py3k compatibility


  • bugfixes around duplicate detection
  • disable pychecker as it is vulnerable to malicious code
  • earlier output for ordered issue list of folder
  • prettier output on keyboardInterrupt
  • fix failing unit test
  • code style improved
  • fix roslint cli
  • cpplint integration test
  • fixed cppcheck/cpplint invocation bug
  • fix pylint error when calling with filename


  • added support for cpplint (from googlecode)


  • Bugs fixed when giving a relative path to filename


  • passing test files/folders directly works without -t
  • fix relative paths display
  • removed duplicate "line too long" and mixed tabs messages
  • allowing more than one path/file as argument
  • refactoring


  • fix ordering by line number


  • refactoring for better file traversal
  • several minor bugs fixed


  • fix sorting line number
  • sereral minor bugs fixed


  • first release
Something went wrong with that request. Please try again.