pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

py-cykhash: Cython equivalent to khash-sets/maps



Module Name:	pkgsrc-wip
Committed By:	Jason W. Bacon <bacon%NetBSD.org@localhost>
Pushed By:	outpaddling
Date:		Sun Jan 7 07:57:50 2024 -0600
Changeset:	34f49e6d7a9cfa0532676aeda9a08cbf1852e98b

Modified Files:
	Makefile
Added Files:
	py-cykhash/DESCR
	py-cykhash/Makefile
	py-cykhash/PLIST
	py-cykhash/distinfo

Log Message:
py-cykhash: Cython equivalent to khash-sets/maps

Cykhash is a cython equivalent to khash-sets/maps, efficient
implementation of isin and unique
Benefits:
    Brings functionality of khash to Python and Cython and can be used
    seamlessly in numpy or pandas.
    Numpy's world is lacking the concept of a (hash-)set. This
    shortcoming is fixed and efficient (memory- and speedwise compared
    to pandas') unique and isin are implemented.
    Python-set/dict have big memory-footprint. For some datatypes the
    overhead can be reduced by using khash by factor 4-8.

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=34f49e6d7a9cfa0532676aeda9a08cbf1852e98b

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 Makefile            |  1 +
 py-cykhash/DESCR    | 10 ++++++++++
 py-cykhash/Makefile | 21 +++++++++++++++++++++
 py-cykhash/PLIST    | 43 +++++++++++++++++++++++++++++++++++++++++++
 py-cykhash/distinfo |  5 +++++
 5 files changed, 80 insertions(+)

diffs:
diff --git a/Makefile b/Makefile
index 3319d3b74d..5bd1c30e28 100644
--- a/Makefile
+++ b/Makefile
@@ -3441,6 +3441,7 @@ SUBDIR+=	py-cvss
 SUBDIR+=	py-cvxpy
 SUBDIR+=	py-cxnet
 SUBDIR+=	py-cxvpy
+SUBDIR+=	py-cykhash
 SUBDIR+=	py-cyksuid
 SUBDIR+=	py-cymem
 SUBDIR+=	py-cysignals
diff --git a/py-cykhash/DESCR b/py-cykhash/DESCR
new file mode 100644
index 0000000000..b48f0ff62c
--- /dev/null
+++ b/py-cykhash/DESCR
@@ -0,0 +1,10 @@
+Cykhash is a cython equivalent to khash-sets/maps, efficient
+implementation of isin and unique
+Benefits:
+    Brings functionality of khash to Python and Cython and can be used
+    seamlessly in numpy or pandas.
+    Numpy's world is lacking the concept of a (hash-)set. This
+    shortcoming is fixed and efficient (memory- and speedwise compared
+    to pandas') unique and isin are implemented.
+    Python-set/dict have big memory-footprint. For some datatypes the
+    overhead can be reduced by using khash by factor 4-8.
diff --git a/py-cykhash/Makefile b/py-cykhash/Makefile
new file mode 100644
index 0000000000..ab4dde35ae
--- /dev/null
+++ b/py-cykhash/Makefile
@@ -0,0 +1,21 @@
+# $NetBSD$
+#
+###########################################################
+#                  Generated by fbsd2pkg                  #
+#              Sun Jan  7 07:52:19 CST 2024               #
+###########################################################
+
+DISTNAME=	cykhash-2.0.1
+PKGNAME=	${PYPKGPREFIX}-cykhash-2.0.1
+CATEGORIES=	devel
+MASTER_SITES=	${MASTER_SITE_PYPI:=c/cykhash/}
+
+OWNER=		bacon%NetBSD.org@localhost
+HOMEPAGE=	https://pypi.python.org/project/cykhash/
+COMMENT=	Cython equivalent to khash-sets/maps
+LICENSE=	mit
+
+.include "../../lang/python/wheel.mk"
+# CentOS doesn't have zlib in the base, so uncomment if needed.
+# .include "../../devel/zlib/buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/py-cykhash/PLIST b/py-cykhash/PLIST
new file mode 100644
index 0000000000..486c28b3bd
--- /dev/null
+++ b/py-cykhash/PLIST
@@ -0,0 +1,43 @@
+@comment $NetBSD$
+${PYSITELIB}/${WHEEL_INFODIR}/LICENSE
+${PYSITELIB}/${WHEEL_INFODIR}/METADATA
+${PYSITELIB}/${WHEEL_INFODIR}/RECORD
+${PYSITELIB}/${WHEEL_INFODIR}/WHEEL
+${PYSITELIB}/${WHEEL_INFODIR}/top_level.txt
+${PYSITELIB}/cykhash/__init__.py
+${PYSITELIB}/cykhash/__init__.pyc
+${PYSITELIB}/cykhash/__init__.pyo
+${PYSITELIB}/cykhash/common.pxi
+${PYSITELIB}/cykhash/compat.py
+${PYSITELIB}/cykhash/compat.pyc
+${PYSITELIB}/cykhash/compat.pyo
+${PYSITELIB}/cykhash/floatdef.pxd
+${PYSITELIB}/cykhash/hash_functions.pxi
+${PYSITELIB}/cykhash/khash.pxi
+${PYSITELIB}/cykhash/khashmaps.pxd
+${PYSITELIB}/cykhash/khashmaps.pyx
+${PYSITELIB}/cykhash/khashmaps.so
+${PYSITELIB}/cykhash/khashsets.pxd
+${PYSITELIB}/cykhash/khashsets.pyx
+${PYSITELIB}/cykhash/khashsets.so
+${PYSITELIB}/cykhash/maps/map_header.pxi
+${PYSITELIB}/cykhash/maps/map_header.pxi.in
+${PYSITELIB}/cykhash/maps/map_impl.pxi
+${PYSITELIB}/cykhash/maps/map_impl.pxi.in
+${PYSITELIB}/cykhash/maps/map_init.pxi
+${PYSITELIB}/cykhash/maps/map_init.pxi.in
+${PYSITELIB}/cykhash/memory.pxi
+${PYSITELIB}/cykhash/murmurhash.pxi
+${PYSITELIB}/cykhash/sets/set_header.pxi
+${PYSITELIB}/cykhash/sets/set_header.pxi.in
+${PYSITELIB}/cykhash/sets/set_impl.pxi
+${PYSITELIB}/cykhash/sets/set_impl.pxi.in
+${PYSITELIB}/cykhash/sets/set_init.pxi
+${PYSITELIB}/cykhash/sets/set_init.pxi.in
+${PYSITELIB}/cykhash/unique.pxd
+${PYSITELIB}/cykhash/unique.pyx
+${PYSITELIB}/cykhash/unique.so
+${PYSITELIB}/cykhash/unique/unique_impl.pxi
+${PYSITELIB}/cykhash/unique/unique_impl.pxi.in
+${PYSITELIB}/cykhash/utils.pyx
+${PYSITELIB}/cykhash/utils.so
diff --git a/py-cykhash/distinfo b/py-cykhash/distinfo
new file mode 100644
index 0000000000..66d69b6b7a
--- /dev/null
+++ b/py-cykhash/distinfo
@@ -0,0 +1,5 @@
+$NetBSD$
+
+BLAKE2s (cykhash-2.0.1.tar.gz) = 7cebf2ab0c483fe1d02b6b452a7e9fd6ef1614a777166a6a00fe9af03d43aad4
+SHA512 (cykhash-2.0.1.tar.gz) = 259fe46af74bf230b6269b7cc4b9adff20512b1a38539079188e326056f8689e6cc61753541d0e71dfd59f038149b52ecf5fc9dc64adcf846d6e32651c5b8692
+Size (cykhash-2.0.1.tar.gz) = 44895 bytes


Home | Main Index | Thread Index | Old Index