-
Notifications
You must be signed in to change notification settings - Fork 14
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
Support custom grain in DSI callsites #363
Conversation
dc47c31
to
e20b045
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Left a couple comments but otherwise looks good!
Since this is a breaking change, I would wait to merge it until you're ready to bump the version (otherwise can risk someone else doing a patch version bump that includes your change). This should be a minor version bump.
@DevonFulcher also has a breaking change PR up. Maybe you guys can coordinate releasing & updating core. Make sure you guys sync with me before you update core because there are some extra steps you'll need to take.
dbt_semantic_interfaces/parsing/where_filter/parameter_set_factory.py
Outdated
Show resolved
Hide resolved
…WhereFilterIntersection.filter_expression_parameter_sets from property to a method that takes in the valid custom grain names
…nticWhereFilterIntersection.filter_expression_parameter_sets
8b3303a
to
7c59d74
Compare
## Context We merged 2 breaking changes in DSI dbt-labs/dbt-semantic-interfaces#363 and dbt-labs/dbt-semantic-interfaces#365 which changed most spec typing that used time granularity to be a `str` instead of `TimeGranularity` to enable support for custom granularity. Similarly, there were additional breaking changes to the objects that requires passing in `custom_granularity_names`. This PR updates all those callsites to be compatible with the new version of DSI (to be released) Resolves SL-3097
Description
Given that custom granularity is available, we need to start supporting it when parsing through names and filters.
Non-breaking changes
WhereFilterTimeDimensionFactory
as it's not used anywhere (MetricFlow has it's own in metricflow-semantics)Breaking changes
DunderedNameFormatter
in favour ofStructuredDunderedName
as it's duplicate logiccustom_granularity_names
toStructuredDunderedName.parse_name
as a parameter to parse out any custom grainPydanticWhereFilter.call_parameter_sets
andPydanticWhereFilterIntersection.filter_expression_parameter_sets
from a property to a method that takes in the valid custom grain namesChecklist
changie new
to create a changelog entryResolves SL-2989