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

Remove installed (third-party) packages from search order for materialization macros #10007

Closed
1 task done
MichelleArk opened this issue Apr 22, 2024 · 3 comments · Fixed by #9956
Closed
1 task done
Assignees
Labels
user docs [docs.getdbt.com] Needs better documentation
Milestone

Comments

@MichelleArk
Copy link
Contributor

Housekeeping

  • I am a maintainer of dbt-core

Short description

Materializations defined in third-party packages are included in the search order for materialization macros. This is difficult to detect, difficult to prevent, and it works differently from other macros.

We should remove third-party packages from the search order.

This change needs to go behind a behavior-change flag:Legacy behaviors | dbt Developer Hub . See Feature/source freshness hooks by MichelleArk · Pull Request #9366 · dbt-labs/dbt-core for an implementation of a behavior-change flag.

Acceptance criteria

Materializations defined in packages are not used. Only materializations defined in the root project or dbt namespace (dbt adapters) appear in the search order.

Suggested Tests

tests for adapter & root overrides of built-in materializations with the legacy flag set to True/False

Impact to Other Teams

N/A

Will backports be required?

1.6, 1.7

Context

No response

@MichelleArk MichelleArk added the user docs [docs.getdbt.com] Needs better documentation label Apr 22, 2024
@MichelleArk MichelleArk added this to the v1.8 milestone Apr 22, 2024
@MichelleArk MichelleArk self-assigned this Apr 22, 2024
@FishtownBuildBot
Copy link
Collaborator

Opened a new issue in dbt-labs/docs.getdbt.com: dbt-labs/docs.getdbt.com#5334

@haritamar
Copy link
Contributor

@jtcohen6 @MichelleArk - to clarify, will the require_explicit_package_overrides_for_builtin_materializations keep being available in future versions, or do you intend to deprecate it as well?

@jtcohen6
Copy link
Contributor

jtcohen6 commented May 5, 2024

@haritamar We don't have any immediate plans to remove that flag. If we did, the very earliest possible would be in v1.10 (2025).

For the foreseeable future, and certainly in v1.8, users will continue to be able to set the flag to False. If they set it to False, they will continue to see the deprecation warnings, however. It's not intended to be a long-term resolution, just a migration path that decouples the behavior change from the dbt-core version they're using.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
user docs [docs.getdbt.com] Needs better documentation
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants