dbt-labs / dbt-labs/dbt

[CT-27] [Feature] invalidate the packages folder when packages.yml changes

Open
#4,557 17 comments 0 reactions 0 assignees View on GitHub
deps engine:v1 packages type:feature
Dominant language
Rust
Stars
13.8k
Forks
2.6k
Avg merge
21h 31m
Merged PRs (30d)
56

Description

### Is there an existing feature request for this?

- [X] I have searched the existing issues

### Describe the Feature

A frequent issue for both Cloud and Core users is that when you update your packages.yml file, if you don't remember to run `dbt deps` you will stay stuck on the old version.

In the last couple of days I've seen a couple of cases of this ([1](https://getdbt.slack.com/archives/CBSQTAPLG/p1641535402101800), [2](https://getdbt.slack.com/archives/CMZ2V0X8V/p1641332532034400?thread_ts=1641332093.032600&cid=CMZ2V0X8V)) in the rollout of utils 0.8.0.

What I'd like to see is something similar to partial parsing being invalidated when dbt_project.yml changes. When you change your packages.yml, if you don't run deps before your next dbt invocation, it should either fail with a clear warning (sort of like what it does when the number of packages listed in the file doesn’t match the number of directories installed), or even classier, run deps for you first.

### Describe alternatives you've considered

Nothing?

### Who will this benefit?

Pretty much everyone who uses packages has been bitten by this at some time or other.

### Are you interested in contributing this feature?

maybe! Depends on how big a lift it'd be

### Anything else?

_No response_

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.