-
Notifications
You must be signed in to change notification settings - Fork 285
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
Equalise cubes #6257
Equalise cubes #6257
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #6257 +/- ##
==========================================
+ Coverage 89.83% 89.85% +0.01%
==========================================
Files 88 88
Lines 23347 23385 +38
Branches 4344 4357 +13
==========================================
+ Hits 20974 21012 +38
Misses 1646 1646
Partials 727 727 ☔ View full report in Codecov by Sentry. |
Status updateI think this is now good enough to consider as it is, though I'm still anticipating other useful features could be added. "Grouping" implementationAs noted here in the original issue - section "Grouping of input cubes ?", The notes there describe the problem of trying to rationalise the different ways in which merge and concatenate do this "grouping"
Currently included options :
Other possible, future optionsSee also list in original issue
We can also, in future, usefully include this in the "combine_cubes" operation and "COMBINE_POLICY" / "LOAD_POLICY" settings. |
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.
Looking good, just a couple things, mostly about documentation. This will also want a whatsnew describing the new function.
Thanks @stephenworsley I think this is back with you now, I have attempted to address all the points raised so far. Don't be shy of re-raising, or finding more problems : I think this is rather new territory, and I'm conscious it hasn't had a whole lot of scrutiny. |
Update:oops, forgot a whatsnew. I'll get onto that, too. |
10a79f2
to
ae992ff
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.
Looking good, I think the logic of the way you've implemented things makes sense, I think starting with a simpler implementation makes sense and this looks like it should be a pretty nice convenience in a lot of common use cases.
Just a couple more minor quibles here and I'm happy merging this.
UpdateJust realized a possible problem, hence put into draft temporarily.. Somewhat as @bjlittle suggested, it might have been better to use the metadata APIs for logic. My purpose was (a) to make an independent stable copy and (b) that it should be easily modifiable, which actual metadata objects aren't. But I think now I will look into doing this with actual metadata instead. I don't expect the code to change much, but I will add some practical testing of the array-attributes use case |
UpdateOK panic over, sorry about that. Please re-consider now @stephenworsley ! I added a test for array-attribute handling, and to my surprise it all just worked anyway (!) Debugging, I quickly realised that the reason is that in the |
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.
Looks good to me.
Closes #6248