third_party/blink/tools/blinkpy/pylintrc - chromium/src - Git at Google (original) (raw)

# Copyright (c) 2012 Google Inc. All rights reserved.

# Redistribution and use in source and binary forms, with or without

# modification, are permitted provided that the following conditions are

# met:

# * Redistributions of source code must retain the above copyright

# notice, this list of conditions and the following disclaimer.

# * Redistributions in binary form must reproduce the above

# copyright notice, this list of conditions and the following disclaimer

# in the documentation and/or other materials provided with the

# distribution.

# * Neither the name of Google Inc. nor the names of its

# contributors may be used to endorse or promote products derived from

# this software without specific prior written permission.

# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS

# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT

# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR

# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT

# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,

# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT

# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,

# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY

# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT

# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE

# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

[MASTER]

# Specify a configuration file.

#rcfile=

# Python code to execute, usually for sys.path manipulation such as

# pygtk.require().

#init-hook=

# Profiled execution.

profile=no

# Add files or directories to the ignorelist. They should be base names, not

# paths.

ignore=CVS

# Pickle collected data for later comparisons.

persistent=yes

# List of plugins (as comma separated values of python modules names) to load,

# usually to register additional checkers.

load-plugins=

[MESSAGES CONTROL]

# 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.

#enable=

# 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).

# CHANGED:

# The "design" disable below disables all of the "too-many-*" checks,

# e.g. too-many-arguments, too-many-branches.

#disable=

# design,

# missing-docstring,

# locally-disabled,

# locally-enabled,

# star-args,

# wildcard-import,

# fixme,

# global-statement,

# no-self-use,

# TODO(crbug.com/1351132): pylint has been broken for a while. For now, only

# flag errors and above that will stop programs from running. Gradually fix

# warnings in follow-up changes.

disable=

C,

R,

W,

# Many packages become available at runtime by manipulating `sys.path`.

import-error,

# Allow dynamically created attributes.

no-member,

enable=

unused-import

[REPORTS]

# Set the output format. Available formats are text, parseable, colorized, msvs

# (visual studio) and html.

output-format=text

# 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]".

files-output=no

# Tells whether to display a full report or only the messages.

reports=no

# 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).

evaluation=10.0 - ((float(5 * error + warning + refactor + convention) / statement) * 10)

# Add a comment according to your evaluation note. This is used by the global

# evaluation report (RP0004).

comment=no

[VARIABLES]

# Tells whether we should check for unused import in __init__ files.

init-import=no

# A regular expression matching the beginning of the name of dummy variables

# (i.e. not used).

dummy-variables-rgx=_|dummy

# List of additional names supposed to be defined in builtins. Remember that

# you should avoid to define new builtins when possible.

additional-builtins=

[TYPECHECK]

# Tells whether missing members accessed in mixin class should be ignored. A

# mixin class is detected if its name ends with "mixin" (case insensitive).

ignore-mixin-members=yes

# List of classes names for which member attributes should not be checked

# (useful for classes with attributes dynamically set).

ignored-classes=SQLObject,twisted.internet.reactor,hashlib,google.appengine.api.memcache

# When zope mode is activated, add a predefined set of Zope acquired attributes

# to generated-members.

zope=no

# List of members which are set dynamically and missed by pylint inference

# system, and so shouldn't trigger E0201 when accessed. Python regular

# expressions are accepted.

generated-members=REQUEST,acl_users,aq_parent

[MISCELLANEOUS]

# List of note tags to take in consideration, separated by a comma.

notes=FIXME,XXX,TODO

[SIMILARITIES]

# Minimum lines number of a similarity.

min-similarity-lines=4

# Ignore comments when computing similarities.

ignore-comments=yes

# Ignore docstrings when computing similarities.

ignore-docstrings=yes

[FORMAT]

# Maximum number of characters on a single line.

max-line-length=132

# Maximum number of lines in a module.

max-module-lines=4000

