Unclaimed project
Are you a maintainer of duckdb-rs? Claim this project to take control of your public changelog and roadmap.
Claim this projectChangelog
duckdb-rs
Ergonomic bindings to duckdb for Rust
Back to changelogNew
v1.4.4
Highlights
Appender::append_rows now accepts tuples for heterogeneous data types directly.
- Loadable extension setup simplified: single
loadable-extension feature replaces vtab-loadable + loadable-extension.
duckdb_entrypoint_c_api macro re-exported from main crate - no need to depend on duckdb-loadable-macros directly anymore.
stream_arrow() now works with CALL statements via automatic fallback to duckdb_fetch_chunk().
- Streaming execution returns descriptive DuckDB error messages instead of "Unknown error code".
- Performance: ~2x faster column name lookups via lazy
HashMap cache; removed redundant null checks; zero-copy FlatVector::insert for strings.
- Build: fixed static linking (
libduckdb_static.a) and cargo cache invalidation from absolute OUT_DIR.
- Updated bundled DuckDB to v1.4.4 and Rust to 1.93.
What's Changed
- Update Cargo.lock and bump crate version in README by @mlafeldt in https://github.com/duckdb/duckdb-rs/pull/646
Remove legacy duckdb_entrypoint macro by @mlafeldt in https://github.com/duckdb/duckdb-rs/pull/652Re-export duckdb_entrypoint_c_api from main crate by @mlafeldt in https://github.com/duckdb/duckdb-rs/pull/653Consolidate loadable extension features by @mlafeldt in https://github.com/duckdb/duckdb-rs/pull/654Update Rust to 1.92 by @mlafeldt in https://github.com/duckdb/duckdb-rs/pull/656fix(build): prevent cargo cache invalidation from absolute OUT_DIR path by @cameronraysmith in https://github.com/duckdb/duckdb-rs/pull/658libduckdb-sys/build.rs: fix link directive when statically linking by @brunal in https://github.com/duckdb/duckdb-rs/pull/655performance(row): remove useless null check in value_ref_internal by @fvaleye in https://github.com/duckdb/duckdb-rs/pull/662Enable stream_arrow() to work with CALL statements by @leo-altertable in https://github.com/duckdb/duckdb-rs/pull/660Extract error messages in execute_streaming to provide descriptive errors by @redox in https://github.com/duckdb/duckdb-rs/pull/661performance(statement): introduce a lazy cache for column name to index by @fvaleye in https://github.com/duckdb/duckdb-rs/pull/663Avoid unnecessary copy and allocation in FlatVector::insert by @sfc-gh-bhannel in https://github.com/duckdb/duckdb-rs/pull/665feat: implement AppenderParams for tuples by @MathewBravo in https://github.com/duckdb/duckdb-rs/pull/647Update Rust to 1.93 by @mlafeldt in https://github.com/duckdb/duckdb-rs/pull/669Update DuckDB to v1.4.4 by @mlafeldt in https://github.com/duckdb/duckdb-rs/pull/671Update copyright year by @mlafeldt in https://github.com/duckdb/duckdb-rs/pull/672New Contributors
- @cameronraysmith made their first contribution in https://github.com/duckdb/duckdb-rs/pull/658
- @brunal made their first contribution in https://github.com/duckdb/duckdb-rs/pull/655
- @redox made their first contribution in https://github.com/duckdb/duckdb-rs/pull/661
- @sfc-gh-bhannel made their first contribution in https://github.com/duckdb/duckdb-rs/pull/665
- @MathewBravo made their first contribution in https://github.com/duckdb/duckdb-rs/pull/647
Full Changelog: https://github.com/duckdb/duckdb-rs/compare/v1.4.3...v1.4.4