[PULL 00/34] QAPI patches patches for 2020-10-10

Markus Armbruster posted 34 patches 3 years, 6 months ago
Test checkpatch passed
Failed in applying to current master (apply log)
docs/devel/multi-thread-tcg.rst |   2 +-
docs/devel/testing.rst          |   2 +-
scripts/qapi-gen.py             |  57 +++----------
scripts/qapi/.flake8            |   2 +
scripts/qapi/.isort.cfg         |   7 ++
scripts/qapi/commands.py        |  90 ++++++++++++++------
scripts/qapi/common.py          | 174 +++++++++++++++++++++-----------------
scripts/qapi/events.py          |  58 +++++++++----
scripts/qapi/expr.py            |   7 +-
scripts/qapi/gen.py             | 180 +++++++++++++++++++++++++---------------
scripts/qapi/introspect.py      |  16 +++-
scripts/qapi/main.py            |  95 +++++++++++++++++++++
scripts/qapi/mypy.ini           |  30 +++++++
scripts/qapi/parser.py          |   6 +-
scripts/qapi/pylintrc           |  70 ++++++++++++++++
scripts/qapi/schema.py          |  33 ++++----
scripts/qapi/source.py          |  35 +++++---
scripts/qapi/types.py           | 125 +++++++++++++++++++---------
scripts/qapi/visit.py           | 116 +++++++++++++++++++-------
19 files changed, 764 insertions(+), 341 deletions(-)
create mode 100644 scripts/qapi/.flake8
create mode 100644 scripts/qapi/.isort.cfg
create mode 100644 scripts/qapi/main.py
create mode 100644 scripts/qapi/mypy.ini
create mode 100644 scripts/qapi/pylintrc
[PULL 00/34] QAPI patches patches for 2020-10-10
Posted by Markus Armbruster 3 years, 6 months ago
The following changes since commit 4a7c0bd9dcb08798c6f82e55b5a3423f7ee669f1:

  Merge remote-tracking branch 'remotes/dgibson/tags/ppc-for-5.2-20201009' into staging (2020-10-09 15:48:04 +0100)

are available in the Git repository at:

  git://repo.or.cz/qemu/armbru.git tags/pull-qapi-2020-10-10

for you to fetch changes up to b4c0aa59aff520e2a55edd5fef393058ca6520de:

  qapi/visit.py: add type hint annotations (2020-10-10 11:37:49 +0200)

----------------------------------------------------------------
QAPI patches patches for 2020-10-10

----------------------------------------------------------------
John Snow (34):
      docs: repair broken references
      qapi: modify docstrings to be sphinx-compatible
      qapi-gen: Separate arg-parsing from generation
      qapi: move generator entrypoint into package
      qapi: Prefer explicit relative imports
      qapi: Remove wildcard includes
      qapi: enforce import order/styling with isort
      qapi: delint using flake8
      qapi: add pylintrc
      qapi/common.py: Remove python compatibility workaround
      qapi/common.py: Add indent manager
      qapi/common.py: delint with pylint
      qapi/common.py: Replace one-letter 'c' variable
      qapi/common.py: check with pylint
      qapi/common.py: add type hint annotations
      qapi/common.py: Convert comments into docstrings, and elaborate
      qapi/common.py: move build_params into gen.py
      qapi: establish mypy type-checking baseline
      qapi/events.py: add type hint annotations
      qapi/events.py: Move comments into docstrings
      qapi/commands.py: Don't re-bind to variable of different type
      qapi/commands.py: add type hint annotations
      qapi/source.py: add type hint annotations
      qapi/source.py: delint with pylint
      qapi/gen: Make _is_user_module() return bool
      qapi/gen.py: add type hint annotations
      qapi/gen.py: Remove unused parameter
      qapi/gen.py: update write() to be more idiomatic
      qapi/gen.py: delint with pylint
      qapi/types.py: add type hint annotations
      qapi/types.py: remove one-letter variables
      qapi/visit.py: assert tag_member contains a QAPISchemaEnumType
      qapi/visit.py: remove unused parameters from gen_visit_object
      qapi/visit.py: add type hint annotations

 docs/devel/multi-thread-tcg.rst |   2 +-
 docs/devel/testing.rst          |   2 +-
 scripts/qapi-gen.py             |  57 +++----------
 scripts/qapi/.flake8            |   2 +
 scripts/qapi/.isort.cfg         |   7 ++
 scripts/qapi/commands.py        |  90 ++++++++++++++------
 scripts/qapi/common.py          | 174 +++++++++++++++++++++-----------------
 scripts/qapi/events.py          |  58 +++++++++----
 scripts/qapi/expr.py            |   7 +-
 scripts/qapi/gen.py             | 180 +++++++++++++++++++++++++---------------
 scripts/qapi/introspect.py      |  16 +++-
 scripts/qapi/main.py            |  95 +++++++++++++++++++++
 scripts/qapi/mypy.ini           |  30 +++++++
 scripts/qapi/parser.py          |   6 +-
 scripts/qapi/pylintrc           |  70 ++++++++++++++++
 scripts/qapi/schema.py          |  33 ++++----
 scripts/qapi/source.py          |  35 +++++---
 scripts/qapi/types.py           | 125 +++++++++++++++++++---------
 scripts/qapi/visit.py           | 116 +++++++++++++++++++-------
 19 files changed, 764 insertions(+), 341 deletions(-)
 create mode 100644 scripts/qapi/.flake8
 create mode 100644 scripts/qapi/.isort.cfg
 create mode 100644 scripts/qapi/main.py
 create mode 100644 scripts/qapi/mypy.ini
 create mode 100644 scripts/qapi/pylintrc

