Home | History | Annotate | Download | only in webkitpy
      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.
     41 profile=no
     42 
     43 # Add files or directories to the blacklist. They should be base names, not
     44 # paths.
     45 ignore=CVS
     46 
     47 # Pickle collected data for later comparisons.
     48 persistent=yes
     49 
     50 # List of plugins (as comma separated values of python modules names) to load,
     51 # usually to register additional checkers.
     52 load-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
     99 disable=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
    106 output-format=text
    107 
    108 # Include message's id in output
    109 include-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]".
    114 files-output=no
    115 
    116 # Tells whether to display a full report or only the messages
    117 # CHANGED:
    118 reports=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).
    125 evaluation=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).
    129 comment=no
    130 
    131 
    132 [VARIABLES]
    133 
    134 # Tells whether we should check for unused import in __init__ files.
    135 init-import=no
    136 
    137 # A regular expression matching the beginning of the name of dummy variables
    138 # (i.e. not used).
    139 dummy-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.
    143 additional-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).
    150 ignore-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).
    154 ignored-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.
    158 zope=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.
    163 generated-members=REQUEST,acl_users,aq_parent
    164 
    165 
    166 [MISCELLANEOUS]
    167 
    168 # List of note tags to take in consideration, separated by a comma.
    169 notes=FIXME,XXX,TODO
    170 
    171 
    172 [SIMILARITIES]
    173 
    174 # Minimum lines number of a similarity.
    175 min-similarity-lines=4
    176 
    177 # Ignore comments when computing similarities.
    178 ignore-comments=yes
    179 
    180 # Ignore docstrings when computing similarities.
    181 ignore-docstrings=yes
    182 
    183 
    184 [FORMAT]
    185 
    186 # Maximum number of characters on a single line.
    187 max-line-length=200
    188 
    189 # Maximum number of lines in a module
    190 max-module-lines=1000
    191 
    192 # String used as indentation unit. This is usually " " (4 spaces) or "\t" (1
    193 # tab).
    194 # CHANGED:
    195 indent-string='    '
    196 
    197 
    198 [BASIC]
    199 
    200 # Required attributes for module, separated by a comma
    201 required-attributes=
    202 
    203 # List of builtins function names that should not be used, separated by a comma
    204 bad-functions=map,filter,apply,input
    205 
    206 # Regular expression which should only match correct module names
    207 module-rgx=(([a-z_][a-z0-9_]*)|([A-Z][a-zA-Z0-9]+))$
    208 
    209 # Regular expression which should only match correct module level names
    210 const-rgx=(([A-Z_][A-Z0-9_]*)|(__.*__))$
    211 
    212 # Regular expression which should only match correct class names
    213 class-rgx=[A-Z_][a-zA-Z0-9]+$
    214 
    215 # Regular expression which should only match correct function names
    216 function-rgx=[a-z_][a-z0-9_]{2,30}$
    217 
    218 # Regular expression which should only match correct method names
    219 method-rgx=[a-z_][a-z0-9_]{2,30}$
    220 
    221 # Regular expression which should only match correct instance attribute names
    222 attr-rgx=[a-z_][a-z0-9_]{2,30}$
    223 
    224 # Regular expression which should only match correct argument names
    225 argument-rgx=[a-z_][a-z0-9_]{2,30}$
    226 
    227 # Regular expression which should only match correct variable names
    228 variable-rgx=[a-z_][a-z0-9_]{2,30}$
    229 
    230 # Regular expression which should only match correct list comprehension /
    231 # generator expression variable names
    232 inlinevar-rgx=[A-Za-z_][A-Za-z0-9_]*$
    233 
    234 # Good variable names which should always be accepted, separated by a comma
    235 good-names=i,j,k,ex,Run,_
    236 
    237 # Bad variable names which should always be refused, separated by a comma
    238 bad-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
    242 no-docstring-rgx=__.*__
    243 
    244 
    245 [DESIGN]
    246 
    247 # Maximum number of arguments for function / method
    248 max-args=5
    249 
    250 # Argument names that match this expression will be ignored. Default to name
    251 # with leading underscore
    252 ignored-argument-names=_.*
    253 
    254 # Maximum number of locals for function / method body
    255 max-locals=15
    256 
    257 # Maximum number of return / yield for function / method body
    258 max-returns=6
    259 
    260 # Maximum number of branch for function / method body
    261 max-branchs=12
    262 
    263 # Maximum number of statements in function / method body
    264 max-statements=50
    265 
    266 # Maximum number of parents for a class (see R0901).
    267 max-parents=7
    268 
    269 # Maximum number of attributes for a class (see R0902).
    270 max-attributes=7
    271 
    272 # Minimum number of public methods for a class (see R0903).
    273 min-public-methods=2
    274 
    275 # Maximum number of public methods for a class (see R0904).
    276 max-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.
    283 ignore-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.
    286 defining-attr-methods=__init__,__new__,setUp
    287 
    288 # List of valid names for the first argument in a class method.
    289 valid-classmethod-first-arg=cls
    290 
    291 
    292 [IMPORTS]
    293 
    294 # Deprecated modules which should not be used, separated by a comma
    295 deprecated-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)
    299 import-graph=
    300 
    301 # Create a graph of external dependencies in the given file (report RP0402 must
    302 # not be disabled)
    303 ext-import-graph=
    304 
    305 # Create a graph of internal dependencies in the given file (report RP0402 must
    306 # not be disabled)
    307 int-import-graph=
    308 
    309 
    310 [EXCEPTIONS]
    311 
    312 # Exceptions that will emit a warning when being caught. Defaults to
    313 # "Exception"
    314 overgeneral-exceptions=Exception
    315