Skip to content

Sitting Duck v1.7.1

Release date: 2026-04-12

Patch release focused on WASM compatibility and DuckDB v1.5.1 support.

Highlights

  • WASM build fix — tree-sitter is now statically embedded into the WASM side module, resolving the bad export type for 'ts_current_free': undefined error that prevented loading in duckdb-wasm. Previously, tree-sitter symbols were left as unresolved dynamic imports that the duckdb-wasm host module doesn't provide.
  • DuckDB v1.5.1 target — CI and submodule bumped from v1.4.4 to v1.5.1.
  • core_functions auto-load — the extension now force-loads core_functions at startup, ensuring bitwise operators used by semantic type macros are available without manual LOAD core_functions.

Changes

  • 633a403 fix: statically embed tree-sitter in WASM extension builds
  • 21e47fe Force-load core_functions at sitting_duck load time
  • 141acc4 Wrap qualified_name attribute selector in ast_qualified_name_as_string
  • 23ce378 Change qualified_name column to LIST>
  • e48398a Remove dangling ParseASTScalarFunction declaration
  • 49ebe8d Bump CI DuckDB target from v1.4.4 to v1.5.1
  • 4c4b17d Bump duckdb submodule to 84c4975

Breaking changes from v1.7.0

qualified_name column: bracket string → LIST<STRUCT>

The qualified_name column changed from the bracket-string format introduced in v1.7.0 ("C[User] F[__init__]") to a structured list:

LIST(STRUCT(semantic_type SEMANTIC_TYPE, name VARCHAR, index INTEGER))

Use ast_qualified_name_as_string(qualified_name) for display or LIKE-based queries. See v1.7.0 release notes for full migration guide.