.TH pylint 1 "2010-11-15" pylint
.SH NAME
.B pylint
\- python code static checker

.SH SYNOPSIS
.B  pylint
[
.I OPTIONS
] [
.I <arguments>
]

.SH DESCRIPTION
.B 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 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.


.SH OPTIONS
.IP "--version"
show program's version number and exit
.IP "--help, -h"
show this help message and exit
.IP "--long-help"
more verbose help.

.SH MASTER
.IP "--rcfile=<file>"
Specify a configuration file.
.IP "--init-hook=<code>"
Python code to execute, usually for sys.path manipulation such as pygtk.require().
.IP "--errors-only, -E"
In error mode, checkers without error messages are disabled and for others, only the ERROR messages are displayed, and no reports are done by default
.IP "--ignore=<file>[,<file>...]"
Add files or directories to the blacklist. They should be base names, not paths.
.IP "--persistent=<y_or_n>"
Pickle collected data for later comparisons. [current: yes]
.IP "--load-plugins=<modules>"
List of plugins (as comma separated values of python modules names) to load, usually to register additional checkers. [current: none]

.SH COMMANDS
.IP "--help-msg=<msg-id>"
Display a help message for the given message id and exit. The value may be a comma separated list of message ids.
.IP "--list-msgs"
Generate pylint's messages.
.IP "--full-documentation"
Generate pylint's full documentation.
.IP "--generate-rcfile"
Generate a sample configuration file according to the current configuration. You can put other options before this one to get them in the generated configuration.

.SH MESSAGES CONTROL
.IP "--enable=<msg ids>, -e <msg ids>"
Enable the message, report, category or checker with the given id(s). You can either give multiple identifier separated by comma (,) or put this option multiple time.
.IP "--disable=<msg ids>, -d <msg ids>"
Disable the message, report, category or checker with the given id(s). You can either give multiple identifier separated by comma (,) or put this option multiple time (only on the command line, not in the configuration file where it should appear only once).

.SH REPORTS
.IP "--output-format=<format>, -f <format>"
Set the output format. Available formats are text,                 parseable, colorized, msvs (visual studio) and html [current: text]
.IP "--include-ids=<y_or_n>, -i <y_or_n>"
Include message's id in output [current: no]
.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]". [current: no]
.IP "--reports=<y_or_n>, -r <y_or_n>"
Tells whether to display a full report or only the messages [current: yes]
.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 respectively contain the number of errors / warnings messages and the total number of statements analyzed. This is used by the  global evaluation report (RP0004). [current: 10.0 - ((float(5 * error + warning + refactor + convention) / statement) * 10)]
.IP "--comment=<y_or_n>"
Add a comment according to your evaluation note. This is used by the global evaluation report (RP0004). [current: no]

.SH FORMAT
.IP "--max-line-length=<int>"
Maximum number of characters on a single line. [current: 80]
.IP "--max-module-lines=<int>"
Maximum number of lines in a module [current: 1000]
.IP "--indent-string=<string>"
String used as indentation unit. This is usually "    " (4 spaces) or "\t" (1 tab). [current: '    ']

.SH IMPORTS
.IP "--deprecated-modules=<modules>"
Deprecated modules which should not be used, separated by a comma [current: regsub,string,TERMIOS,Bastion,rexec]
.IP "--import-graph=<file.dot>"
Create a graph of every (i.e. internal and external) dependencies in the given file (report RP0402 must not be disabled) [current: none]
.IP "--ext-import-graph=<file.dot>"
Create a graph of external dependencies in the given file (report RP0402 must not be disabled) [current: none]
.IP "--int-import-graph=<file.dot>"
Create a graph of internal dependencies in the given file (report RP0402 must not be disabled) [current: none]

.SH DESIGN
.IP "--max-args=<int>"
Maximum number of arguments for function / method [current: 5]
.IP "--ignored-argument-names=<regexp>"
Argument names that match this expression will be ignored. Default to name with leading underscore [current: _.*]
.IP "--max-locals=<int>"
Maximum number of locals for function / method body [current: 15]
.IP "--max-returns=<int>"
Maximum number of return / yield for function / method body [current: 6]
.IP "--max-branchs=<int>"
Maximum number of branch for function / method body [current: 12]
.IP "--max-statements=<int>"
Maximum number of statements in function / method body [current: 50]
.IP "--max-parents=<num>"
Maximum number of parents for a class (see R0901). [current: 7]
.IP "--max-attributes=<num>"
Maximum number of attributes for a class (see R0902). [current: 7]
.IP "--min-public-methods=<num>"
Minimum number of public methods for a class (see R0903). [current: 2]
.IP "--max-public-methods=<num>"
Maximum number of public methods for a class (see R0904). [current: 20]

.SH MISCELLANEOUS
.IP "--notes=<comma separated values>"
List of note tags to take in consideration, separated by a comma. [current: FIXME,XXX,TODO]

.SH VARIABLES
.IP "--init-import=<y_or_n>"
Tells whether we should check for unused import in __init__ files. [current: no]
.IP "--dummy-variables-rgx=<regexp>"
A regular expression matching the beginning of                   the name of dummy variables (i.e. not used). [current: _|dummy]
.IP "--additional-builtins=<comma separated list>"
List of additional names supposed to be defined in builtins. Remember that you should avoid to define new builtins when possible. [current: none]

