22305c2a08
Pylint prior to 2.8.3 (We pin at >= 2.8.0) includes function and method signatures as part of its duplicate checking algorithm. This check does not listen to pragmas, so the only way to disable it is to turn it off completely or increase the minimum duplicate lines so that it doesn't trigger for functions with long, multi-line signatures. When we decide to upgrade to pylint 2.8.3 or greater, we will be able to use 'ignore-signatures = true' to the config instead. I'd prefer not to keep us on the very bleeding edge of pylint if I can help it -- 2.8.3 came out only three days ago at time of writing. See: https://github.com/PyCQA/pylint/pull/4474 Signed-off-by: John Snow <jsnow@redhat.com> Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com> Acked-by: John Snow <jsnow@redhat.com> Reviewed-by: Max Reitz <mreitz@redhat.com> Message-Id: <20210809090114.64834-3-eesposit@redhat.com> Signed-off-by: Hanna Reitz <hreitz@redhat.com>
138 lines
3.9 KiB
INI
138 lines
3.9 KiB
INI
[metadata]
|
|
name = qemu
|
|
version = file:VERSION
|
|
maintainer = QEMU Developer Team
|
|
maintainer_email = qemu-devel@nongnu.org
|
|
url = https://www.qemu.org/
|
|
download_url = https://www.qemu.org/download/
|
|
description = QEMU Python Build, Debug and SDK tooling.
|
|
long_description = file:PACKAGE.rst
|
|
long_description_content_type = text/x-rst
|
|
classifiers =
|
|
Development Status :: 3 - Alpha
|
|
License :: OSI Approved :: GNU General Public License v2 (GPLv2)
|
|
Natural Language :: English
|
|
Operating System :: OS Independent
|
|
Programming Language :: Python :: 3 :: Only
|
|
Programming Language :: Python :: 3.6
|
|
Programming Language :: Python :: 3.7
|
|
Programming Language :: Python :: 3.8
|
|
Programming Language :: Python :: 3.9
|
|
Programming Language :: Python :: 3.10
|
|
Typing :: Typed
|
|
|
|
[options]
|
|
python_requires = >= 3.6
|
|
packages =
|
|
qemu.qmp
|
|
qemu.machine
|
|
qemu.utils
|
|
|
|
[options.package_data]
|
|
* = py.typed
|
|
|
|
[options.extras_require]
|
|
# For the devel group, When adding new dependencies or bumping the minimum
|
|
# version, use e.g. "pipenv install --dev pylint==3.0.0".
|
|
# Subsequently, edit 'Pipfile' to remove e.g. 'pylint = "==3.0.0'.
|
|
devel =
|
|
avocado-framework >= 87.0
|
|
flake8 >= 3.6.0
|
|
fusepy >= 2.0.4
|
|
isort >= 5.1.2
|
|
mypy >= 0.770
|
|
pylint >= 2.8.0
|
|
tox >= 3.18.0
|
|
|
|
# Provides qom-fuse functionality
|
|
fuse =
|
|
fusepy >= 2.0.4
|
|
|
|
[options.entry_points]
|
|
console_scripts =
|
|
qom = qemu.qmp.qom:main
|
|
qom-set = qemu.qmp.qom:QOMSet.entry_point
|
|
qom-get = qemu.qmp.qom:QOMGet.entry_point
|
|
qom-list = qemu.qmp.qom:QOMList.entry_point
|
|
qom-tree = qemu.qmp.qom:QOMTree.entry_point
|
|
qom-fuse = qemu.qmp.qom_fuse:QOMFuse.entry_point [fuse]
|
|
qemu-ga-client = qemu.qmp.qemu_ga_client:main
|
|
qmp-shell = qemu.qmp.qmp_shell:main
|
|
|
|
[flake8]
|
|
extend-ignore = E722 # Prefer pylint's bare-except checks to flake8's
|
|
exclude = __pycache__,
|
|
|
|
[mypy]
|
|
strict = True
|
|
python_version = 3.6
|
|
warn_unused_configs = True
|
|
namespace_packages = True
|
|
|
|
[mypy-qemu.qmp.qom_fuse]
|
|
# fusepy has no type stubs:
|
|
allow_subclassing_any = True
|
|
|
|
[mypy-fuse]
|
|
# fusepy has no type stubs:
|
|
ignore_missing_imports = True
|
|
|
|
[pylint.messages control]
|
|
# Disable the message, report, category or checker with the given id(s). You
|
|
# can either give multiple identifiers separated by comma (,) or put this
|
|
# option multiple times (only on the command line, not in the configuration
|
|
# file where it should appear only once). You can also use "--disable=all" to
|
|
# disable everything first and then reenable specific checks. For example, if
|
|
# you want to run only the similarities checker, you can use "--disable=all
|
|
# --enable=similarities". If you want to run only the classes checker, but have
|
|
# no Warning level messages displayed, use "--disable=all --enable=classes
|
|
# --disable=W".
|
|
disable=
|
|
|
|
[pylint.basic]
|
|
# Good variable names which should always be accepted, separated by a comma.
|
|
good-names=i,
|
|
j,
|
|
k,
|
|
ex,
|
|
Run,
|
|
_, # By convention: Unused variable
|
|
fh, # fh = open(...)
|
|
fd, # fd = os.open(...)
|
|
c, # for c in string: ...
|
|
|
|
[pylint.similarities]
|
|
# Ignore imports when computing similarities.
|
|
ignore-imports=yes
|
|
|
|
# Minimum lines number of a similarity.
|
|
# TODO: Remove after we opt in to Pylint 2.8.3. See commit msg.
|
|
min-similarity-lines=6
|
|
|
|
|
|
[isort]
|
|
force_grid_wrap=4
|
|
force_sort_within_sections=True
|
|
include_trailing_comma=True
|
|
line_length=72
|
|
lines_after_imports=2
|
|
multi_line_output=3
|
|
|
|
# tox (https://tox.readthedocs.io/) is a tool for running tests in
|
|
# multiple virtualenvs. This configuration file will run the test suite
|
|
# on all supported python versions. To use it, "pip install tox" and
|
|
# then run "tox" from this directory. You will need all of these versions
|
|
# of python available on your system to run this test.
|
|
|
|
[tox:tox]
|
|
envlist = py36, py37, py38, py39, py310
|
|
skip_missing_interpreters = true
|
|
|
|
[testenv]
|
|
allowlist_externals = make
|
|
deps =
|
|
.[devel]
|
|
.[fuse] # Workaround to trigger tox venv rebuild
|
|
commands =
|
|
make check
|