git: efafc6862966 - main - science/py-dwave-hybrid: New port: DWave: Hybrid asynchronous decomposition sampler prototype framework

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Tue, 16 Aug 2022 02:58:45 UTC
The branch main has been updated by yuri:

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

commit efafc686296692077a5c57748576399f5822da85
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2022-08-16 02:06:58 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2022-08-16 02:58:42 +0000

    science/py-dwave-hybrid: New port: DWave: Hybrid asynchronous decomposition sampler prototype framework
---
 science/Makefile                  |  1 +
 science/py-dwave-hybrid/Makefile  | 37 +++++++++++++++++++++++++++++++++++++
 science/py-dwave-hybrid/distinfo  |  3 +++
 science/py-dwave-hybrid/pkg-descr | 12 ++++++++++++
 4 files changed, 53 insertions(+)

diff --git a/science/Makefile b/science/Makefile
index 1af7a0dfe3f0..301137238f68 100644
--- a/science/Makefile
+++ b/science/Makefile
@@ -286,6 +286,7 @@
     SUBDIR += py-dlib
     SUBDIR += py-dwave-cloud-client
     SUBDIR += py-dwave-greedy
+    SUBDIR += py-dwave-hybrid
     SUBDIR += py-dwave-inspector
     SUBDIR += py-dwave-neal
     SUBDIR += py-dwave-networkx
diff --git a/science/py-dwave-hybrid/Makefile b/science/py-dwave-hybrid/Makefile
new file mode 100644
index 000000000000..ec55f87fe9ab
--- /dev/null
+++ b/science/py-dwave-hybrid/Makefile
@@ -0,0 +1,37 @@
+PORTNAME=	dwave-hybrid
+DISTVERSION=	0.6.8
+CATEGORIES=	science python # quantum-computing
+PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER=	yuri@FreeBSD.org
+COMMENT=	DWave: Hybrid asynchronous decomposition sampler prototype framework
+
+LICENSE=	APACHE20
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+PY_DEPENDS=	${PYTHON_PKGNAMEPREFIX}click>5:devel/py-click@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}dimod>=0.10.13:science/py-dimod@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}dwave-greedy>=0.1.0:science/py-dwave-greedy@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}dwave-networkx>=0.8.8:science/py-dwave-networkx@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}dwave-neal>=0.5.4:science/py-dwave-neal@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}dwave-preprocessing>0:science/py-dwave-preprocessing@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}dwave-system>=1.13.0:science/py-dwave-system@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}dwave-tabu>=0.2.0:science/py-dwave-tabu@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}networkx>0:math/py-networkx@${PY_FLAVOR} \
+		${PYNUMPY} \
+		${PYTHON_PKGNAMEPREFIX}minorminer>=0.1.7:math/py-minorminer@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}plucky>=0.4.3:devel/py-plucky@${PY_FLAVOR}
+BUILD_DEPENDS=	${PY_DEPENDS}
+RUN_DEPENDS=	${PY_DEPENDS}
+
+USES=		python:3.9+
+USE_PYTHON=	distutils autoplist unittest # several tests fail, see https://github.com/dwavesystems/dwave-hybrid/issues/276
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	dwavesystems
+
+TEST_ENV=	${MAKE_ENV} PYTHONPATH=${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}
+
+NO_ARCH=	yes
+
+.include <bsd.port.mk>
diff --git a/science/py-dwave-hybrid/distinfo b/science/py-dwave-hybrid/distinfo
new file mode 100644
index 000000000000..7109ccfd7d01
--- /dev/null
+++ b/science/py-dwave-hybrid/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1660608506
+SHA256 (dwavesystems-dwave-hybrid-0.6.8_GH0.tar.gz) = 3c85e96caafc8ca56e9239b809df82a15880660c3084ab460a28d4a0a49cf3a1
+SIZE (dwavesystems-dwave-hybrid-0.6.8_GH0.tar.gz) = 21322405
diff --git a/science/py-dwave-hybrid/pkg-descr b/science/py-dwave-hybrid/pkg-descr
new file mode 100644
index 000000000000..cf43844e8a74
--- /dev/null
+++ b/science/py-dwave-hybrid/pkg-descr
@@ -0,0 +1,12 @@
+dwave-hybrid is a general, minimal Python framework for building hybrid
+asynchronous decomposition samplers for quadratic unconstrained binary
+optimization (QUBO) problems.
+
+dwave-hybrid facilitates three aspects of solution development:
+* Hybrid approaches to combining quantum and classical compute resources
+* Evaluating a portfolio of algorithmic components and problem-decomposition
+  strategies
+* Experimenting with workflow structures and parameters to obtain the best
+  application results
+
+WWW: https://docs.ocean.dwavesys.com/projects/hybrid/en/stable/