-- 
2.26.2


Re: [PULL 00/34] QAPI patches patches for 2020-10-10
Posted by Peter Maydell 3 years, 6 months ago
On Sat, 10 Oct 2020 at 10:55, Markus Armbruster <armbru@redhat.com> wrote:
>
> The following changes since commit 4a7c0bd9dcb08798c6f82e55b5a3423f7ee669f1:
>
>   Merge remote-tracking branch 'remotes/dgibson/tags/ppc-for-5.2-20201009' into staging (2020-10-09 15:48:04 +0100)
>
> are available in the Git repository at:
>
>   git://repo.or.cz/qemu/armbru.git tags/pull-qapi-2020-10-10
>
> for you to fetch changes up to b4c0aa59aff520e2a55edd5fef393058ca6520de:
>
>   qapi/visit.py: add type hint annotations (2020-10-10 11:37:49 +0200)
>
> ----------------------------------------------------------------
> QAPI patches patches for 2020-10-10
>
> ----------------------------------------------------------------


Applied, thanks.

Please update the changelog at https://wiki.qemu.org/ChangeLog/5.2
for any user-visible changes.

-- PMM

Re: [PULL 00/34] QAPI patches patches for 2020-10-10
Posted by Philippe Mathieu-Daudé 3 years, 6 months ago
On 10/10/20 11:54 AM, Markus Armbruster wrote:
> The following changes since commit 4a7c0bd9dcb08798c6f82e55b5a3423f7ee669f1:
> 
>    Merge remote-tracking branch 'remotes/dgibson/tags/ppc-for-5.2-20201009' into staging (2020-10-09 15:48:04 +0100)
> 
> are available in the Git repository at:
> 
>    git://repo.or.cz/qemu/armbru.git tags/pull-qapi-2020-10-10
> 
> for you to fetch changes up to b4c0aa59aff520e2a55edd5fef393058ca6520de:
> 
>    qapi/visit.py: add type hint annotations (2020-10-10 11:37:49 +0200)
> 
> ----------------------------------------------------------------
> QAPI patches patches for 2020-10-10

The "GCC check-tcg (user)" is 6 min slower since this pull request,
making Travis-CI fails:

https://travis-ci.org/github/qemu/qemu/builds/734773760
https://travis-ci.org/github/qemu/qemu/builds/734983001

Any remote idea what could be the reason?

