Releases: dbt-labs/dbt-core
Releases · dbt-labs/dbt-core
dbt-core v1.6.0b4
dbt-core 1.6.0-b4 - June 13, 2023
Fixes
- Respect column 'quote' config in model contracts (#7370)
- Fix path selector when using project-dir (#7819)
- Allow project dependencies to use miscellaneous keys (#7497)
- 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)
Docs
- Fix for column tests not rendering on quoted columns (dbt-docs/#201)
Under the Hood
- Rm space from NodeType strings (#7841)
Contributors
dbt-core v1.6.0b3
dbt-core 1.6.0-b3 - June 08, 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 support for materialized views (#6911)
- Optimize template rendering for common parse scenarios (#7449)
- nodes in packages respect custom generate_alias_name, generate_schema_name, generate_database_name macro overrides defined in packages (#7444)
- 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)
- 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)
Fixes
- Constraint rendering fixes: wrap check expression in parentheses, foreign key 'references', support expression in all constraint types (#7417, #7480, #7416)
- Fix warning messages for deprecated dbt_project.yml configs (#7424)
- Add
%
to adapter suite test cases forpersist_docs
(#7698) - 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)
Under the Hood
- Fix flaky test for --fail-fast (#7744)
- Create
add_from_artifact
to populatestate_relation
field of nodes (#7551)
Contributors
- @dave-connors-3 (#7738)
- @quazi-irfan (#7533)
- @sdebruyn (#7082)
- @stu-k (#7299, #7551)
dbt-core v1.5.2rc1
dbt-core 1.5.2-rc1 - June 08, 2023
Fixes
- Add --target-path to dbt snapshot command. (#7418)
- Improve warnings for constraints and materialization types (#7335)
- Incorrect paths used for "target" and "state" directories (#7465)
- Using version 0 works when resolving single model (#7372)
- Fix empty --warn-error-options error message (#7730)
- send sql header on contract enforcement (#7714)
Contributors
dbt-core v1.5.1
dbt-core 1.5.1 - May 30, 2023
Fixes
- fix typo in unpacking statically parsed ref (#7364)
- Fix inverted
--print/--no-print
flag (#7517) - Back-compat for previous return type of 'collect_freshness' macro (#7489)
- print model version in dbt show if specified (#7407)
- Allow missing
profiles.yml
fordbt deps
anddbt init
(#7511) - Do not rewrite manifest.json during 'docs serve' command (#7553)
- Pin protobuf to greater than 4.0.0 (#7565)
- Throw error for duplicated versioned and unversioned models (#7487)
- Fix: Relative project paths weren't working with deps (#7491)
- Fall back if rendering the password field fails. (#7629)
- Stringify flag paths for Jinja context (#7495)
Under the Hood
- Remove legacy file logger code (#NA)
Contributors
dbt-core v1.6.0b2
dbt-core 1.6.0-b2 - May 25, 2023
Features
- 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)
Fixes
- 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)
Under the Hood
- 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)
Dependencies
Contributors
dbt-core v1.5.1rc2
dbt-core 1.5.1-rc2 - May 25, 2023
Fixes
- Allow missing
profiles.yml
fordbt deps
anddbt init
(#7511) - Throw error for duplicated versioned and unversioned models (#7487)
- Fix: Relative project paths weren't working with deps (#7491)
- Fall back if rendering the password field fails. (#7629)
- Stringify flag paths for Jinja context (#7495)
Under the Hood
- Remove legacy file logger code (#NA)
Contributors
dbt-core v1.6.0b1
dbt-core 1.6.0-b1 - May 12, 2023
Features
- Skip catalog generation (#6980)
- Publication artifacts and cross-project ref (#7227)
- 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)
Fixes
- 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 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)
- Fix inverted
--print/--no-print
flag (#7517) - Back-compat for previous return type of 'collect_freshness' macro (#7489)
- 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
fordbt deps
anddbt 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)
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)
Contributors
dbt-core v1.5.1rc1
dbt-core 1.5.1-rc1 - May 12, 2023
Fixes
- fix typo in unpacking statically parsed ref (#7364)
- Fix inverted
--print/--no-print
flag (#7517) - Back-compat for previous return type of 'collect_freshness' macro (#7489)
- print model version in dbt show if specified (#7407)
- Do not rewrite manifest.json during 'docs serve' command (#7553)
- Pin protobuf to greater than 4.0.0 (#7565)
Contributors
dbt-core v1.5.0
dbt-core 1.5.0 - Dawn Staley (April 27, 2023)
Breaking Changes
- Allow
--select
and--exclude
multiple times (#7158) - Specifying "log-path" and "target-path" in "dbt_project.yml" is deprecated. This functionality will be removed in a future version of dbt-core. If you need to specify a custom path for logs or artifacts, please set via CLI flag or env var instead. (#6882)
- Remove exception functions marked as deprecated in 1.4 release (#6578)
Features
- Data type constraints are now native to SQL table materializations. Enforce columns are specific data types and not null depending on database functionality. (#6079)
- Have dbt debug spit out structured json logs with flags enabled. (#5353)
- ✨ add unix-style wildcard selector method (#6598)
- add adapter_response to dbt test and freshness result (#2964)
- add support for DBT_PROJECT_DIR env var (#6078)
- Improve error message for packages missing
dbt_project.yml
(#6663) - Make project version optional (#6603)
- Adjust makefile to have clearer instructions for CI env var changes. (#6689)
- Stand-alone Python module for PostgresColumn (#6772)
- Enable diff based partial parsing (#6592)
- Exposure owner requires one of name or email keys, and accepts additional arbitrary keys (#6833)
- Parse 'group' resource (#6921)
- parse 'group' config on groupable nodes (#6823)
- Implemented new log cli parameters for finer-grained control. (#6639)
- Add access attribute to parsed nodes (#6824)
- Enforce contracts on models materialized as tables, views, and incremental (#6751, #7034, #6756, #7154)
- Add ability to select by group resource (#6825)
- Disallow refing private model across groups (#6826)
- make version configs optional (#7054)
- [CT-1584] New top level commands: interactive compile (#6358)
- Make model contracts agnostic to ordering (#6975, #7064)
- Unified constraints and check_constraints properties for columns and models (#7066)
- Switch from betterproto to google protobuf and enable more flexible meta dictionary in logs (#6832)
- Ignore duplicate edges in subgraph to speed up dbt build (#7191)
- Support setting of callbacks for programmatic uses of
dbtRunner
(#6763) - Detect breaking changes to contracts in state:modified check (#6869)
- New command: dbt show (#7207, #7179, #6359)
- Added prettier printing to ContractError class (#7209)
- Add support for model-level constraints (#6754)
- model versions (##7263)
- Add relation info (database, schema, alias) to node_info dictionary in structured logging (#6724)
- Add --no-populate-cache to optionally skip relation cache population (#1751)
- select resources by patch path (#7315)
- Add version selector method (#7199)
Fixes
- Remove trailing slashes from source paths (#6102) (#6102)
- add merge_exclude_columns adapter tests (#6699)
- Include adapter_response in NodeFinished run_result log event (#6703)
- Sort cli vars before hashing for partial parsing (#6710)
- [Regression] exposure_content referenced incorrectly (#6738)
- Snapshot strategies: add a newline for subquery (#6781)
- Remove pin on packaging and stop using it for prerelease comparisons (#6834)
- Readd depends_on.macros to SeedNode, to support seeds with hooks calling macros (#6806)
- Fix regression of --quiet cli parameter behavior (#6749)
- Add double type to list of float column types for the column class (#6876)
- Ensure results from hooks contain nodes when processing them (#6796)
- Always flush stdout after logging (#6901)
- Reapply logging fixes which were accidentally reverted (#6936)
- Set relation_name in test nodes at compile time (#6930)
- Readd initialization events, --log-cache-events in new CLI (#6933)
- Fix previous state tests and disabled exposures, metrics (#6752, #6753)
- Make use of hashlib.md5() FIPS compliant (#6900)
- add timeout for dbt --version command (#6992)
- Fix compilation logic for ephemeral nodes (#6885)
- Fix semver comparison logic by ensuring numeric values (#7039)
- add pytz dependency (#7077)
- allow adapters to change model name resolution in py models (#7114)
- Add exception handling in postflight decorator to address exit codes (#7010)
- Recreates missing tracking events (#6097, #6098)
- Fix partial parsing error due to not requiring "version" (#7236)
- Handle internal exceptions (#7118)
- Improved failed event serialization handling and associated tests (#7113, #7108, #6568)
- Fix handling of artifacts in read_and_check_versions (#7252)
- Stringify datetimes in logging for prettier messages (#7255)
- avoid dbtRunner default callbacks being shared across instances (#7278)
- Ensure same_contract is called for state:modified (#7282)
- Avoid revoking grants for views when
copy_grants=true
(#7280) - Duplicated flags now throw errors instead of being overidden by parent-level flag (#6913)
- Ensure that invocation_id changes between programmatic invocations. (#7197)
- Adding a new column is not a breaking contract change (#7332)
- fix versioned model selection in subdirectories (#7348)
- 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 v0 ref resolution (#7408)
- fix groupable node partial parsing, raise DbtReferenceError at runtime for safety (#7437)
- Fix partial parsing of latest_version changes for downstream references (#7369...
dbt-core v1.5.0rc2
dbt-core 1.5.0-rc2 - April 20, 2023
Fixes
- 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 v0 ref resolution (#7408)