Uploaded image for project: 'Data Management'
  1. Data Management
  2. DM-7933

Port validate_drp to validate_base framework

    XMLWordPrintable

    Details

      Description

      This refactors validate_drp to use the validate_base API (DM-7042).

      Main features are:

      1. All JSON serialization code is now in validate_base; validate_drp exclusively uses that API.
      2. The validate_base API is slightly different from the version originally included in validate_drp. A significant change is the use of astropy quantities for serialized measurements.
      3. Refactored utility module to make it easier to follow computations. Functions directly associated with a measurement are included in that measurement's module. The calculations themselves are refactored into function independent of the measurement classes, again, to make it easier to follow the calculation.

      Other features:

      • pytest compatibility in tests
      • summary pass/fail printout based on the --level argument
      • remove unused functions
      • improved documentation in the README

        Attachments

          Issue Links

            Activity

            Hide
            jsick Jonathan Sick added a comment -

            CFHT example run outputs.

            Show
            jsick Jonathan Sick added a comment - CFHT example run outputs.
            Hide
            frossie Frossie Economou added a comment -


            Great stuff. My main area is concern is that we introduced quantities (which I am all in favour of - see for example the bugs you uncovered by doing that switch!) when we were thinking of validate_base as a relatively standalone package. Recent architectural discussions within SQuaRE are leaning towards tighter integration with the stack, which means that we should make a note that we should probably explicitly RFC it if we go down that route in F17. But the work in the ticket is complete (and then some!) so wrap it up and ship it!

            Show
            frossie Frossie Economou added a comment - Great stuff. My main area is concern is that we introduced quantities (which I am all in favour of - see for example the bugs you uncovered by doing that switch!) when we were thinking of validate_base as a relatively standalone package. Recent architectural discussions within SQuaRE are leaning towards tighter integration with the stack, which means that we should make a note that we should probably explicitly RFC it if we go down that route in F17. But the work in the ticket is complete (and then some!) so wrap it up and ship it!
            Hide
            jsick Jonathan Sick added a comment -

            Absolutely. I've merge DM-7933 to the u/sqre/measurement-api integration branch. Before I merge to master on validate_drp we'll do an RFC that covers

            • Adding validate_base as a new package to the lsst_ci top-level package.
            • Exposing astropy quantities as an external API in the validate_base API.
            Show
            jsick Jonathan Sick added a comment - Absolutely. I've merge DM-7933 to the u/sqre/measurement-api integration branch. Before I merge to master on validate_drp we'll do an RFC that covers Adding validate_base as a new package to the lsst_ci top-level package. Exposing astropy quantities as an external API in the validate_base API.

              People

              Assignee:
              jsick Jonathan Sick
              Reporter:
              jsick Jonathan Sick
              Reviewers:
              Frossie Economou
              Watchers:
              Frossie Economou, Jonathan Sick
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:

                  Jenkins

                  No builds found.