aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPo-Chuan Hsieh <sunpoet@FreeBSD.org>2025-03-19 03:34:57 +0000
committerPo-Chuan Hsieh <sunpoet@FreeBSD.org>2025-03-19 03:34:57 +0000
commitf19c30df80b57637f6579acb6834c21aaa960069 (patch)
treeda6db42a500e3ab712f4f91d1f76fc85bed3de87
parentc91d6efe6adbf5e1de504b1ed5bea3526aa39f3c (diff)
databases/py-sqlframe: Add py-sqlframe 3.24.1
SQLFrame implements the PySpark DataFrame API in order to enable running transformation pipelines directly on database engines - no Spark clusters or dependencies required.
-rw-r--r--databases/Makefile1
-rw-r--r--databases/py-sqlframe/Makefile27
-rw-r--r--databases/py-sqlframe/distinfo3
-rw-r--r--databases/py-sqlframe/files/patch-setup.py11
-rw-r--r--databases/py-sqlframe/pkg-descr3
5 files changed, 45 insertions, 0 deletions
diff --git a/databases/Makefile b/databases/Makefile
index ebe46100e150..9414cac7f5ef 100644
--- a/databases/Makefile
+++ b/databases/Makefile
@@ -837,6 +837,7 @@
SUBDIR += py-sqlalchemy14
SUBDIR += py-sqlalchemy20
SUBDIR += py-sqlcipher3
+ SUBDIR += py-sqlframe
SUBDIR += py-sqlglot
SUBDIR += py-sqlglotrs
SUBDIR += py-sqlite-anyio
diff --git a/databases/py-sqlframe/Makefile b/databases/py-sqlframe/Makefile
new file mode 100644
index 000000000000..473ff1bf340b
--- /dev/null
+++ b/databases/py-sqlframe/Makefile
@@ -0,0 +1,27 @@
+PORTNAME= sqlframe
+PORTVERSION= 3.24.1
+CATEGORIES= databases python
+MASTER_SITES= PYPI
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER= sunpoet@FreeBSD.org
+COMMENT= Turn PySpark Into a Universal DataFrame API
+WWW= https://sqlframe.readthedocs.io/en/stable/ \
+ https://github.com/eakmanrq/sqlframe
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}setuptools-scm>=0:devel/py-setuptools-scm@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}prettytable>=0<4:devel/py-prettytable@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}sqlglot>=24.0.0:databases/py-sqlglot@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}typing-extensions>=0:devel/py-typing-extensions@${PY_FLAVOR}
+
+USES= python
+USE_PYTHON= autoplist concurrent pep517
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/databases/py-sqlframe/distinfo b/databases/py-sqlframe/distinfo
new file mode 100644
index 000000000000..1fdc0d205156
--- /dev/null
+++ b/databases/py-sqlframe/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1742070234
+SHA256 (sqlframe-3.24.1.tar.gz) = fb01ab9c12e85e4a0d6c911d7ba4b3b343846a90382ba9d5aeedc94a0234741b
+SIZE (sqlframe-3.24.1.tar.gz) = 29059774
diff --git a/databases/py-sqlframe/files/patch-setup.py b/databases/py-sqlframe/files/patch-setup.py
new file mode 100644
index 000000000000..578f3ea0c54e
--- /dev/null
+++ b/databases/py-sqlframe/files/patch-setup.py
@@ -0,0 +1,11 @@
+--- setup.py.orig 2025-03-12 03:57:29 UTC
++++ setup.py
+@@ -20,7 +20,7 @@ setup(
+ python_requires=">=3.9",
+ install_requires=[
+ "prettytable<4",
+- "sqlglot>=24.0.0,<26.10",
++ "sqlglot>=24.0.0",
+ "typing_extensions",
+ ],
+ extras_require={
diff --git a/databases/py-sqlframe/pkg-descr b/databases/py-sqlframe/pkg-descr
new file mode 100644
index 000000000000..d9989fffe06c
--- /dev/null
+++ b/databases/py-sqlframe/pkg-descr
@@ -0,0 +1,3 @@
+SQLFrame implements the PySpark DataFrame API in order to enable running
+transformation pipelines directly on database engines - no Spark clusters or
+dependencies required.