commit:     e2e130d21a32000855d1f75fe272497ac8290a06
Author:     Louis Sautier <sbraz <AT> gentoo <DOT> org>
AuthorDate: Wed Oct  7 21:14:45 2020 +0000
Commit:     Louis Sautier <sbraz <AT> gentoo <DOT> org>
CommitDate: Wed Oct  7 21:29:34 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e2e130d2

dev-python/pylama: add Python 3.{8,9} support and doc, fix tests

* Runtime dependencies aren't required at build-time.
* Move test dependencies to BDEPEND.
* Remove manually added setuptools dependency.
* Add pytest dependency and RESTRICT via distutils_enable_tests.
* Git is required to run tests (bug #723712).
* So is mypy.
* Radon isn't used by tests.
* Eradicate tests fail, disable them for now.

Closes: https://bugs.gentoo.org/723712
Package-Manager: Portage-3.0.8, Repoman-3.0.1
Signed-off-by: Louis Sautier <sbraz <AT> gentoo.org>

 dev-python/pylama/pylama-7.7.1-r1.ebuild | 48 ++++++++++++++++++++++++++++++++
 1 file changed, 48 insertions(+)

diff --git a/dev-python/pylama/pylama-7.7.1-r1.ebuild 
b/dev-python/pylama/pylama-7.7.1-r1.ebuild
new file mode 100644
index 00000000000..5ccf8ff9fbb
--- /dev/null
+++ b/dev-python/pylama/pylama-7.7.1-r1.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+PYTHON_COMPAT=( python3_{7..9} )
+DISTUTILS_USE_SETUPTOOLS="rdepend"
+
+inherit distutils-r1
+
+DESCRIPTION="Code audit tool for python"
+HOMEPAGE="https://github.com/klen/pylama";
+SRC_URI="https://github.com/klen/pylama/archive/${PV}.tar.gz -> ${P}.tar.gz"
+# pypi tarball excludes unit tests
+#SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="LGPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+       >=dev-python/mccabe-0.5.2[${PYTHON_USEDEP}]
+       dev-python/pycodestyle[${PYTHON_USEDEP}]
+       dev-python/pydocstyle[${PYTHON_USEDEP}]
+       dev-python/pyflakes[${PYTHON_USEDEP}]
+"
+BDEPEND="
+       test? (
+               dev-python/mypy[${PYTHON_USEDEP}]
+               dev-vcs/git
+       )
+"
+
+distutils_enable_sphinx docs
+distutils_enable_tests pytest
+
+python_prepare_all() {
+       sed -e "s|exclude=\['plugins'\]|exclude=['plugins', 'tests']|" -i 
setup.py || die
+       sed -e 's|^\(def\) \(test_ignore_select\)|\1 _\2|' -i 
tests/test_config.py || die
+       distutils-r1_python_prepare_all
+}
+
+python_test() {
+       # Disable eradicate until it is fixed:
+       # https://github.com/klen/pylama/issues/190
+       pytest -vv tests --deselect tests/test_linters.py::test_eradicate \
+               || die "Tests failed with ${EPYTHON}"
+}

Reply via email to