Skip to content

Releases: fivetran/dbt_shopify

v0.14.0 dbt_shopify

02 Dec 21:47
295a919
Compare
Choose a tag to compare

PR #92 includes the following updates:

Breaking Changes

  • Adds enable/disable config for the metadata staging model using the shopify_using_metafield variable (default true).
    • This variable is now a requirement for all shopify__x_metafield models.
  • Adds enable/disable config for the abandoned_checkout staging models using the shopify_using_abandoned_checkout variable (default true):
    • stg_shopify__abandoned_checkout

    • stg_shopify__abandoned_checkout_discount_code

    • stg_shopify__abandoned_checkout_shipping_line.

    • Disabling shopify_using_abandoned_checkout will also disable the int_shopify__daily_abandoned_checkouts and int_shopify__discounts__abandoned_checkouts intermediate models, in addition to disabling abandoned_checkout references in end models (including shopify__daily_shop, shopify__customers, shopify__customer_emails, shopify__customer_email_cohorts, shopify__customer_cohorts, and shopify__discounts).

  • For more information on how to enable/disable these tables, refer to the README. This will be a breaking change if you choose to disable these tables.

Full Changelog: v0.13.2...v0.14.0

v0.13.2 dbt_shopify

21 Oct 20:09
903e562
Compare
Choose a tag to compare

PR #89 includes the following changes:

Bug Fixes

  • Fixed an issue where the shopify__customers model incorrectly displayed NULL values for the customer_tags field for customers without orders. Updated the logic to ensure customer tags are retrieved even if no orders have been placed for that customer.

Under the Hood

  • Updated seed data to include customers without orders, verifying that their tags are correctly pulled through.
  • Added consistency and integrity tests for the shopify__customers model to ensure accurate handling of customer tags for all customers.

Full Changelog: v0.13.1...v0.13.2

v0.13.1 dbt_shopify

27 Aug 23:38
470b8da
Compare
Choose a tag to compare

PR #87 includes the following changes:

