Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update core to support DSI 0.8.3 #10990

Merged
merged 8 commits into from
Dec 5, 2024
Merged

Update core to support DSI 0.8.3 #10990

merged 8 commits into from
Dec 5, 2024

Conversation

WilliamDee
Copy link
Contributor

@WilliamDee WilliamDee commented Nov 12, 2024

Problem

Upgrade to DSI 0.8.3 to support passing custom time grain in the yaml spec

schema change PR: dbt-labs/schemas.getdbt.com#70

Solution

Checklist

  • I have read the contributing guide and understand what's expected of me.
  • I have run this code in development, and it appears to resolve the stated issue.
  • This PR includes tests, or tests are not required or relevant for this PR.
  • This PR has no interface changes (e.g., macros, CLI, logs, JSON artifacts, config files, adapter interface, etc.) or this PR has already received feedback and approval from Product or DX.
  • This PR includes type annotations for new and modified functions.

@WilliamDee WilliamDee requested review from a team as code owners November 12, 2024 21:36
@WilliamDee WilliamDee requested review from wpowers-dbt and removed request for a team November 12, 2024 21:36
@cla-bot cla-bot bot added the cla:yes label Nov 12, 2024
Copy link
Contributor

Thank you for your pull request! We could not find a changelog entry for this change. For details on how to document a change, see the contributing guide.

@github-actions github-actions bot added the community This PR is from a community member label Nov 12, 2024
Copy link

codecov bot commented Nov 12, 2024

Codecov Report

Attention: Patch coverage is 95.65217% with 1 line in your changes missing coverage. Please review.

Project coverage is 89.13%. Comparing base (fdfe03d) to head (363e44b).
Report is 1 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main   #10990      +/-   ##
==========================================
- Coverage   89.17%   89.13%   -0.05%     
==========================================
  Files         183      183              
  Lines       23783    23784       +1     
==========================================
- Hits        21209    21200       -9     
- Misses       2574     2584      +10     
Flag Coverage Δ
integration 86.44% <86.95%> (-0.13%) ⬇️
unit 62.20% <86.95%> (+0.03%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Components Coverage Δ
Unit Tests 62.20% <86.95%> (+0.03%) ⬆️
Integration Tests 86.44% <86.95%> (-0.13%) ⬇️

@WilliamDee WilliamDee changed the title Update to DSI 0.8.0 Update to DSI 0.8.1 Nov 12, 2024
@WilliamDee WilliamDee changed the title Update to DSI 0.8.1 Update core to support DSI 0.8.1 Nov 12, 2024
Copy link
Contributor

@QMalcolm QMalcolm left a comment

Choose a reason for hiding this comment

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

This looks good! I had one question about MFs/DSIs expectations on case. Depending on the answer to that, we might need to make changes, or we might just be good to go 🙂

core/dbt/artifacts/resources/v1/metric.py Show resolved Hide resolved
core/dbt/artifacts/resources/v1/metric.py Show resolved Hide resolved
def _get_optional_time_window(
self, unparsed_window: Optional[str]
) -> Optional[MetricTimeWindow]:
if unparsed_window is not None:
parts = unparsed_window.split(" ")
parts = unparsed_window.lower().split(" ")
Copy link
Contributor

@QMalcolm QMalcolm Nov 14, 2024

Choose a reason for hiding this comment

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

Does DSI/Metricflow require these be lowercase now? If so, this may be breaking as for already parsed manifests 🤔

Copy link
Contributor

Choose a reason for hiding this comment

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

Nope! It should not be case sensitive. This is lowercasing it before we get it so that the user doesn't need to worry about lowercasing it but we can expect lowercase on our side. Will added tests for case sensitivity in DSI, too.

Copy link
Contributor

@QMalcolm QMalcolm Nov 15, 2024

Choose a reason for hiding this comment

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

The words that concern me are

but we can expect lowercase on our side

I'm not sure you can unfortunately, but I could be wrong about that. Could you point me to the tests around case sensitivity in DSI?

Copy link
Contributor

Choose a reason for hiding this comment

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

Copy link
Contributor

Choose a reason for hiding this comment

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

Let me go back and make sure all other fields have this covered, too

Copy link
Contributor

Choose a reason for hiding this comment

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

Alright @QMalcolm - sorry for the delay on this, had some other high prios and then didn't want to mess with code freeze! 🥶

We bumped the version of DSI one more time with some changes to fix the issues with case sensitivity. This is the PR with those changes, but these commits are most relevant: 1, 2.
Let us know if you think there are any other issues here! The thorough review was much appreciated 🙏
Once approved, we shouldn't merge quite yet - just because we want to coordinate the merge timing so that we will have time to update mantle between when this merges and the next sync to mantle.

cc @WilliamDee

Copy link
Contributor

Choose a reason for hiding this comment

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

I think github screwed up those links somehow. They point to https://github.com/dbt-labs/dbt-core/pull/2083a249889252823b097098cb03471f2db0d00e and https://github.com/dbt-labs/dbt-core/pull/00abab69a8b4537abcc0ea9e544547e99a3c27a2. Which are commits, but on DSI, not core.

Copy link
Contributor

Choose a reason for hiding this comment

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

@QMalcolm QMalcolm added the artifact_minor_upgrade To bypass the CI check by confirming that the change is not breaking label Nov 14, 2024
@courtneyholcomb courtneyholcomb changed the title Update core to support DSI 0.8.1 Update core to support DSI 0.8.2 Dec 2, 2024
@courtneyholcomb courtneyholcomb changed the title Update core to support DSI 0.8.2 Update core to support DSI 0.8.3 Dec 3, 2024
Copy link
Contributor

@QMalcolm QMalcolm left a comment

Choose a reason for hiding this comment

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

Looks good to me! Thank you for resolving the case sensitivity issue ❤️

@ChenyuLInx ChenyuLInx merged commit ff6745c into main Dec 5, 2024
54 of 56 checks passed
@ChenyuLInx ChenyuLInx deleted the will/update-dsi branch December 5, 2024 17:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
artifact_minor_upgrade To bypass the CI check by confirming that the change is not breaking cla:yes community This PR is from a community member
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants