3 # Specify a configuration file.
6 # Python code to execute, usually for sys.path manipulation such as
13 # Add files or directories to the blacklist. They should be base names, not
17 # Pickle collected data for later comparisons.
20 # List of plugins (as comma separated values of python modules names) to load,
21 # usually to register additional checkers.
27 # Enable the message, report, category or checker with the given id(s). You can
28 # either give multiple identifier separated by comma (,) or put this option
32 # Disable the message, report, category or checker with the given id(s). You
33 # can either give multiple identifier separated by comma (,) or put this option
34 # multiple time (only on the command line, not in the configuration file where
35 # it should appear only once).
36 # C0103: Invalid name "NN" (should match [a-z_][a-z0-9_]{2,30}$)
37 # C0111: Missing docstring
38 # C0302: Too many lines in module (NN)
39 # R0902: Too many instance attributes (N/7)
40 # R0903: Too few public methods (N/2)
41 # R0904: Too many public methods (NN/20)
42 # R0912: Too many branches (NN/12)
43 # R0913: Too many arguments (N/5)
44 # R0914: Too many local variables (NN/15)
45 # R0915: Too many statements (NN/50)
46 # W0141: Used builtin function 'map'
47 # W0142: Used * or ** magic
48 # W0232: Class has no __init__ method
50 # W0603: Using the global statement
52 # These should be enabled eventually:
53 # C0112: Empty docstring
54 # C0301: Line too long (NN/80)
55 # C0321: More than one statement on single line
56 # C0322: Operator not preceded by a space
57 # C0323: Operator not followed by a space
58 # C0324: Comma not followed by a space
59 # E0101: Explicit return in __init__
60 # E0102: function already defined line NN
61 # E1002: Use of super on an old style class
62 # E1101: Instance of 'XX' has no 'YY' member
63 # E1103: Instance of 'XX' has no 'XX' member (but some types could not be inferred)
64 # E0602: Undefined variable 'XX'
65 # F0401: Unable to import 'XX'
66 # R0201: Method could be a function
67 # R0801: Similar lines in N files
68 # W0102: Dangerous default value {} as argument
69 # W0104: Statement seems to have no effect
70 # W0105: String statement has no effect
71 # W0108: Lambda may not be necessary
72 # W0201: Attribute 'XX' defined outside __init__
73 # W0212: Access to a protected member XX of a client class
74 # W0221: Arguments number differs from overridden method
75 # W0223: Method 'XX' is abstract in class 'YY' but is not overridden
76 # W0231: __init__ method from base class 'XX' is not called
77 # W0301: Unnecessary semicolon
78 # W0311: Bad indentation. Found NN spaces, expected NN
79 # W0401: Wildcard import XX
80 # W0402: Uses of a deprecated module 'string'
81 # W0403: Relative import 'XX', should be 'YY.XX'
82 # W0404: Reimport 'XX' (imported line NN)
83 # W0601: Global variable 'XX' undefined at the module level
84 # W0602: Using global for 'XX' but no assignment is done
85 # W0611: Unused import pprint
86 # W0612: Unused variable 'XX'
87 # W0613: Unused argument 'XX'
88 # W0614: Unused import XX from wildcard import
89 # W0621: Redefining name 'XX' from outer scope (line NN)
90 # W0622: Redefining built-in 'NN'
91 # W0631: Using possibly undefined loop variable 'XX'
92 # W0701: Raising a string exception
93 # W0702: No exception type(s) specified
94 disable=C0103,C0111,C0302,R0902,R0903,R0904,R0912,R0913,R0914,R0915,W0141,W0142,W0232,W0511,W0603,C0112,C0301,C0321,C0322,C0323,C0324,E0101,E0102,E1002,E1101,E1103,E0602,F0401,R0201,R0801,W0102,W0104,W0105,W0108,W0201,W0212,W0221,W0223,W0231,W0301,W0311,W0401,W0402,W0403,W0404,W0601,W0602,W0611,W0612,W0613,W0614,W0621,W0622,W0631,W0701,W0702
99 # Set the output format. Available formats are text, parseable, colorized, msvs
100 # (visual studio) and html
103 # Include message's id in output
106 # Put messages in a separate file for each module / package specified on the
107 # command line instead of printing them on stdout. Reports (if any) will be
108 # written in a file name "pylint_global.[txt|html]".
111 # Tells whether to display a full report or only the messages
114 # Python expression which should return a note less than 10 (10 is the highest
115 # note). You have access to the variables errors warning, statement which
116 # respectively contain the number of errors / warnings messages and the total
117 # number of statements analyzed. This is used by the global evaluation report
119 evaluation=10.0 - ((float(5 * error + warning + refactor + convention) / statement) * 10)
121 # Add a comment according to your evaluation note. This is used by the global
122 # evaluation report (RP0004).
128 # Tells whether we should check for unused import in __init__ files.
131 # A regular expression matching the beginning of the name of dummy variables
133 dummy-variables-rgx=_|dummy
135 # List of additional names supposed to be defined in builtins. Remember that
136 # you should avoid to define new builtins when possible.
142 # Tells whether missing members accessed in mixin class should be ignored. A
143 # mixin class is detected if its name ends with "mixin" (case insensitive).
144 ignore-mixin-members=yes
146 # List of classes names for which member attributes should not be checked
147 # (useful for classes with attributes dynamically set).
148 ignored-classes=SQLObject
150 # When zope mode is activated, add a predefined set of Zope acquired attributes
151 # to generated-members.
154 # List of members which are set dynamically and missed by pylint inference
155 # system, and so shouldn't trigger E0201 when accessed. Python regular
156 # expressions are accepted.
157 generated-members=REQUEST,acl_users,aq_parent
162 # List of note tags to take in consideration, separated by a comma.
168 # Minimum lines number of a similarity.
169 min-similarity-lines=4
171 # Ignore comments when computing similarities.
174 # Ignore docstrings when computing similarities.
175 ignore-docstrings=yes
180 # Maximum number of characters on a single line.
183 # Maximum number of lines in a module
184 max-module-lines=1000
186 # String used as indentation unit. This is usually " " (4 spaces) or "\t" (1
193 # Required attributes for module, separated by a comma
196 # List of builtins function names that should not be used, separated by a comma
197 bad-functions=map,filter,apply,input
199 # Regular expression which should only match correct module names
200 module-rgx=(([a-z_][a-z0-9_]*)|([A-Z][a-zA-Z0-9]+))$
202 # Regular expression which should only match correct module level names
203 const-rgx=(([A-Z_][A-Z0-9_]*)|(__.*__))$
205 # Regular expression which should only match correct class names
206 class-rgx=[A-Z_][a-zA-Z0-9]+$
208 # Regular expression which should only match correct function names
209 function-rgx=[a-z_][a-z0-9_]{2,30}$
211 # Regular expression which should only match correct method names
212 method-rgx=[a-z_][a-z0-9_]{2,30}$
214 # Regular expression which should only match correct instance attribute names
215 attr-rgx=[a-z_][a-z0-9_]{2,30}$
217 # Regular expression which should only match correct argument names
218 argument-rgx=[a-z_][a-z0-9_]{2,30}$
220 # Regular expression which should only match correct variable names
221 variable-rgx=[a-z_][a-z0-9_]{2,30}$
223 # Regular expression which should only match correct list comprehension /
224 # generator expression variable names
225 inlinevar-rgx=[A-Za-z_][A-Za-z0-9_]*$
227 # Good variable names which should always be accepted, separated by a comma
228 good-names=i,j,k,ex,Run,_
230 # Bad variable names which should always be refused, separated by a comma
231 bad-names=foo,bar,baz,toto,tutu,tata
233 # Regular expression which should only match functions or classes name which do
234 # not require a docstring
235 no-docstring-rgx=__.*__
240 # Maximum number of arguments for function / method
243 # Argument names that match this expression will be ignored. Default to name
244 # with leading underscore
245 ignored-argument-names=_.*
247 # Maximum number of locals for function / method body
250 # Maximum number of return / yield for function / method body
253 # Maximum number of branch for function / method body
256 # Maximum number of statements in function / method body
259 # Maximum number of parents for a class (see R0901).
262 # Maximum number of attributes for a class (see R0902).
265 # Minimum number of public methods for a class (see R0903).
268 # Maximum number of public methods for a class (see R0904).
269 max-public-methods=20
274 # List of interface methods to ignore, separated by a comma. This is used for
275 # instance to not check methods defines in Zope's Interface base class.
276 ignore-iface-methods=isImplementedBy,deferred,extends,names,namesAndDescriptions,queryDescriptionFor,getBases,getDescriptionFor,getDoc,getName,getTaggedValue,getTaggedValueTags,isEqualOrExtendedBy,setTaggedValue,isImplementedByInstancesOf,adaptWith,is_implemented_by
278 # List of method names used to declare (i.e. assign) instance attributes.
279 defining-attr-methods=__init__,__new__,setUp
281 # List of valid names for the first argument in a class method.
282 valid-classmethod-first-arg=cls
287 # Deprecated modules which should not be used, separated by a comma
288 deprecated-modules=regsub,string,TERMIOS,Bastion,rexec
290 # Create a graph of every (i.e. internal and external) dependencies in the
291 # given file (report RP0402 must not be disabled)
294 # Create a graph of external dependencies in the given file (report RP0402 must
298 # Create a graph of internal dependencies in the given file (report RP0402 must
305 # Exceptions that will emit a warning when being caught. Defaults to
307 overgeneral-exceptions=Exception