From nobody Tue Apr 18 18:08:07 2023 X-Original-To: dev-commits-ports-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Q1Bjg6CqGz45Rcs; Tue, 18 Apr 2023 18:08:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Q1Bjg20CLz4DKQ; Tue, 18 Apr 2023 18:08:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681841287; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=95U0uYcKPpGYy1Vfunjtl+7ONHSCl/ET8L1fA9QIXzA=; b=edQpmiZjNLsekU88oJN8vUVY3SfSwzxya6RH5eC7q2Ed5Ts6Z7vh4J7/Jyl1W3QWmTmzO4 PUvudACJXilDkqd42f/P0UD/OxhayItouemRebrisn4Gl+fjdkSAfM3QKnBz61dOuG10ua qmSKIwOJTQFqxCwpWHYdcDJlwweB4vgXFXzMeRyKfpt9mR+fRHhTbC7p6Z/1fmLyZMaM+h L+/e1w+PpOdHFn4kcYSUDat9PbGaeJrcXClJ8oFXywnnH7hPCL59zXlaauybyG8J0vwCw/ t7zsIViMivpUsaJB0798WlXn+qDRnd00Ynyji0Wj7nypPdvB1pN9rCDnkFfLrg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681841287; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=95U0uYcKPpGYy1Vfunjtl+7ONHSCl/ET8L1fA9QIXzA=; b=Na6oFQcOYDmtNYEwPHQ0TzpXGve2lCCe3JZ6MPeqvVYvh1Z4y4CetRVnkPAp5yDuKqI0op YHHO+AVc/LedMLYJ9iVEWInuE3myEw6Sq55avHnxh5a0zrv5OtxKigWDyeQovtX/GFhBkR /9wRZn1lwow43+zN6+SBPg96blq1IFeoaMxvGnzgeeeqNNrNkxlvKIYmkLyu2DwEpeiPG/ ksPikgkFoOwDUapw2rkaQT6nmIj7ieqk9QB8Cf8S1rdXYyPlovQohrVycNdfl3S4y10ZJr 7Zd4HNoTTOvKD+8quzqCjeFaUPZ688mII4+vQnaSTacPy85nwQzEBn1WT+6t7g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681841287; a=rsa-sha256; cv=none; b=PT7H5u7cIAd8+WeULXn/rZIEjq16qH19g4kp8LnErLRs8XpRXQ48tKE69x4Dlj5O3hud0Q rBTYTiv9l7fq6DxSkdKAbNNdqS5NMpCLQIQYFKIc9SEePVuIvBsp4uCo4ZF7ODnXnromNE nHnQ4Mv7eulwI4DXl4Sy1NiXOW4MEyoDwAyeFMbe0j02VtrLZOn8hTJRIZS+riSnLUBGU9 j4blx1McBXLn+DzzFW6wGxDxEto//0qk+ZBNEt8UUQZCcyzJEzELUUs1oZx1fIuyxgqw4E XH1wau/BghYaU/eOXsjIwvWj4UM9p2noPByO+WdAHJQl+6rsAyTeZh4z4O1fYQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Q1Bjg14xszMLW; Tue, 18 Apr 2023 18:08:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 33II87oe078328; Tue, 18 Apr 2023 18:08:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 33II87E2078327; Tue, 18 Apr 2023 18:08:07 GMT (envelope-from git) Date: Tue, 18 Apr 2023 18:08:07 GMT Message-Id: <202304181808.33II87E2078327@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Po-Chuan Hsieh Subject: git: 30dd3d5abda0 - main - archivers/py-blosc2: Add py-blosc2 2.2.0 List-Id: Commits to the main branch of the FreeBSD ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-ports-main@freebsd.org X-BeenThere: dev-commits-ports-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: sunpoet X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 30dd3d5abda0a5df19c9787b783f8ea0538f124f Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by sunpoet: URL: https://cgit.FreeBSD.org/ports/commit/?id=30dd3d5abda0a5df19c9787b783f8ea0538f124f commit 30dd3d5abda0a5df19c9787b783f8ea0538f124f Author: Po-Chuan Hsieh AuthorDate: 2023-04-18 17:51:32 +0000 Commit: Po-Chuan Hsieh CommitDate: 2023-04-18 18:00:40 +0000 archivers/py-blosc2: Add py-blosc2 2.2.0 C-Blosc2 is the new major version of C-Blosc, and is backward compatible with both the C-Blosc1 API and its in-memory format. Python-Blosc2 is a Python package that wraps C-Blosc2, the newest version of the Blosc compressor. Currently Python-Blosc2 already reproduces the API of Python-Blosc, so it can be used as a drop-in replacement. However, there are a few exceptions for a full compatibility. In addition, Python-Blosc2 aims to leverage the new C-Blosc2 API so as to support super-chunks, multi-dimensional arrays (NDArray), serialization and other bells and whistles introduced in C-Blosc2. Although this is always and endless process, we have already catch up with most of the C-Blosc2 API capabilities. Note: Python-Blosc2 is meant to be backward compatible with Python-Blosc data. That means that it can read data generated with Python-Blosc, but the opposite is not true (i.e. there is no forward compatibility). --- archivers/Makefile | 1 + archivers/py-blosc2/Makefile | 41 ++++++++++++++++++++++++++ archivers/py-blosc2/distinfo | 3 ++ archivers/py-blosc2/files/patch-pyproject.toml | 9 ++++++ archivers/py-blosc2/pkg-descr | 17 +++++++++++ 5 files changed, 71 insertions(+) diff --git a/archivers/Makefile b/archivers/Makefile index 624b2b7128ae..5bfce871b36c 100644 --- a/archivers/Makefile +++ b/archivers/Makefile @@ -177,6 +177,7 @@ SUBDIR += ppunpack SUBDIR += pxz SUBDIR += py-acefile + SUBDIR += py-blosc2 SUBDIR += py-borgbackup SUBDIR += py-borgbackup11 SUBDIR += py-brotli diff --git a/archivers/py-blosc2/Makefile b/archivers/py-blosc2/Makefile new file mode 100644 index 000000000000..8b933417ea54 --- /dev/null +++ b/archivers/py-blosc2/Makefile @@ -0,0 +1,41 @@ +PORTNAME= blosc2 +PORTVERSION= 2.2.0 +CATEGORIES= archivers python +MASTER_SITES= PYPI +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= Python wrapper for the C-Blosc2 library +WWW= https://github.com/Blosc/python-blosc2 + +LICENSE= BSD3CLAUSE +LICENSE_FILE= ${WRKSRC}/LICENSE.txt + +BUILD_DEPENDS= cmake:devel/cmake-core \ + ninja:devel/ninja \ + ${PYTHON_PKGNAMEPREFIX}numpy>=0,1:math/py-numpy@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}scikit-build>=0:devel/py-scikit-build@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} +LIB_DEPENDS= libblosc2.so:archivers/c-blosc2 +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}msgpack>=0:devel/py-msgpack@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}ndindex>=1.4:math/py-ndindex@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}numpy>=1.20.3,1:math/py-numpy@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}py-cpuinfo>=0:sysutils/py-py-cpuinfo@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}rich>=0:textproc/py-rich@${PY_FLAVOR} + +USES= pkgconfig python:3.8+ +USE_PYTHON= autoplist concurrent cython pep517 + +MAKE_ENV= CMAKE_ARGS=-DUSE_SYSTEM_BLOSC2=ON + +post-extract: + @${RM} ${WRKSRC}/blosc2/c-blosc2/blosc/shuffle-avx2.c.orig + +post-patch: +# Clean up bundled libraries + @${RM} -r ${WRKSRC}/blosc2/c-blosc2/ + +post-install: + ${FIND} ${STAGEDIR}${PYTHON_SITELIBDIR} -name '*.so' -exec ${STRIP_CMD} {} + + +.include diff --git a/archivers/py-blosc2/distinfo b/archivers/py-blosc2/distinfo new file mode 100644 index 000000000000..09a27244985f --- /dev/null +++ b/archivers/py-blosc2/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1681052880 +SHA256 (blosc2-2.2.0.tar.gz) = 4cf3893fe85da4bd899ecf7a457fd09b2212fad256182100108de7a92b88aa87 +SIZE (blosc2-2.2.0.tar.gz) = 4135248 diff --git a/archivers/py-blosc2/files/patch-pyproject.toml b/archivers/py-blosc2/files/patch-pyproject.toml new file mode 100644 index 000000000000..0493f71cbd28 --- /dev/null +++ b/archivers/py-blosc2/files/patch-pyproject.toml @@ -0,0 +1,9 @@ +--- pyproject.toml.orig 2023-04-04 10:26:30 UTC ++++ pyproject.toml +@@ -1,5 +1,5 @@ + [build-system] +-requires = ["setuptools", "scikit-build", "cython", "cmake", "ninja", "oldest-supported-numpy"] ++requires = ["setuptools", "scikit-build", "cython", "numpy"] + + [tool.cibuildwheel] + skip = "cp36-* cp37-* pp37-* *-manylinux_i686 *_ppc64le *_s390x *-musllinux*" diff --git a/archivers/py-blosc2/pkg-descr b/archivers/py-blosc2/pkg-descr new file mode 100644 index 000000000000..0a8ee49311ca --- /dev/null +++ b/archivers/py-blosc2/pkg-descr @@ -0,0 +1,17 @@ +C-Blosc2 is the new major version of C-Blosc, and is backward compatible with +both the C-Blosc1 API and its in-memory format. Python-Blosc2 is a Python +package that wraps C-Blosc2, the newest version of the Blosc compressor. + +Currently Python-Blosc2 already reproduces the API of Python-Blosc, so it can be +used as a drop-in replacement. However, there are a few exceptions for a full +compatibility. + +In addition, Python-Blosc2 aims to leverage the new C-Blosc2 API so as to +support super-chunks, multi-dimensional arrays (NDArray), serialization and +other bells and whistles introduced in C-Blosc2. Although this is always and +endless process, we have already catch up with most of the C-Blosc2 API +capabilities. + +Note: Python-Blosc2 is meant to be backward compatible with Python-Blosc data. +That means that it can read data generated with Python-Blosc, but the opposite +is not true (i.e. there is no forward compatibility).