Releases: dbt-labs/dbt-core
Releases · dbt-labs/dbt-core
dbt-core v1.2.3
dbt-core v1.3.0
dbt-core 1.3.0 - Edgar Allan Poe (October 12, 2022)
Breaking Changes
Features
- Add
--defer
flag to dbt compile & dbt docs generate (#4110, #4514) - Python model inital version (#5261, #5421)
- allows user to include the file extension for .py models in the dbt run -m command. (#5289, #5295)
- Incremental materialization refactor and cleanup (#5245, #5359)
- Python models can support incremental logic (#0, #35)
- Add reusable function for retrying adapter connections. Utilize said function to add retries for Postgres (and Redshift). (#5022, #5432)
- merge_exclude_columns for incremental materialization (#5260, #5457)
- add exponential backoff to connection retries on Postgres (and Redshift) (#5502, #5503)
- use MethodName.File when value ends with .csv (#5578, #5581)
- Make
docs
configurable indbt_project.yml
and add anode_color
attribute to change the color of nodes in the DAG (#5333, #5397) - Adding ResolvedMetricReference helper functions and tests (#5567, #5607)
- Check dbt-core version requirements when installing Hub packages (#5648, #5651)
- 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)
- Migrate dbt-utils current_timestamp macros into core + adapters (#5521, #5838)
- 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
- Remove the default 256 characters limit on postgres character varying type when no limitation is set (#5238, #5292)
- Include schema file config in unrendered_config (#5338, #5344)
- Add context to compilation errors generated while rendering generic test configuration values. (#5294, #5393)
- Resolves #5351 - Do not consider shorter varchar cols as schema changes (#5351, #5395)
- Rename try to strict for more intuitiveness (#5475, #5477)
- on_shchma_change fail verbosity enhancement (#5504, #5505)
- Ignore empty strings passed in as secrets (#5312, #5518)
- Fix handling of top-level exceptions (#5564, #5560)
- Fix error rendering docs block in metrics description (#5585, #5603)
- Extended validations for the project names (#5379, #5620)
- Use sys.exit instead of exit (#5621, #5627)
- Finishing logic upgrade to Redshift for name truncation collisions. (#5586, #5656)
- multiple args for ref and source (#5634, #5635)
- Fix Unexpected behavior when chaining methods on dbt-ref'ed/sourced dataframes (#5646, #5677)
- 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)
- Account for disabled flags on models in schema files more completely (#3992, #5868)
- 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)
- check length of args of python model function before accessing it (#6041, #6042)
Docs
- Update dependency inline-source from ^6.1.5 to ^7.2.0 (dbt-docs/#299, dbt-docs/#291)
- Update dependency jest from ^26.2.2 to ^28.1.3 (dbt-docs/#299, dbt-docs/#291)
- Update dependency underscore from ^1.9.0 to ^1.13.4 (dbt-docs/#299, dbt-docs/#291)
- Update dependency webp...
dbt-core v1.3.0rc2
dbt-core v1.2.2
dbt-core v1.3.0rc1
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)
dbt-core v1.3.0b2
dbt-core 1.3.0-b2 - August 29, 2022
Features
- Add
--defer
flag to dbt compile & dbt docs generate (#4110, #4514) - use MethodName.File when value ends with .csv (#5578, #5581)
- Make
docs
configurable indbt_project.yml
and add anode_color
attribute to change the color of nodes in the DAG (#5333, #5397) - Adding ResolvedMetricReference helper functions and tests (#5567, #5607)
- Check dbt-core version requirements when installing Hub packages (#5648, #5651)
Fixes
- Remove the default 256 characters limit on postgres character varying type when no limitation is set (#5238, #5292)
- Include schema file config in unrendered_config (#5338, #5344)
- Resolves #5351 - Do not consider shorter varchar cols as schema changes (#5351, #5395)
- on_shchma_change fail verbosity enhancement (#5504, #5505)
- Fix error rendering docs block in metrics description (#5585, #5603)
- Extended validations for the project names (#5379, #5620)
- Use sys.exit instead of exit (#5621, #5627)
- Finishing logic upgrade to Redshift for name truncation collisions. (#5586, #5656)
- multiple args for ref and source (#5634, #5635)
- Fix Unexpected behavior when chaining methods on dbt-ref'ed/sourced dataframes (#5646, #5677)
Docs
- Leverages
docs.node_color
fromdbt-core
to color nodes in the DAG (dbt-docs/#44, dbt-docs/#281)
Under the Hood
- Save use of default env vars to manifest to enable partial parsing in those cases. (#5155, #5589)
- add more information to log line interop test failures (#5658, #5659)
- Add supported languages to materializations (#5569, #5695)
Dependency
- Bump python from 3.10.5-slim-bullseye to 3.10.6-slim-bullseye in /docker (#4904, #5623)
- Bump mashumaro[msgpack] from 3.0.3 to 3.0.4 in /core (#4904, #5649)
Contributors
dbt-core v1.2.1
dbt-core v1.2.1rc2
dbt-core v1.2.1rc1
dbt-core v1.3.0b1
dbt-core 1.3.0-b1 - July 29, 2022
Features
- Python model inital version (#5261, #5421)
- allows user to include the file extension for .py models in the dbt run -m command. (#5289, #5295)
- Incremental materialization refactor and cleanup (#5245, #5359)
- Python models can support incremental logic (#0, #35)
- Add reusable function for retrying adapter connections. Utilize said function to add retries for Postgres (and Redshift). (#5022, #5432)
- add exponential backoff to connection retries on Postgres (and Redshift) (#5502, #5503)
Fixes
- Add context to compilation errors generated while rendering generic test configuration values. (#5294, #5393)
- Rename try to strict for more intuitiveness (#5475, #5477)
- Ignore empty strings passed in as secrets (#5312, #5518)
- Fix handling of top-level exceptions (#5564, #5560)
Docs
- Update dependency inline-source from ^6.1.5 to ^7.2.0 (#5574, #5577)
- Update dependency jest from ^26.2.2 to ^28.1.3 (#5574, #5577)
- Update dependency underscore from ^1.9.0 to ^1.13.4 (#5574, #5577)
- Update dependency webpack-cli from ^3.3.12 to ^4.7.0 (#5574, #5577)
- Update dependency webpack-dev-server from ^3.1.11 to ^4.9.3 (#5574, #5577)
- Searches no longer require perfect matches, and instead consider each word individually.
my model
ormodel my
will now findmy_model
, without the need for underscores (#5574, #5577) - Support the renaming of SQL to code happening in dbt-core (#5574, #5577)
Under the Hood
- Added language to tracked fields in run_model event (#5571, #5469)
- Update mashumaro to 3.0.3 (#4940, #5118)
- Add python incremental materialization test (#0000, #5571)
Dependencies
- Upgrade to Jinja2==3.1.2 from Jinja2==2.11.3 (#4748, #5465)
- Bump mypy from 0.961 to 0.971 (#4904, #5495)
- Remove pin for MarkUpSafe from >=0.23,<2.1 (#5506, #5507)