[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH RFC 04/32] python/qemu/lib: delint, add pylintrc
From: |
John Snow |
Subject: |
[PATCH RFC 04/32] python/qemu/lib: delint, add pylintrc |
Date: |
Thu, 14 May 2020 01:53:35 -0400 |
Bring our these files up to speed with pylint 2.5.0.
Add a pylintrc file to formalize which pylint subset
we are targeting.
The similarity ignore is there to suppress similarity
reports across imports, which for typing constants,
are going to trigger this report erroneously.
Signed-off-by: John Snow <address@hidden>
---
python/qemu/lib/machine.py | 6 ++--
python/qemu/lib/pylintrc | 58 ++++++++++++++++++++++++++++++++++++++
python/qemu/lib/qtest.py | 42 +++++++++++++++++----------
3 files changed, 88 insertions(+), 18 deletions(-)
create mode 100644 python/qemu/lib/pylintrc
diff --git a/python/qemu/lib/machine.py b/python/qemu/lib/machine.py
index e3ea523571..c79fc8fb89 100644
--- a/python/qemu/lib/machine.py
+++ b/python/qemu/lib/machine.py
@@ -58,7 +58,7 @@ def __init__(self, reply):
self.reply = reply
-class QEMUMachine(object):
+class QEMUMachine:
"""
A QEMU VM
@@ -242,7 +242,7 @@ def _base_args(self):
'chardev=mon,mode=control'])
if self._machine is not None:
args.extend(['-machine', self._machine])
- for i in range(self._console_index):
+ for _ in range(self._console_index):
args.extend(['-serial', 'null'])
if self._console_set:
self._console_address = os.path.join(self._sock_dir,
@@ -383,7 +383,7 @@ def shutdown(self, has_quit: bool = False) -> None:
command = ' '.join(self._qemu_full_args)
else:
command = ''
- LOG.warning(msg, -exitcode, command)
+ LOG.warning(msg, -int(exitcode), command)
self._launched = False
diff --git a/python/qemu/lib/pylintrc b/python/qemu/lib/pylintrc
new file mode 100644
index 0000000000..5d6ae7367d
--- /dev/null
+++ b/python/qemu/lib/pylintrc
@@ -0,0 +1,58 @@
+[MASTER]
+
+[MESSAGES CONTROL]
+
+# Disable the message, report, category or checker with the given id(s). You
+# can either give multiple identifiers separated by comma (,) or put this
+# option multiple times (only on the command line, not in the configuration
+# file where it should appear only once). You can also use "--disable=all" to
+# disable everything first and then reenable specific checks. For example, if
+# you want to run only the similarities checker, you can use "--disable=all
+# --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,
+
+[REPORTS]
+
+[REFACTORING]
+
+[MISCELLANEOUS]
+
+[LOGGING]
+
+[BASIC]
+
+# Good variable names which should always be accepted, separated by a comma.
+good-names=i,
+ j,
+ k,
+ ex,
+ Run,
+ _,
+ fd,
+
+[VARIABLES]
+
+[STRING]
+
+[SPELLING]
+
+[FORMAT]
+
+[SIMILARITIES]
+
+# Ignore imports when computing similarities.
+ignore-imports=yes
+
+[TYPECHECK]
+
+[CLASSES]
+
+[IMPORTS]
+
+[DESIGN]
+
+[EXCEPTIONS]
diff --git a/python/qemu/lib/qtest.py b/python/qemu/lib/qtest.py
index d24ad04256..53d814c064 100644
--- a/python/qemu/lib/qtest.py
+++ b/python/qemu/lib/qtest.py
@@ -1,5 +1,11 @@
-# QEMU qtest library
-#
+"""
+QEMU qtest library
+
+qtest offers the QEMUQtestProtocol and QEMUQTestMachine classes, which
+offer a connection to QEMU's qtest protocol socket, and a qtest-enabled
+subclass of QEMUMachine, respectively.
+"""
+
# Copyright (C) 2015 Red Hat Inc.
#
# Authors:
@@ -17,19 +23,21 @@
from .machine import QEMUMachine
-class QEMUQtestProtocol(object):
+class QEMUQtestProtocol:
+ """
+ QEMUQtestProtocol implements a connection to a qtest socket.
+
+ :param address: QEMU address, can be either a unix socket path (string)
+ or a tuple in the form ( address, port ) for a TCP
+ connection
+ :param server: server mode, listens on the socket (bool)
+ :raise socket.error: on socket connection errors
+
+ .. note::
+ No conection is estabalished by __init__(), this is done
+ by the connect() or accept() methods.
+ """
def __init__(self, address, server=False):
- """
- Create a QEMUQtestProtocol object.
-
- @param address: QEMU address, can be either a unix socket path (string)
- or a tuple in the form ( address, port ) for a TCP
- connection
- @param server: server mode, listens on the socket (bool)
- @raise socket.error on socket connection errors
- @note No connection is established, this is done by the connect() or
- accept() methods
- """
self._address = address
self._sock = self._get_sock()
self._sockfile = None
@@ -73,15 +81,19 @@ def cmd(self, qtest_cmd):
return resp
def close(self):
+ """Close this socket."""
self._sock.close()
self._sockfile.close()
def settimeout(self, timeout):
+ """Set a timeout, in seconds."""
self._sock.settimeout(timeout)
class QEMUQtestMachine(QEMUMachine):
- '''A QEMU VM'''
+ """
+ A QEMU VM, with a qtest socket available.
+ """
def __init__(self, binary, args=None, name=None, test_dir="/var/tmp",
socket_scm_helper=None, sock_dir=None):
--
2.21.1
- Re: [PATCH RFC 01/32] python/qemu: create qemu.lib module, (continued)
[PATCH RFC 02/32] scripts/qmp: Fix shebang and imports, John Snow, 2020/05/14
[PATCH RFC 03/32] python//machine.py: remove bare except, John Snow, 2020/05/14
Re: [PATCH RFC 03/32] python//machine.py: remove bare except, Philippe Mathieu-Daudé, 2020/05/26
[PATCH RFC 04/32] python/qemu/lib: delint, add pylintrc,
John Snow <=
[PATCH RFC 05/32] python/qemu/lib: delint; add flake8 config, John Snow, 2020/05/14
[PATCH RFC 06/32] python/qemu: formalize as package, John Snow, 2020/05/14
[PATCH RFC 07/32] python/qemu: add README.rst, John Snow, 2020/05/14
[PATCH RFC 10/32] python/qemu: Add flake8 to Pipfile, John Snow, 2020/05/14
[PATCH RFC 09/32] python/qemu: add pylint to Pipfile, John Snow, 2020/05/14
[PATCH RFC 08/32] python/qemu: Add Pipfile, John Snow, 2020/05/14