Skip to content

Latest commit

 

History

71,301 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Haybarn

Haybarn is an independent derived distribution of DuckDB, powered by DuckDB.

Haybarn builds the DuckDB source into its own branded binaries, libraries, and a signed extension ecosystem, with an independent release cadence. It is published by Query Farm LLC.

Haybarn is not affiliated with, sponsored by, or endorsed by the DuckDB Foundation or DuckDB Labs. DuckDB is a trademark of the DuckDB Foundation. See NOTICE for details.

Important

Haybarn 1.5.5 is in release-candidate phase. The current tag is haybarn-v1.5.5-rc1. Final 1.5.5 will arrive once the extension catalog has stabilised. Until then, install snippets below pin the rc channel explicitly. APIs and on-disk formats are inherited from upstream DuckDB v1.5.5 and will not change between rcs.

Live build + release status across all Haybarn repos: https://haybarn-status.query.farm.

This Haybarn release line is built from DuckDB v1.5.5.

What Haybarn ships

Artifact Name Where
CLI haybarn GitHub Releases, npm (@haybarn/cli-*), PyPI (haybarn-cli)
Shared library libhaybarn.{so,dylib,dll} GitHub Releases
Static library libhaybarn_static.a GitHub Releases
Python bindings haybarn PyPI (haybarn), Query-farm-haybarn/haybarn-python
Node bindings @haybarn/node-api npm, Query-farm-haybarn/haybarn-node-neo
JDBC driver farm.query.haybarn:haybarn_jdbc Maven Central, Query-farm-haybarn/haybarn-jdbc
Rust crate haybarn crates.io, Query-farm-haybarn/haybarn-rust
WASM @haybarn/haybarn-wasm npm, Query-farm-haybarn/haybarn-wasm
Core extensions Haybarn-signed https://haybarn-extensions.query.farm/core
Community extensions Haybarn-signed, rebuilt against the Haybarn engine https://haybarn-extensions.query.farm/community

The C/C++ API, the duckdb:: namespace, public headers (duckdb.h/.hpp), the DUCKDB_VERSION macro, the extension platform string, the .duckdb_extension file suffix, and the on-disk database format are unchanged from upstream DuckDB — Haybarn is ABI- and file-format-compatible. What differs is the branding, the artifact names, the extension trust root, the extension cache directory, and the release/distribution pipeline.

Installing the CLI

# npm (no install)
npx haybarn@rc

# PyPI (no install)
uvx haybarn-cli==1.5.5rc1          # or `pipx run haybarn-cli==1.5.5rc1`

# GitHub Releases — pick the zip for your OS/arch
https://github.com/Query-farm-haybarn/haybarn/releases

All three channels ship the same haybarn binary built from the same engine commit. Once 1.5.5 final lands, npx haybarn and uvx haybarn-cli will work without the @rc / ==… suffixes.

Python

The Python package and import name are both haybarn. Because the API surface is identical to DuckDB's, migrating existing code is a one-line change:

import haybarn as duckdb

For third-party code you cannot edit, an opt-in compatibility shim is available:

import haybarn.compat   # registers `haybarn` as the `duckdb` module
import duckdb           # now resolves to Haybarn

The haybarn library is published to PyPI (pip install --pre haybarn during the rc phase), built on a 20-leg (OS × Python version) wheel matrix in Query-farm-haybarn/haybarn-python. The haybarn-cli PyPI project (a packaged CLI) is separate and also live.

Extensions

Haybarn extensions install the same way as DuckDB's:

INSTALL iceberg;
LOAD iceberg;

They're served from haybarn-extensions.query.farm (core under /core, community under /community) and signed with a single Haybarn RSA key. DuckDB-signed extensions will not load against a Haybarn engine — the trust roots are deliberately disjoint.

Extension binaries are cached under ~/.haybarn/extensions/ (not ~/.duckdb/extensions/).

Distribution & supply chain

  • Binaries are published on GitHub Releases with SHA256SUMS and a detached GPG signature (HAYBARN/haybarn_release_signing.pub).

  • SLSA build provenance attestations are attached to every release artifact via actions/attest-build-provenance. Verify with:

    gh attestation verify haybarn_cli-linux-amd64.zip \
      --repo Query-farm-haybarn/haybarn
  • Extensions are hosted on Cloudflare R2 behind haybarn-extensions.query.farm, fronted per-asset (every deployed artifact lives at an immutable URL keyed by version + git sha).

  • OS-native code signing (Apple Developer ID + Windows Authenticode) is not yet wired up.

Building from source

make release

This produces build/release/haybarn and build/release/src/libhaybarn.*. See the upstream DuckDB build documentation for prerequisites and build options — they apply unchanged.

Repository layout

Haybarn is maintained as a hard fork of duckdb/duckdb. All Haybarn-specific changes are kept as a small, curated commit stack on top of an upstream release tag, so the delta from DuckDB is auditable and easy to forward-port. The rebase procedure for adopting a new upstream release is documented in HAYBARN/REBASE.md.

Related repos under the Query-farm-haybarn org:

Repo Purpose
haybarn (this) Engine fork, core extensions config, in-tree extensions
haybarn-python Python bindings — fork of duckdb-python
haybarn-node-neo Node bindings — fork of duckdb-node-neo
haybarn-jdbc JDBC driver — fork of duckdb-java
haybarn-rust Rust crate — fork of duckdb-rs (publishes haybarn, libhaybarn-sys, haybarn-loadable-macros to crates.io)
haybarn-iceberg, haybarn-ducklake, haybarn-delta, haybarn-httpfs Build-forks for those core extensions
haybarn-community-extensions Mirror of duckdb/community-extensions rebuilt against the Haybarn engine
haybarn-extension-ci-tools Fork of duckdb/extension-ci-tools with vcpkg + GHCR + ccache patches

License

Haybarn is distributed under the MIT License, the same license as DuckDB. The upstream license is preserved verbatim in LICENSE. See NOTICE for the list of modifications Haybarn makes and the trademark attribution.

About

Haybarn — an independent derived distribution of DuckDB by Query Farm

Topics

Resources

Code of conduct

Contributing

Stars

10 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages