dbt-core 1.3.0-rc1 - September 28, 2022
Breaking Changes
Features
- merge_exclude_columns for incremental materialization (#5260, #5457)
- Search current working directory for
profiles.yml
(#5411, #5717) - Adding the
window
parameter to the metric spec. (#5721, #5722) - Add invocation args dict to ProviderContext class (#5524, #5782)
- Adds new cli framework (#5526, #5647)
- Flags work with new Click CLI (#5529, #5790)
- Add metadata env method to ProviderContext class (#5522, #5794)
- Array macros (#5520, #5823)
- Add enabled config to exposures and metrics (#5422, #5815)
- add -fr flag shorthand (#5878, #5879)
- add type_boolean as a data type macro (#5739, #5875)
- Support .dbtignore in project root to ignore certain files being read by dbt (#5733, #5897)
- This conditionally no-ops warehouse connection at compile depending on an env var, disabling introspection/queries during compilation only. This is a temporary solution to more complex permissions requirements for the semantic layer. (#5936, #5926)
Fixes
- Fix typos of comments in core/dbt/adapters/ (#5690, #5693)
- Include py.typed in MANIFEST.in. This enables packages that install dbt-core from pypi to use mypy. (#5703, #5703)
- Removal of all .coverage files when using make clean command (#5633, #5759)
- Remove temp files generated by unit tests (#5631, #5749)
- Fix warnings as errors during tests (#5424, #5800)
- Prevent event_history from holding references (#5848, #5858)
- ConfigSelectorMethod should check for bools (#5890, #5889)
- shorthand for full refresh should be one character (#5878, #5908)
- Fix macro resolution order during static analysis for custom generic tests (#5720, #5907)
- Fix race condition when invoking dbt via lib.py concurrently (#5919, #5921)
Docs
- Refer to exposures by their label by default. (dbt-docs/#306, dbt-docs/#307)
Under the Hood
- Migrate integration test 014 but also fix the snapshot hard delete test's timezone logic and force all integration tests to run flags.set_from_args to force environment variables are accessible to all integration test threads. (#5760, #5760)
- Support dbt-metrics compilation by rebuilding flat_graph (#5525, #5786)
- Reworking the way we define the window attribute of metrics to match freshness tests (#5722, #5793)
- Add PythonJobHelper base class in core and add more type checking (#5802, #5802)
- The link did not go to the anchor directly, now it does (#5813, #5814)
- remove key as reserved keyword from test_bool_or (#5817, #5818)
- Convert default selector tests to pytest (#5728, #5820)
- Compatibiltiy for metric attribute renaming (#5807, #5825)
- remove source quoting setting in adapter tests (#5836, #5839)
- Add name validation for metrics (#5456, #5841)
- Validate exposure name and add label (#5606, #5844)
- Adding validation for metric expression attribute (#5871, #5873)
- Profiling and Adapter Management work with Click CLI (#5531, #5892)
- Reparse references to deleted metric (#5444, #5920)
Dependency
- Bump black from 22.6.0 to 22.8.0 (#4904, #5750)
- Bump python from 3.10.6-slim-bullseye to 3.10.7-slim-bullseye in /docker (#4904, #5805)
Contributors
- @bbroeksema (#5749)
- @callum-mcdata (#5775, #5722, #5793, #5825, #5873)
- @danielcmessias (#5889)
- @dave-connors-3 (#5457, #5879, #5908)
- @dbeatty10 (#5717, #5823)
- @drewbanin (#5921)
- @graciegoheen (#5823)
- @jared-rimmer (#5782, #5794, #5759)
- @jpmmcneill (#5875)
- @panasenco (#5703)
- @racheldaniel (#5926)
- @sdebruyn (#5814, #5818, #5839)
- @yoiki (#5693)