dbt Core v0.13.0stable Released Mar 22, 2019
⚠️ Breaking Change Impact Score: 7/10

dbt Core: dbt 0.13.0

Source available — automated, not human-reviewed

Component: dbt-core · Channel: stable. Automated analysis, not a compatibility certification. How this works.

Analysis updated: 2026-11-01.

Breaking-change evidence from the source

  • Breaking Changes - Version 1 schema.yml specs are no longer implemented. Please use the version 2 spec instead ([migration guide](https://docs.getdbt.com/docs/upgrading-from-0-10-to-0-11#section-schema-yml-v2-syntax)) - `{{this}}` is no longer implemented for `on-run-start` and `on-run-end` hooks. Use `{{ target }}` or an [`on-run-end` context variable](https://docs.getdbt.com/reference#schemas) instead ([#1176](https://github.com/fishtown-analytics/dbt/pull/1176), implementing [#878](https://github.com/fishtown-analytics/dbt/issues/878))
  • - A number of materialization-specific adapter methods have changed in breaking ways. If you use these adapter methods in your macros or materializations, you may need to update your code accordingly.
Read the original context ↗
Source flags breaking changes — review applicability
📄 .MD
⚡ Executive Summary (TL;DR)

dbt Core v0.13.0. Source highlight: dbt 0.13.0 - Stephen Girard (March 21, 2019)

Who Does This Impact? (Role-Based Analysis)

💻 Software Engineers & Devs

Check the source notes against the package and APIs you use before upgrading.

📊 Product & Engineering Leads

Use the documented changes to assess relevance to your product; release frequency alone is not a quality measure.

⚙️ DevOps & Security

Verify the target version, runtime requirements and rollback procedure in the official documentation.

⚠️ Breaking Changes & Deprecations (2)

  • Breaking Changes - Version 1 schema.yml specs are no longer implemented. Please use the version 2 spec instead ([migration guide](https://docs.getdbt.com/docs/upgrading-from-0-10-to-0-11#section-schema-yml-v2-syntax)) - `{{this}}` is no longer implemented for `on-run-start` and `on-run-end` hooks. Use `{{ target }}` or an [`on-run-end` context variable](https://docs.getdbt.com/reference#schemas) instead ([#1176](https://github.com/fishtown-analytics/dbt/pull/1176), implementing [#878](https://github.com/fishtown-analytics/dbt/issues/878))
  • - A number of materialization-specific adapter methods have changed in breaking ways. If you use these adapter methods in your macros or materializations, you may need to update your code accordingly.

✨ New Features & Capabilities (6)

  • get_relation - added a `database` argument
  • create_schema - added a `database` argument
  • drop_schema - added a `database` argument
  • Add `source`s to dbt, use them to calculate source data freshness (docs ) (#814, #1240)
  • Add support for Presto (docs, repo) (#1106)
  • Add `require-dbt-version` option to `dbt_project.yml` to state the supported versions of dbt for packages (docs) (#581)

🔧 Bug Fixes & Patches (6)

  • Fix for Postgres character columns treated as string types (#1194)
  • Fix for hard to reach edge case in which dbt could hang (#1223)
  • Fix for `dbt deps` in non-English shells (#1222)
  • Fix for over eager schema creation when models are run with `--models` (#1239)
  • Fix for `dbt seed --show` (#1288)
  • Fix for `is_incremental()` which should only return `True` if the target relation is a `table` (#1292)
📄 View Raw Release Notes (Original Developer Log)
## dbt 0.13.0 - Stephen Girard (March 21, 2019) ### Overview This release provides [a stable API for building new adapters](https://docs.getdbt.com/v0.13/docs/building-a-new-adapter) and reimplements dbt's adapters as "plugins". Additionally, a new adapter for [Presto](https://github.com/fishtown-analytics/dbt-presto) was added using this architecture. Beyond adapters, this release of dbt also includes [Sources](https://docs.getdbt.com/v0.13/docs/using-sources) which can be used to document and test source data tables. See the full list of features added in 0.13.0 below. **Links:** - [Discussion (Discourse)](https://discourse.getdbt.com/t/release-dbt-v0-13-0/277) - [Changelog](https://github.com/fishtown-analytics/dbt/blob/dev/wilt-chamberlain/CHANGELOG.md#dbt-0130---stephen-girard-march-21-2019) ### Installation instructions dbt v0.13.0 is available on Homebrew, PyPi, and in dbt Cloud. ``` # Homebrew $ brew install dbt # pip $ pip install dbt ``` **Note**: If you're upgrading from an earlier version of dbt using `pip`, you may need to install dbt with the `-I` flag. This flag is required due to changes in the structure of the dbt package. ``` $ pip install -I dbt ``` For full installation instructions, consult [the docs](https://docs.getdbt.com/docs/installation) ### Breaking Changes - Version 1 schema.yml specs are no longer implemented. Please use the version 2 spec instead ([migration guide](https://docs.getdbt.com/docs/upgrading-from-0-10-to-0-11#section-schema-yml-v2-syntax)) - `{{this}}` is no longer implemented for `on-run-start` and `on-run-end` hooks. Use `{{ target }}` or an [`on-run-end` context variable](https://docs.getdbt.com/reference#schemas) instead ([#1176](https://github.com/fishtown-analytics/dbt/pull/1176), implementing [#878](https://github.com/fishtown-analytics/dbt/issues/878)) - A number of materialization-specific adapter methods have changed in breaking ways. If you use these adapter methods in your macros or materializations, you may need to update your code accordingly. - query_for_existing - **removed**, use [get_relation](https://docs.getdbt.com/v0.13/reference#adapter-get-relation) instead. - [get_missing_columns](https://docs.getdbt.com/v0.13/reference#adapter-get-missing-columns) - changed to take `Relation`s instead of schemas and identifiers - [expand_target_column_types](https://docs.getdbt.com/v0.13/reference#adapter-expand-target-column-types) - changed to take a `Relation` instead of schema, identifier - [get_relation](https://docs.getdbt.com/v0.13/reference#adapter-get-relation) - added a `database` argument - [create_schema](https://docs.getdbt.com/v0.13/reference#adapter-create-schema) - added a `database` argument - [drop_schema](https://docs.getdbt.com/v0.13/reference#adapter-drop-schema) - added a `database` argument ### Deprecations - The following adapter methods are now deprecated, and will be removed in a future release: - get_columns_in_table - deprecated in favor of [get_columns_in_relation](https://docs.getdbt.com/v0.13/reference#adapter-get-columns-in-relation) - already_exists - deprecated in favor of [get_relation](https://docs.getdbt.com/v0.13/reference#adapter-get-relation) ### Features - Add `source`s to dbt, use them to calculate source data freshness ([docs](https://docs.getdbt.com/v0.13/docs/using-sources) ) ([#814](https://github.com/fishtown-analytics/dbt/issues/814), [#1240](https://github.com/fishtown-analytics/dbt/issues/1240)) - Add support for Presto ([docs](https://docs.getdbt.com/v0.13/docs/profile-presto), [repo](https://github.com/fishtown-analytics/dbt-presto)) ([#1106](https://github.com/fishtown-analytics/dbt/issues/1106)) - Add `require-dbt-version` option to `dbt_project.yml` to state the supported versions of dbt for packages ([docs](https://docs.getdbt.com/v0.13/docs/requiring-dbt-versions)) ([#581](https://github.com/fishtown-analytics/dbt/issues/581)) - Add an output line indicating the installed version of dbt to every run ([#1134](https://github.com/fishtown-analytics/dbt/issues/1134)) - Add a new model selector (`@`) which build models, their children, and their children's parents ([docs](https://docs.getdbt.com/v0.13/reference#section-the-at-operator)) ([#1156](https://github.com/fishtown-analytics/dbt/issues/1156)) - Add support for Snowflake Key Pair Authentication ([docs](https://docs.getdbt.com/v0.13/docs/profile-snowflake#section-key-pair-authentication)) ([#1232](https://github.com/fishtown-analytics/dbt/pull/1232)) - Support SSO Authentication for Snowflake ([docs](https://docs.getdbt.com/v0.13/docs/profile-snowflake#section-sso-authentication)) ([#1172](https://github.com/fishtown-analytics/dbt/issues/1172)) - Add support for Snowflake's transient tables (**default=true**) ([docs](https://docs.getdbt.com/v0.13/docs/snowflake-configs#section-transient-tables)) ([#946](https://github.com/fishtown-analytics/dbt/issues/946)) - Capture build timing data in `run_results.json` to visualize project performance ([#1179](https://github.com/fishtown-analytics/dbt/issues/1179)) - Add CLI flag to toggle warnings as errors ([docs](https://docs.getdbt.com/v0.13/reference#section-treat-warnings-as-errors)) ([#1243](https://github.com/fishtown-analytics/dbt/issues/1243)) - Add tab completion script for Bash ([docs](https://github.com/fishtown-analytics/dbt-completion.bash)) ([#1197](https://github.com/fishtown-analytics/dbt/issues/1197)) - Added docs on how to build a new adapter ([docs](https://docs.getdbt.com/v0.13/docs/building-a-new-adapter)) ([#560](https://github.com/fishtown-analytics/dbt/issues/560)) - Use new logo ([#1349](https://github.com/fishtown-analytics/dbt/pull/1349)) ### Fixes - Fix for Postgres character columns treated as string types ([#1194](https://github.com/fishtown-analytics/dbt/issues/1194)) - Fix for hard to reach edge case in which dbt could hang ([#1223](https://github.com/fishtown-analytics/dbt/issues/1223)) - Fix for `dbt deps` in non-English shells ([#1222](https://github.com/fishtown-analytics/dbt/issues/1222)) - Fix for over eager schema creation when models are run with `--models` ([#1239](https://github.com/fishtown-analytics/dbt/issues/1239)) - Fix for `dbt seed --show` ([#1288](https://github.com/fishtown-analytics/dbt/issues/1288)) - Fix for `is_incremental()` which should only return `True` if the target relation is a `table` ([#1292](https://github.com/fishtown-analytics/dbt/issues/1292)) - Fix for error in Snowflake table materializations with custom schemas ([#1316](https://github.com/fishtown-analytics/dbt/issues/1316)) - Fix errored out concurrent transactions on Redshift and Postgres ([#1356](https://github.com/fishtown-analytics/dbt/pull/1356)) - Fix out of order execution on model select ([#1354](https://github.com/fishtown-analytics/dbt/issues/1354), [#1355](https://github.com/fishtown-analytics/dbt/pull/1355)) - Fix adapter macro namespace issue ([#1352](https://github.com/fishtown-analytics/dbt/issues/1352), [#1353](https://github.com/fishtown-analytics/dbt/pull/1353)) - Re-add CLI flag to toggle warnings as errors ([#1347](https://github.com/fishtown-analytics/dbt/pull/1347)) - Fix release candidate regression that runs run hooks on test invocations ([#1346](https://github.com/fishtown-analytics/dbt/pull/1346)) - Fix Snowflake source quoting ([#1338](https://github.com/fishtown-analytics/dbt/pull/1338), [#1317](https://github.com/fishtown-analytics/dbt/issues/1317), [#1332](https://github.com/fishtown-analytics/dbt/issues/1332)) - Handle unexpected max_loaded_at types ([#1330](https://github.com/fishtown-analytics/dbt/pull/1330)) ### Under the hood - Replace all SQL in Python code with Jinja in macros ([#1204](https://github.com/fishtown-analytics/dbt/issues/1204)) - Loosen restrictions of boto3 dependency ([#1234](https://github.com/fishtown-analytics/dbt/issues/1234)) - Rewrote Postgres introspective queries to be faster on large databases ([#1192](https://github.com/fishtown-analytics/dbt/issues/1192)) ### Contributors: Thanks for your contributions to dbt! - [@patrickgoss](https://github.com/patrickgoss) [#1193](https://github.com/fishtown-analytics/dbt/issues/1193) - [@brianhartsock](https://github.com/brianhartsock) [#1191](https://github.com/fishtown-analytics/dbt/pull/1191) - [@alexyer](https://github.com/alexyer) [#1232](https://github.com/fishtown-analytics/dbt/pull/1232) - [@adriank-convoy](https://github.com/adriank-convoy) [#1224](https://github.com/fishtown-analytics/dbt/pull/1224) - [@mikekaminsky](https://github.com/mikekaminsky) [#1216](https://github.com/fishtown-analytics/dbt/pull/1216) - [@vijaykiran](https://github.com/vijaykiran) [#1198](https://github.com/fishtown-analytics/dbt/pull/1198), [#1199](https://github.com/fishtown-analytics/dbt/pull/1199) ## Stephen Girard Can you imagine buying the Federal Reserve? That’s how rich Stephen Girard was. The First Bank of the United States, Alexander Hamilton’s brainchild, ran out its charter in 1811 and Girard decided it was a steal. Estimated to be the 4th richest American ever, he just up and bought it. Not satisfied with one bank, Girard went for more. With the British invading in 1812, Girard put everything on the line and underwrote nearly all the US war bonds. Without this capital, we would likely all have British accents today. In return, the US made Girard a major shareholder of the Second Bank of the United States when it was founded. Buying government bonds: _dépassé_. Buying governments: _branché_. Girard, who had no children, was one of America’s biggest philanthropists. He single-handedly endowed the 43-acre Girard College to educate “poor, male, white orphans,” inspired by his own hard-scrabble early life. Thankfully, its target demographic has since _broadened_—its first African-American student was admitted in 1968 and its first female student was admitted in 1984. The college is still providing a tuition-free education to poor children from single-parent households 170 years after it was founded and is a major part of the fabric of Philadelphia. Girard died as befits a Philadelphian from the revolutionary period: he was run over by a horse and wagon on the cobblestone streets of Old City.