On 6/25/21 12:45 PM, John Snow wrote:
> These suppressions only apply to a small handful of places. Instead of
> disabling them globally, disable them just in the cases where we
> need. The design of the machine class grew quite organically with tons
> of constructor and class instance variables -- there's little chance of
> meaningfully refactoring it in the near term, so just suppress the
> warnings for that class.
>
> Signed-off-by: John Snow <jsnow@redhat.com>
> ---
> python/qemu/machine/machine.py | 3 +++
> python/qemu/machine/qtest.py | 2 ++
> python/setup.cfg | 4 +---
> 3 files changed, 6 insertions(+), 3 deletions(-)
Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
>
> diff --git a/python/qemu/machine/machine.py b/python/qemu/machine/machine.py
> index b62435528e..e3345dfa1b 100644
> --- a/python/qemu/machine/machine.py
> +++ b/python/qemu/machine/machine.py
> @@ -84,6 +84,7 @@ class QEMUMachine:
> ...
> # vm is guaranteed to be shut down here
> """
> + # pylint: disable=too-many-instance-attributes, too-many-public-methods
>
> def __init__(self,
> binary: str,
> @@ -111,6 +112,8 @@ def __init__(self,
> @param console_log: (optional) path to console log file
> @note: Qemu process is not started until launch() is used.
> '''
> + # pylint: disable=too-many-arguments
> +
> # Direct user configuration
>
> self._binary = binary
> diff --git a/python/qemu/machine/qtest.py b/python/qemu/machine/qtest.py
> index 93700684d1..d6d9c6a34a 100644
> --- a/python/qemu/machine/qtest.py
> +++ b/python/qemu/machine/qtest.py
> @@ -116,6 +116,8 @@ def __init__(self,
> base_temp_dir: str = "/var/tmp",
> socket_scm_helper: Optional[str] = None,
> sock_dir: Optional[str] = None):
> + # pylint: disable=too-many-arguments
> +
> if name is None:
> name = "qemu-%d" % os.getpid()
> if sock_dir is None:
> diff --git a/python/setup.cfg b/python/setup.cfg
> index db1639c1f2..524789d6e0 100644
> --- a/python/setup.cfg
> +++ b/python/setup.cfg
> @@ -87,9 +87,7 @@ ignore_missing_imports = True
> # --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=too-many-arguments,
> - too-many-instance-attributes,
> - too-many-public-methods,
> +disable=
>
> [pylint.basic]
> # Good variable names which should always be accepted, separated by a comma.