1# Copyright (c) 2012 Google Inc. All rights reserved. 2# 3# Redistribution and use in source and binary forms, with or without 4# modification, are permitted provided that the following conditions are 5# met: 6# 7# * Redistributions of source code must retain the above copyright 8# notice, this list of conditions and the following disclaimer. 9# * Redistributions in binary form must reproduce the above 10# copyright notice, this list of conditions and the following disclaimer 11# in the documentation and/or other materials provided with the 12# distribution. 13# * Neither the name of Google Inc. nor the names of its 14# contributors may be used to endorse or promote products derived from 15# this software without specific prior written permission. 16# 17# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 18# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 19# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 20# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 21# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 22# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 23# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 24# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 25# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 26# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 27# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 29# FIXME: remove this whitespace diff. 30# 31[MASTER] 32 33# Specify a configuration file. 34#rcfile= 35 36# Python code to execute, usually for sys.path manipulation such as 37# pygtk.require(). 38#init-hook= 39 40# Profiled execution. 41profile=no 42 43# Add files or directories to the blacklist. They should be base names, not 44# paths. 45ignore=CVS 46 47# Pickle collected data for later comparisons. 48persistent=yes 49 50# List of plugins (as comma separated values of python modules names) to load, 51# usually to register additional checkers. 52load-plugins= 53 54 55[MESSAGES CONTROL] 56 57# Enable the message, report, category or checker with the given id(s). You can 58# either give multiple identifier separated by comma (,) or put this option 59# multiple time. 60#enable= 61 62# Disable the message, report, category or checker with the given id(s). You 63# can either give multiple identifier separated by comma (,) or put this option 64# multiple time (only on the command line, not in the configuration file where 65# it should appear only once). 66# CHANGED: 67# C0103: Invalid name "" 68# C0111: Missing docstring 69# C0301: Line too long 70# C0302: Too many lines in module (N) 71# I0010: Unable to consider inline option '' 72# I0011: Locally disabling WNNNN 73# 74# R0201: Method could be a function 75# R0801: Similar lines in N files 76# R0901: Too many ancestors (8/7) 77# R0902: Too many instance attributes (N/7) 78# R0903: Too few public methods (N/2) 79# R0904: Too many public methods (N/20) 80# R0911: Too many return statements (N/6) 81# R0912: Too many branches (N/12) 82# R0913: Too many arguments (N/5) 83# R0914: Too many local variables (N/15) 84# R0915: Too many statements (N/50) 85# R0921: Abstract class not referenced 86# R0922: Abstract class is only referenced 1 times 87# W0122: Use of the exec statement 88# W0141: Used builtin function '' 89# W0212: Access to a protected member X of a client class 90# W0142: Used * or ** magic 91# W0401: Wildcard import X 92# W0402: Uses of a deprecated module 'string' 93# W0404: 41: Reimport 'XX' (imported line NN) 94# W0511: TODO 95# W0603: Using the global statement 96# W0614: Unused import X from wildcard import 97# W0703: Catch "Exception" 98# W1201: Specify string format arguments as logging function parameters 99disable=C0103,C0111,C0301,C0302,I0010,I0011,R0201,R0801,R0901,R0902,R0903,R0904,R0911,R0912,R0913,R0914,R0915,R0921,R0922,W0122,W0141,W0142,W0212,W0401,W0402,W0404,W0511,W0603,W0614,W0703,W1201 100 101 102[REPORTS] 103 104# Set the output format. Available formats are text, parseable, colorized, msvs 105# (visual studio) and html 106output-format=text 107 108# Include message's id in output 109include-ids=yes 110 111# Put messages in a separate file for each module / package specified on the 112# command line instead of printing them on stdout. Reports (if any) will be 113# written in a file name "pylint_global.[txt|html]". 114files-output=no 115 116# Tells whether to display a full report or only the messages 117# CHANGED: 118reports=no 119 120# Python expression which should return a note less than 10 (10 is the highest 121# note). You have access to the variables errors warning, statement which 122# respectively contain the number of errors / warnings messages and the total 123# number of statements analyzed. This is used by the global evaluation report 124# (RP0004). 125evaluation=10.0 - ((float(5 * error + warning + refactor + convention) / statement) * 10) 126 127# Add a comment according to your evaluation note. This is used by the global 128# evaluation report (RP0004). 129comment=no 130 131 132[VARIABLES] 133 134# Tells whether we should check for unused import in __init__ files. 135init-import=no 136 137# A regular expression matching the beginning of the name of dummy variables 138# (i.e. not used). 139dummy-variables-rgx=_|dummy 140 141# List of additional names supposed to be defined in builtins. Remember that 142# you should avoid to define new builtins when possible. 143additional-builtins= 144 145 146[TYPECHECK] 147 148# Tells whether missing members accessed in mixin class should be ignored. A 149# mixin class is detected if its name ends with "mixin" (case insensitive). 150ignore-mixin-members=yes 151 152# List of classes names for which member attributes should not be checked 153# (useful for classes with attributes dynamically set). 154ignored-classes=SQLObject,twisted.internet.reactor,hashlib,google.appengine.api.memcache 155 156# When zope mode is activated, add a predefined set of Zope acquired attributes 157# to generated-members. 158zope=no 159 160# List of members which are set dynamically and missed by pylint inference 161# system, and so shouldn't trigger E0201 when accessed. Python regular 162# expressions are accepted. 163generated-members=REQUEST,acl_users,aq_parent 164 165 166[MISCELLANEOUS] 167 168# List of note tags to take in consideration, separated by a comma. 169notes=FIXME,XXX,TODO 170 171 172[SIMILARITIES] 173 174# Minimum lines number of a similarity. 175min-similarity-lines=4 176 177# Ignore comments when computing similarities. 178ignore-comments=yes 179 180# Ignore docstrings when computing similarities. 181ignore-docstrings=yes 182 183 184[FORMAT] 185 186# Maximum number of characters on a single line. 187max-line-length=200 188 189# Maximum number of lines in a module 190max-module-lines=1000 191 192# String used as indentation unit. This is usually " " (4 spaces) or "\t" (1 193# tab). 194# CHANGED: 195indent-string=' ' 196 197 198[BASIC] 199 200# Required attributes for module, separated by a comma 201required-attributes= 202 203# List of builtins function names that should not be used, separated by a comma 204bad-functions=map,filter,apply,input 205 206# Regular expression which should only match correct module names 207module-rgx=(([a-z_][a-z0-9_]*)|([A-Z][a-zA-Z0-9]+))$ 208 209# Regular expression which should only match correct module level names 210const-rgx=(([A-Z_][A-Z0-9_]*)|(__.*__))$ 211 212# Regular expression which should only match correct class names 213class-rgx=[A-Z_][a-zA-Z0-9]+$ 214 215# Regular expression which should only match correct function names 216function-rgx=[a-z_][a-z0-9_]{2,30}$ 217 218# Regular expression which should only match correct method names 219method-rgx=[a-z_][a-z0-9_]{2,30}$ 220 221# Regular expression which should only match correct instance attribute names 222attr-rgx=[a-z_][a-z0-9_]{2,30}$ 223 224# Regular expression which should only match correct argument names 225argument-rgx=[a-z_][a-z0-9_]{2,30}$ 226 227# Regular expression which should only match correct variable names 228variable-rgx=[a-z_][a-z0-9_]{2,30}$ 229 230# Regular expression which should only match correct list comprehension / 231# generator expression variable names 232inlinevar-rgx=[A-Za-z_][A-Za-z0-9_]*$ 233 234# Good variable names which should always be accepted, separated by a comma 235good-names=i,j,k,ex,Run,_ 236 237# Bad variable names which should always be refused, separated by a comma 238bad-names=foo,bar,baz,toto,tutu,tata 239 240# Regular expression which should only match functions or classes name which do 241# not require a docstring 242no-docstring-rgx=__.*__ 243 244 245[DESIGN] 246 247# Maximum number of arguments for function / method 248max-args=5 249 250# Argument names that match this expression will be ignored. Default to name 251# with leading underscore 252ignored-argument-names=_.* 253 254# Maximum number of locals for function / method body 255max-locals=15 256 257# Maximum number of return / yield for function / method body 258max-returns=6 259 260# Maximum number of branch for function / method body 261max-branchs=12 262 263# Maximum number of statements in function / method body 264max-statements=50 265 266# Maximum number of parents for a class (see R0901). 267max-parents=7 268 269# Maximum number of attributes for a class (see R0902). 270max-attributes=7 271 272# Minimum number of public methods for a class (see R0903). 273min-public-methods=2 274 275# Maximum number of public methods for a class (see R0904). 276max-public-methods=20 277 278 279[CLASSES] 280 281# List of interface methods to ignore, separated by a comma. This is used for 282# instance to not check methods defines in Zope's Interface base class. 283ignore-iface-methods=isImplementedBy,deferred,extends,names,namesAndDescriptions,queryDescriptionFor,getBases,getDescriptionFor,getDoc,getName,getTaggedValue,getTaggedValueTags,isEqualOrExtendedBy,setTaggedValue,isImplementedByInstancesOf,adaptWith,is_implemented_by 284 285# List of method names used to declare (i.e. assign) instance attributes. 286defining-attr-methods=__init__,__new__,setUp 287 288# List of valid names for the first argument in a class method. 289valid-classmethod-first-arg=cls 290 291 292[IMPORTS] 293 294# Deprecated modules which should not be used, separated by a comma 295deprecated-modules=regsub,string,TERMIOS,Bastion,rexec 296 297# Create a graph of every (i.e. internal and external) dependencies in the 298# given file (report RP0402 must not be disabled) 299import-graph= 300 301# Create a graph of external dependencies in the given file (report RP0402 must 302# not be disabled) 303ext-import-graph= 304 305# Create a graph of internal dependencies in the given file (report RP0402 must 306# not be disabled) 307int-import-graph= 308 309 310[EXCEPTIONS] 311 312# Exceptions that will emit a warning when being caught. Defaults to 313# "Exception" 314overgeneral-exceptions=Exception 315