git: 29ad935bb800 - main - science/py-dimod: New port: DWave: Shared API for QUBO/Ising samplers

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Sun, 14 Aug 2022 05:12:18 UTC
The branch main has been updated by yuri:

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

commit 29ad935bb800a12512d3b5ad319a543a68429737
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2022-08-14 05:09:15 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2022-08-14 05:12:16 +0000

    science/py-dimod: New port: DWave: Shared API for QUBO/Ising samplers
---
 science/Makefile           |  2 ++
 science/py-dimod/Makefile  | 26 ++++++++++++++++++++++++++
 science/py-dimod/distinfo  |  3 +++
 science/py-dimod/pkg-descr | 11 +++++++++++
 4 files changed, 42 insertions(+)

diff --git a/science/Makefile b/science/Makefile
index 6e3bc001aab0..269b4ca052c4 100644
--- a/science/Makefile
+++ b/science/Makefile
@@ -248,6 +248,7 @@
     SUBDIR += plumed
     SUBDIR += pnetcdf
     SUBDIR += precice
+    SUBDIR += psi4
     SUBDIR += pulseview
     SUBDIR += py-DendroPy
     SUBDIR += py-GPy
@@ -281,6 +282,7 @@
     SUBDIR += py-cirq-pasqal
     SUBDIR += py-cirq-rigetti
     SUBDIR += py-coards
+    SUBDIR += py-dimod
     SUBDIR += py-dipy
     SUBDIR += py-dlib
     SUBDIR += py-eccodes
diff --git a/science/py-dimod/Makefile b/science/py-dimod/Makefile
new file mode 100644
index 000000000000..6aed1b4e64f5
--- /dev/null
+++ b/science/py-dimod/Makefile
@@ -0,0 +1,26 @@
+PORTNAME=	dimod
+DISTVERSION=	0.11.4
+CATEGORIES=	science graphics
+MASTER_SITES=	CHEESESHOP
+PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER=	yuri@FreeBSD.org
+COMMENT=	DWave: Shared API for QUBO/Ising samplers
+
+LICENSE=	APACHE20
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+PY_DEPENDS=	${PYNUMPY} \
+		${PYTHON_PKGNAMEPREFIX}reno>0:textproc/py-reno@${PY_FLAVOR}
+BUILD_DEPENDS=	${PY_DEPENDS}
+RUN_DEPENDS=	${PY_DEPENDS}
+
+USES=		python:3.7+
+USE_PYTHON=	distutils cython autoplist unittest # tests are broken, see https://github.com/dwavesystems/dimod/issues/1234
+
+TEST_ENV=	${MAKE_ENV} PYTHONPATH=${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}
+
+post-install:
+	@${FIND} ${STAGEDIR}${PYTHON_SITELIBDIR}/${PORTNAME} -name "*${PYTHON_EXT_SUFFIX}.so" | ${XARGS} ${STRIP_CMD}
+
+.include <bsd.port.mk>
diff --git a/science/py-dimod/distinfo b/science/py-dimod/distinfo
new file mode 100644
index 000000000000..73d6a71a1597
--- /dev/null
+++ b/science/py-dimod/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1660431665
+SHA256 (dimod-0.11.4.tar.gz) = 3b0db8f6cb37d2679658dbaaec8d6291675b35f36d7b1f8ee1a132b57b4dee3e
+SIZE (dimod-0.11.4.tar.gz) = 1858324
diff --git a/science/py-dimod/pkg-descr b/science/py-dimod/pkg-descr
new file mode 100644
index 000000000000..dcaf688769da
--- /dev/null
+++ b/science/py-dimod/pkg-descr
@@ -0,0 +1,11 @@
+dimod is a part of the software stack for accessing quantum computing hardware
+made by D-Wave company.
+
+dimod is a shared API for samplers. It provides:
+* classes for quadratic models - such as the binary quadratic model (BQM) class
+  that contains Ising and QUBO models used by samplers such as the D-Wave system
+  - and higher-order (non-quadratic) models
+* reference examples of samplers and composed samplers
+* abstract base classes for constructing new samplers and composed samplers
+
+WWW: https://github.com/dwavesystems/dimod