Open mjuric opened 9 years ago
Q: Why not just use the version of (say) lsst_distrib? A.1: Because there's a new version out with every buildbot rebuild -- it tracks the master. I think LSST's internal versioning scheme would have to change to support something like this.
Current LSST release versioning is implemented using EUPS tags. For example, to obtain the "10.1" release of the software, a user is advised to do:
or
This is very useful, as it makes it easy to install well QA-ed releases of the software suite.
Conda has no concept of tags, so a different mechanism is needed to provide similar functionality. There are two options I can think of:
channels: for each EUPS tag, we create a new channel. The analog of above would then be:
metapackages: for each EUPS tag, we create a
-release
metapackage on the few top-level products:The pros of the former include almost perfect equivalence with EUPS tag functionality, and a mental model of a release branch (i.e., the
releases/0.10.1
channel could be updated with further point releases). The major con is the requirement to specify a full URL as-c
argument.The pros of the latter include similarity to current conda practices and simplicity. The cons include having to remember to append
-release
to the package name, and either having to produce-release
metapackages for all packages, (to enable something likeconda install lsst-afw-release=0.10.1
), or doing it just for the top-level packages and not providing that functionality.