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 can be seen as another PyChecker since nearly all tests you
can do with PyChecker can also be done with Pylint. However, Pylint
offers some more features, like checking length of lines of code,
checking if variable names are well-formed according to your coding
standard, or checking if declared interfaces are truly implemented,
and much more.
Additionally, it is possible to write plugins to add your own checks.
.SHOPTIONS
.IP"--version"
show program's version number and exit
.IP"--help, -h"
show this help message and exit
.SHMASTER
.IP"--rcfile=<file>"
Specify a configuration file.
.IP"--disable-all"
Disable all possible checkers. This option should precede enable-* options.
.IP"--help-msg=<msg-id>"
Display a help message for the given message id and exit. This option may be a comma separated list.
.IP"--list-msgs"
List and explain every available messages.
.IP"--generate-rcfile"
Generate a sample configuration file according to the current configuration. You can put other options before this one to use them in the configuration. This option causes the program to exit
.IP"--generate-man"
Generate a man page for pylint. This option causes the program to exit
.IP"--debug-mode"
In debug mode, checkers without error messages are disabled and for others, only the ERROR messages are displayed, and no reports are done by default
.IP"--profile=<y_or_n>"
Profiled execution.
.IP"--ignore=<file>"
Add <file or directory> to the black list. It should be a base name, not a path. You may set this option multiple times.
.IP"--persistent=<y_or_n>"
Pickle collected data for later comparisons.
.IP"--cache-size=<size>"
Set the cache size for astng objects.
.IP"--load-plugins=<modules>"
List of plugins (as comma separated values of python modules names) to load, usually to register additional checkers.
.SHREPORTS
.IP"--reports=<y_or_n>, -r<y_or_n>"
Tells wether to display a full report or only the messages
.IP"--html=<y_or_n>"
Use HTML as output format instead of text
.IP"--parseable=<y_or_n>, -p<y_or_n>"
Use a parseable text output format, so your favorite text editor will be able to jump to the line corresponding to a message.
.IP"--color=<y_or_n>"
Colorizes text output using ansi escape codes
.IP"--files-output=<y_or_n>"
Put messages in a separate file for each module / package specified on the command line instead of printing them on stdout. Reports (if any) will be written in a file name "pylint_global.[txt|html]".
.IP"--evaluation=<python_expression>"
Python expression which should return a note less than 10 (10 is the highest note).You have access to the variables errors warning, statement which respectivly contain the number of errors / warnings messages and the total number of statements analyzed. This is used by the global evaluation report (R0004).
.IP"--comment=<y_or_n>"
Add a comment according to your evaluation note. This is used by the global evaluation report (R0004).
Deprecated modules which should not be used, separated by a comma
.IP"--import-graph=<file.dot>"
Create a graph of every (i.e. internal and external) dependencies in the given file (report R0402 must not be disabled)
.IP"--ext-import-graph=<file.dot>"
Create a graph of external dependencies in the given file (report R0402 must not be disabled)
.IP"--int-import-graph=<file.dot>"
Create a graph of internal dependencies in the given file (report R0402 must not be disabled)
.SHTYPECHECK
.IP"--enable-typecheck=<y_or_n>"
Enable / disable this checker
.IP"--ignore-mixin-members=<y_or_n>"
Tells wether missing members accessed in mixin class should be ignored. A mixin class is detected if its name ends with "mixin" (case insensitive).
.IP"--zope=<y_or_n>"
When zope mode is activated, consider the acquired-members option to ignore access to some undefined attributes.
.IP"--acquired-members=<members names>"
List of members which are usually get through zope's acquisition mecanism and so shouldn't trigger E0201 when accessed (need zope=yes to be considered.