Skip to content

chore: Update DuckDB to v1.5.0#18

Merged
jrosskopf merged 5 commits intomainfrom
feature/update-duckdb-1.5.0
Mar 26, 2026
Merged

chore: Update DuckDB to v1.5.0#18
jrosskopf merged 5 commits intomainfrom
feature/update-duckdb-1.5.0

Conversation

@jrosskopf
Copy link
Copy Markdown
Contributor

Summary

  • Updates the duckdb submodule from v1.4.3 to v1.5.0
  • Updates DUCKDB_EXPLICIT_VERSION in CMakeLists.txt to match
  • Two build fixes required for DuckDB 1.5.0 compatibility:
    1. New link dependency: dummy_static_extension_loader — in 1.5.0, ExtensionHelper::LoadAllExtensions was extracted into this separate static library and must be linked explicitly
    2. ZSTD namespace change: arrow_serializer.hpp used duckdb_zstd::ZSTD_* from DuckDB's bundled zstd, but that header is no longer in the transitive include path; switched to the already-linked vcpkg ZSTD (global namespace)
  • Updates version references in AGENTS.md, Readme.md, docs/CONFIG_REFERENCE.md

Test plan

  • make debug — builds successfully
  • 404/405 C++ unit tests pass (1 pre-existing thread safety flake, 1 skipped AWS integration test)
  • make integration-test — manual verification with running server recommended

- Update duckdb submodule to v1.5.0 tag (3a3967aa81)
- Set DUCKDB_EXPLICIT_VERSION to 1.5.0 in CMakeLists.txt
- Add dummy_static_extension_loader to link libraries (new in 1.5.0)
- Switch arrow_serializer.hpp ZSTD from duckdb_zstd:: namespace to
  vcpkg zstd (global namespace) — duckdb_zstd header no longer in
  transitive include path with 1.5.0
- Update DuckDB version references in AGENTS.md, Readme.md,
  docs/CONFIG_REFERENCE.md
…5.0 /MT compatibility

- DuckDB 1.5.0 unconditionally sets CMAKE_MSVC_RUNTIME_LIBRARY to MultiThreaded (/MT)
- Previously used x64-windows-static-md (/MD) caused LNK2038 mismatch errors
- x64-windows-static uses /MT, aligning with DuckDB 1.5.0's CRT requirement
…1.5.0

The vcpkg triplet x64-windows-static ensures packages use /MT, but vcpkg's
toolchain does not propagate CMAKE_MSVC_RUNTIME_LIBRARY to the host project.
Without an explicit setting, flapi's own targets default to /MD, causing
LNK2038 when linking against duckdb_static.lib (which forces /MT).
keytar is a native Node.js addon that has no prebuilt binary for
darwin-arm64 when installing from a Linux host, causing bun install
to fail in the flapii-build CI job. keytar was never imported or
used anywhere in the CLI source code, so this is a clean removal.
- Update duckdb submodule to v1.5.1 tag
- Bump DUCKDB_EXPLICIT_VERSION in CMakeLists.txt
- Update version references in docs
@jrosskopf jrosskopf merged commit 54cd7d5 into main Mar 26, 2026
13 checks passed
@jrosskopf jrosskopf deleted the feature/update-duckdb-1.5.0 branch March 26, 2026 05:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant