From: John Snow <jsnow@redhat.com>
To: qemu-devel@nongnu.org
Cc: "Eduardo Habkost" <ehabkost@redhat.com>,
"John Snow" <jsnow@redhat.com>,
"Michael Roth" <mdroth@linux.vnet.ibm.com>,
"Markus Armbruster" <armbru@redhat.com>,
"Cleber Rosa" <crosa@redhat.com>,
"Philippe Mathieu-Daudé" <philmd@redhat.com>
Subject: [PATCH v6 06/36] qapi: Remove wildcard includes
Date: Fri, 9 Oct 2020 12:15:28 -0400 [thread overview]
Message-ID: <20201009161558.107041-7-jsnow@redhat.com> (raw)
In-Reply-To: <20201009161558.107041-1-jsnow@redhat.com>
Wildcard includes become hard to manage when refactoring and dealing
with circular dependencies with strictly typed mypy.
flake8 also flags each one as a warning, as it is not smart enough to
know which names exist in the imported file.
Remove them and include things explicitly by name instead.
Signed-off-by: John Snow <jsnow@redhat.com>
Reviewed-by: Eduardo Habkost <ehabkost@redhat.com>
Reviewed-by: Cleber Rosa <crosa@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
---
scripts/qapi/commands.py | 2 +-
scripts/qapi/events.py | 7 ++++++-
scripts/qapi/gen.py | 12 +++++++++---
scripts/qapi/introspect.py | 7 ++++++-
scripts/qapi/types.py | 8 +++++++-
scripts/qapi/visit.py | 10 +++++++++-
6 files changed, 38 insertions(+), 8 deletions(-)
diff --git a/scripts/qapi/commands.py b/scripts/qapi/commands.py
index 1f43a0a34ef..e06c10afcd0 100644
--- a/scripts/qapi/commands.py
+++ b/scripts/qapi/commands.py
@@ -13,7 +13,7 @@
See the COPYING file in the top-level directory.
"""
-from .common import *
+from .common import build_params, c_name, mcgen
from .gen import QAPIGenCCode, QAPISchemaModularCVisitor, ifcontext
diff --git a/scripts/qapi/events.py b/scripts/qapi/events.py
index 04672724388..6b3afa14d72 100644
--- a/scripts/qapi/events.py
+++ b/scripts/qapi/events.py
@@ -12,7 +12,12 @@
See the COPYING file in the top-level directory.
"""
-from .common import *
+from .common import (
+ build_params,
+ c_enum_const,
+ c_name,
+ mcgen,
+)
from .gen import QAPISchemaModularCVisitor, ifcontext
from .schema import QAPISchemaEnumMember
from .types import gen_enum, gen_enum_lookup
diff --git a/scripts/qapi/gen.py b/scripts/qapi/gen.py
index fc57fdca5b9..1fed712b43b 100644
--- a/scripts/qapi/gen.py
+++ b/scripts/qapi/gen.py
@@ -11,13 +11,19 @@
# This work is licensed under the terms of the GNU GPL, version 2.
# See the COPYING file in the top-level directory.
-
+from contextlib import contextmanager
import errno
import os
import re
-from contextlib import contextmanager
-from .common import *
+from .common import (
+ c_fname,
+ gen_endif,
+ gen_if,
+ guardend,
+ guardstart,
+ mcgen,
+)
from .schema import QAPISchemaVisitor
diff --git a/scripts/qapi/introspect.py b/scripts/qapi/introspect.py
index 6c82d9d95f5..42016a7e668 100644
--- a/scripts/qapi/introspect.py
+++ b/scripts/qapi/introspect.py
@@ -10,7 +10,12 @@
See the COPYING file in the top-level directory.
"""
-from .common import *
+from .common import (
+ c_name,
+ gen_endif,
+ gen_if,
+ mcgen,
+)
from .gen import QAPISchemaMonolithicCVisitor
from .schema import (QAPISchemaArrayType, QAPISchemaBuiltinType,
QAPISchemaType)
diff --git a/scripts/qapi/types.py b/scripts/qapi/types.py
index ca9a5aacb39..53b47f9e58a 100644
--- a/scripts/qapi/types.py
+++ b/scripts/qapi/types.py
@@ -13,7 +13,13 @@
# See the COPYING file in the top-level directory.
"""
-from .common import *
+from .common import (
+ c_enum_const,
+ c_name,
+ gen_endif,
+ gen_if,
+ mcgen,
+)
from .gen import QAPISchemaModularCVisitor, ifcontext
from .schema import QAPISchemaEnumMember, QAPISchemaObjectType
diff --git a/scripts/qapi/visit.py b/scripts/qapi/visit.py
index 7850f6e8480..ea277e7704b 100644
--- a/scripts/qapi/visit.py
+++ b/scripts/qapi/visit.py
@@ -13,7 +13,15 @@
See the COPYING file in the top-level directory.
"""
-from .common import *
+from .common import (
+ c_enum_const,
+ c_name,
+ gen_endif,
+ gen_if,
+ mcgen,
+ pop_indent,
+ push_indent,
+)
from .gen import QAPISchemaModularCVisitor, ifcontext
from .schema import QAPISchemaObjectType
--
2.26.2
next prev parent reply other threads:[~2020-10-09 16:18 UTC|newest]
Thread overview: 45+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-10-09 16:15 [PATCH v6 00/36] qapi: static typing conversion, pt1 John Snow
2020-10-09 16:15 ` [PATCH v6 01/36] docs: repair broken references John Snow
2020-10-09 16:15 ` [PATCH v6 02/36] qapi: modify docstrings to be sphinx-compatible John Snow
2020-10-09 16:15 ` [PATCH v6 03/36] qapi-gen: Separate arg-parsing from generation John Snow
2020-10-09 17:26 ` Markus Armbruster
2020-10-12 14:57 ` John Snow
2020-10-19 7:33 ` Markus Armbruster
2020-10-09 16:15 ` [PATCH v6 04/36] qapi: move generator entrypoint into package John Snow
2020-10-09 16:15 ` [PATCH v6 05/36] qapi: Prefer explicit relative imports John Snow
2020-10-09 16:15 ` John Snow [this message]
2020-10-09 16:15 ` [PATCH v6 07/36] qapi: enforce import order/styling with isort John Snow
2020-10-09 16:15 ` [PATCH v6 08/36] qapi: delint using flake8 John Snow
2020-10-09 16:15 ` [PATCH v6 09/36] qapi: add pylintrc John Snow
2020-10-09 16:15 ` [PATCH v6 10/36] qapi/common.py: Remove python compatibility workaround John Snow
2020-10-09 16:15 ` [PATCH v6 11/36] qapi/common.py: Add indent manager John Snow
2020-10-09 16:15 ` [PATCH v6 12/36] qapi/common.py: delint with pylint John Snow
2020-10-09 16:15 ` [PATCH v6 13/36] qapi/common.py: Replace one-letter 'c' variable John Snow
2020-10-09 16:15 ` [PATCH v6 14/36] qapi/common.py: check with pylint John Snow
2020-10-09 16:15 ` [PATCH v6 15/36] qapi/common.py: add type hint annotations John Snow
2020-10-09 16:15 ` [PATCH v6 16/36] qapi/common.py: Convert comments into docstrings, and elaborate John Snow
2020-10-09 16:15 ` [PATCH v6 17/36] qapi/common.py: move build_params into gen.py John Snow
2020-10-09 16:15 ` [PATCH v6 18/36] qapi: establish mypy type-checking baseline John Snow
2020-10-09 16:15 ` [PATCH v6 19/36] qapi/events.py: add type hint annotations John Snow
2020-10-09 16:15 ` [PATCH v6 20/36] qapi/events.py: Move comments into docstrings John Snow
2020-10-09 16:15 ` [PATCH v6 21/36] qapi/commands.py: Don't re-bind to variable of different type John Snow
2020-10-09 16:15 ` [PATCH v6 22/36] qapi/commands.py: add type hint annotations John Snow
2020-10-09 16:15 ` [PATCH v6 23/36] qapi/commands.py: enable checking with mypy John Snow
2020-10-09 16:15 ` [PATCH v6 24/36] qapi/source.py: add type hint annotations John Snow
2020-10-09 16:15 ` [PATCH v6 25/36] qapi/source.py: delint with pylint John Snow
2020-10-09 16:15 ` [PATCH v6 26/36] qapi/gen.py: Fix edge-case of _is_user_module John Snow
2020-10-09 17:26 ` Markus Armbruster
2020-10-09 17:39 ` Eduardo Habkost
2020-10-10 6:57 ` Markus Armbruster
2020-10-09 16:15 ` [PATCH v6 27/36] qapi/gen.py: add type hint annotations John Snow
2020-10-09 16:15 ` [PATCH v6 28/36] qapi/gen.py: Enable checking with mypy John Snow
2020-10-09 16:15 ` [PATCH v6 29/36] qapi/gen.py: Remove unused parameter John Snow
2020-10-09 16:15 ` [PATCH v6 30/36] qapi/gen.py: update write() to be more idiomatic John Snow
2020-10-09 16:15 ` [PATCH v6 31/36] qapi/gen.py: delint with pylint John Snow
2020-10-09 16:15 ` [PATCH v6 32/36] qapi/types.py: add type hint annotations John Snow
2020-10-09 16:15 ` [PATCH v6 33/36] qapi/types.py: remove one-letter variables John Snow
2020-10-09 16:15 ` [PATCH v6 34/36] qapi/visit.py: assert tag_member contains a QAPISchemaEnumType John Snow
2020-10-09 16:15 ` [PATCH v6 35/36] qapi/visit.py: remove unused parameters from gen_visit_object John Snow
2020-10-09 16:15 ` [PATCH v6 36/36] qapi/visit.py: add type hint annotations John Snow
2020-10-10 9:43 ` [PATCH v6 00/36] qapi: static typing conversion, pt1 Markus Armbruster
2020-10-12 14:19 ` John Snow
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20201009161558.107041-7-jsnow@redhat.com \
--to=jsnow@redhat.com \
--cc=armbru@redhat.com \
--cc=crosa@redhat.com \
--cc=ehabkost@redhat.com \
--cc=mdroth@linux.vnet.ibm.com \
--cc=philmd@redhat.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).