aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPo-Chuan Hsieh <sunpoet@FreeBSD.org>2024-09-15 19:08:13 +0000
committerPo-Chuan Hsieh <sunpoet@FreeBSD.org>2024-09-15 20:09:34 +0000
commit7a47c1050b7cbe7aa80ec8a41a72b7a3b15e95a1 (patch)
tree34d619c84f024729860a1fdbf19ae4dd15557736
parentb483c6dca7348cfd76d772f808c01cd44e54cd42 (diff)
math/py-modin: Add py-modin 0.32.0
Modin is a drop-in replacement for pandas. While pandas is single-threaded, Modin lets you instantly speed up your workflows by scaling pandas so it uses all of your cores. Modin works especially well on larger datasets, where pandas becomes painfully slow or runs out of memory. Also, Modin comes with the additional APIs to improve user experience.
-rw-r--r--math/Makefile1
-rw-r--r--math/py-modin/Makefile28
-rw-r--r--math/py-modin/distinfo3
-rw-r--r--math/py-modin/files/patch-setup.py11
-rw-r--r--math/py-modin/pkg-descr5
5 files changed, 48 insertions, 0 deletions
diff --git a/math/Makefile b/math/Makefile
index f5ba2137fd31..244170099b5b 100644
--- a/math/Makefile
+++ b/math/Makefile
@@ -998,6 +998,7 @@
SUBDIR += py-ml-dtypes
SUBDIR += py-mnnpy
SUBDIR += py-moarchiving
+ SUBDIR += py-modin
SUBDIR += py-mpmath
SUBDIR += py-munkres
SUBDIR += py-narwhals
diff --git a/math/py-modin/Makefile b/math/py-modin/Makefile
new file mode 100644
index 000000000000..e5db69c117c1
--- /dev/null
+++ b/math/py-modin/Makefile
@@ -0,0 +1,28 @@
+PORTNAME= modin
+PORTVERSION= 0.32.0
+CATEGORIES= math python
+MASTER_SITES= PYPI
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER= sunpoet@FreeBSD.org
+COMMENT= Make your pandas code run faster
+WWW= https://modin.readthedocs.io/en/stable/ \
+ https://github.com/modin-project/modin
+
+LICENSE= APACHE20
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}fsspec>=2022.11.0:devel/py-fsspec@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}numpy>=1.22.4,1:math/py-numpy@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}packaging>=21.0:devel/py-packaging@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pandas>=2,1<2.3,1:math/py-pandas@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}psutil>=5.8.0:sysutils/py-psutil@${PY_FLAVOR}
+
+USES= python
+USE_PYTHON= autoplist concurrent pep517
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/math/py-modin/distinfo b/math/py-modin/distinfo
new file mode 100644
index 000000000000..86acdcab8f3f
--- /dev/null
+++ b/math/py-modin/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1726080919
+SHA256 (modin-0.32.0.tar.gz) = 9f68557add5e92617d006eb98bfd93d298e7d4d9932a0cd48a5e38ee4f30a134
+SIZE (modin-0.32.0.tar.gz) = 842563
diff --git a/math/py-modin/files/patch-setup.py b/math/py-modin/files/patch-setup.py
new file mode 100644
index 000000000000..967cfe5cacfb
--- /dev/null
+++ b/math/py-modin/files/patch-setup.py
@@ -0,0 +1,11 @@
+--- setup.py.orig 2024-09-11 12:58:49 UTC
++++ setup.py
+@@ -52,7 +52,7 @@ setup(
+ long_description=long_description,
+ long_description_content_type="text/markdown",
+ install_requires=[
+- "pandas>=2.2,<2.3",
++ "pandas>=2,<2.3",
+ "packaging>=21.0",
+ "numpy>=1.22.4",
+ "fsspec>=2022.11.0",
diff --git a/math/py-modin/pkg-descr b/math/py-modin/pkg-descr
new file mode 100644
index 000000000000..c027fec94db0
--- /dev/null
+++ b/math/py-modin/pkg-descr
@@ -0,0 +1,5 @@
+Modin is a drop-in replacement for pandas. While pandas is single-threaded,
+Modin lets you instantly speed up your workflows by scaling pandas so it uses
+all of your cores. Modin works especially well on larger datasets, where pandas
+becomes painfully slow or runs out of memory. Also, Modin comes with the
+additional APIs to improve user experience.