Releases: dbt-labs/dbt-core
Releases · dbt-labs/dbt-core
dbt-core v1.9.0rc1
dbt-core 1.9.0-rc1 - November 25, 2024
Features
- Parseable JSON and text output in quiet mode for
dbt show
anddbt compile
(#9840) - Change gating of microbatch feature to be behind project flag / behavior flag (#10798)
- Add new hard_deletes="new_record" mode for snapshots. (#10235)
- Allow microbatch batches to run in parallel (#10853, #10855)
Fixes
- override materialization python models (#8520)
- Support disabling unit tests via config. (#9109, #10540)
- unit tests with versioned refs (#10880, #10528, #10623)
- Fix 'no attribute .config' error when ref-ing a microbatch model from non-Model context (#10928)
- Ensure inferred primary_key is a List[str] with no null values (#10983)
- Correct when custom microbatch macro deprecation warning is fired (#10994)
- Validate manifest has group_map during group_lookup init (#10988)
- Fix plural of 'partial success' in log message (#10999)
- Emit batch-level exception with node_info on microbatch batch run failure (#10840)
- Fix restrict-access to not apply within a package (#10134)
- Make microbatch models skippable (#11021)
- Catch DbtRuntimeError for hooks (#11012)
Under the Hood
- Upgrade protobuf (#10658)
Dependencies
- Bump minimum dbt-adapters version to 1.9.0 (#10996)
Contributors
dbt-core v1.8.9
dbt-core 1.8.9 - November 21, 2024
Under the Hood
- Pin dbt-common and dbt-adapters with upper bound of 2.0. (#11024)
dbt-core v1.9.0b4
dbt-core 1.9.0-b4 - November 06, 2024
Features
- Emit debug logging event whenever artifacts are written (#10937)
- Support --empty for snapshots (#10372)
Fixes
- Ensure KeyboardInterrupt/SystemExit halts microbatch model execution (#10862)
- Handle exceptions in
get_execution_status
more broadly to better ensurerun_results.json
gets written (#10934)
Under the Hood
- Behavior change for mf timespine without yaml configuration (#10959)
- Behavior change for cumulative metric type param (#10960)
Contributors
dbt-core v1.9.0b3
dbt-core 1.9.0-b3 - October 30, 2024
Features
- Add
order_by
andlimit
fields to saved queries. (#10531) - Enable specification of dbt_valid_to for current records (#10187)
- Enable use of multi-column unique key in snapshots (#9992)
- Ensure
--event-time-start
is before--event-time-end
(#10786) - Ensure microbatch models use same
current_time
value (#10819) - Emit warning when microbatch model has no input with
event_time
config (#10926)
Fixes
- Pass test user config to adapter pre_hook by explicitly adding test builder config to node (#10484)
- Handle edge cases when a specified
--event-time-end
is equivalent to the batch size truncated batch start time (#10824) - Begin tracking execution time of microbatch model batches (#10825)
- Allow instances of generic data tests to be documented (#2578)
- Fix warnings for models referring to a deprecated model (#10833)
- Change
lookback
default from0
to1
to ensure better data completeness (#10867) - Make
--event-time-start
and--event-time-end
mutually required (#10874) - Exclude hook result from results in on-run-end context (#7387)
- Implement partial parsing for all-yaml snapshots (#10903)
- Restore source quoting behaviour when quoting config provided in dbt_project.yml (#10892)
- Fix bug when referencing deprecated models (#10915)
- Fix 'model' jinja context variable type to dict (#10927)
- Take
end_time
for batches to the ceiling to handle edge case whereevent_time
column is a date (#10868)
Under the Hood
- Remove support and testing for Python 3.8, which is now EOL. (#10861)
Dependencies
- Bump minimnum allowed dbt-adapters version to 1.8.0 (#N/A)
Contributors
dbt-core v1.8.8
dbt-core v1.9.0b2
dbt-core 1.9.0-b2 - October 07, 2024
dbt-core v1.9.0b1
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 fordbt 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
ofwarn_error_options
viadbt_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
fordbt list
anddbt 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
- Enable display of unit tests (dbt-docs/#501)
- Unit tests not rendering ([dbt-docs/...
dbt-core v1.8.7
dbt-core v1.8.6
dbt-core v1.8.5
dbt-core 1.8.5 - August 07, 2024
Fixes
- respect --quiet and --warn-error-options for flag deprecations (#10105)