You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Adapters should be plugins, installed separately from dbt, and it should be possible for "userspace" to define new adapters.
Feature description
Currently, dbt users who want to support a new adapter type would have to fork dbt, refactor around a number of embedded assumptions about adapters, connection contracts, etc, and maintain that fork. Instead, we should provide a common adapter base class, and define a coherent way for plugins to register themselves as dbt adapters. Plugged-in adapters should be first class, and in fact as part of this we should move all existing adapters into separate packages that dbt can optionally depend upon.
For namespacing, Flask has a nice model here that would leverage with some tweaking and some additions around automatically importing relevant plugins if available.
This is a very big task, and will immediately break all integration tests horribly...
Feature
Adapters should be plugins, installed separately from dbt, and it should be possible for "userspace" to define new adapters.
Feature description
Currently, dbt users who want to support a new adapter type would have to fork dbt, refactor around a number of embedded assumptions about adapters, connection contracts, etc, and maintain that fork. Instead, we should provide a common adapter base class, and define a coherent way for plugins to register themselves as dbt adapters. Plugged-in adapters should be first class, and in fact as part of this we should move all existing adapters into separate packages that dbt can optionally depend upon.
For namespacing, Flask has a nice model here that would leverage with some tweaking and some additions around automatically importing relevant plugins if available.
This is a very big task, and will immediately break all integration tests horribly...
Depends on #960, #961, #962, #963, #965, #953 - maybe more?
Who will this benefit?
Everyone who uses or develops dbt.
The text was updated successfully, but these errors were encountered: