# Original file copied from: # https://chromium.googlesource.com/chromiumos/chromite/+/master/pylintrc [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 to the black list. It should be a base name, not a # path. You may set this option multiple times. ignore=CVS # Add files or directories matching the regex patterns to the blacklist. The # regex matches against base names, not paths. ignore-patterns= .*_pb2\.py$ # 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= # Configure quote preferences. string-quote = single-avoid-escape triple-quote = double docstring-quote = double [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 times. # cros-logging-import: logging is deprecated. Use "from chromite.lib import # cros_logging as logging" to import chromite/lib/cros_logging. # eq-without-hash: We omit this as we don't require all objects be hashable. # We'll wait for unittest coverage to detect missing __hash__ on objects. # no-absolute-import: We don't seem to rely on this behavior, so don't enforce # using this future import everywhere. # round-builtin: We omit this as all our usage of round() is OK with either # Python 2 or 3 behavior (and probably leans towards 3 anyways). #enable= # Disable the message, report, category or checker with the given id(s). You # can either give multiple identifiers separated by comma (,) or put this # option multiple times (only on the command line, not in the configuration # file where it should appear only once). You can also use "--disable=all" to # disable everything first and then reenable specific checks. For example, if # you want to run only the similarities checker, you can use "--disable=all # --enable=similarities". If you want to run only the classes checker, but have # no Warning level messages displayed, use "--disable=all --enable=classes # --disable=W". disable= [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 # CHANGE: No report. reports=no # Activate the evaluation score. score=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 [MISCELLANEOUS] # List of note tags to take in consideration, separated by a comma. notes=FIXME,XXX,TODO [FORMAT] # Maximum number of characters on a single line. max-line-length=80 # Maximum number of lines in a module max-module-lines=1000 # String used as indentation unit. This is usually " " (4 spaces) or "\t" (1 # tab). # CHANGE: Use " " instead. indent-string=' ' [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=pytsk3 # 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. # CHANGE: Added 'AndRaise', 'AndReturn', 'InAnyOrder' and 'MultipleTimes' for pymox. # CHANGE: Added tempdir for @osutils.TempDirDecorator. #generated-members= # List of modules for which member attributes should not be checked. # Modules listed here will not trigger import errors even if the linter can't # import them. # # pytest: Made available by our testing virtualenv and can be assumed exists. ignored-modules=pytest [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. # exit & quit are for the interactive interpreter shell only. # https://docs.python.org/3/library/constants.html#constants-added-by-the-site-module bad-functions= apply, exit, filter, input, map, quit, raw_input, reduce, # Regular expression which should only match correct module names module-rgx=(([a-z_][a-z0-9_]*)|([A-Z][a-zA-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,30}$ # Regular expression which should only match correct method names method-rgx=[a-z_][a-z0-9_]{2,30}$ # Regular expression which should only match correct instance attribute names attr-rgx=[a-z_][a-z0-9_]{2,30}$ # Regular expression which should only match correct argument names argument-rgx=[a-z_][a-z0-9_]{2,30}$ # Regular expression which should only match correct variable names variable-rgx=[a-z_][a-z0-9_]{2,30}$ # Regular expression which should only match correct list comprehension / # 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 good-names=e,i,j,k,ex,Run,_,db,es # 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=__.*__ [SIMILARITIES] # Minimum lines number of a similarity. min-similarity-lines=20 # Ignore comments when computing similarities. ignore-comments=yes # Ignore docstrings when computing similarities. ignore-docstrings=yes [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=_|unused_ # List of additional names supposed to be defined in builtins. Remember that # you should avoid to define new builtins when possible. #additional-builtins= [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= # List of method names used to declare (i.e. assign) instance attributes. defining-attr-methods=__init__,__new__,setUp [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=10 # 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 [IMPORTS] # Deprecated modules which should not be used, separated by a comma. # __builtin__: Use the 'six.moves.builtins' module instead # (or 'builtins' in Python 3). # apiclient: Use the 'googleapiclient' module instead. # Bastion: Dropped in Python 3. # ConfigParser: Use the 'six.moves.configparser' module instead # (or 'configparser' in Python 3). # cookielib: Use the 'six.moves.http_cookiejar' module instead # (or 'http.cookiejar' in Python 3). # cPickle: Use the 'pickle' module instead. # cStringIO: Use 'io.StringIO' or 'io.BytesIO' instead. # exceptions: Dropped in Python 3. # HTMLParser: Use the 'six.moves.html_parser' module instead # (or 'html.parser' in Python 3). # httplib: Use the 'six.moves.http_client' module instead # (or 'http.client' in Python 3). # md5: Use the 'hashlib' module instead. # mox: Use the 'mock' module instead. # optparse: Use the 'argparse' module instead. # Queue: Use the 'six.moves.queue' module instead (or 'queue' in Python 3). # regsub: Use the 're' module instead. # rexec: Dropped in Python 3. # StringIO: Use 'io.StringIO' or 'io.BytesIO' instead. # TERMIOS: Use the 'termios' module instead. # urllib2: Use the 'six.moves.urllib' module instead # (or 'urllib.request' in Python 3). # urlparse: Use the 'six.moves.urllib' module instead # (or 'urllib.parse' in Python 3). deprecated-modules= __builtin__, apiclient, Bastion, ConfigParser, cookielib, cPickle, cStringIO, exceptions, HTMLParser, httplib, md5, mox, optparse, Queue, regsub, rexec, StringIO, TERMIOS, urllib2, urlparse, # 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= # Force import order to recognize a module as part of the standard # compatibility libraries. known-standard-library= # Force import order to recognize a module as part of a third party library. known-third-party= _emerge, apiclient, elftools, gcloud, google, googleapiclient, httplib2, jinja2, jsonschema, lddtree, magic, mock, oauth2client, portage, pylint, requests, six, sqlalchemy, yaml, [LOGGING] # Apply logging string format checks to calls on these modules. logging-modules= logging,