Releases: fivetran/dbt_recurly
v1.4.0 dbt_recurly
PR #45 includes the following updates:
Schema/Data Change
22 total changes • 21 possible breaking changes
| Data Model(s) | Change type | Old | New | Fields affected |
|---|---|---|---|---|
recurly__account_overview |
Data type | float |
numeric |
total_charges, total_credits, total_balance, total_discounts, charges_this_month, credits_this_month, balance_this_month, discounts_this_month |
recurly__account_overview |
Data type | int |
numeric |
total_taxes, taxes_this_month |
recurly__account_daily_overview |
Data type | float |
numeric |
daily_net_change, daily_charges, daily_credits, daily_discounts, rolling_account_balance, rolling_charge_balance, rolling_credit_balance, rolling_discount_balance |
recurly__account_daily_overview |
Data type | int |
numeric |
daily_taxes, rolling_tax_balance |
recurly__balance_transactions |
Data type | float |
numeric |
amount, credit_applied, discount, unit_amount |
recurly__balance_transactions |
Data type | int |
numeric |
tax, subtotal |
recurly__monthly_recurring_revenue |
Data type | float |
numeric |
current_month_mrr, previous_month_mrr |
recurly__subscription_overview |
Data type | float |
numeric |
unit_amount |
recurly__subscription_overview |
Data type | int |
numeric |
add_ons_total, subtotal |
recurly__line_item_enhanced |
Data type | float |
numeric |
unit_amount, discount_amount, total_amount |
recurly__line_item_enhanced |
Data type | int |
numeric |
tax_amount, refund_amount |
recurly__line_item_enhanced |
Logic update | line_item_index ordered by created_at only |
line_item_index ordered by created_at, then line_item_id |
Ensures deterministic ordering when multiple line items share the same created_at timestamp |
int_recurly__transactions_grouped |
Data type | float |
numeric |
daily_charges, daily_credits, daily_balance, daily_discounts |
int_recurly__transactions_grouped |
Data type | int |
numeric |
daily_taxes |
int_recurly__account_cumulatives |
Data type | float |
numeric |
total_charges, total_credits, total_balance, total_discounts, charges_this_month, credits_this_month, balance_this_month, discounts_this_month |
int_recurly__account_cumulatives |
Data type | int |
numeric |
total_taxes, taxes_this_month |
int_recurly__account_rolling_totals |
Data type | float |
numeric |
daily_charges, daily_credits, daily_balance, daily_discounts, rolling_account_balance, rolling_charge_balance, rolling_credit_balance, rolling_discount_balance |
int_recurly__account_rolling_totals |
Data type | int |
numeric |
daily_taxes, rolling_tax_balance |
int_recurly__account_running_totals |
Data type | float |
numeric |
daily_charges, daily_credits, daily_balance, daily_discounts, rolling_account_balance, rolling_charge_balance, rolling_credit_balance, rolling_discount_balance |
int_recurly__account_running_totals |
Data type | int |
numeric |
daily_taxes, rolling_tax_balance |
All stg_recurly__* models |
Data type | float |
numeric |
amount, balance, credit_applied, discount, setup_fees, unit_amount |
All stg_recurly__* models |
Data type | int |
numeric |
add_ons_total, discount, paid, refundable_amount, subtotal, tax, total |
Under the Hood
- Corrected
get_*_columnsmacro fields forinvoice_history,line_item_history,subscription_historythat were cast asintinstead offloatto match the Recurly API type (number <float>).
Documentation
- Fixes link to
streamlit_fivetran_billing_modelrepo in the README.
Full Changelog: v1.3.0...v1.4.0
v1.3.0 dbt_recurly
PR #42 includes the following updates:
Documentation
- Updates README with standardized Fivetran formatting.
Under the Hood
- In the
quickstart.ymlfile:- Adds
table_variablesfor relevant sources to prevent missing sources from blocking downstream Quickstart models. - Adds
supported_varsfor Quickstart UI customization.
- Adds
Full Changelog: v1.2.0...v1.3.0
v1.2.0 dbt_recurly
PR #41 includes the following updates:
Features
- Increases the required dbt version upper limit to v3.0.0
Full Changelog: v1.1.0...v1.2.0
v1.1.0 dbt_recurly
PR #40 includes the following updates:
Schema/Data Change
5 total changes • 4 possible breaking changes
| Data Model(s) | Change type | Old | New | Notes |
|---|---|---|---|---|
recurly__account_overview |
Bug fix | taxes_this_month = daily_credits |
taxes_this_month = daily_taxes |
Fixed incorrect calculation in int_recurly__account_cumulatives that was using credits instead of taxes |
| All models | New column | source_relation |
Identifies the source connection when using multiple Recurly connections | |
int_recurly__account_running_totals |
Updated surrogate key | account_daily_id = account_id + date_day |
account_daily_id = source_relation + account_id + date_day |
Updated to include source_relation |
recurly__monthly_recurring_revenue |
Updated surrogate key | account_monthly_id = account_id + account_month |
account_monthly_id = source_relation + account_id + account_month |
Updated to include source_relation |
recurly__subscription_overview |
Updated surrogate key | subscription_key = subscription_id + updated_at |
subscription_key = source_relation + subscription_id + updated_at |
Updated to include source_relation |
Feature Update
- Union Data Functionality: This release supports running the package on multiple Recurly source connections. See the README for details on how to leverage this feature.
Tests Update
- Removes uniqueness tests. The new unioning feature requires combination-of-column tests to consider the new
source_relationcolumn in addition to the existing primary key, but this is not supported across dbt versions.- Note that surrogate keys are unaffected and retain their uniqueness tests.
- These tests will be reintroduced once a version-agnostic solution is available.
Full Changelog: v1.0.0...v1.1.0
v1.0.0 dbt_recurly
PR #37 includes the following updates:
Breaking Changes
Source Package Consolidation
- Removed the dependency on the
fivetran/recurly_sourcepackage.- All functionality from the source package has been merged into this transformation package for improved maintainability and clarity.
- If you reference
fivetran/recurly_sourcein yourpackages.yml, you must remove this dependency to avoid conflicts. - Any source overrides referencing the
fivetran/recurly_sourcepackage will also need to be removed or updated to reference this package. - Update any recurly_source-scoped variables to be scoped to only under this package. See the README for how to configure the build schema of staging models.
- As part of the consolidation, vars are no longer used to reference staging models, and only sources are represented by vars. Staging models are now referenced directly with
ref()in downstream models.
dbt Fusion Compatibility Updates
- Updated package to maintain compatibility with dbt-core versions both before and after v1.10.6, which introduced a breaking change to multi-argument test syntax (e.g.,
unique_combination_of_columns). - Temporarily removed unsupported tests to avoid errors and ensure smoother upgrades across different dbt-core versions. These tests will be reintroduced once a safe migration path is available.
- Removed all
dbt_utils.unique_combination_of_columnstests. - Moved
loaded_at_field: _fivetran_syncedunder theconfig:block insrc_recurly.yml.
- Removed all
Under the Hood
- Updated conditions in
.github/workflows/auto-release.yml. - Added
.github/workflows/generate-docs.yml.
Full Changelog: v0.7.0...v1.0.0
v0.7.0 dbt_recurly
PR #34 includes the following updates:
Breaking Change for dbt Core < 1.9.6
Note: This is not relevant to Fivetran Quickstart users.
Migrated freshness from a top-level source property to a source config in alignment with recent updates from dbt Core (Recurly Source v0.4.0). This will resolve the following deprecation warning that users running dbt >= 1.9.6 may have received:
[WARNING]: Deprecated functionality
Found `freshness` as a top-level property of `recurly` in file
`models/src_recurly.yml`. The `freshness` top-level property should be moved
into the `config` of `recurly`.
IMPORTANT: Users running dbt Core < 1.9.6 will not be able to utilize freshness tests in this release or any subsequent releases, as older versions of dbt will not recognize freshness as a source config and therefore not run the tests.
If you are using dbt Core < 1.9.6 and want to continue running Recurly freshness tests, please elect one of the following options:
- (Recommended) Upgrade to dbt Core >= 1.9.6
- Do not upgrade your installed version of the
recurlypackage. Pin your dependency on v0.6.0 in yourpackages.ymlfile. - Utilize a dbt override to overwrite the package's
recurlysource and apply freshness via the previous release top-level property route. This will require you to copy and paste the entirety of the previous releasesrc_recurly.ymlfile and add anoverrides: recurly_sourceproperty.
Under the Hood
- Updates to ensure integration tests use latest version of dbt.
Full Changelog: v0.6.0...v0.7.0
v0.6.0 dbt_recurly
This release includes the following changes:
Schema/Data Changes
1 total change • 0 possible breaking changes
| Data Model | Change type | Old name | New name | Notes |
|---|---|---|---|---|
recurly__line_item_enhanced |
Modified Model | Now enabled by default. |
Features
- Enabled the
recurly__line_item_enhancedmodel by default. Previously, this model required opting in via therecurly__standardized_billing_model_enabledvariable. This change ensures the model is available by default for Quickstart users. (#33)- Users can still disable the model by setting the variable to
falseindbt_project.yml.
- Users can still disable the model by setting the variable to
Documentation
- Added Quickstart model counts to README. (#32)
- Corrected references to connectors and connections in the README. (#32)
Full Changelog: v0.5.1...v0.6.0
v0.5.1 dbt_recurly
PR #30 includes the following breaking changes:
Under the Hood
- Updated
quickstart.ymlto list only the relevantpublic_models.
Full Changelog: v0.5.0...v0.5.1
v0.5.0 dbt_recurly
PR #29 includes the following breaking changes:
Breaking Changes
- Removed unused fields from
stg_recurly__subscription_historyin the upstreamdbt_recurly_sourcepackage (see release notes):converted_athas_started_with_gift
- While this change does not directly affect fields in this package’s models, it is classified as a breaking change due to modifications in
stg_recurly__subscription_history. - These fields were removed as they are slated for future deprecation in the Fivetran Connector and are not explicitly referenced in the final models.
Full Changelog: v0.4.0...v0.5.0
v0.4.0 dbt_recurly
PR #26 includes the following breaking changes:
Feature Updates
- Addition of the
recurly__line_item_enhancedmodel. This model constructs a comprehensive, denormalized analytical table that enables reporting on key revenue, subscription, customer, and product metrics from your billing platform. It’s designed to align with the schema of the*__line_item_enhancedmodel found in Recurly, Recharge, Stripe, Shopify, and Zuora, 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
recurly__standardized_billing_model_enabledastruein yourdbt_project.yml.
- This model is currently disabled by default. You may enable it by setting the
Under the Hood:
- Added consistency test within integration_tests for the
recurly__line_item_enhancedmodel. - Included auto-releaser GitHub Actions workflow to automate future releases.
- Incorporated the new
fivetran_utils.drop_schemas_automationmacro into the end of each Buildkite integration test job. - Updated the pull request templates.
Full Changelog: v0.3.2...v0.4.0