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

compliance-checker ugrid plugin #6

Closed
ocefpaf opened this issue Mar 11, 2022 · 3 comments
Closed

compliance-checker ugrid plugin #6

ocefpaf opened this issue Mar 11, 2022 · 3 comments
Labels
2022 code sprint topic Proposed topic for a code sprint activity

Comments

@ocefpaf
Copy link
Member

ocefpaf commented Mar 11, 2022

Project Description:

IOOS developed a UGRID checks plugin for compliance-checker and recently the UK Met Office developed a similar tool, ugrid-checks.

The project would be more of a discussion on how to integrate the two efforts. One solution would be to halt the ugrid plugin development in lieu for the newer ugrid-checks. The Software challenge here the different nature of both Software where one is a plugin and the other stand-alone. Deprecating the plugin would cause some friction to its current users.

Expected Outcomes:

A unified ugrid checker that, hopefully, works with compliance-checker.

Skills required:

Familiarity with either package code base and knowledge of the ugrid standards.

Difficulty:

Low. While hacking on the code and fixing the problem would be nice the main goal is to write a roadmap for the ugrid checker.

Topic Lead(s):

Ping here @bjlittle and @pp-mo from the UK Met Office hoping they can participate and @benjwadams who is the lead on the compliance-checker track.

Relevant links:

All inline above.

@pp-mo
Copy link

pp-mo commented Mar 14, 2022

@ocefpaf just to say, many thanks for making a start on this.
A bit of a placeholder, as I was only just made aware of this, and haven't yet had time to compare in detail.
But I am definitely on board + will post some opinions shortly ...

@pp-mo
Copy link

pp-mo commented Apr 21, 2022

Hi @ocefpaf

I'd be interested to know how we/I might contribute to next week's sprint?

Since it's getting rather late now (!), I ought to feedback on what I've been considering here regarding the relationship between cc-plugin-ugrid and ugrid-checks ...

I have tried to gain an overview understanding of the IOOS checker framework, and I've taken a close look at the existing cc-ugrid-plugin general, and compared the scope of the actual checks it implements with those here.

For ref, my slightly random observations-so-far, noted here.

I have also been considering what it would take to make the ugrid-checks code work within the context of an ioos plugin.
Still work-in-progress on that, but some quick ideas :

  1. ioos applies a 3-step "severity level" for tests, whereas ugrid-checks uses only 2 (~ error/warning).
    No big problem with that
  2. ioos expects a test to identify checks which were run ok, as well as checks that failed
  3. ideally, an ioos test will return a composite result listing multiple of checks-run and passed/failed
  4. where a test is re-run in a different context (e.g. applied to a different variable of the same role), ioos expects to generate a result that summarises N-passed / N-checked.

In short, I've been drafting some code changes that might help us bridge this function gap, and potentially may even improve the code structure in the ugrid-checks repo.

.. FYI, in haste, more to follow (will re-edit this later) ..

@pp-mo
Copy link

pp-mo commented Apr 25, 2022

Quick update :

I have posted a quick note on a problem I uncovered in the main cf-checker.
I think I could provide some similar observations on fixes to the cc-ugrid-plugin, if useful ? (various problems spotted, as noted above)

In the meantime, as I just wrote on the ugrid-checks isuue matching this ...

Regarding possible use of the ugrid-checks code

I have already created a proof-of-concept solution (incomplete, and not yet visible here) to provide checking results in a suitable form for inclusion in an IOOS-style Report object.
So, if anyone is interested, I think we could collaborate on creating an ioos plugin to integrate ugrid-checks via such an interface.
It makes sense to me, that we would want the plugin in its own project/repo. But of course, the sprint may simply not be a very good time, since the time difference can be a bit of an obstacle.
Also, I still remain to be convinced that this is particularly wanted -- but the interfacing problem did pique my interest !

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
2022 code sprint topic Proposed topic for a code sprint activity
Projects
None yet
Development

No branches or pull requests

3 participants