.SH TYPECHECK
.IP "--ignore-mixin-members=<y_or_n>"
Tells whether missing members accessed in mixin class should be ignored. A mixin class is detected if its name ends with "mixin" (case insensitive). [current: yes]
.IP "--ignored-classes=<members names>"
List of classes names for which member attributes should not be checked (useful for classes with attributes dynamically set). [current: SQLObject]
.IP "--zope=<y_or_n>"
When zope mode is activated, add a predefined set of Zope acquired attributes to generated-members. [current: no]
.IP "--generated-members=<members names>"
List of members which are set dynamically and missed by pylint inference system, and so shouldn't trigger E0201 when accessed. [current: REQUEST,acl_users,aq_parent]

.SH BASIC
.IP "--required-attributes=<attributes>"
Required attributes for module, separated by a comma [current: none]
.IP "--bad-functions=<builtin function names>"
List of builtins function names that should not be used, separated by a comma [current: map,filter,apply,input]
.IP "--module-rgx=<regexp>"
Regular expression which should only match correct module names [current: (([a-z_][a-z0-9_]*)|([A-Z][a-zA-Z0-9]+))$]
.IP "--const-rgx=<regexp>"
Regular expression which should only match correct module level names [current: (([A-Z_][A-Z0-9_]*)|(__.*__))$]
.IP "--class-rgx=<regexp>"
Regular expression which should only match correct class names [current: [A-Z_][a-zA-Z0-9]+$]
.IP "--function-rgx=<regexp>"
Regular expression which should only match correct function names [current: [a-z_][a-z0-9_]{2,30}$]
.IP "--method-rgx=<regexp>"
Regular expression which should only match correct method names [current: [a-z_][a-z0-9_]{2,30}$]
.IP "--attr-rgx=<regexp>"
Regular expression which should only match correct instance attribute names [current: [a-z_][a-z0-9_]{2,30}$]
.IP "--argument-rgx=<regexp>"
Regular expression which should only match correct argument names [current: [a-z_][a-z0-9_]{2,30}$]
.IP "--variable-rgx=<regexp>"
Regular expression which should only match correct variable names [current: [a-z_][a-z0-9_]{2,30}$]
.IP "--inlinevar-rgx=<regexp>"
Regular expression which should only match correct list comprehension / generator expression variable                           names [current: [A-Za-z_][A-Za-z0-9_]*$]
.IP "--good-names=<names>"
Good variable names which should always be accepted, separated by a comma [current: i,j,k,ex,Run,_]
.IP "--bad-names=<names>"
Bad variable names which should always be refused, separated by a comma [current: foo,bar,baz,toto,tutu,tata]
.IP "--no-docstring-rgx=<regexp>"
Regular expression which should only match functions or classes name which do not require a docstring [current: __.*__]

.SH SIMILARITIES
.IP "--min-similarity-lines=<int>"
Minimum lines number of a similarity. [current: 4]
.IP "--ignore-comments=<y or n>"
Ignore comments when computing similarities. [current: yes]
.IP "--ignore-docstrings=<y or n>"
Ignore docstrings when computing similarities. [current: yes]

.SH CLASSES
.IP "--ignore-iface-methods=<method names>"
List of interface methods to ignore, separated by a comma. This is used for instance to not check methods defines in Zope's Interface base class. [current: isImplementedBy,deferred,extends,names,namesAndDescriptions,queryDescriptionFor,getBases,getDescriptionFor,getDoc,getName,getTaggedValue,getTaggedValueTags,isEqualOrExtendedBy,setTaggedValue,isImplementedByInstancesOf,adaptWith,is_implemented_by]
.IP "--defining-attr-methods=<method names>"
List of method names used to declare (i.e. assign) instance attributes. [current: __init__,__new__,setUp]

.SH ENVIRONMENT VARIABLES

The following environment variables are used :                                 
    * PYLINTHOME                                                               
    path to the directory where data of persistent run will be stored. If not
found, it defaults to ~/.pylint.d/ or .pylint.d (in the current working
directory).
    * PYLINTRC                                                                 
    path to the configuration file. If not found, it will use the first        
existent file in ~/.pylintrc, /etc/pylintrc.

.SH OUTPUT

Using the default text output, the message format is :                          
                                                                                
        MESSAGE_TYPE: LINE_NUM:[OBJECT:] MESSAGE                                
                                                                                
There are 5 kind of message types :                                             
    * (C) convention, for programming standard violation                        
    * (R) refactor, for bad code smell                                          
    * (W) warning, for python specific problems                                 
    * (E) error, for probable bugs in the code                                  
    * (F) fatal, if an error occurred which prevented pylint from doing further
processing.
        
.SH OUTPUT STATUS CODE

Pylint should leave with following status code:                                 
    * 0 if everything went fine                                                 
    * 1 if a fatal message was issued                                           
    * 2 if an error message was issued                                          
    * 4 if a warning message was issued                                         
    * 8 if a refactor message was issued                                        
    * 16 if a convention message was issued                                     
    * 32 on usage error                                                         
                                                                                
status 1 to 16 will be bit-ORed so you can know which different categories has
been issued by analysing pylint output status code
        
.SH SEE ALSO
/usr/share/doc/pythonX.Y-pylint/

.SH COPYRIGHT
Logilab S.A.

.SH BUGS
Please report bugs on the project's mailing list:
mailto://python-projects@lists.logilab.org

.SH AUTHOR
Logilab <python-projects@lists.logilab.org>