# String used as indentation unit.

indent-string=' '

[BASIC]

# Required attributes for module, separated by a comma.

required-attributes=

# List of builtins function names that should not be used, separated by a comma.

bad-functions=apply

# Regular expression which should only match correct module names.

module-rgx=(([a-z_][a-z0-9_]*)|([A-Z][a-zA-Z0-9]+)|([a-z-][a-z0-9-]*))$

# Regular expression which should only match correct module level names.

const-rgx=(([A-Z_][A-Z0-9_]*)|(__.*__))$

# Regular expression which should only match correct class names.

class-rgx=[A-Z_][a-zA-Z0-9]+$

# Regular expression which should only match correct function names

function-rgx=[a-z_][a-z0-9_]{2,60}$

# Regular expression which should only match correct method names

method-rgx=[a-z_][a-z0-9_]{2,60}$

# Regular expression which should only match correct instance attribute names.

attr-rgx=[a-z_][a-z0-9_]{1,30}$

# Regular expression which should only match correct argument names.

argument-rgx=[a-z_][a-z0-9_]{1,30}$

# Regular expression which should only match correct variable names.

variable-rgx=[a-z_][a-z0-9_]{1,30}$

# Regular expression which should only match correct list comprehension or

# generator expression variable names.

inlinevar-rgx=[A-Za-z_][A-Za-z0-9_]*$

# Good variable names which should always be accepted, separated by a comma.

# These short names are acceptable in the following cases:

# _ - unused value

# i/j/k - for XXX in range():

# k/v - for k, v in x.items():

# x/y/z - coordinates

# e - except XXXError as e:

# f/fd - with open('blah') as f:

# _log/Run - blinkpy functions

good-names=_,i,j,k,v,x,y,z,e,f,fd,_log,Run

# Bad variable names which should always be refused, separated by a comma.

bad-names=foo,bar,baz,toto,tutu,tata

# Regular expression which should only match functions or classes name which do

# not require a docstring.

no-docstring-rgx=__.*__

[DESIGN]

# Maximum number of arguments for function / method.

max-args=5

# Argument names that match this expression will be ignored. Default to name

# with leading underscore.

ignored-argument-names=_.*

# Maximum number of locals for function / method body.

max-locals=15

# Maximum number of return / yield for function / method body.

max-returns=6

# Maximum number of branch for function / method body.

max-branchs=12

# Maximum number of statements in function / method body.

max-statements=50

# Maximum number of parents for a class (see R0901).

max-parents=7

# Maximum number of attributes for a class (see R0902).

max-attributes=7

# Minimum number of public methods for a class (see R0903).

min-public-methods=2

# Maximum number of public methods for a class (see R0904).

max-public-methods=20

[CLASSES]

# 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.

ignore-iface-methods=isImplementedBy,deferred,extends,names,namesAndDescriptions,queryDescriptionFor,getBases,getDescriptionFor,getDoc,getName,getTaggedValue,getTaggedValueTags,isEqualOrExtendedBy,setTaggedValue,isImplementedByInstancesOf,adaptWith,is_implemented_by

# List of method names used to declare (i.e. assign) instance attributes.

defining-attr-methods=__init__,__new__,setUp

# List of valid names for the first argument in a class method.

valid-classmethod-first-arg=cls

[IMPORTS]

# Deprecated modules which should not be used, separated by a comma.

deprecated-modules=regsub,string,TERMIOS,Bastion,rexec

# Create a graph of every (i.e. internal and external) dependencies in the

# given file (report RP0402 must not be disabled).

import-graph=

# Create a graph of external dependencies in the given file (report RP0402 must

# not be disabled).

ext-import-graph=

# Create a graph of internal dependencies in the given file (report RP0402 must

# not be disabled).

int-import-graph=

[EXCEPTIONS]

# Exceptions that will emit a warning when being caught. Defaults to

# "Exception".

overgeneral-exceptions=Exception