[PATCH v3 0/6] python: add QAPI and qapidoc et al to python linter tests

John Snow posted 6 patches 7 months, 3 weeks ago
Failed in applying to current master (apply log)
docs/sphinx/qapi_domain.py  | 25 ++++++++++++++-----------
docs/sphinx/qapidoc.py      |  5 +++--
python/setup.cfg            |  2 +-
python/tests/minreqs.txt    | 25 +++++++++++++++++++++++++
python/tests/qapi-flake8.sh |  4 ++++
python/tests/qapi-isort.sh  |  6 ++++++
python/tests/qapi-mypy.sh   |  2 ++
python/tests/qapi-pylint.sh |  6 ++++++
scripts/qapi/.flake8        |  3 ---
scripts/qapi/.isort.cfg     |  7 -------
scripts/qapi/backend.py     |  2 ++
scripts/qapi/mypy.ini       |  4 ----
scripts/qapi/pylintrc       |  1 +
13 files changed, 64 insertions(+), 28 deletions(-)
create mode 100755 python/tests/qapi-flake8.sh
create mode 100755 python/tests/qapi-isort.sh
create mode 100755 python/tests/qapi-mypy.sh
create mode 100755 python/tests/qapi-pylint.sh
delete mode 100644 scripts/qapi/.flake8
delete mode 100644 scripts/qapi/.isort.cfg
delete mode 100644 scripts/qapi/mypy.ini
[PATCH v3 0/6] python: add QAPI and qapidoc et al to python linter tests
Posted by John Snow 7 months, 3 weeks ago
Hiya, this series turns on automated linting for scripts/qapi,
docs/sphinx/qapidoc.py and docs/sphinx/qapi_domain.py.

This includes flake8/isort/pylint/mypy for scripts/qapi, but omits mypy
from the Sphinx plugins owing to my inability to strictly type the
extensions given the wide versions of Sphinx we actually support.

Though I have been using black in my own development, I have not yet
enabled it anywhere automatically. Maybe soon.

NOTE: the latest Fedora image doesn't have Python38 anymore; this series
does not address that. A more substantial fix for testing will be
forthcoming.

V3:
 - Folded in Markus's commit to clean up setup.cfg.

V2:
 - Mostly commit message updates based on Markus's's's review.

John Snow (5):
  qapi: Add some pylint ignores
  docs/qapidoc: linting fixes
  python: update missing dependencies from minreqs
  python: add qapi static analysis tests
  qapi: delete un-needed python static analysis configs

Markus Armbruster (1):
  python: Drop redundant warn_unused_configs = True

 docs/sphinx/qapi_domain.py  | 25 ++++++++++++++-----------
 docs/sphinx/qapidoc.py      |  5 +++--
 python/setup.cfg            |  2 +-
 python/tests/minreqs.txt    | 25 +++++++++++++++++++++++++
 python/tests/qapi-flake8.sh |  4 ++++
 python/tests/qapi-isort.sh  |  6 ++++++
 python/tests/qapi-mypy.sh   |  2 ++
 python/tests/qapi-pylint.sh |  6 ++++++
 scripts/qapi/.flake8        |  3 ---
 scripts/qapi/.isort.cfg     |  7 -------
 scripts/qapi/backend.py     |  2 ++
 scripts/qapi/mypy.ini       |  4 ----
 scripts/qapi/pylintrc       |  1 +
 13 files changed, 64 insertions(+), 28 deletions(-)
 create mode 100755 python/tests/qapi-flake8.sh
 create mode 100755 python/tests/qapi-isort.sh
 create mode 100755 python/tests/qapi-mypy.sh
 create mode 100755 python/tests/qapi-pylint.sh
 delete mode 100644 scripts/qapi/.flake8
 delete mode 100644 scripts/qapi/.isort.cfg
 delete mode 100644 scripts/qapi/mypy.ini

-- 
2.48.1

Re: [PATCH v3 0/6] python: add QAPI and qapidoc et al to python linter tests
Posted by Markus Armbruster 7 months, 3 weeks ago
John Snow <jsnow@redhat.com> writes:

> Hiya, this series turns on automated linting for scripts/qapi,
> docs/sphinx/qapidoc.py and docs/sphinx/qapi_domain.py.
>
> This includes flake8/isort/pylint/mypy for scripts/qapi, but omits mypy
> from the Sphinx plugins owing to my inability to strictly type the
> extensions given the wide versions of Sphinx we actually support.
>
> Though I have been using black in my own development, I have not yet
> enabled it anywhere automatically. Maybe soon.
>
> NOTE: the latest Fedora image doesn't have Python38 anymore; this series
> does not address that. A more substantial fix for testing will be
> forthcoming.

Series
Reviewed-by: Markus Armbruster <armbru@redhat.com>