-
Notifications
You must be signed in to change notification settings - Fork 279
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
Make concatenation signature public? #5769
Comments
Hi @bblay. We are certainly aware that it is very difficult to understand compatibility issues. Whether we could act on your suggestion is super uncertain at the moment. We currently have at least 3 modules that inspect what is in
This causes problems for developers and users alike when trying to understand While the |
Thanks for the response, @trexfeathers . Some good points. I wasn't aware of the all-singing attempt. I'll ignore that here. You're right about exposing the merge and concatenate structures. That could cause problems down the line. So the question then evolves to this: "I had to write a function which groups cubes by their concatenation compatibility, but it uses an Iris internal structure. Could/should we add such a function to Iris?" groups = iris.concatenation.group_by_compatibilty(cubes)
for group in groups:
my_code.sanity_check_group(group)
new_cubes = my_code.process(group)
my_code.sanity_check_result(new_cubes) That would seem to work equally well for merge. |
Thanks, good to have this issue in the backlog |
✨ Feature Request
Could we consider making
_concatenate._CubeSignature
a public symbol?Motivation
I'm stitching thousands of octants into global fields. I group the cubes by their concatenation signature so I can loop through them and sanity check, for each each group, that:
These warnings are useful because they highlight problems, such as:
The warnings are able to report on the cubes which need investigating. Without this, I found it was much harder to tell what's been stitched properly and what hasn't.
Also, for further consideration: I had to do something similar in the #5768 workaround, but with the merge signature. That's a simple named tuple so I didn't have to use the actual symbol, I just used the params I would have passed in. This is liable to break if its params change.
The text was updated successfully, but these errors were encountered: