From nobody Sun Oct 22 09:15:38 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 4SCt2y3zY6z4yJ5L; Sun, 22 Oct 2023 09:15:38 +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 4SCt2y38qbz3JLS; Sun, 22 Oct 2023 09:15:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697966138; 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=x4UWCKBaUV9dFZ+Kv6msnuQqZAOTk2dktUtEB4pG3cE=; b=rDdlIbwgpNWBimMO1P9YOTq3nyZP5jQUhOvvjWFiSG+DLwYkyav6hnPtN0YifHtMH2x5yc mJSpBJVnpOcdWFlixnd+ql8fBih/18+bu2u322UqfBqYFy/b90yHZCRJ/O/YTWSqSyctFM rO4x34JfFkVg3vjBJLM8Pa/T+W13Bxr/bpyta0HrjOz93DROxb6i5i5/IkA/0p8/YTKo8p RdAwehhLW0BrJEar56dt5YRFTIDU0NnoOVDDtO+xmCF9eb3jzGsD4bczk/D3CMMQrQM9/1 qRZAgFROxhDI5Lio6KMzaAWWG42c8Oi3gQRBCYTp1QmTshax3RFqjVeqta4HZw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697966138; a=rsa-sha256; cv=none; b=PETnYWwWAuK3V84qU82OmKriN8KFS7gKvnvSO2bWv5Z/P3ohEoTbxjS7YIktJy8K41DMmn CpUJUggatjTvdP6k5VDndAHtZnEueASdgpO5Z2cMymFrdu9UBnbVjDJCYZ5zPlJdqrRJOK 8PMk0YeuycVxnTEsX90//tjiHMXHVzzhv25G1cQXik7M001dbKzqDgnXy6ZcPo4NTcV4Ia I3HmgSM7B/Uslqg4vFtUlAleP+LxKjLS8NTjPlGVI/lhS0vCTJ2dRrnvYxkwGD56nhspiA aGtP8sNgtEHxcTZpmJXx+qmaGi7cUm6K2fg2FF9GAF7zki379jDHLpVxXsUt8w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697966138; 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=x4UWCKBaUV9dFZ+Kv6msnuQqZAOTk2dktUtEB4pG3cE=; b=xNpH/U2t5ttapcnc0YUMcKAMfGo5/js5QL5lxdAPU+7CYr6ihq4mYH5SXPF2WtobEKtBDU Smo6bjHHeroFIApi3QFnlZom5Hheb2EaJ2uxCJe0Yp1R3r6Qb5Su6l5mBJXLRmzTu9sci9 QujafAGuyQTqWZ/BARLsT9VXZSty34ep5mweiv6Mt0JhBMOdptFz28O28acsLfPNVGM8Du cevN1YortY0xxXoBsP05BTEVwVDvt/GcJm2UZF2GtNeWPOYF8bjxPU+rLN2R5VY2nQuQFk /7EGfaoVJnZbEGbowjTPX6lLUkDpPqdcsD/MQIaadq9Th264JMPulDew6JDcwA== 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 4SCt2y2CN9zsFn; Sun, 22 Oct 2023 09:15:38 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39M9Fck8049808; Sun, 22 Oct 2023 09:15:38 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39M9Fcff049805; Sun, 22 Oct 2023 09:15:38 GMT (envelope-from git) Date: Sun, 22 Oct 2023 09:15:38 GMT Message-Id: <202310220915.39M9Fcff049805@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Kurt Jaeger Subject: git: ad476a8a41b7 - main - databases/py-dbt-duckdb: new port 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: pi X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ad476a8a41b70043fc739fc01b32e7be910d6362 Auto-Submitted: auto-generated The branch main has been updated by pi: URL: https://cgit.FreeBSD.org/ports/commit/?id=ad476a8a41b70043fc739fc01b32e7be910d6362 commit ad476a8a41b70043fc739fc01b32e7be910d6362 Author: Pat Maddox AuthorDate: 2023-10-22 09:14:47 +0000 Commit: Kurt Jaeger CommitDate: 2023-10-22 09:15:28 +0000 databases/py-dbt-duckdb: new port dbt-duckdb DuckDB is an embedded database, similar to SQLite, but designed for OLAP-style analytics. It is crazy fast and allows you to read and write data stored in CSV, JSON, and Parquet files directly, without requiring you to load them into the database first. dbt is the best way to manage a collection of data transformations written in SQL or Python for analytics and data science. dbt-duckdb is the project that ties DuckDB and dbt together, allowing you to create a Modern Data Stack In A Box or a simple and powerful data lakehouse with Python. PR: 274584 Author: Pat Maddox --- databases/Makefile | 1 + databases/py-dbt-duckdb/Makefile | 36 ++++++++++++++++++++++++++++++++++++ databases/py-dbt-duckdb/distinfo | 3 +++ databases/py-dbt-duckdb/pkg-descr | 11 +++++++++++ 4 files changed, 51 insertions(+) diff --git a/databases/Makefile b/databases/Makefile index 34b75fde9742..ec438db417c0 100644 --- a/databases/Makefile +++ b/databases/Makefile @@ -757,6 +757,7 @@ SUBDIR += py-databases SUBDIR += py-dbf SUBDIR += py-dbt-core + SUBDIR += py-dbt-duckdb SUBDIR += py-dbt-semantic-interfaces SUBDIR += py-dbt-snowflake SUBDIR += py-dbutils diff --git a/databases/py-dbt-duckdb/Makefile b/databases/py-dbt-duckdb/Makefile new file mode 100644 index 000000000000..94027b4a77e9 --- /dev/null +++ b/databases/py-dbt-duckdb/Makefile @@ -0,0 +1,36 @@ +PORTNAME= dbt-duckdb +PORTVERSION= 1.6.0 +CATEGORIES= databases python +MASTER_SITES= PYPI +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} + +MAINTAINER= pat@patmaddox.com +COMMENT= DuckDB adapter plugin for dbt (data build tool) +WWW= https://github.com/jwills/dbt-duckdb + +LICENSE= APACHE20 + +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}dbt-core>=1.6.0,<2:databases/py-dbt-core@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}duckdb>=0.7.0:databases/py-duckdb@${PY_FLAVOR} + +USES= python +USE_PYTHON= autoplist concurrent distutils + +# py-dbt-duckdb attempts to install __init__.py and the generated bytecode into +# these directories which conflicts with those installed by py-dbt-core. We need to +# delete these files and their entries in the generated plist post-install. +COMMON_DIRS= dbt \ + dbt/adapters \ + dbt/include + +post-stage: +.for dir in ${COMMON_DIRS:S|/|\/|g} + @${REINPLACE_CMD} -e '/.*\/${dir}\/__init__.py/d' \ + -e '/.*\/${dir}\/__pycache__.*/d' \ + ${WRKDIR}/.PLIST.pymodtmp +.endfor +.for dir in ${COMMON_DIRS} + @(cd ${STAGEDIR}${PYTHON_SITELIBDIR}/${dir} && ${RM} -r __pycache__ __init__.py) +.endfor + +.include diff --git a/databases/py-dbt-duckdb/distinfo b/databases/py-dbt-duckdb/distinfo new file mode 100644 index 000000000000..fdf6ecf16212 --- /dev/null +++ b/databases/py-dbt-duckdb/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1691548339 +SHA256 (dbt-duckdb-1.6.0.tar.gz) = e36776d6ee7aa1554a236b7ffa93c556c4419920134a3801feef7c64b706db16 +SIZE (dbt-duckdb-1.6.0.tar.gz) = 45586 diff --git a/databases/py-dbt-duckdb/pkg-descr b/databases/py-dbt-duckdb/pkg-descr new file mode 100644 index 000000000000..577c7c7003d8 --- /dev/null +++ b/databases/py-dbt-duckdb/pkg-descr @@ -0,0 +1,11 @@ +dbt-duckdb + +DuckDB is an embedded database, similar to SQLite, but designed for OLAP-style +analytics. It is crazy fast and allows you to read and write data stored in CSV, +JSON, and Parquet files directly, without requiring you to load them into the +database first. + +dbt is the best way to manage a collection of data transformations written in +SQL or Python for analytics and data science. dbt-duckdb is the project that +ties DuckDB and dbt together, allowing you to create a Modern Data Stack In A +Box or a simple and powerful data lakehouse with Python.