2ec0177edc
With migration from ubuntu jammy to noble, python3.11 is not available anymore. This makes the job to fail on pre-install step. So let's use Python 3.12 which is available out of the box on Noble after switch. This also bumps pylint version, as older one does not work anymore with Python 3.12. New pylint brings quite some new rules with it. Some were disabled, some were fixed within this patch. Change-Id: I4ba288966c582910e8a822d4531e29c9c005e48f
113 lines
3.1 KiB
INI
113 lines
3.1 KiB
INI
# The format of this file isn't really documented; just use --generate-rcfile
|
|
[MASTER]
|
|
# Add <file or directory> to the black list. It should be a base name, not a
|
|
# path. You may set this option multiple times.
|
|
ignore=test,tests,tests.py,local_settings.py,horizon_wsgi.py
|
|
|
|
[Messages Control]
|
|
disable=
|
|
# "F" Fatal errors that prevent further processing
|
|
# "I" Informational noise
|
|
locally-disabled,
|
|
# "E" Error for important programming issues (likely bugs)
|
|
method-hidden,
|
|
no-member,
|
|
not-callable,
|
|
# "W" Warnings for stylistic problems or minor programming issues
|
|
arguments-differ,
|
|
arguments-renamed,
|
|
attribute-defined-outside-init,
|
|
bad-indentation,
|
|
broad-except,
|
|
fixme,
|
|
# python3 way: pylint suggests to follow PEP 3102
|
|
keyword-arg-before-vararg, # TODO
|
|
missing-timeout,
|
|
pointless-string-statement,
|
|
protected-access,
|
|
# We should do it carefully considering PEP3134
|
|
raise-missing-from, # TODO
|
|
redefined-builtin,
|
|
redefined-outer-name,
|
|
signature-differs,
|
|
super-init-not-called,
|
|
unidiomatic-typecheck,
|
|
unused-argument,
|
|
unused-wildcard-import,
|
|
useless-else-on-loop,
|
|
wildcard-import,
|
|
# "C" Coding convention violations
|
|
abstract-method,
|
|
anomalous-backslash-in-string,
|
|
consider-using-dict-items,
|
|
consider-using-f-string,
|
|
global-statement,
|
|
# Not a good idea to disable this globally
|
|
# Check one by one and add pylint disabled comment if needed
|
|
import-outside-toplevel, # TODO
|
|
invalid-name,
|
|
missing-docstring,
|
|
superfluous-parens,
|
|
too-many-lines,
|
|
unused-variable,
|
|
# import order is checked by flake8 (and pylint rule is incompatible with it)
|
|
wrong-import-order,
|
|
# "R" Refactor recommendations
|
|
consider-using-generator,
|
|
duplicate-code,
|
|
inconsistent-return-statements, # TODO
|
|
too-many-ancestors,
|
|
too-many-arguments,
|
|
too-many-branches,
|
|
too-many-function-args,
|
|
too-many-instance-attributes,
|
|
too-many-locals,
|
|
too-many-positional-arguments,
|
|
too-many-return-statements,
|
|
too-many-statements,
|
|
use-a-generator,
|
|
use-dict-literal,
|
|
use-yield-from,
|
|
useless-object-inheritance,
|
|
|
|
[Basic]
|
|
# Variable names can be 1 to 31 characters long, with lowercase and underscores
|
|
variable-rgx=[a-z_][a-z0-9_]{0,30}$
|
|
|
|
# Argument names can be 2 to 31 characters long, with lowercase and underscores
|
|
argument-rgx=[a-z_][a-z0-9_]{1,30}$
|
|
|
|
# Method names should be at least 3 characters long
|
|
# and be lowecased with underscores
|
|
method-rgx=([a-z_][a-z0-9_]{2,50}|setUp|tearDown)$
|
|
|
|
# Module names matching keystone-* are ok (files in bin/)
|
|
module-rgx=(([a-z_][a-z0-9_]*)|([A-Z][a-zA-Z0-9]+)|(keystone-[a-z0-9_-]+))$
|
|
|
|
# Don't require docstrings on tests.
|
|
no-docstring-rgx=((__.*__)|([tT]est.*)|setUp|tearDown)$
|
|
|
|
[Format]
|
|
# Maximum number of characters on a single line.
|
|
max-line-length=80
|
|
|
|
[Design]
|
|
max-public-methods=100
|
|
min-public-methods=0
|
|
max-args=6
|
|
|
|
[Variables]
|
|
|
|
# List of additional names supposed to be defined in builtins. Remember that
|
|
# you should avoid to define new builtins when possible.
|
|
# _ is used by our localization
|
|
additional-builtins=_
|
|
|
|
[typecheck]
|
|
# List of module names for which member attributes should not be checked
|
|
ignored-modules=
|
|
|
|
[reports]
|
|
# Tells whether to display a full report or only the messages
|
|
reports=no
|