Uploaded image for project: 'Request For Comments'
  1. Request For Comments
  2. RFC-296

Add treecorr and libffi to lsst_ci dependencies

    Details

    • Type: RFC
    • Status: Implemented
    • Resolution: Done
    • Component/s: DM
    • Labels:
      None

      Description

      I would like to add to validate_drp a dependency on treecorr and in turn libffi.

      This will not add dependencies to lsst_apps or lsst_distrib.

      Implementation is likely
      1. Create wrapper install packages for libffi, cffi, and treecorr. The Python packages should be trivial. libffi is probably easy but not something I know how to do just off the top of my head; it's also something is likely already instlled on most systems, so we should decide whether to detect the already-installed system version.
      2. Add treecorr dependence to validate_drp table file.

      TreeCorr is a "[c]ode for efficiently computing 2-point and 3-point correlation functions" and is being proposed for use in validate_drp to calculate the correlation function of the PSF residual ellipticity (DM-8951). The GitHub repo is here:

      https://github.com/rmjarvis/TreeCorr

      TreeCorr depends on the following Python packages.

      numpy
      future
      fitsio
      pandas
      pyyaml
      cffi

      cffi and fitsio are the two packages that are not already dependencies in lsst_distrib or lsst_sims. The Python package cffi in turns depends on the C library libffi

      This present RFC is only to add dependency to validate_drp and thus lsst_ci. However, in the future one can imagine correlation calculations that might be made in parts of lsst_apps and TreeCorr might be of use then.

        Attachments

          Issue Links

            Activity

            Hide
            wmwood-vasey Michael Wood-Vasey added a comment -

            1. Hmmm... thanks for the tip on libff.

            2. Yes, we still need to patch treecorr to make the tests pass without a FITS reader.

            Show
            wmwood-vasey Michael Wood-Vasey added a comment - 1. Hmmm... thanks for the tip on libff . 2. Yes, we still need to patch treecorr to make the tests pass without a FITS reader.
            Hide
            tjenness Tim Jenness added a comment -

            Tickets please.

            Show
            tjenness Tim Jenness added a comment - Tickets please.
            Hide
            wmwood-vasey Michael Wood-Vasey added a comment -

            Adopted.

            Will be implemented in:

            DM-9960 Create wrapper install packages for libffi and cffi
            DM-9961 Add treecorr to validate_drp and lsst_ci dependencies

            Show
            wmwood-vasey Michael Wood-Vasey added a comment - Adopted. Will be implemented in: DM-9960 Create wrapper install packages for libffi and cffi DM-9961 Add treecorr to validate_drp and lsst_ci dependencies
            Hide
            wmwood-vasey Michael Wood-Vasey added a comment -

            Tim Jenness I'm construct the packages but realize that the template I'm following just stores a specific tar ball in upstream/. As long as we're doing that, we're pinning to a version. As long as we're pinning to a version, we may as well pin to v3.2.3 for treecorr.

            I'd rather not add two shim packages if we don't have to. And we still would have to skip the tests for treecorr to skip the fits I/O check (either through a scons configuration or monkey patching).

            1. Should I be using a different method than an upstream/ tarball to include treecorr?
            2. If not, do you support pinning to v3.2.3.

            Show
            wmwood-vasey Michael Wood-Vasey added a comment - Tim Jenness I'm construct the packages but realize that the template I'm following just stores a specific tar ball in upstream/ . As long as we're doing that, we're pinning to a version. As long as we're pinning to a version, we may as well pin to v3.2.3 for treecorr . I'd rather not add two shim packages if we don't have to. And we still would have to skip the tests for treecorr to skip the fits I/O check (either through a scons configuration or monkey patching). 1. Should I be using a different method than an upstream/ tarball to include treecorr ? 2. If not, do you support pinning to v3.2.3 .
            Hide
            tjenness Tim Jenness added a comment -

            Good plan. Please add a note somewhere in the package (README?) indicating that you are explicitly using an old version.

            Show
            tjenness Tim Jenness added a comment - Good plan. Please add a note somewhere in the package (README?) indicating that you are explicitly using an old version.

              People

              • Assignee:
                wmwood-vasey Michael Wood-Vasey
                Reporter:
                wmwood-vasey Michael Wood-Vasey
                Watchers:
                Bob Armstrong, Chris Morrison, Jim Bosch, John Parejko, Michael Wood-Vasey, Tim Jenness
              • Votes:
                0 Vote for this issue
                Watchers:
                6 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:
                  Planned End:

                  Summary Panel