git: 1123e162bd83 - main - misc/py-npTDMS: New port: NumPy based module for reading TDMS files produced by LabView

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Fri, 21 Jul 2023 06:38:47 UTC
The branch main has been updated by yuri:

URL: https://cgit.FreeBSD.org/ports/commit/?id=1123e162bd8390d3c7049d242e9cb0e5f67e1d53

commit 1123e162bd8390d3c7049d242e9cb0e5f67e1d53
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2023-07-18 14:29:17 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2023-07-21 06:38:37 +0000

    misc/py-npTDMS: New port: NumPy based module for reading TDMS files produced by LabView
---
 misc/Makefile            |  1 +
 misc/py-npTDMS/Makefile  | 29 +++++++++++++++++++++++++++++
 misc/py-npTDMS/distinfo  |  3 +++
 misc/py-npTDMS/pkg-descr |  9 +++++++++
 4 files changed, 42 insertions(+)

diff --git a/misc/Makefile b/misc/Makefile
index 1c15af2e03c4..2ccb33485131 100644
--- a/misc/Makefile
+++ b/misc/Makefile
@@ -428,6 +428,7 @@
     SUBDIR += py-mffpy
     SUBDIR += py-molequeue
     SUBDIR += py-mxnet
+    SUBDIR += py-npTDMS
     SUBDIR += py-numcodecs
     SUBDIR += py-onnx
     SUBDIR += py-onnx-tf
diff --git a/misc/py-npTDMS/Makefile b/misc/py-npTDMS/Makefile
new file mode 100644
index 000000000000..effb76404917
--- /dev/null
+++ b/misc/py-npTDMS/Makefile
@@ -0,0 +1,29 @@
+PORTNAME=	npTDMS
+DISTVERSION=	1.7.0
+CATEGORIES=	misc
+MASTER_SITES=	PYPI
+PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER=	yuri@FreeBSD.org
+COMMENT=	NumPy based module for reading TDMS files produced by LabView
+WWW=		https://github.com/adamreeve/npTDMS
+
+LICENSE=	GPLv3
+LICENSE_FILE=	${WRKSRC}/COPYING
+
+BUILD_DEPENDS=	${PY_SETUPTOOLS} \
+		${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR}
+RUN_DEPENDS=	${PYNUMPY}
+RUN_DEPENDS+=	${PYTHON_PKGNAMEPREFIX}h5py>0:science/py-h5py@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}pandas>0:math/py-pandas@${PY_FLAVOR} # optional
+TEST_DEPENDS=	${PYTHON_PKGNAMEPREFIX}hypothesis>0:devel/py-hypothesis@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}pytest-benchmark>0:devel/py-pytest-benchmark@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}thermocouples_reference>0:misc/py-thermocouples_reference@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}scipy>0:science/py-scipy@${PY_FLAVOR}
+
+USES=		python
+USE_PYTHON=	pep517 autoplist pytest
+
+NO_ARCH=	yes
+
+.include <bsd.port.mk>
diff --git a/misc/py-npTDMS/distinfo b/misc/py-npTDMS/distinfo
new file mode 100644
index 000000000000..b966141b1f4b
--- /dev/null
+++ b/misc/py-npTDMS/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1689904513
+SHA256 (npTDMS-1.7.0.tar.gz) = 2b1c802add05180db2f07a222cd5c3cd9b508441fb24e04438a76fc4ea7bc39c
+SIZE (npTDMS-1.7.0.tar.gz) = 176422
diff --git a/misc/py-npTDMS/pkg-descr b/misc/py-npTDMS/pkg-descr
new file mode 100644
index 000000000000..01b62f635eb2
--- /dev/null
+++ b/misc/py-npTDMS/pkg-descr
@@ -0,0 +1,9 @@
+npTDMS is a cross-platform Python package for reading and writing TDMS files
+as produced by LabVIEW, and is built on top of the numpy package. Data is read
+from TDMS files as numpy arrays, and npTDMS also allows writing numpy arrays
+to TDMS files.
+
+TDMS files are structured in a hierarchy of groups and channels. A TDMS file can
+contain multiple groups, which may each contain multiple channels. A file, group
+and channel may all have properties associated with them, but only channels have
+array data.