Downloads and locates a DuckDB executable for local QuackDB.Server usage.
This is an explicit helper: QuackDB will not download executables unless you
call install/1, install!/1, path/1, run the install Mix task, or start
QuackDB.Server with duckdb: :managed.
Set QUACKDB_BINARY_PATH to force a system or custom executable. Set
QUACKDB_BINARY_CACHE_DIR or pass :cache_dir to choose where managed
downloads are stored.
Summary
Functions
Returns QuackDB's pinned DuckDB CLI version for managed downloads.
Downloads DuckDB CLI for the current OS/architecture unless already cached.
Like install/1, but raises on failure.
Returns known {version, target} checksum pairs for managed downloads.
Returns a path to a usable DuckDB binary, downloading it when needed.
Like path/1, but raises on failure.
Types
Functions
@spec default_version() :: String.t()
Returns QuackDB's pinned DuckDB CLI version for managed downloads.
@spec install([option()]) :: {:ok, Path.t()} | {:error, QuackDB.Error.t()}
Downloads DuckDB CLI for the current OS/architecture unless already cached.
Like install/1, but raises on failure.
Returns known {version, target} checksum pairs for managed downloads.
@spec path([option()]) :: {:ok, Path.t()} | {:error, QuackDB.Error.t()}
Returns a path to a usable DuckDB binary, downloading it when needed.
Like path/1, but raises on failure.