Releases: lemorage/ducky
Releases · lemorage/ducky
ducky v0.4.0
v0.4.0 release notes (2026-04-22)
Full Changelog: v0.3.0...v0.4.0
Added
- Prepared statement API:
prepare,execute,finalize,with_statement - Bulk append via DuckDB's appender API:
append_rows execfunction for DDL/DML statements that return no rows- Parameter constructor functions matching Gleam DB conventions:
int(),float(),text(),blob(),bool(),null(),nullable(),timestamp(),date(),time(),interval(),decimal() - UNION type support with tagged value decoding
Changed
- BREAKING: Removed unused
TimeoutandTypeMismatcherror variants - BREAKING: Decode failures now return
Errorinstead of silently converting toNull UnsupportedParameterTypeerror now reports the specific type name- Docs and examples updated to use
execand parameter constructors
Fixed
- Blob encoding now returns
Blob(BitArray)instead ofList(Integer) - Blob parameter binding support added to NIF
- NIF name mismatch for health_check function
ducky v0.3.0
v0.3.0 release notes (2026-02-02)
Full Changelog: v0.2.1...v0.3.0
Added
- DECIMAL type with lossless string encoding
- ENUM type support
- ARRAY and MAP types for query results
- Timestamp, Date, Time parameter binding
- Interval type with parameter binding
- HTTP proxy support for NIF downloads
Changed
- BREAKING: Public API consolidated into single
duckymodule - Error decoder now uses proper dynamic decoders
Fixed
- Silent NULL conversion for unsupported parameter types
ducky v0.2.1 – Bugfix
v0.2.1 release notes (2026-01-25)
Full Changelog: v0.2.0...v0.2.1
Fixed
- CRITICAL: Removed
rebar.configfrom package that caused build failureserror: there is no code in this directory.
Changed
- NIF binary now auto-downloads at runtime on first use
ducky v0.2.0
v0.2.0 release notes (2026-01-24)
Full Changelog: v0.1.0...v0.2.0
Caution
ERROR rebar.config triggered rebar3 compilation but package structure was incompatible.
v0.2.0 was unusable. Please use v0.2.1 instead.
Added
- Pre-built binaries for 5 platforms (macOS ARM64/x64, Linux ARM64/x64, Windows x64)
- Automatic NIF fetch at build time with source compilation fallback
- STRUCT types with
field()accessor for composite data - Temporal types: DATE, TIME, TIMESTAMP, INTERVAL
- LIST types with recursive nesting
- Example:
complex_typesdemonstrating advanced type usage
ducky v0.1.0
v0.1.0 release notes (2026-01-16)
Full Changelog: https://github.com/lemorage/ducky/commits/v0.1.0
Added
- Query execution:
query()andquery_params() - Connection management:
connect()andclose() - Automatic cleanup:
with_connection()(recommended) - Transactions:
transaction()with auto-commit/rollback - Type mappings: Null, Boolean, Integer, BigInt, Float, Double, Text, Blob
- DataFrame results with typed rows
- Error handling with descriptive variants
Security
- Parameterized queries prevent SQL injection