git: f862f9075efb - main - devel/py-mutmut: New port: Mutation testing for Python 3

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Sat, 31 Dec 2022 10:22:08 UTC
The branch main has been updated by yuri:

URL: https://cgit.FreeBSD.org/ports/commit/?id=f862f9075efbb1f5edd4cac9912deb1b57377a43

commit f862f9075efbb1f5edd4cac9912deb1b57377a43
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2022-12-31 10:10:33 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2022-12-31 10:22:02 +0000

    devel/py-mutmut: New port: Mutation testing for Python 3
---
 devel/Makefile            |  1 +
 devel/py-mutmut/Makefile  | 28 ++++++++++++++++++++++++++++
 devel/py-mutmut/distinfo  |  3 +++
 devel/py-mutmut/pkg-descr | 11 +++++++++++
 4 files changed, 43 insertions(+)

diff --git a/devel/Makefile b/devel/Makefile
index 9188f94eebd5..b6e367658062 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -4847,6 +4847,7 @@
     SUBDIR += py-multitasking
     SUBDIR += py-munch
     SUBDIR += py-murmurhash
+    SUBDIR += py-mutmut
     SUBDIR += py-mygpoclient
     SUBDIR += py-mypy
     SUBDIR += py-mypy-protobuf
diff --git a/devel/py-mutmut/Makefile b/devel/py-mutmut/Makefile
new file mode 100644
index 000000000000..14e1f3234e96
--- /dev/null
+++ b/devel/py-mutmut/Makefile
@@ -0,0 +1,28 @@
+PORTNAME=	mutmut
+DISTVERSION=	2.4.3
+CATEGORIES=	devel
+MASTER_SITES=	CHEESESHOP
+PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER=	yuri@FreeBSD.org
+COMMENT=	Mutation testing for Python 3
+WWW=		https://mutmut.readthedocs.io/en/latest/
+
+LICENSE=	BSD3CLAUSE
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+PY_DEPENDS=	${PYTHON_PKGNAMEPREFIX}click>0:devel/py-click@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}glob2>0:devel/py-glob2@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}junit-xml>=1.8:textproc/py-junit-xml@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}parso>0:textproc/py-parso@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}pony>0:databases/py-pony@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}toml>0:textproc/py-toml@${PY_FLAVOR}
+BUILD_DEPENDS=	${PY_DEPENDS}
+RUN_DEPENDS=	${PY_DEPENDS}
+
+USES=		python:3.7+
+USE_PYTHON=	distutils concurrent autoplist
+
+NO_ARCH=	yes
+
+.include <bsd.port.mk>
diff --git a/devel/py-mutmut/distinfo b/devel/py-mutmut/distinfo
new file mode 100644
index 000000000000..22c23edb109d
--- /dev/null
+++ b/devel/py-mutmut/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1672471152
+SHA256 (mutmut-2.4.3.tar.gz) = 676c253ee4c87d4aa32e257827b3f6fdb4343925b29fa17aa3456ed9be5d93d4
+SIZE (mutmut-2.4.3.tar.gz) = 40674
diff --git a/devel/py-mutmut/pkg-descr b/devel/py-mutmut/pkg-descr
new file mode 100644
index 000000000000..52941f22340e
--- /dev/null
+++ b/devel/py-mutmut/pkg-descr
@@ -0,0 +1,11 @@
+Mutmut is a mutation testing system for Python, with a strong focus on ease of
+use. If you don't know what mutation testing is try starting with this article.
+
+Some highlight features:
+* Found mutants can be applied on disk with a simple command making it very easy
+  to work with the results
+* Remembers work that has been done, so you can work incrementally
+* Supports all test runners (because mutmut only needs an exit code from the
+  test command)
+* Can use coverage data to only do mutation testing on covered lines
+* Battle tested on real libraries by multiple companies