git: c4c8c99c3134 - main - misc/py-csvw: New port: Library to work with CSVW described tabular data
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Mon, 25 Aug 2025 06:18:23 UTC
The branch main has been updated by yuri:
URL: https://cgit.FreeBSD.org/ports/commit/?id=c4c8c99c31341c55dc6ca96e5da829ad48d18e4a
commit c4c8c99c31341c55dc6ca96e5da829ad48d18e4a
Author: Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2025-08-25 04:32:20 +0000
Commit: Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2025-08-25 06:18:14 +0000
misc/py-csvw: New port: Library to work with CSVW described tabular data
---
misc/Makefile | 1 +
misc/py-csvw/Makefile | 47 +++++++++++++++++++++++++++++++++++++++++++++++
misc/py-csvw/distinfo | 5 +++++
misc/py-csvw/pkg-descr | 4 ++++
4 files changed, 57 insertions(+)
diff --git a/misc/Makefile b/misc/Makefile
index ab4a30b49bb1..34d7fca833e1 100644
--- a/misc/Makefile
+++ b/misc/Makefile
@@ -432,6 +432,7 @@
SUBDIR += py-colorzero
SUBDIR += py-cppman
SUBDIR += py-crudini
+ SUBDIR += py-csvw
SUBDIR += py-datasets
SUBDIR += py-detecta
SUBDIR += py-diffusers
diff --git a/misc/py-csvw/Makefile b/misc/py-csvw/Makefile
new file mode 100644
index 000000000000..3e4dadce79c3
--- /dev/null
+++ b/misc/py-csvw/Makefile
@@ -0,0 +1,47 @@
+PORTNAME= csvw
+DISTVERSIONPREFIX= v
+DISTVERSION= 3.5.1
+CATEGORIES= misc python
+#MASTER_SITES= PYPI # tests are broken there
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER= yuri@FreeBSD.org
+COMMENT= Library to work with CSVW described tabular data
+WWW= https://github.com/cldf/csvw
+
+LICENSE= APACHE20
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+BUILD_DEPENDS= ${PY_SETUPTOOLS} \
+ ${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR}
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}attrs>=18.1:devel/py-attrs@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}Babel>0:devel/py-babel@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}colorama>0:devel/py-colorama@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}isodate>0:devel/py-isodate@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}jsonschema>0:devel/py-jsonschema@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}language-tags>0:textproc/py-language-tags@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}python-dateutil>0:devel/py-python-dateutil@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}rdflib>0:textproc/py-rdflib@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}requests>0:www/py-requests@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}rfc3986>=2:www/py-rfc3986@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}uritemplate>=3.0.0:net/py-uritemplate@${PY_FLAVOR}
+TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}frictionless>0:devel/py-frictionless@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pytest-cov>0:devel/py-pytest-cov@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pytest-mock>0:devel/py-pytest-mock@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}requests-mock>0:www/py-requests-mock@${PY_FLAVOR}
+
+USES= python
+USE_PYTHON= pep517 autoplist pytest
+
+USE_GITHUB= yes
+GH_ACCOUNT= cldf
+GH_TUPLE= w3c:csvw:0f3a1fd:csvw/tests/fixtures/csvw
+
+NO_ARCH= yes
+
+TEST_ENV= ${MAKE_ENV} PYTHONPATH=${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}
+TEST_WRKSRC= ${WRKSRC}/tests
+
+# tests as of 3.5.1: 782 passed, 16 xfailed in 15.37s
+
+.include <bsd.port.mk>
diff --git a/misc/py-csvw/distinfo b/misc/py-csvw/distinfo
new file mode 100644
index 000000000000..f24d5eee61f9
--- /dev/null
+++ b/misc/py-csvw/distinfo
@@ -0,0 +1,5 @@
+TIMESTAMP = 1756093938
+SHA256 (cldf-csvw-v3.5.1_GH0.tar.gz) = a9c214eca93c83735744918975306edf45cff88cba8aca773c0932fe36dbc3d3
+SIZE (cldf-csvw-v3.5.1_GH0.tar.gz) = 78243
+SHA256 (w3c-csvw-0f3a1fd_GH0.tar.gz) = 2045b235aab4601a1759fb331d22a6fcc325b2f448b118dca783c6cf9c065582
+SIZE (w3c-csvw-0f3a1fd_GH0.tar.gz) = 120140396
diff --git a/misc/py-csvw/pkg-descr b/misc/py-csvw/pkg-descr
new file mode 100644
index 000000000000..adf0bc68d9a7
--- /dev/null
+++ b/misc/py-csvw/pkg-descr
@@ -0,0 +1,4 @@
+The csvw package provides:
+* Python API to read and write relational, tabular data according to the CSV
+ on the Web specification and
+* commandline tools for reading and validating CSVW data