John Snow <js...@redhat.com> writes:

> Fix two very minor issues,

What are the two issues?  I'm asking because I can see only one.

>                            and then establish a mypy type-checking
> baseline.

Any particular reason this can't go before PATCH 15 "qapi/common.py: add
type hint annotations".

> Like pylint, this should be run from the folder above:
>
>  > mypy --config-file=qapi/mypy.ini qapi/
>
> This is designed and tested for mypy 0.770 or greater.
>
> Signed-off-by: John Snow <js...@redhat.com>
> Tested-by: Eduardo Habkost <ehabk...@redhat.com>
> Reviewed-by: Cleber Rosa <cr...@redhat.com>
> Tested-by: Cleber Rosa <cr...@redhat.com>
> ---
>  scripts/qapi/mypy.ini  | 60 ++++++++++++++++++++++++++++++++++++++++++
>  scripts/qapi/schema.py |  3 ++-
>  2 files changed, 62 insertions(+), 1 deletion(-)
>  create mode 100644 scripts/qapi/mypy.ini
>
> diff --git a/scripts/qapi/mypy.ini b/scripts/qapi/mypy.ini
> new file mode 100644
> index 00000000000..00fac15dc6e
> --- /dev/null
> +++ b/scripts/qapi/mypy.ini
> @@ -0,0 +1,60 @@
> +[mypy]
> +strict = True
> +strict_optional = False
> +disallow_untyped_calls = False
> +python_version = 3.6
> +
> +[mypy-qapi.commands]
> +disallow_untyped_defs = False
> +disallow_incomplete_defs = False
> +check_untyped_defs = False
> +
> +[mypy-qapi.error]
> +disallow_untyped_defs = False
> +disallow_incomplete_defs = False
> +check_untyped_defs = False
> +
> +[mypy-qapi.events]
> +disallow_untyped_defs = False
> +disallow_incomplete_defs = False
> +check_untyped_defs = False
> +
> +[mypy-qapi.expr]
> +disallow_untyped_defs = False
> +disallow_incomplete_defs = False
> +check_untyped_defs = False
> +
> +[mypy-qapi.gen]
> +disallow_untyped_defs = False
> +disallow_incomplete_defs = False
> +check_untyped_defs = False
> +
> +[mypy-qapi.introspect]
> +disallow_untyped_defs = False
> +disallow_incomplete_defs = False
> +check_untyped_defs = False
> +
> +[mypy-qapi.parser]
> +disallow_untyped_defs = False
> +disallow_incomplete_defs = False
> +check_untyped_defs = False
> +
> +[mypy-qapi.schema]
> +disallow_untyped_defs = False
> +disallow_incomplete_defs = False
> +check_untyped_defs = False
> +
> +[mypy-qapi.source]
> +disallow_untyped_defs = False
> +disallow_incomplete_defs = False
> +check_untyped_defs = False
> +
> +[mypy-qapi.types]
> +disallow_untyped_defs = False
> +disallow_incomplete_defs = False
> +check_untyped_defs = False
> +
> +[mypy-qapi.visit]
> +disallow_untyped_defs = False
> +disallow_incomplete_defs = False
> +check_untyped_defs = False
> diff --git a/scripts/qapi/schema.py b/scripts/qapi/schema.py
> index 74c6b96d391..483b4b68dff 100644
> --- a/scripts/qapi/schema.py
> +++ b/scripts/qapi/schema.py
> @@ -17,6 +17,7 @@
>  from collections import OrderedDict
>  import os
>  import re
> +from typing import Optional
>  
>  from .common import POINTER_SUFFIX, c_name
>  from .error import QAPIError, QAPISemError
> @@ -25,7 +26,7 @@
>  
>  
>  class QAPISchemaEntity:
> -    meta = None
> +    meta: Optional[str] = None
>  
>      def __init__(self, name, info, doc, ifcond=None, features=None):
>          assert name is None or isinstance(name, str)


Reply via email to