Releases: fivetran/dbt_klaviyo
v0.8.0 dbt_klaviyo
PR #41 includes the following updates:
Breaking Changes (Full refresh required after upgrading)
- Removed the
partition_by
logic from incremental models running on BigQuery. This change affects only BigQuery warehouses and resolves thetoo many partitions
error that some users encountered. The partitioning was also deemed unnecessary for the mentioned models and their downstream references, offering no performance benefit. By removing it, we eliminate both the error risk and an unneeded configuration. This change applies to the following models:int_klaviyo__event_attribution
klaviyo__events
Under the Hood
- Added consistency and integrity validation tests for the
klaviyo__events
model. - Cleaned up unnecessary variable configuration within the
integration_tests/dbt_project.yml
file.
Full Changelog: v0.7.2...v0.8.0
v0.7.2 dbt_klaviyo
PR #38 includes the following updates:
Bug Fixes
- Removes
not_null
tests forperson_id
fromint_klaviyo__person_metrics
andklaviyo__person_campaign_flow
. This is because Klaviyo can record events with deactivated profiles, resulting in nullperson_id
s. Therefore models built off of tables with event-based grains may have nullperson_id
s.
Full Changelog: v0.7.1...v0.7.2
v0.7.1 dbt_klaviyo
Dependency Updates
PR #33 includes the following updates:
- Corrected the package to reference the proper upstream
dbt_klaviyo_source
package dependency.
Under the Hood:
PR #34 includes the following updates:
- For Databricks compatibility, added the Catalog variable and updated the range to >=1.6.0,<2.0.0 in order to pass in integration testing.
Full Changelog: v0.7.0...v0.7.1
v0.7.0 dbt_klaviyo
🚨 Breaking Changes 🚨:
PR #30 includes updates regarding the September 2023 changes to the Klaviyo connector.
- We have removed and added respective fields following the new schema in the Klaviyo connector. In addition, we have removed the deprecated
integration
table and have instead passed the integration columns throughmetric
. For more information, refer to the source Klaviyo package, where most of these changes took place.
Full Changelog: v0.6.0...v0.7.0
v0.6.0 dbt_klaviyo
🚨 Breaking Changes 🚨:
- We recommend running
dbt run --full-refresh
after upgrading to this version due to casting changes in the source package affecting incremental models.
Bug Fixes
PR #29 includes the following breaking changes:
- IDs in the upstream source package are now cast using
{{ dbt.type_string() }}
to prevent potential datatype conflicts. - Upstream
_fivetran_synced
is now cast using{{ dbt.type_timestamp() }}
to prevent downstream datatype errors.
Under the Hood:
PR #26 includes the following updates:
- Incorporated the new
fivetran_utils.drop_schemas_automation
macro into the end of each Buildkite integration test job. - Updated the pull request templates.
Full Changelog: v0.5.0...v0.6.0
dbt_klaviyo v0.5.0
🚨 Breaking Changes 🚨:
PR #23 includes the following breaking changes:
- Dispatch update for dbt-utils to dbt-core cross-db macros migration. Specifically
{{ dbt_utils.<macro> }}
have been updated to{{ dbt.<macro> }}
for the below macros:any_value
bool_or
cast_bool_to_text
concat
date_trunc
dateadd
datediff
escape_single_quotes
except
hash
intersect
last_day
length
listagg
position
replace
right
safe_cast
split_part
string_literal
type_bigint
type_float
type_int
type_numeric
type_string
type_timestamp
array_append
array_concat
array_construct
- For
current_timestamp
andcurrent_timestamp_in_utc
macros, the dispatch AND the macro names have been updated to the below, respectively:dbt.current_timestamp_backcompat
dbt.current_timestamp_in_utc_backcompat
dbt_utils.surrogate_key
has also been updated todbt_utils.generate_surrogate_key
. Since the method for creating surrogate keys differ, we suggest all users do afull-refresh
for the most accurate data. For more information, please refer to dbt-utils release notes for this update.- Dependencies on
fivetran/fivetran_utils
have been upgraded, previously[">=0.3.0", "<0.4.0"]
now[">=0.4.0", "<0.5.0"]
.
dbt_klaviyo v0.4.2
Under the Hood
- Ensures that the incremental strategy used by Postgres and Redshift adapters in the
klaviyo__events
andint_klaviyo__event_attribution
models isdelete+insert
(#9). Newer versions of dbt introduced an error message if the provided incremental strategy is notappend
ordelete+insert
for these adapters.
dbt_klaviyo 0.4.1
Happy Tuesday 🌮
This release of the dbt_klaviyo
package includes the following updates:
Bug Fixes
- Incorporate the
try_cast
macro from fivetran_utils to ensure that thenumeric_value
field inklaviyo__person_campaign_flow
is the same data type as '0'. Issue #17
dbt_klaviyo 0.4.0
🎉 dbt v1.0.0 Compatibility 🎉
🚨 Breaking Changes 🚨
- Adjusts the
require-dbt-version
to now be within the range [">=1.0.0", "<2.0.0"]. Additionally, the package has been updated for dbt v1.0.0 compatibility. If you are using a dbt version <1.0.0, you will need to upgrade in order to leverage the latest version of the package.- For help upgrading your package, I recommend reviewing this GitHub repo's Release Notes on what changes have been implemented since your last upgrade.
- For help upgrading your dbt project to dbt v1.0.0, I recommend reviewing dbt-labs upgrading to 1.0.0 docs for more details on what changes must be made.
- Upgrades the package dependency to refer to the latest
dbt_klaviyo_source
. Additionally, the latestdbt_klaviyo_source
package has a dependency on the latestdbt_fivetran_utils
. Further, the latestdbt_fivetran_utils
package also has a dependency ondbt_utils
[">=0.8.0", "<0.9.0"].- Please note, if you are installing a version of
dbt_utils
in yourpackages.yml
that is not in the range above then you will encounter a package dependency error.
- Please note, if you are installing a version of
- Accommodating the breaking change within the dbt_klaviyo_source package for the name change of the
union_schemas/datbases
variables to beklaviyo_union_schemas/databases
.
Bug Fixes
- Leverage the
unique_event_id
surrogate key from thestg_klaviyo__events
model within the incremental logic ofint_klaviyo__event_attribution
andklaviyo__events
to better account for the uniqueness of events across different connectors.
dbt_klaviyo 0.3.0
Happy Tuesday! This 0.3.0 release of the dbt_klaviyo package contains the below changes. Refer to the CHANGELOG for additional information on the below changes.
Features
- Allow for multiple sources by unioning source tables across multiple Klaviyo connectors.
(#11 & #12)- Refer to the README for more details.
Bug Fixes
- Correct README in pointing out that the
klaviyo__eligible_attribution_events
variable is case-SENSITIVE and must be in all lowercase.
Under the Hood
- Unioning: The unioning occurs in the staging tmp models using the
fivetran_utils.union_data
macro. (#8) - Unique tests: Because columns that were previously used for unique tests may now have duplicate fields across multiple sources, these columns are combined with the new
source_relation
column for unique tests and tested using thedbt_utils.unique_combination_of_columns
macro. (#8) - Source Relation column: To distinguish which source each record comes from, we added a new
source_relation
column in each staging and final model and applied thefivetran_utils.source_relation
macro. (#8)- The
source_relation
column is included in all joins and window function partition clauses in the transform package. Note that an event from one Klaviyo source will never be attributed to an event from a different Klaviyo connector.
- The
Contributors
- @pawelngei #11 and #8