[MASTER]
# Use multiple processes to speed up Pylint. Specifying 0 will auto-detect the
# number of processors available to use.
jobs=0

[MESSAGES CONTROL]

disable=
    missing-module-docstring,  # overdocumentation is a sin too
    missing-class-docstring,
    missing-function-docstring,
    # line-too-long,
    invalid-name,  # TODO: make up the correct regexes instead
    no-self-use,  # defining overridable methods' fingerprint
    too-few-public-methods,


[REPORTS]

output-format=colorized
reports=no
score=yes


[BASIC]

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


[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=8


[STRING]

# This flag controls whether inconsistent-quotes generates a warning when the
# character used as a quote delimiter is used inconsistently within a module.
check-quote-consistency=yes

# This flag controls whether the implicit-str-concat should generate a warning
# on implicit string concatenation in sequences defined over several lines.
check-str-concat-over-line-jumps=yes


[DESIGN]

# Maximum number of arguments for function / method.
max-args=8

# Maximum number of attributes for a class (see R0902).
max-attributes=7

# Maximum number of boolean expressions in an if statement (see R0916).
max-bool-expr=5

# Maximum number of branch for function / method body.
max-branches=12

# Maximum number of locals for function / method body.
max-locals=15

# Maximum number of parents for a class (see R0901).
max-parents=7

# Maximum number of public methods for a class (see R0904).
max-public-methods=20

# Maximum number of return / yield for function / method body.
max-returns=6

# Maximum number of statements in function / method body.
max-statements=50

# Minimum number of public methods for a class (see R0903).
min-public-methods=2


[EXCEPTIONS]

# Exceptions that will emit a warning when being caught. Defaults to
# "BaseException, Exception".
overgeneral-exceptions=BaseException,
                       Exception
