Releases: fivetran/dbt_jira
v1.0.0 dbt_jira
PR #145 includes the following updates:
Breaking Changes
Source Package Consolidation
- Removed the dependency on the
fivetran/jira_source
package.- All functionality from the source package has been merged into this transformation package for improved maintainability and clarity.
- If you reference
fivetran/jira_source
in yourpackages.yml
, you must remove this dependency to avoid conflicts. - Any source overrides referencing the
fivetran/jira_source
package will also need to be removed or updated to reference this package. - Update any jira_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_columns
tests. - Moved
loaded_at_field: _fivetran_synced
under theconfig:
block insrc_jira.yml
.
- Removed all
Under the Hood
- Updated conditions in
.github/workflows/auto-release.yml
. - Added
.github/workflows/generate-docs.yml
.
Full Changelog: v0.21.0...v1.0.0
v0.21.0 dbt_jira
PR #140 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 (Jira Source v0.9.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 `jira` in file
`models/src_jira.yml`. The `freshness` top-level property should be moved
into the `config` of `jira`.
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 Jira 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
jira
package. Pin your dependency on v0.20.0 in yourpackages.yml
file. - Utilize a dbt override to overwrite the package's
jira
source 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_jira.yml
file and add anoverrides: jira_source
property.
Bug Fix
- Changed casting of
sprint_id
to a string rather than an integer injira__daily_sprint_issue_history
to resolve casting errors.
Under the Hood
- Updates to ensure integration tests use latest version of dbt.
Full Changelog: v0.20.0...v0.21.0
v0.20.1-a2 dbt_jira
The latest version of PR #138 contains the following updates:
Bug Fix
- Changed casting of
sprint_id
to a string rather than an integer injira__daily_sprint_issue_history
to resolve casting errors.
Under the Hood
- Updated the package maintainer pull request template.
- Updated
consistency_issue_enhanced
test to exclude columns that depend on calculations involving the current timestamp to remove failures. - Updated the sprint integrity tests to handle the new
sprint_id
casting.
v0.20.1-a1 dbt_jira
PR #138 contains the following updates:
Bug Fix
- Moved casting of integer of
sprint_id
injira__daily_sprint_issue_history
into a later CTE to avoid casting errors wherefield_value
is a string.
Under the Hood
- Updated the package maintainer pull request template.
- Updated
consistency_issue_enhanced
test to exclude columns that depend on calculations involving the current timestamp to remove failures.
v0.20.0 dbt_jira
This release includes the following updates.
8 total changes • 6 possible breaking changes (requires a --full-refresh run after upgrading)
Data Model | Change Type | Old Name | New Name | Notes |
---|---|---|---|---|
jira__daily_sprint_issue_history | New Model | Each record represents a snapshot of a sprint and its assorted issues on a given day between the sprint start date and the most recent update to the sprint. | ||
jira__sprint_enhanced | New Model | This model provides enhanced sprint-level metrics in Jira, incorporating data from sprints, sprint-related issue history, and sprint-based story points tracking. | ||
jira__daily_issue_field_history | New Columns | story_points , story_point_estimate |
Adding story point fields by default to persist to sprint/issue end models. | |
jira__issue_enhanced | New Columns | story_points , story_point_estimate |
Adding story point fields by default to persist to sprint/issue end models. | |
jira__user_enhanced | New Columns | is_active |
Helps show the active user records. | |
stg_jira__issue_multiselect_history | New Columns | is_active |
Shows which of the field history values is the current one. | |
stg_jira__issue_field_history | New Columns | is_active |
Shows which of the field history values is the current one. | |
stg_jira__issue_user | New Columns | is_active |
Shows which of the field history values is the current one. |
Breaking Changes
- Added
story_points
andstory_point_estimate
as default fields in thejira__daily_issue_field_history
andjira__issue_enhanced
models. (#136)- Important: These fields are now included by default. If your
issue_field_history_columns
variable already includesstory_points
orstory_point_estimate
, you must remove them and run a--full-refresh
to avoid duplication errors.
- Important: These fields are now included by default. If your
Feature Updates: New Sprint Reports
- Introduced two new models:
jira__daily_sprint_issue_history
to look at daily sprint issue snapshots, andjira__sprint_enhanced
to examine high level sprint metrics, such as velocity, time tracking and story point completion. Customers should now be able to build valuable sprint visualizations, like their own velocity reports, estimation tracking, and goal metrics. (#136) - If users are not utilizing the
sprint
source, these models can be disabled by setting the variablejira_using_sprints
tofalse
. More instructions are available in the README. (#136)
Under the Hood
- Added consistency and integrity tests for the
jira__sprint_enhanced
model. (#136) - Added new
jira__daily_sprint_issue_history
andjira__sprint_enhanced
to public models in thequickstart.yml
configuration. (#136) - Corrected formatting on intermediate and end models to conform with best practices and improve readability. (#136)
Documentation
- Updated yml documentation and README with new models, fields and descriptions. (#136)
- Created a DECISIONLOG to explain why we bring in multiple metrics from current sprint data as well as historical sprint data for the
jira__sprint_enhanced
model. (#136) - Added Quickstart model counts to README. (#135)
- Corrected references to connectors and connections in the README. (#135)
Full Changelog: v0.19.0...v0.20.0
v0.19.0 dbt_jira
PR #133 contains the following updates:
Breaking Changes
- This change is marked as breaking due to its impact on Redshift configurations.
- For Redshift users, comment data aggregated under the
conversations
field in thejira__issue_enhanced
table is now disabled by default to prevent consistent errors related to Redshift's varchar length limits.- If you wish to re-enable
conversations
on Redshift, set thejira_include_conversations
variable totrue
in yourdbt_project.yml
.
- If you wish to re-enable
Under the Hood
- Updated the
comment
seed data to ensure conversations are correctly disabled for Redshift by default. - Renamed the
jira_is_databricks_sql_warehouse
macro tojira_is_incremental_compatible
, which was updated to returntrue
if the Databricks runtime is an all-purpose cluster (previously it checked only for a SQL warehouse runtime) or if the target is any other non-Databricks-supported destination.- This update addresses Databricks runtimes (e.g., endpoints and external runtimes) that do not support the
insert_overwrite
incremental strategy used in thejira__daily_issue_field_history
andint_jira__pivot_daily_field_history
models.
- This update addresses Databricks runtimes (e.g., endpoints and external runtimes) that do not support the
- For Databricks users, the
jira__daily_issue_field_history
andint_jira__pivot_daily_field_history
models will now apply the incremental strategy only if running on an all-purpose cluster. All other Databricks runtimes will not utilize an incremental strategy. - Added consistency tests for the
jira__project_enhanced
andjira__user_enhanced
models.
Full Changelog: v0.18.0...v0.19.0
v0.18.0 dbt_jira
PR #131 contains the following updates:
Breaking Changes
Since the following changes are breaking, a
--full-refresh
after upgrading will be required.
- Changed the partitioning from days to weeks in the following models for BigQuery and Databricks All Purpose Cluster destinations:
int_jira__pivot_daily_field_history
- Added field
valid_starting_at_week
for use with the new weekly partition logic.
- Added field
jira__daily_issue_field_history
- Added field
date_week
for use with the new weekly partition logic.
- Added field
- This adjustment reduces the total number of partitions, helping avoid partition limit issues in certain warehouses.
- For Databricks All Purpose Cluster destinations, updated the
file_format
todelta
for improved performance. - Updated the default materialization of
int_jira__issue_calendar_spine
from incremental to ephemeral to improve performance and maintainability.
Documentation Update
- Updated README with the new default of 1 week for the
lookback_window
variable.
Under the Hood
- Replaced the deprecated
dbt.current_timestamp_backcompat()
function withdbt.current_timestamp()
to ensure all timestamps are captured in UTC for the following models:int_jira__issue_calendar_spine
int_jira__issue_join
jira__issue_enhanced
- Updated model
int_jira__issue_calendar_spine
to prevent errors during compilation. - Added consistency tests for the
jira__daily_issue_field_history
andjira__issue_enhanced
models.
Full Changelog: v0.17.0...v0.18.0
v0.17.0 dbt_jira
PR #127 contains the following updates:
🚨 Breaking Changes 🚨
⚠️ Since the following changes are breaking, a--full-refresh
after upgrading will be required.
- To reduce storage, updated the default materialization of the upstream staging models to views. (See the dbt_jira_source CHANGELOG for more details.)
Performance improvements (🚨 Breaking Changes 🚨)
-
Updated the incremental strategy of the following models to
insert_overwrite
for BigQuery and Databricks All Purpose Cluster destinations anddelete+insert
for all other supported destinations.int_jira__issue_calendar_spine
int_jira__pivot_daily_field_history
jira__daily_issue_field_history
At this time, models for Databricks SQL Warehouse destinations are materialized as tables without support for incremental runs.
-
Removed intermediate models
int_jira__agg_multiselect_history
,int_jira__combine_field_histories
, andint_jira__daily_field_history
by combining them withint_jira__pivot_daily_field_history
. This is to reduce the redundancy of the data stored in tables, the number of full scans, and the volume of write operations.- Note that if you have previously run this package, these models may still exist in your destination schema, however they will no longer be updated.
-
Updated the default materialization of
int_jira__issue_type_parents
from a table to a view. This model is called only inint_jira__issue_users
, so a view will reduce storage requirements while not significantly hindering performance. -
For Snowflake and BigQuery destinations, added the following
cluster_by
columns to the configs for incremental models:int_jira__issue_calendar_spine
clustering on columns['date_day', 'issue_id']
int_jira__pivot_daily_field_history
clustering on columns['valid_starting_on', 'issue_id']
jira__daily_issue_field_history
clustering on columns['date_day', 'issue_id']
-
For Databricks All Purpose Cluster destinations, updated incremental model file formats to
parquet
for compatibility with theinsert_overwrite
strategy.
Features
- Added a default 3-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
jira_lookback
to streamline the lookback window calculation.
Under the Hood:
- Added integration testing pipeline for Databricks SQL Warehouse.
- Added macro
jira_is_databricks_sql_warehouse
for detecting if a Databricks target is an All Purpose Cluster or a SQL Warehouse. - Updated the maintainer pull request template.
Full Changelog: v0.16.0...v0.17.0
v0.16.0 dbt_jira
PR #122 contains the following updates:
🚨 Breaking Changes: Bug Fixes 🚨
- The following fields in the below mentioned models have been converted to a string datatype (previously integer) to ensure classic Jira projects may link issues to epics. In classic Jira projects the epic reference is in a hyperlink form (ie. "https://ulr-here/epic-key") as opposed to an ID. As such, a string datatype is needed to successfully link issues to epics. If you are referencing these fields downstream, be sure to make any changes to account for the new datatype.
revised_parent_issue_id
field within theint_jira__issue_type_parents
modelparent_issue_id
field within thejira__issue_enhanced
model
Documentation updates
- Update README to highlight requirements for using custom fields with the
issue_field_history_columns
variable.
Under the Hood
- Included auto-releaser GitHub Actions workflow to automate future releases.
- Updated the maintainer PR template to resemble the most up to date format.
- Updated
field
andissue_field_history
seed files to ensure we have an updated test case to capture the epic-link scenario for classic Jira environments.
Full Changelog: v0.15.0...v0.16.0
v0.15.0 dbt_jira
PR #108 contains the following updates:
🚨 Breaking Changes 🚨
- Updated the
jira__daily_issue_field_history
model to make sureissue_type
values are correctly joined into the downstream issue models. This applied only ifissue type
is leveraged within theissue_field_history_columns
variable.
Note: Please be aware that a
dbt run --full-refresh
will be required after upgrading to this version in order to capture the updates.
Full Changelog: v0.14.0...v0.15.0