[MESSAGES CONTROL]

disable=
    consider-using-f-string,  # many occurrences
    cyclic-import,  # consistent results require running with --jobs 1 and testing all files
    deprecated-method,  # results vary by Python version
    deprecated-module,  # results vary by Python version
    duplicate-code,  # consistent results require running with --jobs 1 and testing all files
    import-outside-toplevel,  # common pattern in ansible related code
    raise-missing-from,  # Python 2.x does not support raise from
    too-few-public-methods,
    too-many-arguments,
    too-many-branches,
    too-many-instance-attributes,
    too-many-lines,
    too-many-locals,
    too-many-nested-blocks,
    too-many-return-statements,
    too-many-statements,
    unspecified-encoding,  # always run with UTF-8 encoding enforced
    useless-return,  # complains about returning None when the return type is optional

[BASIC]

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

good-names=
    __metaclass__,
    C,
    ex,
    i,
    j,
    k,
    Run,

class-attribute-rgx=[A-Za-z_][A-Za-z0-9_]{1,40}$
attr-rgx=[a-z_][a-z0-9_]{1,40}$
method-rgx=[a-z_][a-z0-9_]{1,40}$
function-rgx=[a-z_][a-z0-9_]{1,40}$
module-rgx=[a-z_][a-z0-9_-]{2,40}$

[IMPORTS]

preferred-modules =
    distutils.version:ansible.module_utils.compat.version,

# These modules are used by ansible-test, but will not be present in the virtual environment running pylint.
# Listing them here makes it possible to enable the import-error check.
ignored-modules =
    voluptuous,
