Skip to main content

dirigent-block-duckdb

The DuckDB engine of dirigent's sql family. Install it beside dirigent-block-sql and a sql connection whose url is duckdb:///warehouse.duckdb or duckdb:///:memory: works like any other: the same two blocks, the same fields, the same rules.

uv pip install dirigent-block-duckdb

It registers under the dirigent.sql.engines.v1 entry-point group, so the family finds it with no configuration, and a worker that never runs a duckdb:// url carries none of it -- the engine binary is larger than every other driver the family speaks to put together.

DuckDB has no async driver at all, so every call runs in a worker thread, and a deadline that passes interrupts the engine rather than leaving a statement running behind a step that has already failed.

Files, and what holds them in

A statement here reads and writes the parquet and csv files a run holds: read_parquet(:source) and COPY ... TO :target take a file the same way a WHERE clause takes a value, and a file:// storage URI in params arrives as the path duckdb opens.

The boundary is duckdb's own, not a check on the parameters. A session is opened, given the run's work directory and its local scratch space as its allowed_directories, and then closed around them: enable_external_access goes off, which is what makes those roots the only paths the engine will open, and lock_configuration goes on, which refuses the SET that would give any of it back. So a path written straight into the sql is refused the same way a parameter outside the run is, and a statement cannot LOAD or INSTALL a further extension to reach past the boundary. Spilled intermediates and duckdb's secret store are pointed inside the run's work directory for the same reason.

Where a parameter or a statement names an s3:// object, the session loads duckdb's httpfs extension and is given the endpoint, region, credential and addressing style of the connection the s3 scheme is configured from, and that scheme stays reachable beside the run's own directories. The extension is loaded, never installed, at run time; a bare install does it once:

python -c "import duckdb; duckdb.connect().execute('INSTALL httpfs')"

docs/sql.md is the family's home, and its DuckDB section is the worked example.

Metadata

Release files for dirigent-block-duckdb 0.23.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for dirigent-block-duckdb 0.23.4
File Size Uploaded Provenance
dirigent_block_duckdb-0.23.4.tar.gz 9.7 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for dirigent-block-duckdb 0.23.4
File Interpreter ABI Platform
dirigent_block_duckdb-0.23.4-py3-none-any.whl Python 3 none any Details

Total release size: 21.6 kB

Release files / dirigent_block_duckdb-0.23.4.tar.gz

Download URL dirigent_block_duckdb-0.23.4.tar.gz
Size 9.7 kB
Tags Source
SHA-256 checksum
How to use checksums
d5708f63e2df099ba1a28e0b17c5fe011db7ed0a6fd822334bcb76996b1a7a51
BLAKE2b-256 checksum
How to use checksums
f70b4d4947a93551f5346ebe0c2f5da0bd522a2b2c22ca3dbbb5d7f652fca1b6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 22, 2026.

Transparency log

Release files / dirigent_block_duckdb-0.23.4-py3-none-any.whl

Download URL dirigent_block_duckdb-0.23.4-py3-none-any.whl
Size 11.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
558fbacc18776f91948a9d3d7cfa2fb1162bd0c51a262bf055debbc94f3455fd
BLAKE2b-256 checksum
How to use checksums
f88ff9a15a56e7997d98ddaf266c5e3062ab42c91fd8682c526de2853184a21d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 22, 2026.

Transparency log

Security for dirigent-block-duckdb 0.23.4

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for dirigent_block_duckdb-0.23.4.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 22, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page