shobia
11/19/2025, 10:21 AMrequire_explicit_package_overrides_for_builtin_materializations=False to dbt-project.yml. This is no longer required!.
Instead, please add a file named elementary_materialization.sql to your macros folder, with the following contents -
If you use Snowflake:
Copy
Ask AI
{% materialization test, adapter='snowflake' %}
{{ return(elementary.materialization_test_snowflake()) }}
{% endmaterialization %}
If you use any other DWH:
Copy
Ask AI
{% materialization test, default %}
{{ return(elementary.materialization_test_default()) }}
{% endmaterialization %}
This will ensure Elementary’s test materialization is run but will avoid the warning.
i created macro and set the falg to true in dbt_project.yml
now how do i map this macro or make dbt test to see that i actually defined here , so warning message can be avoided
@kapa.aikapa.ai
11/19/2025, 10:21 AMkapa.ai
11/19/2025, 10:22 AMtest materialization macro. Based on the docs and threads, there are two key requirements: 1. Macro file location and name - The macro must live under your project’s macros/ directory (not inside the Elementary package), e.g.: - macros/elementary_materialization.sql - The contents should be exactly one of: Snowflake: sql {% materialization test, adapter='snowflake' %} {{ return(elementary.materialization_test_snowflake()) }} {% endmaterialization %} Other warehouses: sql {% materialization test, default %} {{ return(elementary.materialization_test_default()) }} {% endmaterialization %} This is how you tell dbt “when you materialize a test, use Elementary’s macro implementation from my project instead of from the package,” which avoids the “installed package is overriding” warning. [[Install package](https://docs.elementary-data.com/oss/quickstart/quickstart-cli-package#step-by-step%3A-install-elementary-dbt-package)] 2. Remove the legacy flag - You should remove (or set back to dbt’s default) the flag you had previously set: yaml flags: require_explicit_package_overrides_for_builtin_materializations: true # or remove entirely The new recommended approach is: - Do not rely on require_explicit_package_overrides_for_builtin_materializations: false. - Instead, define the test materialization macro in your project as above, which counts as an explicit override and removes the warning. [[Install package](https://docs.elementary-data.com/oss/quickstart/quickstart-cli-package#step-by-step%3A-install-elementary-dbt-package)] 3. How dbt “sees” the macro (mapping) dbt automatically picks the test materialization macro by name and adapter: - Name: materialization test, … - Namespace: your project’s macros override package macros with the same signature. - No extra “mapping” is needed beyond placing the macro in macros/ and re-running dbt (a full parse). To confirm it’s picked up: - Run dbt --debug test -s some_test and ensure no “Installed package 'elementary' is overriding…” warning appears. - If you still see the warning: - Verify the macro file is in your root project macros/ directory. - Ensure there are no typos in adapter='snowflake' / default. - Remove any remaining require_explicit_package_overrides_for_builtin_materializations: false in dbt_project.yml, as that path is what triggers the original warning in newer dbt versions. [[Warning override](https://slack.com/archives/C02CTC89LAX/p1715016357916139); [Materialization override](https://slack.com/archives/C02CTC89LAX/p1722858974369239)] If you share your exact dbt_project.yml (redacted) and where you placed elementary_materialization.sql, I can help pinpoint why dbt might still be issuing the warning.