git: 0b406d1c8230 - main - math/py-highspy: New port: Python bindings for the extensible C++ library for random forests

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Fri, 19 Sep 2025 07:36:33 UTC
The branch main has been updated by yuri:

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

commit 0b406d1c82307313ebf5412d48b5fbf2eb87489b
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2025-09-19 05:31:51 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2025-09-19 07:36:19 +0000

    math/py-highspy: New port: Python bindings for the extensible C++ library for random forests
---
 math/Makefile             |  1 +
 math/py-highspy/Makefile  | 26 ++++++++++++++++++++++++++
 math/py-highspy/distinfo  |  3 +++
 math/py-highspy/pkg-descr |  6 ++++++
 4 files changed, 36 insertions(+)

diff --git a/math/Makefile b/math/Makefile
index 33cd64aa1d88..8a3d73ac958d 100644
--- a/math/Makefile
+++ b/math/Makefile
@@ -1001,6 +1001,7 @@
     SUBDIR += py-hdmedians
     SUBDIR += py-hepstats
     SUBDIR += py-heyoka
+    SUBDIR += py-highspy
     SUBDIR += py-hmmlearn
     SUBDIR += py-hypernetx
     SUBDIR += py-igraph
diff --git a/math/py-highspy/Makefile b/math/py-highspy/Makefile
new file mode 100644
index 000000000000..d6ce1907dcb7
--- /dev/null
+++ b/math/py-highspy/Makefile
@@ -0,0 +1,26 @@
+PORTNAME=	highspy
+DISTVERSION=	1.11.0
+CATEGORIES=	math
+MASTER_SITES=	PYPI
+PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER=	yuri@FreeBSD.org
+COMMENT=	Python bindings for the extensible C++ library for random forests
+WWW=		https://github.com/automl/random_forest_run
+
+LICENSE=	MIT
+LICENSE_FILE=	${WRKSRC}/LICENSE.txt
+
+BUILD_DEPENDS=	${PYNUMPY} \
+		${PYTHON_PKGNAMEPREFIX}pybind11>0:devel/py-pybind11@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}scikit-build-core>=0.3.3:devel/py-scikit-build-core@${PY_FLAVOR}
+RUN_DEPENDS=	${PYNUMPY}
+
+USES=		cmake:indirect compiler:c++11-lang python
+USE_PYTHON=	pep517 autoplist pytest
+
+TEST_ENV=	${MAKE_ENV} PYTHONPATH=${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}
+
+# tests as of 1.11.0: 58 passed in 2.98s
+
+.include <bsd.port.mk>
diff --git a/math/py-highspy/distinfo b/math/py-highspy/distinfo
new file mode 100644
index 000000000000..506deba7cac4
--- /dev/null
+++ b/math/py-highspy/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1758257257
+SHA256 (highspy-1.11.0.tar.gz) = 771e58c076122d207ff1b19759c21d3227f0da5b80dfd89a4145681524969cef
+SIZE (highspy-1.11.0.tar.gz) = 1285415
diff --git a/math/py-highspy/pkg-descr b/math/py-highspy/pkg-descr
new file mode 100644
index 000000000000..2a91b5a5826c
--- /dev/null
+++ b/math/py-highspy/pkg-descr
@@ -0,0 +1,6 @@
+highspy is a Python binding for HiGHS.
+
+HiGHS is a high performance serial and parallel solver for large scale sparse
+linear programming (LP) problems of the form:
+
+Minimize c^Tx subject to L <= Ax <= U; l <= x <= u