-
Notifications
You must be signed in to change notification settings - Fork 455
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
implement dbt-utils macros for dbt-materialize adapter #5446
Comments
@JLDLaughlin Fair question, and sorry for the delayed response! I'll share some rationale in favor of keeping separate, which animate our own ongoing decision to keep Release cadence: You may want to add, update, and release utility macros separate from Ease of contributing: Related to the above, we try to ensure that contributing to Namespacing: These macros should be in a different project namespace ( vars:
dbt_utils_dispatch_list: ['materialize_dbt_utils'] If these macros shipped inside vars:
dbt_utils_dispatch_list: ['dbt'] That looks a bit weird to my eyes, and it feels a bit circular. We think of the inheritance order as Ultimately, after we have more qualitative data about how folks are using and understanding Organization: The best way to distribute dbt adapter plugins is via PyPi; the best way to distribute dbt packages is via hub.getdbt.com, since that enables users to install it with specified version ranges and, in the event of overlapping dependencies, I see and totally respect that Materialize errs toward using well-organized monorepos vs. many-repos—at least, in the sense of having docs, demos, and the core product cohabitate in this repo! It would be totally possible to squish the |
Thanks very much for the detailed response @jtcohen6. I think we ought to keep them separate for now, then, so we can get the utilities into dbt hub. |
We're in dbt hub now, and the next release of materialize-dbt-utils will include support for almost all of the utility functions. I filed MaterializeInc/materialize-dbt-utils#7 to track the remainder. |
More details available here: MaterializeInc/dbt-materialize#2
dbt-utils
contains utility macros to be used and reused across dbt projects. Contributed adapters (like Materialize's) have their own[adapter]-utils
packages. We have started implementing utility macros inmaterialize-dbt-utils
, but support is incomplete. We should implement the rest of the macros, where possible. Some macros (likecurrent_timestamp()
) will not be able to be used with Materialize.The text was updated successfully, but these errors were encountered: