Fix indicator outputting delta degC #1973
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Pull Request Checklist:
number
) and pull request (:pull:number
) has been addedWhat kind of change does this PR introduce?
Before this fix: an indicator that outputs "degC" but as a "temperature: difference" would bug. The compute function would return a dataset with proper units and proper "units_metadata" attribute and then the indicator would try to convert the data to the expected units, but doing so it would only give the units to
convert_units_to
. It would not give theunits_metadata
attribute.thus,
convert_units_to
was taking the compute function output and getting "delta_degC", as expected, but then it was not able to convert to "degC", of course.This change passes the whole attrs to
convert_units_to
so it can understand that the expected units are a difference.Does this PR introduce a breaking change?
No.
We have no current indicator that output "degC" as "difference" (dtr outputs Kelvins), but the problem would emerge in custom indicators or with
sdba.measures.bias
where units are not explicitly set, so the "expected ones" are inferred from the compute function's output. Before this fix, theunits_metadata
attribute was dropped at that point, triggering the bug described above.Other information: