[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v5 06/46] qapi: Improve 'include' error message
From: |
Markus Armbruster |
Subject: |
Re: [Qemu-devel] [PATCH v5 06/46] qapi: Improve 'include' error message |
Date: |
Thu, 24 Sep 2015 16:39:15 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) |
Eric Blake <address@hidden> writes:
> Use of '"...%s" % include' to print non-strings can lead to
> ugly messages, such as this (if the .json change is applied
> without the qapi.py change):
> Expected a file name (string), got: OrderedDict()
>
> Better is to just omit the actual non-string value in the
> message.
>
> Signed-off-by: Eric Blake <address@hidden>
> ---
> scripts/qapi.py | 4 ++--
> tests/qapi-schema/include-non-file.err | 2 +-
> tests/qapi-schema/include-non-file.json | 2 +-
> 3 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/scripts/qapi.py b/scripts/qapi.py
> index 31c4bcc..007349e 100644
> --- a/scripts/qapi.py
> +++ b/scripts/qapi.py
> @@ -138,8 +138,8 @@ class QAPISchemaParser(object):
> "Invalid 'include' directive")
> include = expr["include"]
> if not isinstance(include, str):
> - raise QAPIExprError(expr_info, 'Expected a file name '
> - '(string), got: %s' % include)
> + raise QAPIExprError(expr_info,
> + "Expected a string for 'include'")
> incl_abs_fname = os.path.join(os.path.dirname(abs_fname),
> include)
> # catch inclusion cycle
> diff --git a/tests/qapi-schema/include-non-file.err
> b/tests/qapi-schema/include-non-file.err
> index 9658c78..079120b 100644
> --- a/tests/qapi-schema/include-non-file.err
> +++ b/tests/qapi-schema/include-non-file.err
> @@ -1 +1 @@
> -tests/qapi-schema/include-non-file.json:1: Expected a file name (string),
> got: ['foo', 'bar']
> +tests/qapi-schema/include-non-file.json:1: Expected a string for 'include'
> diff --git a/tests/qapi-schema/include-non-file.json
> b/tests/qapi-schema/include-non-file.json
> index cd43c3f..4711aa4 100644
> --- a/tests/qapi-schema/include-non-file.json
> +++ b/tests/qapi-schema/include-non-file.json
> @@ -1 +1 @@
> -{ 'include': [ 'foo', 'bar' ] }
> +{ 'include': {} }
What about "Value of 'include' must be a string'?
- [Qemu-devel] [PATCH v5 00/46] post-introspection cleanups, and qapi-ify netdev_add, Eric Blake, 2015/09/21
- [Qemu-devel] [PATCH v5 04/46] qapi: Add tests for empty unions, Eric Blake, 2015/09/21
- [Qemu-devel] [PATCH v5 06/46] qapi: Improve 'include' error message, Eric Blake, 2015/09/21
- Re: [Qemu-devel] [PATCH v5 06/46] qapi: Improve 'include' error message,
Markus Armbruster <=
- [Qemu-devel] [PATCH v5 05/46] qapi: Test use of 'number' within alternates, Eric Blake, 2015/09/21
[Qemu-devel] [PATCH v5 03/46] qapi: Test for C member name collisions, Eric Blake, 2015/09/21