dbt includes built-in support for model versioning and controlled deprecation. When you introduce a new version of a model, dbt will only warn about the old version being removed if the old version explicitly includes a deprecation_date configuration. This parameter signals to dbt that the model is scheduled for removal after a certain date, allowing dbt to produce structured warnings to users and downstream systems. These warnings serve as a formal notice that the old version should no longer be referenced and will eventually be removed.
Option A, simply creating a new version, does not trigger warnings by itself. dbt allows multiple versions to coexist without any deprecation messaging unless you explicitly configure it. Option C (enabled: false) disables the model entirely, which is not a graceful deprecation strategy and does not result in version-removal warnings. Option D (adding “deprecated” in the description) is only informational text and has no functional effect on dbt’s deprecation system.
Thus, only B—setting deprecation_date on the old version—activates dbt’s official deprecation warning mechanism, making it the correct answer.
Contribute your Thoughts:
Chosen Answer:
This is a voting comment (?). You can switch to a simple comment. It is better to Upvote an existing comment if you don't have anything to add.
Submit