dbt Core 2.0.0-dev.41-test-pypi
2.0.0-dev.41 Released September 23, 2026 Features [Lake Compute] Read AWS Databricks Unity Catalog tables using Databricks profile PAT/OAuth M2M credentials, declaration-aware validation, and dbt debug attach parity. Existing fs catalogs.yml entries continue to use type: unity .
Also shipped Sep 23, 2026dbt Labs in September 2026 →
New features and improvements in Copilot for JetBrains
GitHub Copilot for JetBrains 1.18.0 brings AI-assisted tool approvals, more control over agent conversations, and shared skills and instructions for your organization. You can also review plans with the Codex agent and manage MCP tools with persistent controls.
Scalar and Batch Unity Catalog Python UDFs are now generally available
Scalar and Batch Unity Catalog Python UDFs are now generally available on all supported compute types. This release adds named handlers for row-at-a-time scalar UDFs, removes the five-UDF-call-per-query limit, and aligns scalar TIMESTAMP inputs with PySpark behavior.
Build governed data and AI apps without code (Beta)
You can now build governed data and AI apps without code. Genie App Builder authors apps in natural language, App Spaces enforce governance, and Serverless Micro Apps scale to zero when idle. See Governed agentic app building .
Non-deterministic aggregate functions are supported with dynamic table incremental refresh (General availability)
Non-deterministic aggregate functions such as approx count distinct , approx percentile , and approx top k are now supported with dynamic table incremental refresh in INCREMENTAL, AUTO, and ADAPTIVE refresh modes. For incremental refresh, these functions are supported only in the SELECT clause. any value remains unsupported.
More ways to request and configure Copilot code reviews
GitHub Copilot code review now offers additional personal configurations to an expanded set of Copilot plans and an enterprise-level default setting. These improvements are now generally available: A dedicated personal settings page for automatic review and your default review effort An enterprise-wide default review effort setting for organization-owned...
Node 20 is no longer available in GitHub Actions
This is the final notification that Node 20 is no longer available on GitHub Actions runners. Runners now use Node 24 for JavaScript actions. The temporary ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION opt-out is no longer available. If you maintain a JavaScript action, update its runs.using value to node24 and publish a new release as soon as possible.
More from dbt CoreEvery dbt Core release →
dbt Core 2.0.5
2.0.5 Released September 18, 2026 Fixes Both Legacy/Foundry BigQuery drivers now continue on ADBC.GetObjects 404/403. This fixes a possible usage of "REPLACE TABLE" instead of "MERGE" for incremental tables ( #16331 ) Contributors @serramatutu ( #16331 )
dbt Core 2.0.4
2.0.4 Released September 16, 2026
dbt Core 2.0.3
2.0.3 Released September 15, 2026 Under the Hood Add PyPI banner for dbt-oss mirroring the existing dbt-core banner, without the dbt-core namespace deprecation notice Contributors @tauhidanjum
dbt Core dbt v2.0.0
dbt 2.0.0 - Benjamin Franklin (September 14, 2026) Features Install agent skills (AgentSkills-format SKILL.md directories) from installed packages and the project's own skill-paths when packages are installed, gated on the new ai_provider flag.
dbt Core 2.0.2
2.0.2 Released September 15, 2026 Fixes Restore the bundled docs UI in the Python wheel builds, so dbt docs generate produces a working docs site again for pip-installed dbt. Contributors @mishamsk
dbt Core 2.0.2-test-pypi
2.0.2 Released September 15, 2026
dbt Core dbt v1.12.5
dbt-core 1.12.5 - September 15, 2026 Fixes Fix Dimension to satisfy the metricflow-semantic-interfaces protocol and bump the metricflow floor to 0.213.0 ( # , # ) Under the Hood Add a banner to the dbt-core PyPI description pointing users to the v2 install docs ( # ) Contributors @itsnamangoyal ( # , # ) @tauhid621 ( # )
dbt Core 2.0.1
2.0.1 Released September 14, 2026 Under the Hood Attribute --infer-schemas columns from declared YAML schema before binding via a CatalogProviderList wrapper, instead of mixing them into InferSchemaRegistry Contributors @maxmalkin