Skip to content

Latest commit

 

History

History
executable file
·
425 lines (331 loc) · 33.3 KB

CHANGELOG.md

File metadata and controls

executable file
·
425 lines (331 loc) · 33.3 KB

dbt Core Changelog

  • This file provides a full account of all changes to dbt-core and dbt-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

dbt-core 1.6.14 - May 02, 2024

Features

  • 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)

Fixes

  • Replace usage of Set with List to fix issue with index updates intermittently happening out of order (#72)

Under the Hood

  • Raise deprecation warning if installed package overrides built-in materialization (#9971)
  • Remove the final underscore from secret environment variable constants. (#10052)

dbt-core 1.6.13 - April 18, 2024

Security

  • Bump sqlparse to >=0.5.0, <0.6.0 to address GHSA-2m57-hf25-phgg (#9951)

Contributors

dbt-core 1.6.12 - April 16, 2024

Fixes

  • Exclude password-like fields for considering reparse (#9795)

dbt-core 1.6.11 - March 28, 2024

Dependencies

  • Restrict protobuf to 4.* versions (#9566)

dbt-core 1.6.10 - February 28, 2024

Under the Hood

  • Add test for docs generate catalog with external nodes (#9481)
  • Restrict protobuf to major version 4. (#9566)

Security

dbt-core 1.6.9 - November 16, 2023

Fixes

  • Partial parsing fix for adding groups and updating models at the same time (#8697)

Under the Hood

  • Treat SystemExit as an interrupt if raised during node execution. (#n/a)

Contributors

dbt-core 1.6.8 - November 08, 2023

Fixes

  • Catalog queries now assign the correct type to materialized views (#8864)
  • Fix compilation exception running empty seed file and support new Integer agate data_type (#8895)

dbt-core 1.6.7 - November 01, 2023

Fixes

  • Add back contract enforcement for temporary tables on postgres (#8857)
  • Add version to fqn when version==0 (#8836)

dbt-core 1.6.6 - October 11, 2023

Features

  • Support fill_nulls_with and join_to_timespine for metric nodes (#8593)

Fixes

  • Add connection status into list of statuses for dbt debug (#8350)
  • Support global flags passed in after subcommands (#6497)
  • Regenerate the v10 manifest jsonschema (#8763)
  • 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)

Under the Hood

  • add a test for ephemeral cte injection (#8225)

dbt-core 1.6.5 - October 02, 2023

Fixes

  • Fix tag selection for projects with semantic models (#8749)

dbt-core 1.6.4 - September 28, 2023

Features

  • Add support for optional label in semantic_models, measures, dimensions and entities. (#8595)

Fixes

  • update dbt show to include limit in DWH query (#8496,, #8417)
  • Support quoted parameter list for MultiOption CLI options. (#8598)
  • 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)

Contributors

dbt-core 1.6.3 - September 19, 2023

Features

  • Add --no-inject-ephemeral-ctes flag for compile command, for usage by linting. (#8480)

Fixes

  • Add explicit support for integers for the show command (#8153)
  • make version comparison insensitive to order (#8571)

Under the Hood

  • Fix test_numeric_values to look for more specific strings (#8470)

Contributors

dbt-core 1.6.2 - September 07, 2023

Breaking Changes

  • Removed the FirstRunResultError and AfterFirstRunResultError event types, using the existing RunResultError in their place. (#7963)

Features

  • Accept a dbt-cloud config in dbt_project.yml (#8438)

Fixes

  • Copy dir during dbt deps if symlink fails (#7428, #8223)
  • 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)

Contributors

dbt-core 1.6.1 - August 23, 2023

Fixes

  • Add status to Parse Inline Error (#8173)
  • Fix retry not working with log-file-max-bytes (#8297)
  • Detect changes to model access, version, or latest_version in state:modified (#8189)
  • 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)
  • Ensure parsing does not break when window_groupings is not specified for non_additive_dimension (#8453)

Docs

  • Display contract and column constraints on the model page (dbt-docs/#433)
  • Display semantic model details in docs (dbt-docs/#431)

Under the Hood

  • Refactor flaky test pp_versioned_models (#7781)
  • format exception from dbtPlugin.initialize (#8152)
  • Update 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)
  • Use python version 3.10.7 in Docker image. (#8444)
  • Check for existing_relation immediately prior to renaming (#7781)

dbt-core 1.6.0 - July 31, 2023

Breaking Changes

  • Dropped support for Python 3.7 (#7082)
  • Switch from dbt-metrics to dbt-semantic-interfaces for MetricNode definitions (#7500, #7404)

Features

  • Add merge as valid incremental strategy for postgres (#1880)
  • Skip catalog generation (#6980)
  • Add support for materialized views (#6911)
  • Publication artifacts and cross-project ref (#7227)
  • Optimize template rendering for common parse scenarios (#7449)
  • Add graph structure summaries to target path output (#7357)
  • Allow duplicate manifest node (models, seeds, analyses, snapshots) names across packages (#7446)
  • Detect breaking changes to enforced constraints (#7065)
  • Check for project dependency cycles (#7468)
  • nodes in packages respect custom generate_alias_name, generate_schema_name, generate_database_name macro overrides defined in packages (#7444)
  • Added warnings for model and ref deprecations (#7433)
  • Update drop_relation macro to allow for configuration of drop statement separately from object name (#7625)
  • accept publications in dbt.invoke (#7372)
  • Enable state for deferral to be separate from state for selectors (#7300)
  • add access selection syntax (#7738)
  • add project_name to manifest metadata (#7752)
  • dbt retry (#7299)
  • This change adds new selector methods to the state selector. Namely, state:unmodified and state:old. (#7564)
  • Revamp debug, add --connection flag. Prepare for future refactors/interface changes. (#7104)
  • Validate public models are not materialized as ephemeral (#7226)
  • Added support for parsing and serializaing semantic models (#7499, #7503)
  • Enable setting packages in dependencies.yml (#7372, #7736)
  • Add AdapterRegistered event log message (#7038)
  • dbt clone (#7258)
  • Further integrate semantic models into the DAG and partial parsing module (#7800)
  • Handle external model nodes in state:modified (#7563)
  • Add invocation_command to flags (#6051)
  • Add thread_id context var (#7941)
  • Add partial parsing support for semantic models (#7897)
  • Add restrict-access to dbt_project.yml (#7713)
  • allow setting enabled and depends_on_nodes from ModelNodeArgs (#7506)
  • Support '_'-delimited fqn matching for versioned models and matching on Path.stem for path selection (#7639)
  • Store time_spline table configuration in semantic manifest (#7938)
  • Add validate_sql method to BaseAdapter with implementation for SQLAdapter (#7839)
  • Support validation of metrics and semantic models. (#7969)
  • Begin populating depends_on of metric nodes (#7854)
  • Enumerate supported materialized view features for dbt-postgres (#6911)

Fixes

  • Raise better error message when dispatching a package that is not installed (#5801)
  • add negative part_number arg for split part macro (#7915)
  • Persist timing info in run results for failed nodes (#5476)
  • fix typo in unpacking statically parsed ref (#7364)
  • safe version attribute access in _check_resource_uniqueness (#7375)
  • Fix dbt command missing target-path param ([# 7411](https://github.com/dbt-labs/dbt-core/issues/ 7411))
  • Fix CTE insertion position when the model uses WITH RECURSIVE (#7350)
  • Fix v0 ref resolution (#7408)
  • Add --target-path to dbt snapshot command. (#7418)
  • dbt build selection of tests' descendants (#7289)
  • fix groupable node partial parsing, raise DbtReferenceError at runtime for safety (#7437)
  • Fix partial parsing of latest_version changes for downstream references (#7369)
  • Use "add_node" to update depends_on.nodes (#7453)
  • Fix var precedence in configs: root vars override package vars (#6705)
  • Constraint rendering fixes: wrap check expression in parentheses, foreign key 'references', support expression in all constraint types (#7417, #7480, #7416)
  • Fix inverted --print/--no-print flag (#7517)
  • Back-compat for previous return type of 'collect_freshness' macro (#7489)
  • Fix warning messages for deprecated dbt_project.yml configs (#7424)
  • Respect column 'quote' config in model contracts (#7370)
  • print model version in dbt show if specified (#7407)
  • enable dbt show for seeds (#7273)
  • push down limit filtering to adapter (#7390)
  • Allow missing profiles.yml for dbt deps and dbt init (#7511)
  • run_results.json is now written after every node completes. (#7302)
  • Do not rewrite manifest.json during 'docs serve' command (#7553)
  • Pin protobuf to greater than 4.0.0 (#7565)
  • inject sql header in query for show (#7413)
  • Pin urllib3 to ~=1.0 (#7573)
  • Throw error for duplicated versioned and unversioned models (#7487)
  • Honor --skip-profile-setup parameter when inside an existing project (#7594)
  • Fix: Relative project paths weren't working with deps (#7491)
  • Exclude password fields from Jinja rendering. (#7629)
  • Add --target-path to more CLI subcommands (#7646)
  • Stringify flag paths for Jinja context (#7495)
  • write run_results.json for run operation (#7502)
  • Add % to adapter suite test cases for persist_docs (#7698)
  • Unified to UTC (#7664)
  • Improve warnings for constraints and materialization types (#7335)
  • Incorrect paths used for "target" and "state" directories (#7465)
  • fix StopIteration error when publication for project not found (#7711)
  • Using version 0 works when resolving single model (#7372)
  • Fix empty --warn-error-options error message (#7730)
  • send sql header on contract enforcement (#7714)
  • Fixed doc link in selector.py (#7533)
  • Fix null-safe equals comparison via equals (#7778)
  • Log PublicationArtifactAvailable even when partially parsing unchanged public models (#7782)
  • fix RuntimeError when removing project dependency from dependencies.yml (#7743)
  • Fix regression in run-operation to not require the name of the package to run (#7753)
  • Fix path selector when using project-dir (#7819)
  • Allow project dependencies to use miscellaneous keys (#7497)
  • Allow dbt show --inline preview of private models (#7837)
  • Updating this error message to point to the correct URL (#7789)
  • Update SemanticModel node to properly impelment the DSI 0.1.0dev3 SemanticModel protocol spec (#7833, #7827)
  • Allow semantic model measure exprs to be defined with ints and bools in yaml (#7865)
  • Update use_discrete_percentile and use_approximate_percentile to be non optional and default to False (#7866)
  • Fix accidental propagation of log messages to root logger. (#7872)
  • Fixed an issue which blocked debug logging to stdout with --log-level debug, unless --debug was also used. (#7872)
  • Skip jinja parsing of metric filters (#7864)
  • Fix a bad implicit string conversion regression in debug --config-dir code. (#7774)
  • Remove limitation on use of sqlparse 0.4.4 (#7515)
  • Fix UninstalledPackagesFoundError error message to use correct packages specified path (#7921)
  • Fix: safe remove of external nodes from nodes.depends_on (#7924)
  • Fix query comment tests (#7845)
  • Move project_root contextvar into events.contextvars (#7937)
  • add access to ModelNodeArgs for external node building (#7890)
  • Inline query emit proper error message (#7940)
  • Fix typo in ModelNodeArgs (#7991)
  • Allow on_schema_change = fail for contracted incremental models (#7975)
  • Nicer error message if model with enforced contract is missing 'columns' specification (#7943)
  • include 'v' in ModelNodeArgs.unique_id (#8039)
  • Fix fail-fast behavior (including retry) (#7785)
  • Remove create_metric as a SemanticModel.Measure property because it currently doesn't do anything (#8064)
  • Remove VOLUME declaration within Dockerfile (#4784)
  • Fix Dockerfile.test (#7352)
  • Detect breaking contract changes to versioned models (#8030)
  • Update DryRunMethod test classes ValidateSqlMethod naming (#7839)
  • Fix typo in NonAdditiveDimension implementation (#8088)
  • Copy target_schema from config into snapshot node (#6745)
  • Enable converting deprecation warnings to errors (#8130)
  • Ensure warn_error_options get serialized in invocation_args_dict (#7694)
  • Stop detecting materialization macros based on macro name (#6231)
  • 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)

Docs

Under the Hood

  • Update docs link in ContractBreakingChangeError message (#7366)
  • Reduce memory footprint of cached statement results. (#7281)
  • Remove noisy parsing events: GenericTestFileParse, MacroFileParse, Note events for static model parsing (#6671)
  • Update --help text for cache-related parameters (#7381)
  • Small UX improvements to model versions: Support defining latest_version in unsuffixed file by default. Notify on unpinned ref when a prerelease version is available. (#7443)
  • Add ability to instantiate Flags class from dict (#7607)
  • Add other relation to reffable nodes (#7550)
  • Move node patch method to schema parser patch_node_properties and refactor schema parsing (#7430)
  • Remove legacy file logger code (#NA)
  • Break up integration tests as a short term fix for Windows CI runs (#7668)
  • Include null checks in utils test base (#7670)
  • Write pub artifact to log (#7372)
  • Fix flaky test for --fail-fast (#7744)
  • Create add_from_artifact to populate state_relation field of nodes (#7551)
  • Replace space with underscore in NodeType strings (#7841)
  • Upgrade to dbt-semantic-interfaces v0.1.0dev5 (#7853)
  • Refactoring: consolidating public_nodes and nodes (#7890)
  • Resolve SemanticModel ref is the same way as other refs (#7822)
  • Move from dbt-semantic-intefaces 0.1.0dev5 to 0.1.0dev7 (#7898)
  • Don't jinja render packages from dependencies.yml (#7905)
  • Update mashumaro to 3.8.1 (#7950)
  • Refactor: entry point for cross-project ref (#7954)
  • Populate metric input measures (#7884)
  • Add option to specify partial parse file (#7911)
  • Add semantic_models to resource counts (#8077)
  • A way to control maxBytes for a single dbt.log file (#8199)

Dependencies

  • Bump mypy from 0.981 to 1.0.1 (#7027)
  • Bump ubuntu from 23.04 to 23.10 (#7675)
  • (#7681)
  • Pin click>=8.1.1,<8.1.4 (#8050)
  • Bump dbt-semantic-interfaces to ~=0.1.0rc1 (#8082)
  • Update pin for click<9 (#8232)
  • Add upper bound to sqlparse pin of <0.5 (#8236)
  • Support dbt-semantic-interfaces 0.2.0 (#8250)

Contributors

Previous Releases

For information on prior major and minor releases, see their changelogs: