Skip to main content
codira badge

codira-backend-duckdb

First-party DuckDB backend plugin for codira.

This package adds a file-local DuckDB index backend that integrates with the standard codira backend registry.

Install it with pip, not as a system dependency:

pip install codira-backend-duckdb

Repository-local editable install:

source .venv/bin/activate
pip install -e .
pip install -e packages/codira-backend-duckdb

Activate DuckDB for one repository instance:

export CODIRA_INDEX_BACKEND=duckdb
codira index

Verify activation and discovery:

codira plugins
CODIRA_INDEX_BACKEND=duckdb codira plugins
CODIRA_INDEX_BACKEND=duckdb codira sym helper --json

Optional profiling for backend-performance investigations:

[plugins.backend-duckdb]
profiling_enabled = true

Enabled index runs emit .codira/duckdb-profile.json with aggregate timings for DuckDB SQL, flush, embedding, vector-store, and transaction spans. Keep this disabled during normal use.

Operator model:

  • one backend is active for one repository instance
  • DuckDB uses .codira/index.duckdb under the repository storage root
  • core codira remains backend-neutral; this package owns DuckDB bootstrap and storage behavior
  • DuckDB physical schema DDL is package-local in codira_backend_duckdb.schema
  • full-index rebuilds use a DuckDB-native bulk path that recreates index tables, skips fresh-output cache reads, and writes embeddings without stale-row deletes or SQL window deduplication
  • when paired with the DuckDB vector store, full-index vector persistence fuses cache writes, materialized vector replacement, and pending cleanup into one vector-store transaction

Good fit:

  • local repository indexing
  • larger exact-query and embedding inventories than the default SQLite path
  • document-heavy or documentation-channel workloads where local analytical scans matter more than multi-client shared concurrency

Not the target:

  • system-level DuckDB installation
  • many active backends for the same repository at once
  • remote shared-database deployment semantics

Package-local verification:

pytest -q packages/codira-backend-duckdb/tests

Metadata

Release files for codira-backend-duckdb 1.55.0

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

Source distribution (sdist)

Source distribution for codira-backend-duckdb 1.55.0
File Size Uploaded Provenance
codira_backend_duckdb-1.55.0.tar.gz 72.9 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for codira-backend-duckdb 1.55.0
File Interpreter ABI Platform
codira_backend_duckdb-1.55.0-py3-none-any.whl Python 3 none any Details

Total release size: 133.6 kB

Release files / codira_backend_duckdb-1.55.0.tar.gz

Download URL codira_backend_duckdb-1.55.0.tar.gz
Size 72.9 kB
Tags Source
SHA-256 checksum
How to use checksums
6fa5a081c5ff4b2ae403ea0000686dc10d25fe9d48919c08def349c6c073d5b9
BLAKE2b-256 checksum
How to use checksums
a49a0cacdcb4993932a8fb8648808f98b70146c5feeb7db7e54b25e45571eb59
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.13

Release files / codira_backend_duckdb-1.55.0-py3-none-any.whl

Download URL codira_backend_duckdb-1.55.0-py3-none-any.whl
Size 60.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
502e56e5fbedb7da7f37790546178744435617f8b442ca74e0d6555115ffcd89
BLAKE2b-256 checksum
How to use checksums
3dfa52d90474d1c75291806317af58a7ddaa9caf2df482d0b630c85dd53b031c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.13

Security for codira-backend-duckdb 1.55.0

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

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.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

1.55.0 This release

2 release files No provenance

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