Skip to main content
Version: v0.24.0

Release artifacts

Zova publishes several distribution shapes because language bindings and deployment environments need different native boundaries. Choose one coherent path and keep all pieces on the same release.

Choose an artifact

ArtifactUse it whenLocal build tools
CLI archiveoperating or inspecting databases directlynone
C ABI archiveembedding from C, Go, or another FFI languagelinker/toolchain for the host app
Source archivebuilding Zova or targeting an unpublished platformZig 0.16.0+ and C compiler
Rust zova crateusing the safe Rust APIRust 1.79+ and C compiler
Rust zova-sys crateusing raw FFI or low-level C ABI featuresRust 1.79+ and C compiler
Python wheelusing a supported CPython/platform combinationnone beyond Python
Python source distributionbuilding where no wheel matchesPython, Rust, and C compiler
Go module + C ABIusing the cgo wrapperGo 1.22+, cgo, matching native archive

Download native archives from the v0.24.0 GitHub release. Match version, operating system, architecture, and artifact type.

Verify the package boundary

Release archives should be obtained from the official release and verified using the published checksums where provided. Preserve provenance in build automation instead of downloading “latest” during every production build.

Do not combine a header from one version with a static library from another. Do not point the Go binding at an arbitrary locally built libzova_c without recording the exact revision and options.

Native versus generated-C behavior

Rust and Python packaging can use bundled generated-C snapshots so users do not need Zig. Those snapshots preserve the public storage behavior and C symbols documented for the package, but dynamic .zovaext loading is unavailable because Zig 0.16 cannot portably emit the dynamic-loader path through its C backend.

Use the native CLI or Zig-built C ABI archive when external extension bundle loading is a requirement. Bundled extensions remain available where each binding documents them.

Build from source only when needed

zig build
zig build c-abi

Source builds are appropriate for Zova development, unsupported targets, controlled native integration, or extension-host requirements. Published archives are simpler for users who only need a supported CLI or ABI.

After packaging, smoke-test the exact artifact that will ship: create a database, execute a write and read, run deep diagnostics, and verify the version. Testing a different local build does not validate the release archive.