Skip to content

Releases: datamindedbe/dbt-polars

v0.5.2

Choose a tag to compare

@github-actions github-actions released this 03 Nov 20:05

Implements

  • Add a write_operation hook to StorageCatalog so custom catalogs can run code before and after every write.

Fixes

  • Only update docs page on release.

v0.5.1

Choose a tag to compare

@github-actions github-actions released this 02 Nov 20:03

Implements

  • Renames repo to dbt-polars
  • Unit tests defined in YAML, on SQL and Python models.
  • The Copier template for custom catalogs moved into the dbt-polars repository: uvx copier copy gh:datamindedbe/dbt-polars <dir>.
  • Full rewrite of the documentation for consistency and clarity.
  • dbt.position() macro adapted to Polars SQL.
  • dbt_expectations regex tests, through a dispatch setting in dbt_project.yml.

Fixes

  • Incremental merge models on Delta tables no longer drop new columns with on_schema_change set to append_new_columns or sync_all_columns.
  • Unsupported macros such as hash() now fail at execution time instead of at compilation time.
  • dbt-polars did not recognize CTEs when they started with a comment.
  • Change Polars dtype names to use double quotes instead of single quotes to generate valid SQL.
  • Type checks (is_float, is_string, ...) did not recognize Polars type like Float64.
  • Iceberg table models failed on Databricks when a column changed type, e.g. from integer to string.

v0.5.0

Choose a tag to compare

@github-actions github-actions released this 24 Oct 14:16

Implements

  • [Databricks Catalog]: Add support for iceberg tables in the Databricks catalog.
  • [Fabric Catalog]: New catalog for Delta and Iceberg tables in a Microsoft Fabric Lakehouse.
  • [Snowflake Catalog]: New catalog for Snowflake-managed Iceberg tables through Snowflake Horizon Catalog.
  • compute_threads in the profile limits how many of the threads models run Polars at the same time; models waiting for an Iceberg commit let others compute.
  • Enable lazy evaluation of incremental models with sync_all_columns for delta and iceberg tables.

Fixes

  • [Iceberg Catalog] Improve efficiency of merge and delete+insert models using composite keys (#45).
  • [Iceberg Catalog] Merge and delete+insert no longer fail when a unique_key column contains NULL values.
  • [Databricks Catalog] Dropping a Delta table on Azure now deletes its storage folder. Requires installing dbt-polars-catalog-databricks[azure].

v0.4.0

Choose a tag to compare

@github-actions github-actions released this 15 Oct 10:48

Implements

  • A source can be read from a path relative to its catalog with external.location: a file with any extension (data.CSV) or a glob (orders/*.CSV) (#29)

Fixes

  • Fail with error on SQL statements executed through hooks (#36)
  • Resolve polar types in read options (schema, override_schema) (#33)
  • Fail with error on unknown read_options keys (#34)
  • Lazy append on incremental materialization (#31)
  • Full refresh of an incremental model are now atomic
  • Fail with error on unknown model config keys

v0.3.1

Choose a tag to compare

@github-actions github-actions released this 07 Oct 09:43

Implements

  • current_timestamp macro evaluates to naive timestamp when dbt run started.
  • dateadd, datediff, date_spine and get_intervals_between macro.
  • date_trunc macro supports week and quarter.
  • last_day macro for week, month, quarter and year.
  • Move documentation to GitHub pages

Fixes

  • Omit sensitive fields in the profile from dbt debug
  • [Databricks Catalog]: Request READ instead of READ_WRITE credentials for read-only access
  • [Databricks Catalog]: Update the description of all columns in a table with a single query
  • Queried fail when a CTE has the same name as a model it selects from
  • User .str.date to cast strings to date as this is the only supported way to do this conversion in Polars 2.0
  • Throw an error when a user uses a hook or contract which is not yet supported

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 26 Sep 18:13
0ba246a

Implements

  • Catalogs are now published as separate packages
  • Move tests into a package module (dbt.adapters.polars.testing) for reusability in catalogs maintained outside this repo
  • [Databricks Catalog]: Add field table_format in the profile. Only allowed value is delta.

Other improvements

  • Stop using pull_request_target in CI

Documentation

  • [Readme] Add list of key dbt-polars features