- This file provides a full account of all changes to
dbt-core
anddbt-postgres
- Changes are listed under the (pre)release in which they first appear. Subsequent releases include changes from previous releases.
- "Breaking changes" listed under a version may require action from end users or external maintainers when upgrading to that version.
- Do not edit this file directly. This file is auto-generated using changie. For details on how to document a change, see the contributing guide
- Fix the semicolon semantics for indexes while respecting other bug fix (#85)
- Explicitly bind to localhost in docs serve (#10209)
- Move flags from UserConfig in profiles.yml to flags in dbt_project.yml (#9183)
- Add require_explicit_package_overrides_for_builtin_materializations to dbt_project.yml flags, which can be used to opt-out of overriding built-in materializations from packages (#10007)
- remove materialized views from renambeable relation and remove a quote (#127)
- Replace usage of
Set
withList
to fix issue with index updates intermittently happening out of order (#72)
- Raise deprecation warning if installed package overrides built-in materialization (#9971)
- Remove the final underscore from secret environment variable constants. (#10052)
- Bump sqlparse to >=0.5.0, <0.6.0 to address GHSA-2m57-hf25-phgg (#9951)
- Fix assorted source freshness edgecases so check is run or actionable information is given (#9078)
- Exclude password-like fields for considering reparse (#9795)
- Tighten exception handling to avoid worker thread hangs. (#9583)
- Add field wrapper to BaseRelation members that were missing it. (#9681)
- Do not add duplicate input_measures (#9360)
- Fix partial parsing
KeyError
on deleted schema files (#8860) - Support saved queries in
dbt list
(#9532)
- Restrict protobuf to 4.* versions (#9566)
- Fix node_info contextvar handling so incorrect node_info doesn't persist (#8866)
- Add target-path to retry (#8948)
- Update Jinja2 to >= 3.1.3 to address CVE-2024-22195 (#CVE-2024-22195)
- When patching versioned models, set constraints after config (#9364)
- Store node_info in node associated logging events (#9557)
- Fix seed and source selection in
dbt docs generate
(#9161) - Add TestGenerateCatalogWithExternalNodes, include empty nodes in node selection during docs generate (#9456)
- Preserve the value of vars and the --full-refresh flags when using retry. (#9112)
- Adds support for parsing conversion metric related properties for the semantic layer. (#9203)
- Ensure we produce valid jsonschema schemas for manifest, catalog, run-results, and sources (#8991)
- deps: Lock git packages to commit SHA during resolution (#9050)
- deps: Use PackageRenderer to read package-lock.json (#9127)
- Get sources working again in dbt docs generate (#9119)
- Support setting export configs hierarchically via saved query and project configs (#8956)
- Fix formatting of tarball information in packages-lock.yml (#9062)
- Treat SystemExit as an interrupt if raised during node execution. (#n/a)
- Fix compilation exception running empty seed file and support new Integer agate data_type (#8895)
- Update run_results.json from previous versions of dbt to support deferral and rerun from failure (#9010)
- Use MANIFEST.in to recursively include all jinja templates; fixes issue where some templates were not included in the distribution (#9016)
- Fix git repository with subdirectory for Deps (#9000)
- Removed the FirstRunResultError and AfterFirstRunResultError event types, using the existing RunResultError in their place. (#7963)
- add log file of installed packages via dbt deps (#6643)
- Enable re-population of metadata vars post-environment change during programmatic invocation (#8010)
- Added support to configure a delimiter for a seed file, defaults to comma (#3990)
- Allow specification of
create_metric: true
on measures (#8125) - Add node attributes related to compilation to run_results.json (#7519)
- Add --no-inject-ephemeral-ctes flag for
compile
command, for usage by linting. (#8480) - Support configuration of semantic models with the addition of enable/disable and group enablement. (#7968)
- Accept a
dbt-cloud
config in dbt_project.yml (#8438) - Support atomic replace in the global replace macro (#8539)
- Use translate_type on data_type in model.columns in templates by default, remove no op
TYPE_LABELS
(#8007) - Add an option to generate static documentation (#8614)
- Allow setting "access" as a config in addition to as a property (#8383)
- Loosen typing requirement on renameable/replaceable relations to Iterable to allow adapters more flexibility in registering relation types, include docstrings as suggestions (#8647)
- Add support for optional label in semantic_models, measures, dimensions and entities. (#8595, #8755)
- Allow adapters to include package logs in dbt standard logging (#7859)
- Support storing test failures as views (#6914)
- resolve packages with same git repo and unique subdirectory (#5374)
- Add new ResourceReport event to record memory/cpu/io metrics (#8342)
- Adding
date_spine
macro (and supporting macros) from dbt-utils to dbt-core (#8172) - Support
fill_nulls_with
andjoin_to_timespine
for metric nodes (#8593, #8755) - Raise a warning when a contracted model has a numeric field without scale defined (#8183)
- Added support for retrieving partial catalog information from a schema (#8521)
- Add meta attribute to SemanticModels config (#8511)
- Selectors with docs generate limits catalog generation (#6014)
- Allow freshness to be determined via DBMS metadata for supported adapters (#8704)
- Add support semantic layer SavedQuery node type (#8594)
- Add exports to SavedQuery spec (#8892)
- Copy dir during
dbt deps
if symlink fails (#7428, #8223) - If --profile specified with dbt-init, create the project with the specified profile (#6154)
- Fixed double-underline (#5301)
- Copy target_schema from config into snapshot node (#6745)
- Enable converting deprecation warnings to errors (#8130)
- Add status to Parse Inline Error (#8173)
- Ensure
warn_error_options
get serialized ininvocation_args_dict
(#7694) - Stop detecting materialization macros based on macro name (#6231)
- Update
dbt deps
download retry logic to handleEOFError
exceptions (#6653) - Improve handling of CTE injection with ephemeral models (#8213)
- Fix unbound local variable error in
checked_agg_time_dimension_for_measure
(#8230) - Ensure runtime errors are raised for graph runnable tasks (compile, show, run, etc) (#8166)
- Fix retry not working with log-file-max-bytes (#8297)
- Add explicit support for integers for the show command (#8153)
- Detect changes to model access, version, or latest_version in state:modified (#8189)
- Add connection status into list of statuses for dbt debug (#8350)
- fix fqn-selection for external versioned models (#8374)
- Fix: DbtInternalError after model that previously ref'd external model is deleted (#8375)
- Fix using list command with path selector and project-dir (#8385)
- Remedy performance regression by only writing run_results.json once. (#8360)
- Add support for swapping materialized views with tables/views and vice versa (#8449)
- Turn breaking changes to contracted models into warnings for unversioned models (#8384, #8282)
- Ensure parsing does not break when
window_groupings
is not specified fornon_additive_dimension
(#8453) - fix ambiguous reference error for tests and versions when model name is duplicated across packages (#8327, #8493)
- Fix "Internal Error: Expected node not found in manifest" when depends_on set on ModelNodeArgs (#8506)
- Fix snapshot success message (#7583)
- Parse the correct schema version from manifest (#8544)
- make version comparison insensitive to order (#8571)
- Update metric helper functions to work with new semantic layer metrics (#8134)
- Disallow cleaning paths outside current working directory (#8318)
- Warn when --state == --target (#8160)
- update dbt show to include limit in DWH query (#8496,, #8417)
- Support quoted parameter list for MultiOption CLI options. (#8598)
- Support global flags passed in after subcommands (#6497)
- Lower bound of
8.0.2
forclick
(#8683) - Fixes test type edges filter (#8692)
- semantic models in graph selection (#8589)
- Support doc blocks in nested semantic model YAML (#8509)
- avoid double-rendering sql_header in dbt show (#8739)
- Fix tag selection for projects with semantic models (#8749)
- Foreign key constraint on incremental model results in Database Error (#8022)
- Support docs blocks on versioned model column descriptions (#8540)
- Enable seeds to be handled from stored manifest data (#6875)
- Override path-like args in dbt retry (#8682)
- Group updates on unmodified nodes are handled gracefully for state:modified (#8371)
- Partial parsing fix for adding groups and updating models at the same time (#8697)
- Fix partial parsing not working for semantic model change (#8859)
- Rework get_catalog implementation to retain previous adapter interface semantics (#8846)
- Add back contract enforcement for temporary tables on postgres (#8857)
- Add version to fqn when version==0 (#8836)
- Fix cased comparison in catalog-retrieval function. (#8939)
- Catalog queries now assign the correct type to materialized views (#8864)
- Make relation filtering None-tolerant for maximal flexibility across adapters. (#8974)
- Corrected spelling of "Partiton" (dbt-docs/#8100)
- Remove static SQL codeblock for metrics (dbt-docs/#436)
- fixed comment util.py (dbt-docs/#None)
- Fix newline escapes and improve formatting in docker README (dbt-docs/#8211)
- Display contract and column constraints on the model page (dbt-docs/#433)
- Display semantic model details in docs (dbt-docs/#431)
- Switch from hologram to mashumaro jsonschema (#8426)
- Refactor flaky test pp_versioned_models (#7781)
- format exception from dbtPlugin.initialize (#8152)
- A way to control maxBytes for a single dbt.log file (#8199)
- Ref expressions with version can now be processed by the latest version of the high-performance dbt-extractor library. (#7688)
- Bump manifest schema version to v11, freeze manifest v10 (#8333)
- add tracking for plugin.get_nodes calls (#8344)
- add internal flag: --no-partial-parse-file-diff to inform whether to compute a file diff during partial parsing (#8363)
- Add return values to a number of functions for mypy (#8389)
- Fix mypy warnings for ManifestLoader.load() (#8401)
- Use python version 3.10.7 in Docker image. (#8444)
- Re-organize jinja macros: relation-specific in /macros/adapters/relations/, relation agnostic in /macros/relations (#8449)
- Update typing to meet mypy standards (#8396)
- Mypy errors - adapters/factory.py (#8387)
- Added more type annotations. (#8537)
- Audit potential circular dependencies (#8349)
- Add functional test for advanced ref override (#8566)
- Add typing to init in base.py (#8398)
- Fix untyped functions in task/runnable.py (mypy warning) (#8402)
- add a test for ephemeral cte injection (#8225)
- Fix test_numeric_values to look for more specific strings (#8470)
- Pin types-requests<2.31.0 in
dev-requirements.txt
(#8789) - Add warning_tag to UnversionedBreakingChange (#8827)
- Update v10 manifest schema to match 1.6 for testing schema compatibility (#8835)
- Add a no-op runner for Saved Qeury (#8893)
- Bump mypy from 1.3.0 to 1.4.0 (#7912)
- Bump mypy from 1.4.0 to 1.4.1 (#8219)
- Update pin for click<9 (#8232)
- Add upper bound to sqlparse pin of <0.5 (#8236)
- Support dbt-semantic-interfaces 0.2.0 (#8250)
- Bump docker/build-push-action from 4 to 5 (#8783)
- Upgrade dbt-semantic-interfaces dep to 0.3.0 (#8819)
- Begin using DSI 0.4.x (#8892)
- @anjutiwari (#7428, #8223)
- @benmosher (#8480)
- @d-kaneshiro (#None)
- @dave-connors-3 (#8153, #8589)
- @dylan-murray (#8683)
- @ezraerb (#6154)
- @gem7318 (#8010)
- @jamezrin (#8211)
- @jusbaldw (#6643)
- @lllong33 (#5301)
- @marcodamore (#436)
- @mescanne (#8614)
- @pgoslatara (#8100)
- @philippeboyd (#5374)
- @ramonvermeulen (#3990)
- @renanleme (#8692)
For information on prior major and minor releases, see their changelogs: