DuckDB Finance Quant SQL Extension

Release

DuckDB Finance releases are tag-driven. Development lands on main; when main is ready, create a semantic version tag from that commit.

The current release line is 0.2.x. Patch releases should keep the public SQL surface backward-compatible unless the release notes explicitly call out a breaking change.

Maintainer Flow

  1. Make sure main is green.
  2. Confirm community-extension/description.yml has the target extension.version.
  3. Confirm the local checkout is exactly on origin/main:

    git switch main
    git pull --ff-only origin main
    git status --short --branch
    
  4. Run the local static and DuckDB-backed checks:

    make ci DUCKDB_ROOT=/path/to/duckdb
    
  5. Validate the release metadata for the intended tag:

    python3 scripts/check_release_metadata.py --tag v0.2.1
    
  6. Tag the current main commit:

    git tag v0.2.1
    git push origin v0.2.1
    
  7. The release workflow validates the tag, builds release artifacts through DuckDB extension-ci-tools, renders a community extension manifest with repo.ref pinned to the tag commit, and creates the GitHub release. It expects the tagged commit to have already passed main CI.
  8. Submit the rendered community manifest from the release assets to duckdb/community-extensions when publishing or updating the community catalog entry.

Release Workflow

The workflow is intentionally split:

Release matrix tests are skipped because the tagged commit must already be green on main. This keeps release publication fast while preserving behavior coverage in CI.

Community Publication

finance is available from DuckDB Community Extensions. Release assets include the rendered community manifest so maintainers can update the upstream catalog entry for new versions.

For each release:

  1. Confirm extensions/finance/description.yml exists in duckdb/community-extensions.
  2. Submit the rendered community manifest from the GitHub release assets when updating the community catalog entry.
  3. Run the manual community install smoke workflow after the upstream catalog update lands.

The community install smoke workflow runs weekly and fails if the upstream catalog entry or install path stops working. It verifies:

INSTALL finance FROM community;
LOAD finance;

and executes examples/community_install_smoke.sql against the downloaded DuckDB CLI.

Final Audit

After the GitHub release is created, confirm:

gh release view v0.2.1 --json tagName,targetCommitish,url,isDraft,isPrerelease,assets
git rev-parse HEAD
git rev-parse v0.2.1
git ls-remote --tags origin v0.2.1

The rendered community manifest asset should include: