Skip to content

v0.2.7

Choose a tag to compare

@chraltro chraltro released this 25 Apr 20:24
· 83 commits to main since this release

Macros + DuckLake metadata fixes.

Fixed

  • Macros on read-only connections. havn query, the read pool, and any other read-only conn no longer log "Cannot execute statement of type 'CREATE'" — register_macros now registers the Python UDFs and skips the CREATE MACRO aliases that the writer has already persisted.
  • @table_macro and SQL CREATE MACRO on DuckLake. The previous skip was based on a wrong assumption that DuckLake rejects persistent CREATE MACRO. Both are re-enabled; verified that non-TEMP CREATE OR REPLACE MACRO ... AS TABLE is visible from sibling cursors.
  • Silenced "Scalar Function already exists" warnings during parallel transform on DuckDB (sibling worker conns share the catalog; demoted to debug).
  • havn version create / havn version list no longer crash with NameError: _warehouse_exists (missing import).
  • havn snapshot create works on DuckLake. DDL routed through _strip_pk; INSERT OR REPLACE replaced with delete-then-insert.
  • havn version create works on DuckLake. Same DDL + insert fix; the silent-swallowed error in _ensure_version_tables is gone.
  • havn version create doesn't snapshot DuckLake's internal catalog anymore (filtered to table_catalog = current_database()).
  • _havn.users, _havn.tokens, _havn.pr_builds DDLs routed through _strip_pk, so --auth and the PR review surface work on DuckLake.
  • havn tables CLI filters the DuckLake internal catalog out (matching the API endpoint).

Docs

  • CLAUDE.md referenced havn diff --all; the actual flag is --full.