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

Use dependency hashes as version suffixes in eups tags for builds

    XMLWordPrintable

    Details

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

      Description

      In lsst_build, we use versiondb to maintain some form of state and assign a sequence number to the suffix of a product's version, as seen in a build's manifest, in the case when (1) a product has been built before (as evidenced by state in versiondb), and (2) the composition of the dependencies for that product has changed.

      This shows up as a sequence, for example, in the eups tag. For a recent daily tag, you would see afw, versioned as:
      20.0.0-4-gde602ef96+5

      • in this case, the suffix sequence number is "5".

      We believe that sequence number is not particularly useful for eups tags, as it is based on the dependency composition at build time, especially for tags which are not daily/weeklies, could include an older composition of dependencies, and that maintaining the sequence number also requires a maintained state in versiondb for calculation.

      We would like to replace the suffix with a hash-based suffix of dependency commits or versions (e.g. merkle tree), which is computable. There is already support for this in lsst_build which hashes based on version, although we may switch to using just a commit.

      As an example, under this proposal, a version which looks like this:
      20.0.0-4-gde602ef96+5

      ... would change to a version which looks like this:
      20.0.0-4-gde602ef96+0891a2f3cc

      Note that products without dependencies will not have any suffixes.

        Attachments

          Issue Links

            Activity

            There are no comments yet on this issue.

              People

              Assignee:
              bvan Brian Van Klaveren
              Reporter:
              bvan Brian Van Klaveren
              Watchers:
              Brian Van Klaveren, Tim Jenness
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:
                Planned End:

                  Jenkins

                  No builds found.