aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPo-Chuan Hsieh <sunpoet@FreeBSD.org>2023-04-05 17:07:22 +0000
committerPo-Chuan Hsieh <sunpoet@FreeBSD.org>2023-04-05 17:29:38 +0000
commit2a685ab209b7b7d03f1d03f6bd2d33676f8efd36 (patch)
tree6ad4ff032bac1664cbff6e7f3186782947c0a134
parent5383d075cbfda5e0f3fa22b3ee76d0883c88dfce (diff)
databases/py-fastparquet: Add py-fastparquet 2023.2.0
fastparquet is a python implementation of the parquet format, aiming integrate into python-based big data work-flows. It is used implicitly by the projects Dask, Pandas and intake-parquet. We offer a high degree of support for the features of the parquet format, and very competitive performance, in a small install size and codebase.
-rw-r--r--databases/Makefile1
-rw-r--r--databases/py-fastparquet/Makefile30
-rw-r--r--databases/py-fastparquet/distinfo3
-rw-r--r--databases/py-fastparquet/files/patch-setup.py20
-rw-r--r--databases/py-fastparquet/pkg-descr6
5 files changed, 60 insertions, 0 deletions
diff --git a/databases/Makefile b/databases/Makefile
index 32b05e235f23..9edea03dced9 100644
--- a/databases/Makefile
+++ b/databases/Makefile
@@ -747,6 +747,7 @@
SUBDIR += py-duckdb
SUBDIR += py-fakeredis
SUBDIR += py-fastapi-users-db-ormar
+ SUBDIR += py-fastparquet
SUBDIR += py-fdb
SUBDIR += py-firebirdsql
SUBDIR += py-flask-sqlalchemy
diff --git a/databases/py-fastparquet/Makefile b/databases/py-fastparquet/Makefile
new file mode 100644
index 000000000000..6fd05dd8cbe2
--- /dev/null
+++ b/databases/py-fastparquet/Makefile
@@ -0,0 +1,30 @@
+PORTNAME= fastparquet
+PORTVERSION= 2023.2.0
+CATEGORIES= databases python
+MASTER_SITES= PYPI
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER= sunpoet@FreeBSD.org
+COMMENT= Python support for Parquet file format
+WWW= https://github.com/dask/fastparquet
+
+LICENSE= APACHE20
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}numpy>=0,1:math/py-numpy@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}setuptools_scm>=1.5.4:devel/py-setuptools_scm@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} \
+ thrift:devel/thrift
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}cramjam>=2.3:archivers/py-cramjam@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}fsspec>=0:devel/py-fsspec@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}numpy>=1.20.3,1:math/py-numpy@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}packaging>=0:devel/py-packaging@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pandas>=1.5.0,1:math/py-pandas@${PY_FLAVOR}
+
+USES= python:3.8+
+USE_PYTHON= autoplist concurrent cython distutils
+
+post-install:
+ ${FIND} ${STAGEDIR}${PYTHON_SITELIBDIR} -name '*.so' -exec ${STRIP_CMD} {} +
+
+.include <bsd.port.mk>
diff --git a/databases/py-fastparquet/distinfo b/databases/py-fastparquet/distinfo
new file mode 100644
index 000000000000..1f4e3a5e6f89
--- /dev/null
+++ b/databases/py-fastparquet/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1679498488
+SHA256 (fastparquet-2023.2.0.tar.gz) = 7611447ce3ff5696539f7e43289da2491ea41f7cb92d4dbada374012b62c51c3
+SIZE (fastparquet-2023.2.0.tar.gz) = 392472
diff --git a/databases/py-fastparquet/files/patch-setup.py b/databases/py-fastparquet/files/patch-setup.py
new file mode 100644
index 000000000000..aa3535977588
--- /dev/null
+++ b/databases/py-fastparquet/files/patch-setup.py
@@ -0,0 +1,20 @@
+--- setup.py.orig 2022-11-18 01:33:09 UTC
++++ setup.py
+@@ -44,7 +44,6 @@ else:
+ extra = {'ext_modules': cythonize(modules, language_level=3)}
+
+ install_requires = open('requirements.txt').read().strip().split('\n')
+-subprocess.call(["git", "status"], stdout=sys.stdout, stderr=sys.stderr)
+
+ setup(
+ name='fastparquet',
+@@ -57,8 +56,7 @@ setup(
+ 'setuptools>18.0',
+ 'setuptools-scm>1.5.4',
+ 'Cython',
+- 'pytest-runner',
+- 'oldest-supported-numpy'
++ 'numpy'
+ ],
+ description='Python support for Parquet file format',
+ author='Martin Durant',
diff --git a/databases/py-fastparquet/pkg-descr b/databases/py-fastparquet/pkg-descr
new file mode 100644
index 000000000000..d8b5b47d5700
--- /dev/null
+++ b/databases/py-fastparquet/pkg-descr
@@ -0,0 +1,6 @@
+fastparquet is a python implementation of the parquet format, aiming integrate
+into python-based big data work-flows. It is used implicitly by the projects
+Dask, Pandas and intake-parquet.
+
+We offer a high degree of support for the features of the parquet format, and
+very competitive performance, in a small install size and codebase.