1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
|
# SPDX-License-Identifier: GPL-2.0-or-later
# Copyright (C) 2025 LAVA contributors
# Pylint configuration
[tool.pylint.main]
jobs = 0 # Scale number of jobs to number of CPUs
init-hook = "import django; django.setup()" # Fix django apps not being initialized
load-plugins = "pylint_django"
recursive = true
py-version = "3.9" # Debian 11 (bullseye) Python version
disable = [
"format", # Formatting is handled by black and isort
"design",
"C0103", # Method name doesn't conform to snake_case naming style
"C0104", # Disallowed name
"C0114", # Missing module docstring
"C0115", # Missing class docstring
"C0116", # Missing function or method docstring
"C0209", # Formatting a regular string which could be an f-string
"C0411", # Wrong import order. This is handled by `isort --profile black`.
"C0412", # Imports from package %s are not grouped
"C0415", # Import outside toplevel
"E0202", # An attribute defined in %s line %s hides this method
"E0307", # __str__ does not return str
"E0401", # Unable to import '%s'
"E0611", # No name '%s' in module '%s'
"E1101", # Instance of x has no y member
"E1136", # Value is unsubscriptable
"W1309", # Using an f-string that does not have any interpolated variables
"W1510", # 'subprocess.run' used without explicitly defining the value for 'check'.
"R0401", # Cyclic import (%s -> %s)
"R0801", # Duplicate code
"R1702", # Too many nested blocks
"R1705", # Unnecessary "else" after "return"
"R1710", # Either all return statements in a function should return an expression,
# or none of them should.
"R1711", # Useless return at end of function or method
"R1720", # Unnecessary "elif" after "raise"
"R1723", # Unnecessary "else" after "break"
"R1724", # Unnecessary "else" after "continue", remove the "else" and de-indent the code inside it
"R1732", # Consider using 'with' for resource-allocating operations
"W0107", # Unnecessary pass statement
"W0201", # Attribute defined outside __init__
"W0212", # Access to a protected member of a client class
"W0221", # Used when a method has a different number of arguments than
# the implemented interface or in an overridden method.
"W0223", # Method is abstract in class but is not overridden in child class
"W0237", # Parameter has been renamed in overriding method
"W0511", # FIXME comments
"W0603", # Using the global statement
"W0611", # Unused import
"W0612", # Unused variable
"W0613", # Unused argument
"W0621", # Redefining name from outer scope
"W0622", # Redefining built-in
"W0632", # Possible unbalanced tuple unpacking
"W0707", # Consider explicitly re-raising using 'raise x from y'
"W0718", # Catching too general exception
"W0719", # Raising too general exception
"W1115", # Non-string value assigned
"W1201", # Use lazy % formatting in logging functions
"W1203", # Use lazy % or % formatting in logging functions
"W1509", # Using preexec_fn keyword which may be unsafe in the presence of threads
"W1514", # Using open without explicitly specifying an encoding
]
|