git: e26a46d3a9cb - main - devel/py-multiset: New port: Implementation of a multiset

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Thu, 30 Mar 2023 17:11:58 UTC
The branch main has been updated by yuri:

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

commit e26a46d3a9cb388cdf373075ea3f81e6aad05b54
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2023-03-30 15:13:59 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2023-03-30 17:11:55 +0000

    devel/py-multiset: New port: Implementation of a multiset
---
 devel/Makefile                               |  1 +
 devel/py-multiset/Makefile                   | 24 ++++++++++++++++++++++++
 devel/py-multiset/distinfo                   |  3 +++
 devel/py-multiset/files/patch-pyproject.toml | 13 +++++++++++++
 devel/py-multiset/pkg-descr                  |  6 ++++++
 5 files changed, 47 insertions(+)

diff --git a/devel/Makefile b/devel/Makefile
index 7cf1167b1fd6..74e485858fc8 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -4916,6 +4916,7 @@
     SUBDIR += py-multi_key_dict
     SUBDIR += py-multipledispatch
     SUBDIR += py-multiprocess
+    SUBDIR += py-multiset
     SUBDIR += py-multitasking
     SUBDIR += py-munch
     SUBDIR += py-murmurhash
diff --git a/devel/py-multiset/Makefile b/devel/py-multiset/Makefile
new file mode 100644
index 000000000000..16506a6f8e46
--- /dev/null
+++ b/devel/py-multiset/Makefile
@@ -0,0 +1,24 @@
+PORTNAME=	multiset
+DISTVERSION=	3.0.1
+CATEGORIES=	devel python
+MASTER_SITES=	PYPI
+PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER=	yuri@FreeBSD.org
+COMMENT=	Implementation of a multiset
+WWW=		https://github.com/wheerd/multiset
+
+LICENSE=	MIT
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}setuptools_scm>=3.4:devel/py-setuptools_scm@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR}
+
+USES=		dos2unix python
+USE_PYTHON=	pep517 autoplist pytest
+
+DOS2UNIX_FILES=	pyproject.toml
+
+NO_ARCH=	yes
+
+.include <bsd.port.mk>
diff --git a/devel/py-multiset/distinfo b/devel/py-multiset/distinfo
new file mode 100644
index 000000000000..69da03760e07
--- /dev/null
+++ b/devel/py-multiset/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1680195127
+SHA256 (multiset-3.0.1.tar.gz) = e45671cae8385a8e6248a9b07a3a83280c2d0cc4312713058cfbacdc5ec9973e
+SIZE (multiset-3.0.1.tar.gz) = 33433
diff --git a/devel/py-multiset/files/patch-pyproject.toml b/devel/py-multiset/files/patch-pyproject.toml
new file mode 100644
index 000000000000..5609f3635267
--- /dev/null
+++ b/devel/py-multiset/files/patch-pyproject.toml
@@ -0,0 +1,13 @@
+--- pyproject.toml.orig	2023-03-30 16:54:02 UTC
++++ pyproject.toml
+@@ -1,7 +1,7 @@
+ [build-system]
+ requires = [
+     "setuptools >= 42",
+-    "setuptools_scm[toml]>=3.4,<6",
++    "setuptools_scm[toml]>=3.4",
+     "wheel"
+ ]
+-build-backend = "setuptools.build_meta"
+\ No newline at end of file
++build-backend = "setuptools.build_meta"
diff --git a/devel/py-multiset/pkg-descr b/devel/py-multiset/pkg-descr
new file mode 100644
index 000000000000..99abec610645
--- /dev/null
+++ b/devel/py-multiset/pkg-descr
@@ -0,0 +1,6 @@
+The multiset package provides a multiset implementation for python.
+
+A multiset is similar to the builtin set, but it allows an element to occur
+multiple times. It is an unordered collection of elements which have to be
+hashable just like in a set. It supports the same methods and operations as set
+does, e.g. membership test, union, intersection, and (symmetric) difference.