diff --git a/science/py-dwave-samplers/Makefile b/science/py-dwave-samplers/Makefile index 32796c769500..ed3fa8ec2cec 100644 --- a/science/py-dwave-samplers/Makefile +++ b/science/py-dwave-samplers/Makefile @@ -1,51 +1,43 @@ PORTNAME= dwave-samplers -DISTVERSION= 1.7.0 -PORTREVISION= 2 +DISTVERSION= 1.8.0 CATEGORIES= science python # quantum-computing PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} MAINTAINER= yuri@FreeBSD.org COMMENT= DWave: Classical algorithms for solving binary quadratic models WWW= https://github.com/dwavesystems/dwave-samplers LICENSE= APACHE20 LICENSE_FILE= ${WRKSRC}/LICENSE -PY_DEPENDS= ${PYTHON_PKGNAMEPREFIX}dimod>=0.12.13:science/py-dimod@${PY_FLAVOR} \ +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}dimod>=0.12.21:science/py-dimod@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}meson-python>=0.18.0:devel/meson-python@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}ninja>=1.13.0:devel/py-ninja@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}numpy>=1.21.6:math/py-numpy@${PY_FLAVOR} \ + meson:devel/meson +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}dimod>=0.12.21:science/py-dimod@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}networkx>=3.0:math/py-networkx@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}numpy>=1.16:math/py-numpy@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}reno>0:textproc/py-reno@${PY_FLAVOR} -BUILD_DEPENDS= ${PY_DEPENDS} -RUN_DEPENDS= ${PY_DEPENDS} + ${PYTHON_PKGNAMEPREFIX}numpy>=1.21.6:math/py-numpy@${PY_FLAVOR} TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}parameterized>0:devel/py-parameterized@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist cython distutils unittest # 2 tests fail, see https://github.com/dwavesystems/dwave-samplers/issues/66 +USE_PYTHON= autoplist cython pep517 USE_GITHUB= yes GH_ACCOUNT= dwavesystems TEST_ENV= ${MAKE_ENV} PYTHONPATH=${STAGEDIR}${PYTHONPREFIX_SITELIBDIR} TEST_WRKSRC= ${WRKSRC}/tests post-install: - # fix file paths, workaround for https://github.com/dwavesystems/dwave-samplers/issues/31 - @cd ${STAGEDIR}${PYTHON_SITELIBDIR} && ( \ - for f in `${FIND} samplers -name "*.so"`; do \ - ${MV} $$f dwave/$$f; \ - done; \ - ${RM} -r samplers; \ - ) # strip binaries @${FIND} ${STAGEDIR}${PYTHON_SITELIBDIR}/dwave/samplers -name "*${PYTHON_TAG}.so" | ${XARGS} ${STRIP_CMD} # remove conflicting __init__.py, see https://github.com/dwavesystems/dwave-system/issues/462 @${RM} -r \ ${STAGEDIR}${PYTHON_SITELIBDIR}/dwave/__init__.py \ ${STAGEDIR}${PYTHON_SITELIBDIR}/dwave/__pycache__ post-test: @${SETENV} ${TEST_ENV} ${PYTHON_CMD} ${FILESDIR}/example.py -# tests as of 1.6.0: Ran 522 tests in 102.085s - .include diff --git a/science/py-dwave-samplers/distinfo b/science/py-dwave-samplers/distinfo index 70bf06f17ace..ddfdea266ec8 100644 --- a/science/py-dwave-samplers/distinfo +++ b/science/py-dwave-samplers/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1774983277 -SHA256 (dwavesystems-dwave-samplers-1.7.0_GH0.tar.gz) = 843dbdf90318e6b503a1fb4ea697bad6a53f942a4683a584e55bdf3837c913d3 -SIZE (dwavesystems-dwave-samplers-1.7.0_GH0.tar.gz) = 193422 +TIMESTAMP = 1782228818 +SHA256 (dwavesystems-dwave-samplers-1.8.0_GH0.tar.gz) = 2bd30a06c7363c7c28e74dfd1e5d56b9e41068904ab7a1752369b16f3bd219cd +SIZE (dwavesystems-dwave-samplers-1.8.0_GH0.tar.gz) = 184161 diff --git a/science/py-dwave-samplers/files/patch-pyproject.toml b/science/py-dwave-samplers/files/patch-pyproject.toml new file mode 100644 index 000000000000..887bd5fb9e4e --- /dev/null +++ b/science/py-dwave-samplers/files/patch-pyproject.toml @@ -0,0 +1,24 @@ +-- Relax version requirements for dimod and meson-python to match versions available in the ports tree. +--- pyproject.toml.orig 2026-06-23 15:37:58 UTC ++++ pyproject.toml +@@ -2,9 +2,9 @@ requires = [ + requires = [ + # Same as dependency-groups.build + "cython~=3.2.0", +- "dimod==0.12.21", # oldest dimod that supports Python 3.14 ++ "dimod>=0.12.21", # oldest dimod that supports Python 3.14 + "meson~=1.10.2", # latest as of March 2026 +- "meson-python~=0.19.0", # latest as of March 2026 ++ "meson-python>=0.18.0", # latest as of March 2026 + "ninja~=1.13.0", # latest as of March 2026 + "numpy~=2.0", + ] +@@ -54,7 +54,7 @@ build = [ + build = [ + # Same as build-system.requires + "cython~=3.2.0", +- "dimod==0.12.21", ++ "dimod>=0.12.21", + "meson~=1.9.0", + "meson-python~=0.18.0", + "ninja~=1.13.0",