[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
license = GPL-2.0-or-later
classifiers =
    Development Status :: 3 - Alpha
    Natural Language :: English
    Operating System :: OS Independent
    Programming Language :: Python :: 3 :: Only
    Programming Language :: Python :: 3.12
    Programming Language :: Python :: 3.13
    Programming Language :: Python :: 3.14
    Typing :: Typed

[options]
python_requires = >= 3.12
packages =
    qemu.machine
    qemu.utils
install_requires =
    qemu.qmp

[options.package_data]
* = py.typed

[options.extras_require]
# Remember to update tests/minreqs.txt if changing anything below:
devel =
    distlib >= 0.3.6
    flake8 >= 5.0.4
    fusepy >= 2.0.4
    isort >= 5.11.3
    mypy >= 1.4.0
    pylint >= 2.17.3
    pytest >= 6.2.4
    tox >= 3.18.0
    sphinx >= 7.2.6

# Provides qom-fuse functionality
fuse =
    fusepy >= 2.0.4

[options.entry_points]
console_scripts =
    qom = qemu.utils.qom:main
    qom-set = qemu.utils.qom:QOMSet.entry_point
    qom-get = qemu.utils.qom:QOMGet.entry_point
    qom-list = qemu.utils.qom:QOMList.entry_point
    qom-tree = qemu.utils.qom:QOMTree.entry_point
    qom-fuse = qemu.utils.qom_fuse:QOMFuse.entry_point [fuse]
    qemu-ga-client = qemu.utils.qemu_ga_client:main

[flake8]
# Prefer pylint's bare-except checks to flake8's
extend-ignore = E722
exclude = __pycache__,

[mypy]
strict = True
namespace_packages = True

[mypy-qemu.utils.qom_fuse]
# fusepy has no type stubs:
allow_subclassing_any = True

# The following missing import directives are because these libraries do not
# provide type stubs. Allow them on an as-needed basis for mypy.
[mypy-fuse]
ignore_missing_imports = True

[mypy-distlib]
ignore_missing_imports = True

[mypy-distlib.scripts]
ignore_missing_imports = True

[mypy-distlib.version]
ignore_missing_imports = True

[mypy-pip._vendor.distlib.version]
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=consider-using-f-string,
        consider-using-with,
        too-many-arguments,
        too-many-positional-arguments,
        too-many-function-args,  # mypy handles this with less false positives.
        too-many-instance-attributes,
        no-member,  # mypy also handles this better.

[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: ...
           T,   # for TypeVars. See pylint#3401
           SocketAddrT,  # Not sure why this is invalid.
           _import_ok,  # For mkvenv import trickery and compatibility pre-4.x

[pylint.similarities]
# Ignore imports when computing similarities.
ignore-imports=yes
ignore-signatures=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 = py312, py313, py314
skip_missing_interpreters = true

[testenv]
allowlist_externals = make
deps =
    .[devel]
    .[fuse]  # Workaround to trigger tox venv rebuild
commands =
    make check

# Coverage.py [https://coverage.readthedocs.io/en/latest/] is a tool for
# measuring code coverage of Python programs. It monitors your program,
# noting which parts of the code have been executed, then analyzes the
# source to identify code that could have been executed but was not.

[coverage:run]
concurrency = multiprocessing
source = qemu/
parallel = true