> ----------------------------------------------------------------
> John Snow (34):
>        docs: repair broken references
>        qapi: modify docstrings to be sphinx-compatible
>        qapi-gen: Separate arg-parsing from generation
>        qapi: move generator entrypoint into package
>        qapi: Prefer explicit relative imports
>        qapi: Remove wildcard includes
>        qapi: enforce import order/styling with isort
>        qapi: delint using flake8
>        qapi: add pylintrc
>        qapi/common.py: Remove python compatibility workaround
>        qapi/common.py: Add indent manager
>        qapi/common.py: delint with pylint
>        qapi/common.py: Replace one-letter 'c' variable
>        qapi/common.py: check with pylint
>        qapi/common.py: add type hint annotations
>        qapi/common.py: Convert comments into docstrings, and elaborate
>        qapi/common.py: move build_params into gen.py
>        qapi: establish mypy type-checking baseline
>        qapi/events.py: add type hint annotations
>        qapi/events.py: Move comments into docstrings
>        qapi/commands.py: Don't re-bind to variable of different type
>        qapi/commands.py: add type hint annotations
>        qapi/source.py: add type hint annotations
>        qapi/source.py: delint with pylint
>        qapi/gen: Make _is_user_module() return bool
>        qapi/gen.py: add type hint annotations
>        qapi/gen.py: Remove unused parameter
>        qapi/gen.py: update write() to be more idiomatic
>        qapi/gen.py: delint with pylint
>        qapi/types.py: add type hint annotations
>        qapi/types.py: remove one-letter variables
>        qapi/visit.py: assert tag_member contains a QAPISchemaEnumType
>        qapi/visit.py: remove unused parameters from gen_visit_object
>        qapi/visit.py: add type hint annotations
> 
>   docs/devel/multi-thread-tcg.rst |   2 +-
>   docs/devel/testing.rst          |   2 +-
>   scripts/qapi-gen.py             |  57 +++----------
>   scripts/qapi/.flake8            |   2 +
>   scripts/qapi/.isort.cfg         |   7 ++
>   scripts/qapi/commands.py        |  90 ++++++++++++++------
>   scripts/qapi/common.py          | 174 +++++++++++++++++++++-----------------
>   scripts/qapi/events.py          |  58 +++++++++----
>   scripts/qapi/expr.py            |   7 +-
>   scripts/qapi/gen.py             | 180 +++++++++++++++++++++++++---------------
>   scripts/qapi/introspect.py      |  16 +++-
>   scripts/qapi/main.py            |  95 +++++++++++++++++++++
>   scripts/qapi/mypy.ini           |  30 +++++++
>   scripts/qapi/parser.py          |   6 +-
>   scripts/qapi/pylintrc           |  70 ++++++++++++++++
>   scripts/qapi/schema.py          |  33 ++++----
>   scripts/qapi/source.py          |  35 +++++---
>   scripts/qapi/types.py           | 125 +++++++++++++++++++---------
>   scripts/qapi/visit.py           | 116 +++++++++++++++++++-------
>   19 files changed, 764 insertions(+), 341 deletions(-)
>   create mode 100644 scripts/qapi/.flake8
>   create mode 100644 scripts/qapi/.isort.cfg
>   create mode 100644 scripts/qapi/main.py
>   create mode 100644 scripts/qapi/mypy.ini
>   create mode 100644 scripts/qapi/pylintrc
> 


Re: [PULL 00/34] QAPI patches patches for 2020-10-10
Posted by Markus Armbruster 3 years, 6 months ago
Philippe Mathieu-Daudé <f4bug@amsat.org> writes:

> On 10/10/20 11:54 AM, Markus Armbruster wrote:
>> The following changes since commit 4a7c0bd9dcb08798c6f82e55b5a3423f7ee669f1:
>>    Merge remote-tracking branch
>> 'remotes/dgibson/tags/ppc-for-5.2-20201009' into staging (2020-10-09
>> 15:48:04 +0100)
>> are available in the Git repository at:
>>    git://repo.or.cz/qemu/armbru.git tags/pull-qapi-2020-10-10
>> for you to fetch changes up to
>> b4c0aa59aff520e2a55edd5fef393058ca6520de:
>>    qapi/visit.py: add type hint annotations (2020-10-10 11:37:49
>> +0200)
>> ----------------------------------------------------------------
>> QAPI patches patches for 2020-10-10
>
> The "GCC check-tcg (user)" is 6 min slower since this pull request,
> making Travis-CI fails:
>
> https://travis-ci.org/github/qemu/qemu/builds/734773760
> https://travis-ci.org/github/qemu/qemu/builds/734983001
>
> Any remote idea what could be the reason?

No.  This is unexpected.  The changes to generated QAPI files are
limited to whitespace.

John, can you work with Philippe to get to the bottom of this?


