From: John Snow <jsnow@redhat.com>
To: qemu-devel@nongnu.org
Cc: Michael Roth <michael.roth@amd.com>,
Eduardo Habkost <ehabkost@redhat.com>,
Markus Armbruster <armbru@redhat.com>,
Cleber Rosa <crosa@redhat.com>
Subject: Re: [PATCH v2 0/6] qapi: static typing conversion, pt5b
Date: Wed, 4 Aug 2021 20:20:55 -0400 [thread overview]
Message-ID: <f979caff-c470-6c3f-422e-08de9dafad0f@redhat.com> (raw)
In-Reply-To: <20210520225710.168356-1-jsnow@redhat.com>
On 5/20/21 6:57 PM, John Snow wrote:
> This is part five (b), and focuses on QAPIDoc in parser.py.
>
> gitlab: https://gitlab.com/jsnow/qemu/-/commits/python-qapi-cleanup-pt5b
>
> Requirements:
> - Python 3.6+
> - mypy >= 0.770
> - pylint >= 2.6.0 (2.7.0+ when using Python 3.9+)
>
> Every commit should pass with:
> - `isort -c qapi/`
> - `flake8 qapi/`
> - `pylint --rcfile=qapi/pylintrc qapi/`
> - `mypy --config-file=qapi/mypy.ini qapi/`
>
> V2:
> - Changed patch 01 to fix error message.
> - Add a TODO for fixing the cycle in patch 03.
> - Changed some commit messages, patch names
>
> John Snow (6):
> qapi/parser: fix unused check_args_section arguments
> qapi/parser: Allow empty QAPIDoc Sections
> qapi/parser: add type hint annotations (QAPIDoc)
> qapi/parser: enable mypy checks
> qapi/parser: Silence too-few-public-methods warning
> qapi/parser: enable pylint checks
>
> scripts/qapi/mypy.ini | 5 --
> scripts/qapi/parser.py | 98 +++++++++++++++++----------
> scripts/qapi/pylintrc | 3 +-
> tests/qapi-schema/doc-bad-feature.err | 2 +-
> 4 files changed, 64 insertions(+), 44 deletions(-)
>
From memory, where we left off was:
- What is our plan for eliminating the cycle in QAPIDoc?
- What's the actual situation with these "empty" sections?
And my answer to both problems as of today is:
... I'm not really sure yet, but I have a lot of preliminary work
building up on implementing a cross-referenceable QAPI domain for
sphinx, which might necessitate some heavier changes to how QAPIDoc
information is parsed and stored.
I'd like to cover fixing both design problems of QAPIDoc at that time if
you'll let me sweep the dirt under the mat until then. I can add FIXME
comments to the code -- at the moment, the configuration of ./python/
does not tolerate TODO nor FIXME comments, and I do intend to move
./scripts/qapi to ./python/qemu/qapi once we finish typing it, so you
can be assured that I'll have to address those to do the thing I want.
In the meantime it means a blemish in the form of TYPE_CHECKING, but it
lets us get on with everything else in the meantime.
Worst case scenario: A meteorite pierces my skull and the work goes
unfinished. parser.py type checks but has some FIXME comments jangling
around that Someone:tm: has to fix, but the Heat Death Of The Universe
occurs first. Nobody has any energy left to be dissatisfied with the way
things wound up.
--js
next prev parent reply other threads:[~2021-08-05 0:22 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-05-20 22:57 [PATCH v2 0/6] qapi: static typing conversion, pt5b John Snow
2021-05-20 22:57 ` [PATCH v2 1/6] qapi/parser: fix unused check_args_section arguments John Snow
2021-05-20 22:57 ` [PATCH v2 2/6] qapi/parser: Allow empty QAPIDoc Sections John Snow
2021-09-07 8:28 ` Markus Armbruster
2021-09-24 22:37 ` John Snow
2021-05-20 22:57 ` [PATCH v2 3/6] qapi/parser: add type hint annotations (QAPIDoc) John Snow
2021-09-07 10:44 ` Markus Armbruster
2021-09-28 23:25 ` John Snow
2021-09-30 10:04 ` Markus Armbruster
2021-05-20 22:57 ` [PATCH v2 4/6] qapi/parser: enable mypy checks John Snow
2021-05-20 22:57 ` [PATCH v2 5/6] qapi/parser: Silence too-few-public-methods warning John Snow
2021-05-20 22:57 ` [PATCH v2 6/6] qapi/parser: enable pylint checks John Snow
2021-08-05 0:20 ` John Snow [this message]
2021-09-07 10:56 ` [PATCH v2 0/6] qapi: static typing conversion, pt5b Markus Armbruster
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=f979caff-c470-6c3f-422e-08de9dafad0f@redhat.com \
--to=jsnow@redhat.com \
--cc=armbru@redhat.com \
--cc=crosa@redhat.com \
--cc=ehabkost@redhat.com \
--cc=michael.roth@amd.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).