[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 01/12] python: expose typing information via PEP 561
From: |
John Snow |
Subject: |
[PATCH v2 01/12] python: expose typing information via PEP 561 |
Date: |
Tue, 29 Jun 2021 12:42:42 -0400 |
https://www.python.org/dev/peps/pep-0561/#specification
Create 'py.typed' files in each subpackage that indicate to mypy that
this is a typed module, so that users of any of these packages can use
mypy to check their code as well.
Note: Theoretically it's possible to ditch MANIFEST.in in favor of using
package_data in setup.cfg, but I genuinely could not figure out how to
get it to include things from the *source root* into the *package root*;
only how to include things from each subpackage. I tried!
Signed-off-by: John Snow <jsnow@redhat.com>
Reviewed-by: Willian Rampazzo <willianr@redhat.com>
Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
---
python/qemu/machine/py.typed | 0
python/qemu/qmp/py.typed | 0
python/qemu/utils/py.typed | 0
python/setup.cfg | 4 ++++
4 files changed, 4 insertions(+)
create mode 100644 python/qemu/machine/py.typed
create mode 100644 python/qemu/qmp/py.typed
create mode 100644 python/qemu/utils/py.typed
diff --git a/python/qemu/machine/py.typed b/python/qemu/machine/py.typed
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/python/qemu/qmp/py.typed b/python/qemu/qmp/py.typed
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/python/qemu/utils/py.typed b/python/qemu/utils/py.typed
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/python/setup.cfg b/python/setup.cfg
index 85cecbb41b..db1639c1f2 100644
--- a/python/setup.cfg
+++ b/python/setup.cfg
@@ -19,6 +19,7 @@ classifiers =
Programming Language :: Python :: 3.8
Programming Language :: Python :: 3.9
Programming Language :: Python :: 3.10
+ Typing :: Typed
[options]
python_requires = >= 3.6
@@ -27,6 +28,9 @@ packages =
qemu.machine
qemu.utils
+[options.package_data]
+* = py.typed
+
[options.extras_require]
# Run `pipenv lock --dev` when changing these requirements.
devel =
--
2.31.1
- [PATCH v2 00/12] Python: packaging cleanups, John Snow, 2021/06/29
- [PATCH v2 03/12] python: Re-lock pipenv at *oldest* supported versions, John Snow, 2021/06/29
- [PATCH v2 01/12] python: expose typing information via PEP 561,
John Snow <=
- [PATCH v2 04/12] python: README.rst touchups, John Snow, 2021/06/29
- [PATCH v2 02/12] python: Remove global pylint suppressions, John Snow, 2021/06/29
- [PATCH v2 05/12] python: Add no-install usage instructions, John Snow, 2021/06/29
- [PATCH v2 06/12] python: rename 'venv-check' target to 'check-pipenv', John Snow, 2021/06/29
- [PATCH v2 08/12] python: Fix .PHONY Make specifiers, John Snow, 2021/06/29
- [PATCH v2 11/12] python: Update help text on 'make clean', 'make distclean', John Snow, 2021/06/29
- [PATCH v2 10/12] python: Update help text on 'make check', 'make develop', John Snow, 2021/06/29
- [PATCH v2 07/12] python: update help text for check-tox, John Snow, 2021/06/29