Skip to content

Update project for Fusion compatibility#103

Open
matthewshaver wants to merge 3 commits intomainfrom
fusion-updates
Open

Update project for Fusion compatibility#103
matthewshaver wants to merge 3 commits intomainfrom
fusion-updates

Conversation

@matthewshaver
Copy link
Copy Markdown

@matthewshaver matthewshaver commented Feb 3, 2026

This PR updates the Jaffle Shop project to run without deprecation warnings or errors on both Latest and Fusion Latest in the dbt platform:

  • Refactors project based on new syntax and behavior changes (used autofix tool)
  • Updates packages to Fusion-compatible versions (also with autofix tool)
  • As the YAML spec for Semantic Layer is different for Fusion, we have removed any SL metrics, queries, and files from the project. Once the YAML spec has been ported to Latest as well, we will re-introduce in the new format

Ran project locally in Fusion with Snowflake and got a successful build with 0 warnings or errors

@matthewshaver matthewshaver requested a review from a team as a code owner February 3, 2026 20:42
@b-per
Copy link
Copy Markdown
Contributor

b-per commented Feb 4, 2026

@matthewshaver

  • should we add a minimum dbt version that people can use this project with now, then? https://docs.getdbt.com/reference/project-configs/require-dbt-version
    • i don't think that we support arguments: in versions before 1.10 but we'd need to check
  • as a follow-up from above, should we have a long-living branch that would work for all Core versions (e.g. more or less what the code is today) but not on Fusion?
  • and should we mention the above distinctions in the README somewhere?

@matthewshaver
Copy link
Copy Markdown
Author

@b-per Yes, all good points. I need to do a little more testing with this version in the platform and ensure I can switfly swtich between extended/compatible/latest/latest fusion with little to no friction. Once I've done that:

  • I'll update the README
  • Check for how far back some features have been backported

As for a long-living branch for older versions, I'll defer to you and your team. From the docs side, we're taking the approach to only document and use examples for currently supported versions, which would exclude those older requriements. If you want to keep this Jaffle Shop functional for unsupported versions that still appear in the selection menu, I'm happy to help

Comment thread README.md
This README will guide you through setting up the project on dbt Cloud. Working through this example should give you a good sense of how dbt Cloud works and what's involved with setting up your own project. We'll also _optionally_ cover some intermediate topics like setting up Environments and Jobs in dbt Cloud, working with a larger dataset, and setting up pre-commit hooks if you'd like.

> [!NOTE]
> **The `main` is compatible with [dbt Fusion](https://docs.getdbt.com/docs/fusion/about-fusion).** and dbt Core v1.12 and higher. It uses the latest Semantic Layer YAML spec, with semantic models embedded in model YAML files, `type: simple` metrics replacing measures, and `type_params` promoted to top-level keys. If you're looking for the legacy project using the pre-Fusion YAML spec, check out the [`jaffle-shop-old`](../../tree/jaffle-shop-old) branch.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should be the "main branch" instead of "the main"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also instead of "pre-Fusion YAML spec" we should talk about the "legacy YAML semantic layer spec"

Copy link
Copy Markdown
Contributor

@b-per b-per left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not a full review yet. But blocking things so far.

  • we need a require-dbt-version in dbt_project.yml with dbt 1.12+ range if we use syntax that is only valid for 1.12 and Fusion
  • BQ CI is failing because to_date is not valid. We need a cross warehouse time spine

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants