NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #384 most downloaded on PyPI
With dbt, data analysts and engineers can build analytics the way engineers build applications.
Last release 5 days ago
18 Sep 2026
Ships fairly regularly
a new release about every 2 weeks
Nearly every release is documented
notes for 60 of the last 60 stable releases
4 versions withdrawn
withdrawn after publishing
8 years old
370 releases · first in 2019
## dbt-core 1.1.4 - February 28, 2023 ### Fixes - add pytz dependency (#7077) ### Contributors - @sdebruyn
Bug when partial parsing with an empty schema file
One column per quarter.
Define compatibility for older manifest versions when using state: selection methods (#5213, #5346)
Define compatibility for older manifest versions when using state: selection methods (#5213, #5346)
Relax minimum supported version of MarkupSafe (#4745, #5039)
Remove docs file from manifest when removing doc node (#4146, #5270)
Relax minimum supported version of MarkupSafe (#4745, #5039)
There are no breaking changes to code in dbt projects or packages.
There are no breaking changes to code in dbt projects or packages.
Relevant to consumers of dbt metadata:
v5. The only change is to the default value of config for parsed nodes (#5033, #5032)v2. The node_info dictionary has moved underneath data, on events where it is available. Previously, it was a top-level key. (#4505)Relevant to maintainers of adapter plugins:
get_response and execute now only return a connection.AdapterReponse in type hints. (Previously, they could return a string.) We encourage you to update your methods to return an object of class AdapterResponse, or implement a subclass specific to your adapter
(#4499, #4869)set_relations_cache + _relations_cache_for_schemas each take an additional argument, for use with experimental CACHE_SELECTED_ONLY config (#4688, #4860)non_null test so that it only selects all columns if --store-failures is enabled. (#4769, #4777)--cache_selected_only flag to cache schema object of selected models only. (#4688, #4860)--quiet global flag and print Jinja function (#3451, #4701)dbt build --select source_status:fresher+ (#4050, #4256)--no-print global flag (#4710, #4854)dbt init (#4490, #4536)updated_at for check_cols snapshots (#5076, #5077)type: ml (#4984, #4995)Thanks to @glin7 for writing this biography of Gloria Casarez—a famous Philadelphian, and the namesake of this dbt Core release.
Born in Philadelphia in 1971, Gloria Casarez was a force for equality in her hometown.
Under her leadership as Philly's first director of LGBT Affairs between 2008-2014, the city became first in the nation to offer tax credits to companies providing domestic partner and transgender health benefits—the broadest LGBTQ protections in the country at the time.
This topped a lifetime of community organizing that included leading GALAEI (Gay and Lesbian Latino AIDS Initiative), where she launched Philly's first mobile HIV testing centers, and co-chairing the board of Prevention Point (a needle exchange program), as well as years of housing and antipoverty activism.
Casarez was known for her persistence as an activist, and inspired devotion in kind from her community of supporters. When property developers painted over a Philadelphia mural of Casarez in late 2020, a local artist responded by recreating the tribute on a building merely steps away. After the second mural was also torn down, a third—and standing—homage was painted on the GALAEI building in 2021. Philadelphia's City Hall unveiled a historical marker honoring Casarez's legacy in the same year.
Use yaml renderer (with target context) for rendering selectors (#5131, #5136)
Restore ability to utilize updated_at for check_cols snapshots (#5076, #5077)
For adapter plugin maintainers only: Internal adapter methods set_relations_cache + _relations_cache_for_schemas each take an additional argument, for
set_relations_cache + _relations_cache_for_schemas each take an additional argument, for use with experimental CACHE_SELECTED_ONLY config (#4688, #4860)--cache_selected_only flag to cache schema object of selected models only. (#4688, #4860)dbt build --select source_status:fresher+ (#4050, #4256)--no-print global flag (#4710, #4854)type: ml (#4984, #4995)Clean up test deprecation warnings (#3988, #4556)
get_response and execute now only return a connection.AdapterReponse in type hints. (Previously, they could return a string.) We encourage you to update your methods to return an object of class AdapterResponse, or implement a subclass specific to your adapter (#4499, #4869)non_null test so that it only selects all columns if --store-failures is enabled. (#4769, #4777)--quiet global flag and print Jinja function (#3451, #4701)dbt init (#4490, #4536)Bug when partial parsing with an empty schema file
Move string interpolation of "secret" env vars outside of Jinja context. Update "contexts" README (#4796, #5334)
Lowering networkx dependency range due to new version's breaking change (#5254, #5280)
Move package deprecation check outside of package cache (#5068, #5069)
Move package deprecation check outside of package cache (#5068, #5069)
Fix bug causing empty node level meta, snapshot config errors (#4459, #4726)
-s state:modified (#4678, #4820)Release notes
Catch more cases to retry package retrieval for deps pointing to the hub. Also start to cache the package requests. (#4849, #4982)
Fix bug causing empty node level meta, snapshot config errors (#4459, #4726)
-s state:modified (#4678, #4820)This release contains one change, intended to quickly resolve failing installations of dbt-core for some users.
Fix bug accessing target fields in deps and clean commands. This was a net-new bug in v1.0.2 that would affect a fraction of active projects after upg
Release notes
Release notes
This is the final release for v1.0.1 and includes only changes that were introduced in the RC
This is the final release for v1.0.1 and includes only changes that were introduced in the RC
._message value of AdapterResponse or the str value sent by adapter plugin. (#4463)DepsStartPackageInstall event to use package name instead of version number. (#4482)True, False) to numeric values (0, 1) in query results (#4511, #4512)Contributors:
A first release candidate for dbt-core v1.0.1
A first release candidate for dbt-core v1.0.1
._message value of AdapterResponse or the str value sent by adapter plugin. (#4463)DepsStartPackageInstall event to use package name instead of version number. (#4482)True, False) to numeric values (0, 1) in query results (#4511, #4512)Contributors:
This is a breaking change for adapter plugins, requiring a very simple migration. See `events` module README for details.
test_type: selection method accepts test_type:singular and test_type:generic. (It will also accept test_type:schema and test_type:data for backwards compatibility) (#3234, #3880). Not backwards compatible: The --data and --schema flags to dbt test are no longer supported, and tests no longer have the tags 'data' and 'schema' automatically applied.packages arg adapter.dispatch in favor of the macro_namespace arg. (#3895)on-run-start and on-run-end hooks for dbt test. Add flags.WHICH to execution context, representing current task (#3463, #4004)greedy flag/property for test selection with indirect_selection: eager/cautious flag/property. Set to eager by default. Note: This reverts test selection to its pre-v0.20 behavior by default. dbt test -s my_model will select multi-parent tests, such as relationships, that depend on unselected resources. To achieve the behavior change in v0.20 + v0.21, set --indirect-selection=cautious on the CLI or indirect_selection: cautious in yaml selectors. (#4082, #4104)pip install dbt will raise an explicit error. Instead, please use pip install dbt-<adapter> (to use dbt with that database adapter), or pip install dbt-core (for core functionality). For parity with the previous behavior of pip install dbt, you can use: pip install dbt-core dbt-postgres dbt-redshift dbt-snowflake dbt-bigquery (#4100, #4133)global_project (macros) into smaller files with clearer names. Remove unused global macros: column_list, column_list_for_create_table, incremental_upsert (#4154)events module README for details.DBT_ENABLE_LEGACY_LOGGER=True. Be advised that we will remove this capability in a future version of dbt-core.DBT_ENV_SECRET_) to profiles.yml + packages.yml only. Raise an exception if a secret env var is used elsewhere (#4310, #4311)config.get() so that default is second (#4273, #4297)--no-static-parser to disable it. (#3377, #3939)tests block in dbt_project.yml (#3259, #3880generic subfolder in the test-paths directory. (#4052)result:<status> selectors to automatically rerun failed tests and erroneous models. This makes it easier to rerun failed dbt jobs with a simple selector flag instead of restarting from the beginning or manually running the dbt models in scope. (#3859, #4017)dbt init is now interactive, generating profiles.yml when run inside existing project (#3625)--defer flag to dbt snapshot (#4110, #4296)version explicitly references a prerelease version, regardless of install-prerelease status (#4243, #4295)error_after in source freshness (#3874, #3955)metrics nodes (#4071, #4235)dbt init <project_name>, and support for skip_profile_setup argument (dbt init -s) (#4156, #4249)--warn-error and no models are selected (#4006, #4019)error_if test option (#4070)dbt deps is None (#4178, #4225)UnparsedSourceDefinition.__post_serialize__ (#3545, #4349)EVENT_HISTORY configurable, via EVENT_BUFFER_SIZE global config (#4411, #4416)log_format in profiles.yml user config to be string, not boolean (#4394)schema → generic, data → singular. Use test_metadata instead of schema/data tags to differentiate (docs#216, docs#222)metrics (core#216, docs#223)materialization-return and replace deprecation warning with an exception. (#3896)release arg from the execute_macro method. (#3900)dbt-snowflake adapter so it stays False. (#3898)__iter__ and __len__ for all superclasses of FakeAPIObject. (#3897)adapter-macro and replace deprecation warning with an exception. (#3901)schema.yml file. (#3899)redshift, snowflake, and bigquery have moved to separate repos: dbt-redshift, dbt-snowflake, dbt-bigquerydbt_packages from dbt_modules. Also rename module-path to packages-install-path to allow default overrides of package install directory. Deprecation warning added for projects using the old dbt_modules name without specifying a packages-install-path. (#3523)analysis-paths = ['analyses'] and test-paths = ['tests]. Also have starter project set analysis-paths: ['analyses'] from now on. (#2659)sources as an array of arrays of string in the manifest artifacts. (#3966, #3967)source-paths and data-paths as deprecated keys in dbt_project.yml in favor of model-paths and seed-paths respectively.(#1607)stdout when cloning dbt packages from Github. (#3167)render_with_context during parsing, thereby removing misleading log message (#3137, #4062)setup_db.sh. (#3876, #3908)metrics nodes; schema test + data test nodes are renamed to generic test + singular test nodes; freshness threshold default values (#4191)incorporate_indirect_nodes if not needed (#4213, #4214)on_schema_change is set, pass common columns as dest_columns in incremental merge macros (#4144, #4170)lib module config generation (#4218)assertRaisesRegexp to assertRaisesRegex (#4136, #4136)dbt_project.yml config renames (#4276, #4291)WARN-level stdout for list task; include tracking events in dbt.log (#4341)LOG_CACHE_EVENTS is enabled, and disable by default. This restores previous behavior (#4369)data (#4381)clean + deps (#4366)ConcurrencyLine. Replace \n message starts/ends with EmptyLine events, and exclude EmptyLine from JSON-formatted output (#4388)events module README (#4395)dbt.log.legacy (#4402)dbt.log at 10 MB, and keep up to 5 backups, restoring previous behavior (#4405)node_type contextual info to more events (#4378)materialized config optional in node_type (#4417)GenericExceptionOnRun to support JSON serialization (#4424)dbt-extractor to ~=0.4.0, to support compiled wheels for additional architectures when available (#4427)A famous Philadelphian, and the namesake of this dbt Core release
William Edward Burghardt Du Bois was born three years after the U.S. Civil War ended, and he died one day before the March on Washington for Jobs and Freedom. During the 95 intervening years, he studied, wrote, theorized, and agitated for racial equality in the United States.
He was a leader of the Niagara Movement and co-founder of the NAACP. His was the first definitive study of Reconstruction, a critical (and critically misunderstood) period of American history; he laid intellectual groundwork for civil rights movements in the United States, and independence movements around the world.
Du Bois lived in Philadelphia for one crucial year, 1897, during which he completed the first serious sociological study of any Black community anywhere in the United States. This was The Philadelphia Negro, which took aim at the monolithic stereotypes of inner-city Black America. In their place, Du Bois returned a nuanced, complicated portrait of a diverse and struggling community that was rooted in archival research, descriptive statistics, and questionnaires from over 5,000 interviews, which he personally conduced with the help of Isabel Eaton. It was a foundational work for the field of sociology, not least for its reliance on in survey data and statistical methods.
Three years after he left Philadelphia, and three years before he would publish his most famous work, The Souls of Black Folk, Du Bois was a principal contributor to an unprecedented exhibit for the 1900 Paris Exposition. For a display on Black America at the turn of the century, Du Bois curated 500 photographs, plus five dozen data visualizations (!), hand-drawn in full colour by teams of current and former students at HBCUs. Drawing data from the Census, the Bureau of Labor, and their own research, these charts, graphs, and maps told a story of incredible social and economic progress for Black Americans since Emancipation, yet at the same time quantifying the continued legacy of slavery and the failures of Reconstruction. These visualizations were seen by millions of world’s fair attendees in 1900; stored in the Library of Congress for a century; and finally made visible again, thanks to their publication in W. E. B. Du Bois’s Data Portraits: Visualizing Black America (ed. Whitney Battle Baptiste and Britt Rusert, Princeton Architectural Press, 2018).
Du Bois lived a long life, over the course of which he never stopped studying, changing his mind, reexamining his commitments, making uneasy alliances, falling in and out of favour with powerful people. He was a pragmatist, always listening to the data, always refining his theories of change, always staying true to a core vision of equality, justice, and peace.
The return from your work must be the satisfaction which that work brings you and the world’s need of that work. With this, life is heaven, or as near heaven as you can get. - The Autobiography of W. E. B. Du Bois (1968)
A third release candidate for dbt-core v1.0.0. Changes since rc2:
A third release candidate for dbt-core v1.0.0. Changes since rc2:
UnparsedSourceDefinition.__post_serialize__ (#3545, #4349)WARN-level stdout for list task; include tracking events in dbt.log (#4341)Contributors:
Clean up deprecation warnings shown for dbt_project.yml config renames (#4276, #4291)
A second release candidate for dbt-core v1.0.0. Changes since rc1:
DBT_ENV_SECRET_) to profiles.yml + packages.yml only. Raise an exception if a secret env var is used elsewhere (#4310, #4311)config.get() so that default is second (#4273, #4297)--defer flag to dbt snapshot (#4110, #4296)version explicitly references a prerelease version, regardless of install-prerelease status (#4243, #4295)dbt_project.yml config renames (#4276, #4291)This is a breaking change for adapter plugins, requiring a very simple migration. See `events` module README for details.
A first release candidate for dbt-core v1.0.0. Includes everything in b1 + b2, plus:
greedy flag/property for test selection with indirect_selection: eager/cautious flag/property. Set to eager by default. Note: This reverts test selection to its pre-v0.20 behavior by default. dbt test -s my_model will select multi-parent tests, such as relationships, that depend on unselected resources. To achieve the behavior change in v0.20 + v0.21, set --indirect-selection=cautious on the CLI or indirect_selection: cautious in yaml selectors. (#4082, #4104)pip install dbt will raise an explicit error. Instead, please use pip install dbt-<adapter> (to use dbt with that database adapter), or pip install dbt-core (for core functionality). For parity with the previous behavior of pip install dbt, you can use: pip install dbt-core dbt-postgres dbt-redshift dbt-snowflake dbt-bigquery (#4100, #4133)global_project (macros) into smaller files with clearer names. Remove unused global macros: column_list, column_list_for_create_table, incremental_upsert (#4154)events module README for details.DBT_ENABLE_LEGACY_LOGGER=True. Be advised that we will remove this capability in a future version of dbt-core.error_after in source freshness (#3874, #3955)metrics nodes (#4071, #4235)dbt init <project_name>, and support for skip_profile_setup argument (dbt init -s) (#4156, #4249)assertRaisesRegexp to assertRaisesRegex (#4136, #4136)dbt deps is None (#4178, #4225)schema → generic, data → singular. Use test_metadata instead of schema/data tags to differentiate (docs#216, docs#222)metrics (core#216, docs#223)metrics nodes; schema test + data test nodes are renamed to generic test + singular test nodes; freshness threshold default values (#4191)incorporate_indirect_nodes if not needed (#4213, #4214)on_schema_change is set, pass common columns as dest_columns in incremental merge macros (#4144, #4170)lib module config generation (#4218)An second beta release for v1.0.0.
An second beta release for v1.0.0.
on-run-start and on-run-end hooks for dbt test. Add flags.WHICH to execution context, representing current task (#3463, #4004)--no-static-parser to disable it. (#3377, #3939)tests block in dbt_project.yml (#3259, #3880result:<status> selectors to automatically rerun failed tests and erroneous models. This makes it easier to rerun failed dbt jobs with a simple selector flag instead of restarting from the beginning or manually running the dbt models in scope. (#3859, #4017)dbt init is now interactive, generating profiles.yml when run inside existing project (#3625)render_with_context during parsing, thereby removing misleading log message (#3137, #4062)setup_db.sh. (#3876, #3908)Contributors:
Deprecated the use of the packages arg adapter.dispatch in favor of the macro_namespace arg.
An initial beta release for v1.0.0.
test_type: selection method accepts test_type:singular and test_type:generic. (It will also accept test_type:schema and test_type:data for backwards compatibility) (#3234, #3880). Not backwards compatible: The --data and --schema flags to dbt test are no longer supported, and tests no longer have the tags 'data' and 'schema' automatically applied.packages arg adapter.dispatch in favor of the macro_namespace arg. (#3895)--no-static-parser to disable it. (#3377, #3939)tests block in dbt_project.yml (#3259, #3880--warn-error and no models are selected (#4006, #4019)materialization-return and replace deprecation warning with an exception. (#3896)release arg from the execute_macro method. (#3900)dbt-snowflake adapter so it stays False. (#3898)__iter__ and __len__ for all superclasses of FakeAPIObject. (#3897)adapter-macro and replace deprecation warning with an exception. (#3901)schema.yml file. (#3899)redshift, snowflake, and bigquery have moved to separate repos: dbt-redshift, dbt-snowflake, dbt-bigquerydbt_packages from dbt_modules. Also rename module-path to packages-install-path to allow default overrides of package install directory. Deprecation warning added for projects using the old dbt_modules name without specifying a packages-install-path. (#3523)analysis-paths = ['analyses'] and test-paths = ['tests]. Also have starter project set analysis-paths: ['analyses'] from now on. (#2659)sources as an array of arrays of string in the manifest artifacts. (#3966, #3967)Contributors:
Performance: Use child_map to find tests for nodes in resolve_graph (#4012, #4057)
unique_field from abstractproperty to optional property. Add docstring (#4025, #4028)database_schema_set (#4063, #4077)error_if test option (#4070)CommandErrors so they don't get exposed in logs. (#4138)alter_relation_add_remove_columns if only removing columns in on_schema_change: sync_all_columns (#4147)build task only. Restore previous graph construction, compilation performance, and node selection behavior (test+) for all other tasks (#4135, #4143)build (#4158, #4158)google-api-core to version 1.31.3 due to protobuf dependency conflict (#4192)get_where_subquery to test macro namespace, fixing custom generic tests that rely on introspecting the model arg at parse time (#4195, #4197)A second release candidate for v0.21.1.
An initial release candidate for v0.21.1.
An initial release candidate for v0.21.1.
unique_field from abstractproperty to optional property. Add docstring (#4025, #4028)database_schema_set (#4063, #4077)error_if test option (#4070)CommandErrors so they don't get exposed in logs. (#4138)alter_relation_add_remove_columns if only removing columns in on_schema_change: sync_all_columns (#4147)build task only. Restore previous graph construction, compilation performance, and node selection behavior (test+) for all other tasks (#4135, #4143)build (#4158, #4158)google-api-core to version 1.31.3 due to protobuf dependency conflict (#4192)Contributors:
Rename source freshness command, add full node selection, and align selection syntax with other tasks (#2987, #3554)
dbt source snapshot-freshness -> dbt source freshness (backwards compatible)dbt source freshness --select source_name --> dbt source freshness --select source:source_name (not backwards compatible)dbt build command to run models, tests, seeds, and snapshots in DAG order. (#2743, #3490, #3608)
on_schema_change config to detect and handle schema changes on incremental models (#1132, #3387)state:modified. Introduce new state: sub-selectors: modified.body, modified.configs, modified.persisted_descriptions, modified.relation, modified.macros (#2704, #3278, #3559)--models and --select synonyms, except for ls (to preserve existing behavior) (#3210, #3791)ls task JSON output by adding new flag --output-keys (#3778, #3395)selectors.yml to allow user to define default selector (#3448, #3875, #3892)--greedy flag to test, list, build and greedy property in yaml selectors (#3723, #3833)DBT_ENV_SECRET_ from logs and console output (#3440, #3617)sources.json artifact (#3804, #3894)store_failures is not enabled (#3715, #3716)dbt debug shows a summary of whether all checks passed or not (#3831, #3832)typing.Protocol, specifically for dbt.config.profile.Profile (#3843, #3855)get_where_subquery, for tests that use where config. Alias filtering subquery as dbt_subquery instead of resource identifier (#3857, #3859)group by column_name in accepted_values test for compatibility with most database engines (#3905, #3906)state:modified.macros check (#3904, #3957)dbt init into dbt repository, to avoid cloning an external repo (#3005, #3474, #3536)dbt init and adapters. Avoid raising errors while initializing a project (#2814, #3483)create_adapter_plugins script to include latest accessories, and stay up to date with latest dbt-core version (#3002, #3509)%s, to be replaced by dispatching a new macro, get_binding_char(). This enables adapters with parameter marker characters such as ? to not have to override basic_load_csv_rows. (#3622, #3623)adapter_unique_id to invocation context in anonymous usage tracking, to better understand dbt adoption (#3713, #3796)macro_namespace = 'dbt' for all dispatched macros in the global project, making it possible to dispatch to macro implementations defined in packages. Dispatch generate_schema_name and generate_alias_name (#3456, #3851)werkzeug>=1 (#3590)sslcert, sslkey, and sslrootcert profile arguments to the Postgres connector. (#3472, #3473)connect_timeout profile configuration for Postgres and child adapters. (#3581, #3582)autocommit by default. Within dbt materializations, wrap DML statements in explicit begin and commit. Note that it is not recommended to run DML statements outside of dbt materialization logic. If you do this, despite our recommendation, you will need to wrap those statements in explicit begin and commit. Note also that this may affect user-space code that depends on transactions, such as pre-hooks and post-hooks that specify transaction: true or transaction: false. We recommend removing those references to transactions. (#2748, #3480, #3510)copy_materialization='table' if is is not found in global or local config)execution_project on BigQuery through profile configuration (#3707, #3708)target_dataset and target_project in snapshot configs (#3694, #3834)build RPC method, and a subset of flags for build task (#3595, #3674)Thank you all for your contributions to dbt! 🎉
Thanks to @grantwinship for writing this biography of Louis Kahn—a famous Philadelphian, and the namesake of this dbt Core release.
The architecture of Louis Kahn inimitably and improbably unites the forces of mass and light. His often hefty concrete structures embrace weighty, intentional interior spaces, huge shapes and curves, and angled baths of light to create a take on mid-century brutalism that is suffused with a utopian optimism and playfulness.
Born in the Russian Empire, in what is now Estonia, Itze-Leib Schmuilowsky emigrated to Philadelphia in 1906 at age four. He became a US citizen in 1914, and changed his name, along with his family, to Louis Kahn in 1915. A talented artist from a young age, he repeatedly won Philadelphia's annual award for best watercolor by a high school student, but turned down a full scholarship to the Pennsylvania Academy of the Fine Arts to pursue architecture at the University of Pennsylvania.
There he studied a restrained variant of the Beaux-Arts school with Paul Philippe Cret, who influenced the young Kahn greatly in his dedication to grand form and proportion, if not the style's signature ornamentation. Kahn would, after achieving international renown, return to Philadelphia to teach at the University of Pennsylvania from 1957 until his death, becoming the Paul Philippe Cret Professor of Architecture.
First though, he cut his teeth taking public housing projects in Philadelphia, many of which remain unbuilt, but are revered by students of architecture. It was a trip abroad through the Mediterranean in 1950, seeing the ruins and monuments of Egypt and Greece again as an established architect, that drove him to push his personal style further. He returned and built an extension to Yale University's Art Gallery that immediately established him as unique voice in American architecture. He would over the next decade and a half design many other works of genius, chief among them the Salk Institute in La Jolla, California and what many consider to be his masterwork, the Jatiya Sangsad Bhaban government building that serves as the capitol of Bangladesh. Both buildings' balance of massive concrete geometries with the light, space, and environment of their locations create a breathtaking aesthetic that is simultaneously ancient and futuristic. Experiencing either of them, the immense impact that Kahn has had on modern architecture is immediately apparent.
A second release candidate for v0.21.0.
An initial release candidate for v0.21.0.
An initial release candidate for v0.21.0.
copy_materialization='table' if is is not found in global or local config)--output-keys (#3778, #3395)build task when a test fails. (#3597, #3792)selectors.yml to allow user to define default selector (#3448, #3875, #3892)build task to align with other commands (--resource-type, --store-failures) (#3596, #3884)target_dataset and target_project in snapshot configs (#3694, #3834)dbt debug shows a summary of whether all checks passed or not (#3831, #3832)deps task after the list task in the RPC server (#3846, #3848, #3850)typing.Protocol, specifically for dbt.config.profile.Profile (#3843, #3855)get_where_subquery, for tests that use where config. Alias filtering subquery as dbt_subquery instead of resource identifier (#3857, #3859)%s, to be replaced by dispatching a new macro, get_binding_char(). This enables adapters with parameter marker characters such as ? to not have to override basic_load_csv_rows. (#3622, #3623)adapter_unique_id to invocation context in anonymous usage tracking, to better understand dbt adoption (#3713, #3796)macro_namespace = 'dbt' for all dispatched macros in the global project, making it possible to dispatch to macro implementations defined in packages. Dispatch generate_schema_name and generate_alias_name (#3456, #3851)Contributors:
A second beta release for v0.21.0.
A second beta release for v0.21.0.
state:modified. Introduce new state: sub-selectors: modified.body, modified.configs, modified.persisted_descriptions, modified.relation, modified.macros (#2704, #3278, #3559)store_failures is not enabled (#3715, #3716)An initial beta release for v0.21.0.
An initial beta release for v0.21.0.
dbt source freshness --select source_name --> dbt source freshness --select source:souce_name) and rename dbt source snapshot-freshness -> dbt source freshness. (#2987, #3554)autocommit by default. Explicitly specify begin and commit for DML statements in incremental and snapshot materializations. Note that this may affect user-space code that depends on transactions.dbt build command to run models, tests, seeds, and snapshots in DAG order. (#2743, #3490, #3608)on_schema_change config to detect and handle schema changes on incremental models (#1132, #3387)sslcert, sslkey, and sslrootcert profile arguments to the Postgres connector. (#3472, #3473)dbt init into dbt repository, to avoid cloning an external repo (#3005, #3474, #3536)dbt init and adapters. Avoid raising errors while initializing a project (#2814, #3483)create_adapter_plugins script to include latest accessories, and stay up to date with latest dbt-core version (#3002, #3509)werkzeug>=1 (#3590)Contributors:
Fix issue when running the deps task after the list task in the RPC server (#3846, #3848)
deps task after the list task in the RPC server (#3846, #3848)typing.Protocol, specifically for dbt.config.profile.Profile (#3843, #3855)store_failures is not enabled (#3715, #3716)column_name expressions (#3790, #3811)Contributors:
A second release candidate for v0.20.2.
A second release candidate for v0.20.2.
store_failures is not enabled (#3715, #3716)column_name expressions (#3790, #3811)Contributors:
An initial release candidate for v0.20.2.
Adds install-prerelease parameter to hub packages in packages.yml. When set to True, allows prerelease packages to be installed. By default, this para
install-prerelease parameter to hub packages in packages.yml. When set to True, allows prerelease packages to be installed. By default, this parameter is False unless explicitly set to True.store_failures config when defined as a modifier for unique and not_null tests (#3575, #3577)where config with relationships test by refactoring test SQL. Note: The default relationships test now includes CTEs, and may need reimplementing on adapters that don't support CTEs nested inside subqueries. (#3579, #3583)dbt deps version comparison logic which was causing incorrect pre-release package versions to be installed. (#3578, #3609)SchemaParser's render context to render test configs in order to support var() configured at the project level and passed in from the cli (#3564. #3646)dbt needs to re-parse entire project when partial parsing is enabled (#3572, #3652)dbt-snowflake on Apple M1 chips (#3162, #3661)Contributors:
An initial release candidate for v0.20.1.
An initial release candidate for v0.20.1.
install-prerelease parameter to hub packages in packages.yml. When set to True, allows prerelease packages to be installed. By default, this parameter is False unless explicitly set to True.store_failures config when defined as a modifier for unique and not_null tests (#3575, #3577)where config with relationships test by refactoring test SQL. Note: The default relationships test now includes CTEs, and may need reimplementing on adapters that don't support CTEs nested inside subqueries. (#3579, #3583)dbt deps version comparison logic which was causing incorrect pre-release package versions to be installed. (#3578, #3609)SchemaParser's render context to render test configs in order to support var() configured at the project level and passed in from the cli (#3564. #3646)dbt needs to re-parse entire project when partial parsing is enabled (#3572, #3652)dbt-snowflake on Apple M1 chips (#3162, #3661)Contributors:
Add deprecation warning for using packages argument with adapter.dispatch (#3419, #3420)
test_ (#1173, #3261)dbt-postgres → dbt-redshift), adapter.dispatch() will now include parent macro implementations as viable candidates (#2923, #3296)dispatch config. The packages argument to dispatch no longer supports macro calls; there is backwards compatibility for existing packages. The argument will no longer be supported in a future release, instead provide the macro_namespace argument. (#3362, #3363, #3383, #3403)dbt_project.yml (#3252,
#3253, #3257)where, limit, warn_if, error_if, fail_calc (#3258, #3321, #3336)--use-experimental-parser flag (#3307, #3374)subdirectory key to install dbt packages that are not hosted at the root of a Git repository (#275, #3267)tags and meta properties to the exposure resource schema. (#3404, #3405)updated_at config parameter with check strategy snapshots. If not supplied, will use current timestamp (default). (#1844, #3376)require_partition_filter and partition_expiration_days in BigQuery (#1843, #2928)merge_update_columns config to specify columns to update for merge statements in BigQuery and Snowflake (#1862, #3100)query-comment.job-label is set to true (#2483), (#3145)tags on exposures (docs#194, docs#195)_dbt_max_partition declaration and initialization for BigQuery incremental models (#2940, #2976)dataclasses is relaxed to be between >=0.6,<0.9 allowing dbt to cohabit with other libraries which required higher versions. (#3150, #3151)_n alias to same column names in SQL query (#3147, #3158)args.profiles_dir will still be absolute. (#3133, #3176)where (#3458, #3459)persist_docs on Snowflake, while preserving the error-avoidance from #3149 (#3541, #3543)run_results.json even when no nodes are selected (#3313, #3315)packaging dependency (#3312, #3339)packages.yml. (#2999)compiled_path from build_path, and print the former alongside node error messages (#1985, #3327)dbt debug with BigQuery connections (#3314, #3351)dbt run errors caused from receiving non-JSON responses from Snowflake with Oauth (#3350)dbt run errors caused from receiving non-JSON responses from Snowflake with Oauth (#3350snowflake-connector-python and releated dependencies, support Python 3.9 (#2985, #3148)list task via the RPC server (#3311, #3384)unique_id and original_file_path as keys to json responses from the list task (#3356, #3384)ssh-client and update git version (using buster backports) in Docker image (#3337, #3338)packages argument with adapter.dispatch (#3419, #3420)Thank you all for your contributions to dbt! 🎉
Thanks to @amyd123 for writing this biography of Margaret Mead—a famous Philadelphian, and the namesake of this dbt release.
The most striking thing about Margaret Mead is that although she died more than 40 years ago, her interests and advocacy are as relevant as ever - she was a campaigner for reproductive rights, fought against discrmination against LGBT scientists, and for a greater understanding of how racism affects individuals in American society. Her interests as a researcher focused on how we can help adolescent girls navigate the complexities of the modern world - in the 1920s!
Born in Philadelphia to a Quaker family in 1901, Mead became one of the nation’s most public intellectuals, popularizing the field of anthropology, and tirelessly campaigning for various social issues until her death in 1978. Mead began her field work in the 1920s, leading to her first book Coming of Age in Samoa. This began more than two decades of anthropological field work focusing on the lives of families across the preliterate cultures of the Pacific.
One of the major themes of her scholarly work was that gender roles are largely determined by culture, not biology, and as a corollary, that we have the ability as a society to build a culture that allows all people to realize their full potential. Although Mead’s work focused on the Pacific, her interest was squarely on how to use the knowledge gained from anthropology to create a better society in the US. She brought these ideas out of academia and made them more accessible to the public by writing for magazines like Life, Time, Parents Magazine, and Redbook.
In more recent years, Mead’s work has come under fire for being a product of some of the colonialist biases of her time, and based on fieldwork considered less rigorous than current standards dictate. However, Mead’s fundamental contribution remains -- in the 1920s, when Mead began her career, genetic determinism was the scientific consensus in the West. Mead was one of the first researchers to illustrate that many of our beliefs and actions are shaped by culture and our environment, and to use that understanding as a way to challenge ourselves to build the society we want to live in.
A second release candidate for v0.20.0.
A second release candidate for v0.20.0.
Add deprecation warning for using packages argument with adapter.dispatch (#3419, #3420)
An initial release candidate for v0.20.0.
dispatch config. The packages argument to dispatch no longer supports macro calls; there is backwards compatibility for existing packages. The argument will no longer be supported in a future release, instead provide the macro_namespace argument. (#3362, #3363, #3383, #3403)updated_at config parameter with check strategy snapshots. If not supplied, will use current timestamp (default). (#1844, #3376)--use-experimental-parser flag (#3307, #3374)where, limit, warn_if, error_if, fail_calc (#3258, #3321, #3336)run_results.json even when no nodes are selected (#3313, #3315)packaging dependency (#3312, #3339)packages.yml. (#2999)compiled_path from build_path, and print the former alongside node error messages (#1985, #3327)dbt debug with BigQuery connections (#3314, #3351)dbt run errors caused from receiving non-JSON responses from Snowflake with Oauth (#3350list task via the RPC server (#3311, #3384)unique_id and original_file_path as keys to json responses from the list task (#3356, #3384)ssh-client and update git version (using buster backports) in Docker image (#3337, #3338)tags and meta properties to the exposure resource schema. (#3404, #3405)packages argument with adapter.dispatch (#3419, #3420)An initial beta release for v0.20.0.
An initial beta release for v0.20.0.
Fix adapter.dispatch macro resolution when statically extracting macros. Introduce new project-level dispatch config. The packages argument to dispatc
A second release candidate for v0.19.2.
A second release candidate for v0.19.2.
dispatch config. The packages argument to dispatch no longer supports macro calls; there is backwards compatibility for existing packages. The argument will no longer be supported in a future release, instead provide the macro_namespace argument. (#3362, #3363, #3383, #3403)An initial release candidate for v0.19.2.
On BigQuery, fix regressions for insert_overwrite incremental strategy with int64 and timestamp partition columns (#3063, #3095, #3098)
insert_overwrite incremental strategy with int64 and timestamp partition columns (#3063, #3095, #3098)<v2.0 (#3011)agate<1.6.2 to avoid installation errors relating to its new dependency PyICU (#3160, #3161)Contributors:
A second release candidate for v0.19.1.
An initial release candiate for v0.19.1.
An initial release candiate for v0.19.1.
A second beta release of v0.19.1.
A second beta release of v0.19.1.
Removed support for config-version: 1 of dbt_project.yml, which was deprecated in v0.17.0. Use config-version: 2 in all projects and installed package…
Links:
sources.json, run-results.json, manifest.json, and catalog.json has changed:
invocation_id (#2763, #2784); custom environment variables prefixed with DBT_ENV_CUSTOM_ENV_ (#2764, #2785); cli and rpc arguments in the run_results.json (#2510, #2813).injected_sql from manifest nodes, use compiled_sql instead (#2762, #2834)response instead of status, and the adapter method get_status is now get_response (#2747, #2961)config-version: 1 of dbt_project.yml, which was deprecated in v0.17.0. Use config-version: 2 in all projects and installed packages.dbt_project.yml. (#2713, #2735)invalidate_hard_deletes config option). (#249, #2749)--defer flag for dbt test as well (#2701, #2954)re module for regex in jinja templates (#1755, #1755)compiled_sql instead of injected_sql for "Compiled" (docs#146, docs#148)dbt_invocation_id for each BigQuery job to enable performance analysis (#2808, #2809)get_partitions_metadata(table) to return partition metadata for BigQuery partitioned tables (#2552, #2596)--project-dir in dbt clean command (#2840, #2841)get_columns_in_relation macro to push schema filter down to the svv_external_columns view (#2854, #2854)dbt list command always return 0 as exit code (#2886, #2892)materialized for test node configs to test (#2806, #2902)docs blocks in exposure descriptions (#2913, #2920)manifest.json at the same time we save the run_results.json at the end of a run (#2765, #2799)timestamp and check snapshot strategies. ((#2787, #2791)debug_query on the base adapter that will allow plugin authors to create custom debug queries (#2751,#2871)unixodbc-dev package to testing docker image (#2859)cryptography version to >= 3.2 and bump snowflake connector to 2.3.6 (#2896, #2922)hologram version to 0.0.11. Add scripts/dtr.py (#2888,#2889)hologram version to 0.0.12. Add testing support for python3.9 (#2822,#2960)boto3 in dbt-redshift to the upper limit 1.16 to match dbt-redshift and the snowflake-python-connector as of version 2.3.6. (#2931, (#2963))snapshot_check_strategy() to make compatible with other SQL dialects (#3000, #3001)botocore (#3006)exposures in start-of-invocation stdout summary: Found ... (#3007, #3008)docker/Dockerfile for publishing dbt as a docker image (dbt-release#3, #3019)Thank you all for your contributions to dbt! 🎉
Thanks to @amychen1776 for writing this biography of Kiyoshi Kuromiya―a famous Philadelphian, and the namesake of this dbt release.
To boil down all of Kiyoshi Kuromiya's accomplishments to a few sentences would be an act not unlike trying to boil down the Pacific Ocean to mere salt. There will be many remnants missing but you will at least have a glimpse at how he has shaped the world.
Born at a Japanese American internment camp in Wyoming, Kiyoshi's life began in conflict. He would go on to live a life centered around being a voice for the marginalized. His intersectional activism span from racial injustice to LGBTQA rights as well as protesting war. Though not born and raised in West Philadelphia, Kiyoshi became a Philadelphian in 1961 when he started at the University of Pennsylvania. There, he began to explore his multi-faceted identities as well as progress his activism.
One of the ways he attracted attention to his causes was theatrics. He once staged an event on the library steps at Penn, threatening to burn a dog alive. When thousands turn to protest, he flipped the narrative by delivering the message: "Congratulations on your anti-napalm protest. You saved the life of a dog. Now, how about saving the lives of tens of thousands of people in Vietnam?"
Kiyoshi was also one of the few Asian Americans who openly supported the Civil Rights Movement. He was a close confidant to Dr. Martin Luther King Jr, to the point of taking care of his children in the days after King's assassination. As an openly gay delegate to the Black Panther Convention, he played a part in the organization's recognization of the connections between racial injustice and the Gay Rights Movement. He was also a founding member of the Gay Liberation Front - Philadelphia group.
Outside of his involvement in the civil rights movement, Kiyoshi was widely known for his work for the AIDS community. He was actively involved in several AIDS organizations in Philadelphia, including being the editor of the ACT-UP Standard of Care, the first such publication for the care of people living with HIV. He was a treatment activist and clinical trials participant, fighting for research that involved the community in its design. His advocacy for people of color, drug users, women, and incarcerated individuals would ensure hundreds of folks had access to up-to-date treatment information and resources.
He passed away in 2000 due to AIDS-related complications but his legacy to social justice will forever live on. ✊🏿
Nothing published for this version
An initial release of 0.19.0rc2
An initial release of 0.19.0rc2
Your coding agent can read these notes before it upgrades. Set up the MCP server →