From: Markus Armbruster <armbru@redhat.com>
To: John Snow <jsnow@redhat.com>
Cc: "Marc-André Lureau" <marcandre.lureau@redhat.com>,
qemu-devel@nongnu.org, "Eduardo Habkost" <ehabkost@redhat.com>,
"Cleber Rosa" <crosa@redhat.com>
Subject: Re: [PATCH v3 05/17] qapi: pass QAPISchemaModule to visit_module instead of str
Date: Thu, 21 Jan 2021 08:22:03 +0100 [thread overview]
Message-ID: <87k0s6lppg.fsf@dusky.pond.sub.org> (raw)
In-Reply-To: <049e81a7-c7d7-65af-129d-4d0993aff559@redhat.com> (John Snow's message of "Wed, 20 Jan 2021 10:51:40 -0500")
John Snow <jsnow@redhat.com> writes:
> On 1/20/21 7:07 AM, Markus Armbruster wrote:
>> John Snow <jsnow@redhat.com> writes:
[...]
>>> diff --git a/docs/sphinx/qapidoc.py b/docs/sphinx/qapidoc.py
>>> index e03abcbb959..f754f675d66 100644
>>> --- a/docs/sphinx/qapidoc.py
>>> +++ b/docs/sphinx/qapidoc.py
>>> @@ -463,11 +463,11 @@ def __init__(self, env, qapidir):
>>> self._env = env
>>> self._qapidir = qapidir
>>> - def visit_module(self, name):
>>> - if name is not None:
>>> - qapifile = self._qapidir + '/' + name
>>> + def visit_module(self, module):
>>> + if module.name:
>> Replacing the "is not None" test by (implicit) "is thruthy" changes
>> behavior for the empty string. Intentional?
>>
>
> Instinctively it was intentional, consciously it wasn't. I was worried
> about what "qapifile" would produce if the string happened to be
> empty.
It would produce a dependency on the directory.
>> I've had the "pleasure" of debugging empty strings getting interpreted
>> like None where they should be interpreted like any other string.
>>
>
> assert module.name, then?
Let's avoid changing behavior in a refactoring patch. If you want an
assertion to ease your worry, separate patch.
>>> + qapifile = self._qapidir + '/' + module.name
>>> self._env.note_dependency(os.path.abspath(qapifile))
>>> - super().visit_module(name)
>>> + super().visit_module(module)
>>>
>> [...]
>>
next prev parent reply other threads:[~2021-01-21 7:23 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-01-19 18:02 [PATCH v3 00/17] qapi: static typing conversion, pt1.5 John Snow
2021-01-19 18:02 ` [PATCH v3 01/17] qapi/commands: assert arg_type is not None John Snow
2021-01-19 18:02 ` [PATCH v3 02/17] qapi/events: fix visit_event typing John Snow
2021-01-19 18:02 ` [PATCH v3 03/17] qapi/main: handle theoretical None-return from re.match() John Snow
2021-01-19 18:02 ` [PATCH v3 04/17] qapi/gen: inline _wrap_ifcond into end_if() John Snow
2021-01-19 18:02 ` [PATCH v3 05/17] qapi: pass QAPISchemaModule to visit_module instead of str John Snow
2021-01-20 12:07 ` Markus Armbruster
2021-01-20 15:51 ` John Snow
2021-01-21 7:22 ` Markus Armbruster [this message]
2021-01-20 16:02 ` Eric Blake
2021-01-20 16:16 ` John Snow
2021-01-21 7:23 ` Markus Armbruster
2021-01-19 18:02 ` [PATCH v3 06/17] qapi: centralize is_[user|system|builtin]_module methods John Snow
2021-01-20 13:56 ` Markus Armbruster
2021-01-19 18:02 ` [PATCH v3 07/17] qapi/gen: Replace ._begin_system_module() John Snow
2021-01-19 18:02 ` [PATCH v3 08/17] qapi: use explicitly internal module names John Snow
2021-01-19 18:02 ` [PATCH v3 09/17] qapi: use './builtin' as the built-in module name John Snow
2021-01-20 14:14 ` Markus Armbruster
2021-01-19 18:02 ` [PATCH v3 10/17] qapi/gen: Combine ._add_[user|system]_module John Snow
2021-01-20 14:20 ` Markus Armbruster
2021-01-20 16:10 ` John Snow
2021-01-21 7:40 ` Markus Armbruster
2021-01-19 18:02 ` [PATCH v3 11/17] qapi: centralize the built-in module name definition John Snow
2021-01-19 18:02 ` [PATCH v3 12/17] qapi/gen: write _genc/_genh access shims John Snow
2021-01-19 18:02 ` [PATCH v3 13/17] qapi/gen: Support for switching to another module temporarily John Snow
2021-01-19 18:02 ` [PATCH v3 14/17] qapi/commands: Simplify command registry generation John Snow
2021-01-19 18:02 ` [PATCH v3 15/17] qapi/gen: Drop support for QAPIGen without a file name John Snow
2021-01-19 18:02 ` [PATCH v3 16/17] qapi: type 'info' as Optional[QAPISourceInfo] John Snow
2021-01-19 18:02 ` [PATCH v3 17/17] qapi: enable strict-optional checks 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=87k0s6lppg.fsf@dusky.pond.sub.org \
--to=armbru@redhat.com \
--cc=crosa@redhat.com \
--cc=ehabkost@redhat.com \
--cc=jsnow@redhat.com \
--cc=marcandre.lureau@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).