Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature] Allow node level dependency deprecation warnings #10834

Open
3 tasks done
Tracked by #10125
jeremyyeo opened this issue Oct 8, 2024 · 2 comments
Open
3 tasks done
Tracked by #10125

[Feature] Allow node level dependency deprecation warnings #10834

jeremyyeo opened this issue Oct 8, 2024 · 2 comments
Assignees
Labels
enhancement New feature or request model_versions paper_cut A small change that impacts lots of users in their day-to-day
Milestone

Comments

@jeremyyeo
Copy link
Contributor

Is this your first time submitting a feature request?

  • I have read the expectations for open source contributors
  • I have searched the existing issues, and I could not find an existing issue for this feature
  • I am requesting a straightforward extension of existing dbt functionality, rather than a Big Idea better suited to a discussion

Describe the feature

At the moment, the deprecation_date warnings only show up at the "project level" - so at the initial compilation phase... this means that users who ignore that-top-bit will be unaware that a model is ref-ing a model that has already been deprecated - especially true in dbt Cloud:

image

If the system logs are minimized (which it is by default) - then you wouldn't be able to tell at all:

image

There is a current bug where this "bar depends on deprecated foo" warning is gone from versionless (#10833), so I've reverted back to 1.7 to record the above screenshots.

Describe alternatives you've considered

Turn the warning into an error - not ideal as this would break users runs. The idea is just to provide a node level warning so that it is more obvious that it is now during development.

Who will this benefit?

Users who want a more obvious "soft error" (warning) that their models are using deprecated models.

Are you interested in contributing this feature?

No response

Anything else?

No response

@jeremyyeo jeremyyeo added enhancement New feature or request triage labels Oct 8, 2024
@graciegoheen graciegoheen added paper_cut A small change that impacts lots of users in their day-to-day and removed triage labels Nov 13, 2024
@graciegoheen graciegoheen added this to the v1.10 milestone Nov 19, 2024
@gshank
Copy link
Contributor

gshank commented Dec 2, 2024

See also #10323, and #10461.

@AnotherGuitar
Copy link

I was asked to provide clarity on the business justification:

As a company we have lots of developers committing to our dbt project. Therefore, we often see that developers pay attention mostly to just the errors and warnings that are impacting the runs of their specified tables/tests/dbt artifacts/etc. By throwing an error on the node that invokes a deprecated model, we can guarantee that the developer can clearly and easily see the failing dependency and minimize the odds of them getting any further in their development lifecycle.

Surfacing these errors in dev is very useful because we can minimize the amount of wasted effort taken by developers. Otherwise, we rely on our CI suite to catch the errors, which means a developer has likely already committed a bunch of changes. Catching errors in CI is more expensive than catching them in dev, both in terms of developer time as well as warehouse compute.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request model_versions paper_cut A small change that impacts lots of users in their day-to-day
Projects
None yet
Development

No branches or pull requests

5 participants