Re: [PULL 00/34] QAPI patches patches for 2020-10-10
Posted by John Snow 3 years, 6 months ago
On 10/18/20 3:29 AM, Philippe Mathieu-Daudé wrote:
> On 10/10/20 11:54 AM, Markus Armbruster wrote:
>> The following changes since commit 
>> 4a7c0bd9dcb08798c6f82e55b5a3423f7ee669f1:
>>
>>    Merge remote-tracking branch 
>> 'remotes/dgibson/tags/ppc-for-5.2-20201009' into staging (2020-10-09 
>> 15:48:04 +0100)
>>
>> are available in the Git repository at:
>>
>>    git://repo.or.cz/qemu/armbru.git tags/pull-qapi-2020-10-10
>>
>> for you to fetch changes up to b4c0aa59aff520e2a55edd5fef393058ca6520de:
>>
>>    qapi/visit.py: add type hint annotations (2020-10-10 11:37:49 +0200)
>>
>> ----------------------------------------------------------------
>> QAPI patches patches for 2020-10-10
> 
> The "GCC check-tcg (user)" is 6 min slower since this pull request,
> making Travis-CI fails:
> 
> https://travis-ci.org/github/qemu/qemu/builds/734773760
> https://travis-ci.org/github/qemu/qemu/builds/734983001
> 
> Any remote idea what could be the reason?
> 

Not even in the slightest. Is it consistently slower and you are 
positive it is related to explicitly this?

Here's a run (after this PR) that's at 42.5 minutes:
https://travis-ci.org/github/qemu/qemu/builds/736183657

--js

>> ----------------------------------------------------------------
>> John Snow (34):
>>        docs: repair broken references
>>        qapi: modify docstrings to be sphinx-compatible
>>        qapi-gen: Separate arg-parsing from generation
>>        qapi: move generator entrypoint into package
>>        qapi: Prefer explicit relative imports
>>        qapi: Remove wildcard includes
>>        qapi: enforce import order/styling with isort
>>        qapi: delint using flake8
>>        qapi: add pylintrc
>>        qapi/common.py: Remove python compatibility workaround
>>        qapi/common.py: Add indent manager
>>        qapi/common.py: delint with pylint
>>        qapi/common.py: Replace one-letter 'c' variable
>>        qapi/common.py: check with pylint
>>        qapi/common.py: add type hint annotations
>>        qapi/common.py: Convert comments into docstrings, and elaborate
>>        qapi/common.py: move build_params into gen.py
>>        qapi: establish mypy type-checking baseline
>>        qapi/events.py: add type hint annotations
>>        qapi/events.py: Move comments into docstrings
>>        qapi/commands.py: Don't re-bind to variable of different type
>>        qapi/commands.py: add type hint annotations
>>        qapi/source.py: add type hint annotations
>>        qapi/source.py: delint with pylint
>>        qapi/gen: Make _is_user_module() return bool
>>        qapi/gen.py: add type hint annotations
>>        qapi/gen.py: Remove unused parameter
>>        qapi/gen.py: update write() to be more idiomatic
>>        qapi/gen.py: delint with pylint
>>        qapi/types.py: add type hint annotations
>>        qapi/types.py: remove one-letter variables
>>        qapi/visit.py: assert tag_member contains a QAPISchemaEnumType
>>        qapi/visit.py: remove unused parameters from gen_visit_object
>>        qapi/visit.py: add type hint annotations
>>
>>   docs/devel/multi-thread-tcg.rst |   2 +-
>>   docs/devel/testing.rst          |   2 +-
>>   scripts/qapi-gen.py             |  57 +++----------
>>   scripts/qapi/.flake8            |   2 +
>>   scripts/qapi/.isort.cfg         |   7 ++
>>   scripts/qapi/commands.py        |  90 ++++++++++++++------
>>   scripts/qapi/common.py          | 174 
>> +++++++++++++++++++++-----------------
>>   scripts/qapi/events.py          |  58 +++++++++----
>>   scripts/qapi/expr.py            |   7 +-
>>   scripts/qapi/gen.py             | 180 
>> +++++++++++++++++++++++++---------------
>>   scripts/qapi/introspect.py      |  16 +++-
>>   scripts/qapi/main.py            |  95 +++++++++++++++++++++
>>   scripts/qapi/mypy.ini           |  30 +++++++
>>   scripts/qapi/parser.py          |   6 +-
>>   scripts/qapi/pylintrc           |  70 ++++++++++++++++
>>   scripts/qapi/schema.py          |  33 ++++----
>>   scripts/qapi/source.py          |  35 +++++---
>>   scripts/qapi/types.py           | 125 +++++++++++++++++++---------
>>   scripts/qapi/visit.py           | 116 +++++++++++++++++++-------
>>   19 files changed, 764 insertions(+), 341 deletions(-)
>>   create mode 100644 scripts/qapi/.flake8
>>   create mode 100644 scripts/qapi/.isort.cfg
>>   create mode 100644 scripts/qapi/main.py
>>   create mode 100644 scripts/qapi/mypy.ini
>>   create mode 100644 scripts/qapi/pylintrc
>>
>