Bug Fixes

  • Coalesces the backfill_lifetime_sums fields from incremental loads, as well as cohort_month_number in the rare cases there are no orders from an incremental period. This fixes the issue of NULL values in the lifetime columns in shopify__customer_cohorts table. (PR #86).
  • UPDATE: For those customers experiencing erroneous NULL values previously, a --full-refresh should correct these issues and populate the proper values.

Under the Hood:

  • Added consistency and integrity tests within integration_tests for the shopify__customer_cohorts model. (PR #87).

Contributors

Full Changelog: v0.13.0...v0.13.1

v0.13.0 dbt_shopify

14 Aug 19:55
3888e08
Compare
Choose a tag to compare

PR #83 includes the following changes:

Features

  • Addition of the shopify__line_item_enhanced model. This model constructs a comprehensive, denormalized analytical table that enables reporting on key revenue, customer, and product metrics from your billing platform. It’s designed to align with the schema of the *__line_item_enhanced model found in Shopify, Recharge, Stripe, Zuora, and Recurly, offering standardized reporting across various billing platforms. To see the kinds of insights this model can generate, explore example visualizations in the Fivetran Billing Model Streamlit App. Visit the app for more details.
    • This model is currently disabled by default. You may enable it by setting the shopify__standardized_billing_model_enabled as true in your dbt_project.yml.

Under the Hood:

  • Added consistency test within integration_tests for the stripe__line_item_enhanced model.

Full Changelog: v0.12.2...v0.13.0

v0.12.2 dbt_shopify

15 Jul 20:09
b259fe9
Compare
Choose a tag to compare

PR #84 includes the following changes:

Feature

  • Introduced the variable shopify__calendar_start_date to shopify__calendar to allow for the start date to be customized. This can be set in your dbt_project.yml. If not used, the default will start at 2019-01-01. See the README for more details.

Full Changelog: v0.12.1...v0.12.2

v0.12.1 dbt_shopify

11 Jun 21:31
9dc9de3
Compare
Choose a tag to compare

🪲 Bug Fixes 🪛

  • Added support for a new delayed fulfillment event status from Shopify. This produces a new count_fulfillment_delayed field in the shopify__daily_shop model (PR #81).

🚘 Under the Hood 🚘

  • Added validation tests to be used by package maintainers to evaluate the consistency and integrity of subsequent model updates (PR #82).

Contributors

Full Changelog: v0.12.0...v0.12.1

v0.12.0 dbt_shopify

01 May 19:02
fc20889
Compare
Choose a tag to compare

PR #76 includes the following updates:

🚨 Breaking Changes 🚨

⚠️ Since the following changes are breaking, a --full-refresh after upgrading will be required.

  • Performance improvements:
    • Added an incremental strategy for the following models. These models were picked for incremental materialization based on the size of their upstream sources.
      • shopify__customer_cohorts (For Databricks SQL Warehouse destinations, this model is materialized as a table without support for incremental runs at this time.)
      • shopify__customer_email_cohorts (For Databricks SQL Warehouse destinations, this model is materialized as a table without support for incremental runs at this time.)
      • shopify__discounts
      • shopify__order_lines
      • shopify__orders
      • shopify__transactions
    • Updated the materialization of shopify__orders__order_line_aggregates to a table. This model draws on several large upstream sources and is also referenced in several downstream models, so this was done to improve performance. This model was not selected for incremental materialization since its structure was not conducive to incremental strategy.
  • To reduce storage, updated the default materialization of the upstream staging models from tables to views. (See the dbt_shopify_source CHANGELOG for more details.)

Features

  • Added a default 7-day look-back to incremental models to accommodate late arriving records. The number of days can be changed by setting the var lookback_window in your dbt_project.yml. See the Lookback Window section of the README for more details.
  • Added macro shopify_lookback to streamline the lookback calculation.
  • Updated the partitioning logic in window functions to use only the necessary columns, depending on whether the unioning feature is used. This benefits mainly Redshift destinations, which can see errors when the staging models are materialized as views.

🪲 Bug Fixes 🪛

  • Corrected the fixed_amount_discount_amount logic to appropriately bring in fixed amount discounts in shopify__orders. PR #78
  • Removed the index=1 filter in stg_shopify__order_discount_code in the dbt_shopify_source package to ensure all discount codes are brought in for every orders. For customers with multiple discount codes in an order, this could update the count_discount_codes_applied field in the shopify__orders and shopify__daily_shop models. PR #78

Under the Hood

  • Updated the maintainer PR template to the current format.
  • Added integration testing pipeline for Databricks SQL Warehouse.
  • Added macro shopify_is_databricks_sql_warehouse for detecting if a Databricks target is an All Purpose Cluster or a SQL Warehouse.

Full Changelog: v0.11.0...v0.12.0

v0.11.0 dbt_shopify

06 Mar 22:13
7cc0607
Compare
Choose a tag to compare

PR #74 includes the following updates:

🚨 Breaking Changes 🚨

  • Added source_relation to the partition_by clauses that determine the customer_index in the int_shopify__customer_email_rollup table. If the user is leveraging the union feature, this could change data values.

🚘 Under The Hood 🚘

  • Included auto-releaser GitHub Actions workflow to automate future releases.
  • Added additional casting in seed dependencies for above models integration_tests/dbt_project.yml to ensure local testing passed on null cases.

Full Changelog: v0.10.0...v0.11.0

v0.10.0 dbt_shopify

09 Oct 18:44
dd3b971
Compare
Choose a tag to compare

🚨 Breaking Changes 🚨

  • This release will be a breaking change due to the removal of below dependencies.

Dependency Updates

Under the Hood

  • Removed the dbt_expectations.expect_table_row_count_to_equal_other_table test that ensured no fanouts in the metafield models. We will be working to replace this with a similar test. (PR #66)

Full Changelog: v0.9.0...v0.10.0

v0.9.0 dbt_shopify

28 Jun 21:59
b1951de
Compare
Choose a tag to compare

PR #61 includes the following updates:

Breaking Changes

These changes are made breaking due to changes in the source.

model field removed
stg_shopify__customer lifetime_duration
stg_shopify__order_line fulfillment_service
stg_shopify__order_line destination_location_* fields
stg_shopify__order_line origin_location_* fields
stg_shopify__order total_price_usd
stg_shopify__order processing_method
  • Please be aware that the removal of the fields from the staging models results in the removal of the fields in the relevant downstream models:
model field removed
shopify__customer lifetime_duration
shopify__customer_emails lifetime_duration
shopify__order_lines fulfillment_service
shopify__order_lines destination_location_* fields
shopify__order_lines origin_location_* fields
shopify__orders total_price_usd
shopify__orders processing_method

Documentation Updates

  • The shopify_using_shop_metafields variable was added to the Adding Metafields of the README. It was erroneously omitted in a previous release.
  • Documentation provided in the README for how to connect sources when leveraging the union schema/database feature.
  • Removal of the current_total_price yml definition from the shopify__orders model as it was not being created in the model.

Full Changelog: v0.8.1...v0.9.0