Skip to content

dbt-core v1.9.0b1

Pre-release
Pre-release
Compare
Choose a tag to compare
@github-actions github-actions released this 01 Oct 19:01

dbt-core 1.9.0-b1 - October 01, 2024

Breaking Changes

  • Fix changing the current working directory when using dpt deps, clean and init. (#8997)

Features

  • serialize inferred primary key (#9824)
  • Add unit_test: selection method (#10053)
  • Maximally parallelize dbt clone in clone command" (#7914)
  • Add --host flag to dbt docs serve, defaulting to '127.0.0.1' (#10229)
  • Update data_test to accept arbitrary config options (#10197)
  • add pre_model and post_model hook calls to data and unit tests to be able to provide extra config options (#10198)
  • add --empty value to jinja context as flags.EMPTY (#10317)
  • Warning message for snapshot timestamp data types (#10234)
  • Support cumulative_type_params & sub-daily granularities in semantic manifest. (#10360)
  • Add time_granularity to metric spec. (#10376)
  • Support standard schema/database fields for snapshots (#10301)
  • Support ref and source in foreign key constraint expressions, bump dbt-common minimum to 1.6 (#8062)
  • Support new semantic layer time spine configs to enable sub-daily granularity. (#10475)
  • Include models that depend on changed vars in state:modified, add state:modified.vars selection method (#4304)
  • Add support for behavior flags (#10618)
  • Enable --resource-type and --exclude-resource-type CLI flags and environment variables for dbt test (#10656)
  • Allow configuring snapshot column names (#10185)
  • Add custom_granularities to YAML spec for time spines. (#9265)
  • Add basic functionality for creating microbatch incremental models (#9490, #10635, #10637, #10638, #10636, #10662, #10639)
  • Execute microbatch models in batches (#10700)
  • Create 'skip_nodes_if_on_run_start_fails' behavior change flag (#7387)
  • Allow snapshots to be defined in YAML. (#10246)
  • Write microbatch compiled/run targets to separate files, one per batch (#10714)
  • Track incremental_strategy as part of model_run tracking event (#10761)
  • Support required 'begin' config for microbatch models (#10701)
  • Parse-time validation of microbatch configs: require event_time, batch_size, lookback and validate input event_time (#10709)
  • Added the --inline-direct parameter to 'dbt show' (#10770)
  • Enable retry support for microbatch models (#10715, #10729)
  • Use unrendered database and schema source properties during state:modified, behind state_modified_compare_more_unrendered_values behavoiur flag (#9573)
  • Ensure microbatch models respect full_refresh model config (#10785)
  • Adds validations for custom_granularities to ensure unique naming. (#9265)

Fixes

  • Remove unused check_new method (#7586)
  • Test case for merge_exclude_columns (#8267)
  • Convert "Skipping model due to fail_fast" message to DEBUG level (#8774)
  • Restore previous behavior for --favor-state: only favor defer_relation if not selected in current command" (#10107)
  • Unit test fixture (csv) returns null for empty value (#9881)
  • Fix json format log and --quiet for ls and jinja print by converting print call to fire events (#8756)
  • Add resource type to saved_query (#10168)
  • Fix: Order-insensitive unit test equality assertion for expected/actual with multiple nulls (#10167)
  • Renaming or removing a contracted model should raise a BreakingChange warning/error (#10116)
  • prefer disabled project nodes to external node (#10224)
  • Fix issues with selectors and inline nodes (#8943, #9269)
  • Fix snapshot config to work in yaml files (#4000)
  • Improve handling of error when loading schema file list (#10284)
  • Use model alias for the CTE identifier generated during ephemeral materialization (#5273)
  • Implement state:modified for saved queries (#10294)
  • Saved Query node fail during skip (#10029)
  • DOn't warn on unit_test config paths that are properly used (#10311)
  • Fix setting silence of warn_error_options via dbt_project.yaml flags (#10160)
  • Attempt to provide test fixture tables with all values to set types correctly for comparisong with source tables (#10365)
  • Limit data_tests deprecation to root_project (#9835)
  • CLI flags should take precedence over env var flags (#10304)
  • Fix typing for artifact schemas (#10442)
  • Fix over deletion of generated_metrics in partial parsing (#10450)
  • Fix error constructing warn_error_options (#10452)
  • Do not update varchar column definitions if a contract exists (#10362)
  • fix all_constraints access, disabled node parsing of non-uniquely named resources (#10509)
  • respect --quiet and --warn-error-options for flag deprecations (#10105)
  • Propagate measure label when using create_metrics (#10536)
  • Fix state:modified check for exports (#10138)
  • Filter out empty nodes after graph selection to support consistent selection of nodes that depend on upstream public models (#8987)
  • Late render pre- and post-hooks configs in properties / schema YAML files (#10603)
  • Allow the use of env_var function in certain macros in which it was previously unavailable. (#10609)
  • Remove deprecation for tests: to data_tests: change (#10564)
  • Fix --resource-type test for dbt list and dbt build (#10730)
  • Fix unit tests for incremental model with alias (#10754)
  • Allow singular tests to be documented in properties.yml (#9005)
  • Ignore --empty in unit test ref/source rendering (#10516)
  • Ignore rendered jinja in configs for state:modified, behind state_modified_compare_more_unrendered_values behaviour flag (#9564)
  • Improve performance of infer primary key (#10781)
  • Attempt to skip saved query processing when no semantic manifest changes (#10563)
  • Ensure dbt retry of microbatch models doesn't lose prior successful state (#10800)

Docs

Under the Hood

  • Clear error message for Private package in dbt-core (#10083)
  • Enable use of context in serialization (#10093)
  • Make RSS high water mark measurement more accurate on Linux (#10177)
  • Enable record filtering by type. (#10240)
  • Remove IntermediateSnapshotNode (#10326)
  • Additional logging for skipped ephemeral models (#10389)
  • bump black to 24.3.0 (#10454)
  • generate protos with protoc version 5.26.1 (#10457)
  • Move from minimal-snowplow-tracker fork back to snowplow-tracker (#8409)
  • Add group info to RunResultError, RunResultFailure, RunResultWarning log lines (#)
  • Improve speed of tree traversal when finding children, increasing build speed for some selectors (#10434)
  • Add test for sources tables with quotes (#10582)
  • Additional type hints for core/dbt/version.py (#10612)
  • Fix typing issues in core/dbt/contracts/sql.py (#10614)
  • Fix type errors in dbt/core/task/clean.py (#10616)
  • Add Snowplow tracking for behavior flag deprecations (#10552)
  • Add test utility patch_microbatch_end_time for adapters testing (#10713)
  • Replace TestSelector with ResourceTypeSelector (#10718)
  • Standardize returning ResourceTypeSelector instances in dbt list and dbt build (#10739)
  • Add group metadata info to LogModelResult and LogTestResult (#10775)

Dependencies

  • Remove logbook dependency (#8027)
  • Increase supported version range for dbt-semantic-interfaces. Needed to support custom calendar features. (#9265)

Security

  • Explicitly bind to localhost in docs serve (#10209)

Contributors