From: Eric Blake <eblake@redhat.com>
To: qemu-devel@nongnu.org
Cc: armbru@redhat.com
Subject: [Qemu-devel] [PATCH v8 00/18] post-introspection cleanups, subset B
Date: Mon, 12 Oct 2015 22:22:20 -0600 [thread overview]
Message-ID: <1444710158-8723-1-git-send-email-eblake@redhat.com> (raw)
Pending prerequisite: Markus' qapi-next branch (which has my
subset A patches):
git://repo.or.cz/qemu/armbru.git pull-qapi-2015-10-12
https://lists.gnu.org/archive/html/qemu-devel/2015-10/msg02796.html
Also available as a tag at this location:
git fetch git://repo.or.cz/qemu/ericb.git qapi-cleanupv8b
and I plan to eventually forcefully update my branch with the rest
of the v5 series, at:
http://repo.or.cz/qemu/ericb.git/shortlog/refs/heads/qapi
v8 notes:
Address review comments, including fixing a bug with tracking
branch name collisions. Include a few more simple test cleanups
(4-6), and add another patch (11) that will make converting from
kind=>type easier in a later subset. More details in per-patch
changelogs.
001/18:[----] [--] 'qapi: Use predicate callback to determine visit filtering'
002/18:[----] [--] 'qapi: Prepare for errors during check()'
003/18:[----] [--] 'qapi: Drop redundant alternate-good test'
004/18:[down] 'qapi: Move empty-enum to compile-time test'
005/18:[down] 'qapi: Drop redundant returns-int test'
006/18:[down] 'qapi: Drop redundant flat-union-reverse-define test'
007/18:[0026] [FC] 'qapi: Don't use info as witness of implicit object type'
008/18:[0005] [FC] 'qapi: Lazy creation of array types'
009/18:[0010] [FC] 'qapi: Create simple union type member earlier'
010/18:[0017] [FC] 'qapi: Move union tag quirks into subclass'
011/18:[down] 'qapi: Simplify gen_struct_field()'
012/18:[0027] [FC] 'qapi: Track location that created an implicit type'
013/18:[0165] [FC] 'qapi: Track owner of each object member'
014/18:[0006] [FC] 'qapi: Detect collisions in C member names'
015/18:[0033] [FC] 'qapi: Move duplicate member checks to schema check()'
016/18:[0007] [FC] 'qapi: Move duplicate enum value checks to schema check()'
017/18:[----] [-C] 'qapi: Add test for alternate branch 'kind' clash'
018/18:[----] [--] 'qapi: Detect base class loops'
v7 notes:
https://lists.gnu.org/archive/html/qemu-devel/2015-10/msg01387.html
Address comments, including a couple of new commits that made
later patches a bit cleaner. Backport diff gets a bit confused
by a couple of patch titles changing.
v6 notes:
https://lists.gnu.org/archive/html/qemu-devel/2015-10/msg00562.html
This is patches 11-16 of my v5 series; it has grown a bit with
splitting some patches and adding some others. I suspect that
12/12 on this series will be discarded, but am including it because
it was split from v5 content.
Not much review comments other than on the original 11/46, but there
is enough churn due to rebasing that it's now easier to review this
version than plowing through v5.
Subset C (and more?) will come later.
In v5:
https://lists.gnu.org/archive/html/qemu-devel/2015-09/msg05410.html
I _did_ rearrange patches to try and group related features:
1-2: Groundwork cleanups
3-5: Add more test cases
6-16: Front-end cleanups
17-18: Introspection output cleanups
19-20: 'alternate' type cleanups
21-29: qapi visitor cleanups
30-45: qapi-ify netdev_add
46: add qapi shorthand for flat unions
Lots of fixes based on additional testing, and rebased to
track other changes that happened in the meantime. The series
is huge; I can split off smaller portions as requested.
In v4:
https://lists.gnu.org/archive/html/qemu-devel/2015-09/msg02580.html
add some more clean up patches
rebase to Markus' recent work
pull in part of Zoltán's work to make netdev_add a flat union,
further enhancing it to be introspectible
I might be able to rearrange some of these patches, or separate
it into smaller independent series, if requested; but I'm
posting now to get review started.
In v3:
https://lists.gnu.org/archive/html/qemu-devel/2015-08/msg02059.html
redo cleanup of dealloc of partial struct
add patches to make all visit_type_*() avoid leaks on failure
add patches to allow boxed command arguments and events
In v2:
https://lists.gnu.org/archive/html/qemu-devel/2015-08/msg00900.html
rebase to Markus' v3 series
rework how comments are emitted for fields inherited from base
additional patches added for deleting colliding 'void *data'
documentation updates to match code changes
v1 was here:
https://lists.gnu.org/archive/html/qemu-devel/2015-07/msg05266.html
https://lists.gnu.org/archive/html/qemu-devel/2015-07/msg05325.html
Eric Blake (18):
qapi: Use predicate callback to determine visit filtering
qapi: Prepare for errors during check()
qapi: Drop redundant alternate-good test
qapi: Move empty-enum to compile-time test
qapi: Drop redundant returns-int test
qapi: Drop redundant flat-union-reverse-define test
qapi: Don't use info as witness of implicit object type
qapi: Lazy creation of array types
qapi: Create simple union type member earlier
qapi: Move union tag quirks into subclass
qapi: Simplify gen_struct_field()
qapi: Track location that created an implicit type
qapi: Track owner of each object member
qapi: Detect collisions in C member names
qapi: Move duplicate member checks to schema check()
qapi: Move duplicate enum value checks to schema check()
qapi: Add test for alternate branch 'kind' clash
qapi: Detect base class loops
qapi-schema.json | 11 +
scripts/qapi-commands.py | 8 +-
scripts/qapi-introspect.py | 5 +-
scripts/qapi-types.py | 48 +--
scripts/qapi-visit.py | 35 +-
scripts/qapi.py | 358 +++++++++++++--------
tests/Makefile | 9 +-
tests/qapi-schema/alternate-clash-members.err | 1 +
...ad-branch.exit => alternate-clash-members.exit} | 0
...ate-clash.json => alternate-clash-members.json} | 0
...-bad-branch.out => alternate-clash-members.out} | 0
tests/qapi-schema/alternate-clash-type.err | 1 +
...ernate-clash.exit => alternate-clash-type.exit} | 0
tests/qapi-schema/alternate-clash-type.json | 10 +
.../{returns-int.err => alternate-clash-type.out} | 0
tests/qapi-schema/alternate-clash.err | 1 -
tests/qapi-schema/alternate-clash.out | 0
tests/qapi-schema/alternate-good.err | 0
tests/qapi-schema/alternate-good.exit | 1 -
tests/qapi-schema/alternate-good.json | 9 -
tests/qapi-schema/alternate-good.out | 10 -
tests/qapi-schema/args-name-clash.err | 1 +
tests/qapi-schema/args-name-clash.exit | 2 +-
tests/qapi-schema/args-name-clash.json | 6 +-
tests/qapi-schema/args-name-clash.out | 6 -
tests/qapi-schema/base-cycle.err | 1 +
tests/qapi-schema/base-cycle.exit | 1 +
tests/qapi-schema/base-cycle.json | 3 +
...lat-union-reverse-define.err => base-cycle.out} | 0
tests/qapi-schema/enum-clash-member.err | 2 +-
tests/qapi-schema/enum-empty.err | 0
tests/qapi-schema/enum-empty.exit | 1 -
tests/qapi-schema/enum-empty.json | 2 -
tests/qapi-schema/enum-empty.out | 2 -
tests/qapi-schema/enum-max-member.err | 2 +-
tests/qapi-schema/flat-union-clash-branch.err | 1 +
tests/qapi-schema/flat-union-clash-branch.exit | 2 +-
tests/qapi-schema/flat-union-clash-branch.json | 9 +-
tests/qapi-schema/flat-union-clash-branch.out | 14 -
tests/qapi-schema/flat-union-clash-member.err | 2 +-
tests/qapi-schema/flat-union-clash-type.err | 2 +-
tests/qapi-schema/flat-union-reverse-define.exit | 1 -
tests/qapi-schema/flat-union-reverse-define.json | 17 -
tests/qapi-schema/flat-union-reverse-define.out | 13 -
tests/qapi-schema/qapi-schema-test.json | 26 +-
tests/qapi-schema/qapi-schema-test.out | 22 +-
tests/qapi-schema/returns-int.exit | 1 -
tests/qapi-schema/returns-int.json | 3 -
tests/qapi-schema/returns-int.out | 3 -
tests/qapi-schema/struct-base-clash-deep.err | 2 +-
tests/qapi-schema/struct-base-clash.err | 2 +-
tests/qapi-schema/union-bad-branch.err | 1 -
tests/qapi-schema/union-bad-branch.json | 8 -
tests/qapi-schema/union-clash-branches.err | 2 +-
tests/qapi-schema/union-clash-type.err | 2 +-
tests/qapi-schema/union-max.err | 2 +-
tests/test-qmp-commands.c | 4 +-
57 files changed, 357 insertions(+), 318 deletions(-)
create mode 100644 tests/qapi-schema/alternate-clash-members.err
rename tests/qapi-schema/{union-bad-branch.exit => alternate-clash-members.exit} (100%)
rename tests/qapi-schema/{alternate-clash.json => alternate-clash-members.json} (100%)
rename tests/qapi-schema/{union-bad-branch.out => alternate-clash-members.out} (100%)
create mode 100644 tests/qapi-schema/alternate-clash-type.err
rename tests/qapi-schema/{alternate-clash.exit => alternate-clash-type.exit} (100%)
create mode 100644 tests/qapi-schema/alternate-clash-type.json
rename tests/qapi-schema/{returns-int.err => alternate-clash-type.out} (100%)
delete mode 100644 tests/qapi-schema/alternate-clash.err
delete mode 100644 tests/qapi-schema/alternate-clash.out
delete mode 100644 tests/qapi-schema/alternate-good.err
delete mode 100644 tests/qapi-schema/alternate-good.exit
delete mode 100644 tests/qapi-schema/alternate-good.json
delete mode 100644 tests/qapi-schema/alternate-good.out
create mode 100644 tests/qapi-schema/base-cycle.err
create mode 100644 tests/qapi-schema/base-cycle.exit
create mode 100644 tests/qapi-schema/base-cycle.json
rename tests/qapi-schema/{flat-union-reverse-define.err => base-cycle.out} (100%)
delete mode 100644 tests/qapi-schema/enum-empty.err
delete mode 100644 tests/qapi-schema/enum-empty.exit
delete mode 100644 tests/qapi-schema/enum-empty.json
delete mode 100644 tests/qapi-schema/enum-empty.out
delete mode 100644 tests/qapi-schema/flat-union-reverse-define.exit
delete mode 100644 tests/qapi-schema/flat-union-reverse-define.json
delete mode 100644 tests/qapi-schema/flat-union-reverse-define.out
delete mode 100644 tests/qapi-schema/returns-int.exit
delete mode 100644 tests/qapi-schema/returns-int.json
delete mode 100644 tests/qapi-schema/returns-int.out
delete mode 100644 tests/qapi-schema/union-bad-branch.err
delete mode 100644 tests/qapi-schema/union-bad-branch.json
--
2.4.3
next reply other threads:[~2015-10-13 4:22 UTC|newest]
Thread overview: 51+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-13 4:22 Eric Blake [this message]
2015-10-13 4:22 ` [Qemu-devel] [PATCH v8 01/18] qapi: Use predicate callback to determine visit filtering Eric Blake
2015-10-13 4:22 ` [Qemu-devel] [PATCH v8 02/18] qapi: Prepare for errors during check() Eric Blake
2015-10-13 4:22 ` [Qemu-devel] [PATCH v8 03/18] qapi: Drop redundant alternate-good test Eric Blake
2015-10-13 4:22 ` [Qemu-devel] [PATCH v8 04/18] qapi: Move empty-enum to compile-time test Eric Blake
2015-10-13 4:22 ` [Qemu-devel] [PATCH v8 05/18] qapi: Drop redundant returns-int test Eric Blake
2015-10-13 4:22 ` [Qemu-devel] [PATCH v8 06/18] qapi: Drop redundant flat-union-reverse-define test Eric Blake
2015-10-13 4:22 ` [Qemu-devel] [PATCH v8 07/18] qapi: Don't use info as witness of implicit object type Eric Blake
2015-10-13 11:40 ` Markus Armbruster
2015-10-13 13:05 ` Eric Blake
2015-10-13 4:22 ` [Qemu-devel] [PATCH v8 08/18] qapi: Lazy creation of array types Eric Blake
2015-10-14 7:15 ` Markus Armbruster
2015-10-14 12:57 ` Eric Blake
2015-10-13 4:22 ` [Qemu-devel] [PATCH v8 09/18] qapi: Create simple union type member earlier Eric Blake
2015-10-13 4:22 ` [Qemu-devel] [PATCH v8 10/18] qapi: Move union tag quirks into subclass Eric Blake
2015-10-13 12:10 ` Markus Armbruster
2015-10-13 14:15 ` Eric Blake
2015-10-13 16:56 ` Markus Armbruster
2015-10-13 4:22 ` [Qemu-devel] [PATCH v8 11/18] qapi: Simplify gen_struct_field() Eric Blake
2015-10-13 12:12 ` Markus Armbruster
2015-10-13 13:11 ` Eric Blake
2015-10-13 4:22 ` [Qemu-devel] [PATCH v8 12/18] qapi: Track location that created an implicit type Eric Blake
2015-10-13 12:19 ` Markus Armbruster
2015-10-13 14:27 ` Eric Blake
2015-10-13 4:22 ` [Qemu-devel] [PATCH v8 13/18] qapi: Track owner of each object member Eric Blake
2015-10-13 13:14 ` Markus Armbruster
2015-10-13 14:38 ` Eric Blake
2015-10-13 16:30 ` Markus Armbruster
2015-10-13 4:22 ` [Qemu-devel] [PATCH v8 14/18] qapi: Detect collisions in C member names Eric Blake
2015-10-13 4:22 ` [Qemu-devel] [PATCH v8 15/18] qapi: Move duplicate member checks to schema check() Eric Blake
2015-10-13 15:06 ` Markus Armbruster
2015-10-13 15:35 ` Eric Blake
2015-10-13 17:13 ` Markus Armbruster
2015-10-13 17:43 ` Eric Blake
2015-10-13 18:32 ` Markus Armbruster
2015-10-13 20:17 ` Eric Blake
2015-10-13 20:20 ` Eric Blake
2015-10-14 7:11 ` Markus Armbruster
2015-10-14 7:32 ` Markus Armbruster
2015-10-14 12:59 ` Eric Blake
2015-10-14 13:23 ` Markus Armbruster
2015-10-13 4:22 ` [Qemu-devel] [PATCH v8 16/18] qapi: Move duplicate enum value " Eric Blake
2015-10-13 18:35 ` Markus Armbruster
2015-10-13 19:37 ` Eric Blake
2015-10-13 4:22 ` [Qemu-devel] [PATCH v8 17/18] qapi: Add test for alternate branch 'kind' clash Eric Blake
2015-10-13 18:43 ` Markus Armbruster
2015-10-13 19:42 ` Eric Blake
2015-10-13 4:22 ` [Qemu-devel] [PATCH v8 18/18] qapi: Detect base class loops Eric Blake
2015-10-13 18:26 ` [Qemu-devel] [PATCH v8 06.5/18] qapi: Drop redundant args-member-array test Eric Blake
2015-10-13 18:51 ` Markus Armbruster
2015-10-13 18:46 ` [Qemu-devel] [PATCH v8 00/18] post-introspection cleanups, subset B 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=1444710158-8723-1-git-send-email-eblake@redhat.com \
--to=eblake@redhat.com \
--cc=armbru@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).