Skip to main content

Upgrading to v1.1 Beta

Installing Beta v1.11 on the command line

When using Core v1.11 on the command line (not in dbt platform), you need to install a beta version of dbt-core For example, install --upgrade --pre dbt-core

Resources

What to know before upgrading

dbt Labs is committed to providing backward compatibility for all versions 1.x. Any behavior changes will be accompanied by a behavior change flag to provide a migration window for existing projects. If you encounter an error upon upgrading, please let us know by opening an issue.

Starting in 2024, dbt provides the functionality from new versions of dbt Core via release tracks with automatic upgrades. If you have selected the "Latest" release track in dbt, you already have access to all the features, fixes, and other functionality included in the latest dbt Core version! If you have selected the "Compatible" release track, you will have access in the next monthly "Compatible" release after the dbt Core v1.11 final release.

We continue to recommend explicitly installing both dbt-core and dbt-<youradapter>. This may become required for a future version of dbt. For example:

python3 -m pip install dbt-core dbt-snowflake

New and changed features and functionality

New features and functionality available in dbt Core v1.11

User-defined functions (UDFs) Beta

dbt Core v1.11 introduces support for user-defined functions (UDFs), which enable you to define and register custom functions in your warehouse. Like macros, UDFs promote code reuse, but they are objects in the warehouse so you can reuse the same logic in tools outside dbt.

Key features include:

  • Define UDFs as first-class dbt resources: Create UDF files in a functions/ directory with corresponding YAML configuration.
  • Execution: Create, update, and rename UDFs as part of DAG execution using dbt build --select "resource_type:function"
  • DAG integration: When executing dbt build, UDFs are built before models that reference them, ensuring proper dependency management.
  • New function() macro: Reference UDFs in your models using the {{ function('function_name') }} Jinja macro.

Read more about UDFs, including prerequisites and how to define and use them in the UDF documentation.

Deprecation warnings enabled by default (coming soon)

Coming soon to dbt Core v1.11, deprecation warnings from JSON Schema validation will be enabled by default when validating your YAML configuration files (such as schema.yml and dbt_project.yml).

These warnings help you proactively identify and update deprecated configurations (such as misspelled config keys, deprecated properties, or incorrect data types).

Quick hits

You will find these quick hits in dbt Core v1.11:

  • The dbt ls command can now write out nested keys. This makes it easier to debug and troubleshoot your project. Example: dbt ls --output json --output-keys config.materialized
  • Manifest metadata now includes run_started_at, providing better tracking of when dbt runs were initiated.

Was this page helpful?

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

0