On Mon, 2015-01-26 at 10:58 +0100, Corinna Vinschen wrote: > On Jan 25 18:20, Corinna Vinschen wrote: > > Example: > > > > foo-1.22-1 is installed > > foo-1.23-1 is curr > > foo-1.24-1 is test > > ==> Setup chooses 1.23-1 as default. > > > > User installs 1.24-1. Next Setup run: > > > > foo-1.24-1 is installed > > foo-1.23-1 is curr > > foo-1.24-1 is test > > ==> Setup chooses 1.24-1 as default. > > > > Maintainer releases a new test version: > > > > foo-1.24-1 is installed > > foo-1.23-1 is curr > > foo-1.24-2 is test > > ==> Setup chooses 1.24-2 as default. > > > > Maintainer releases test version as curr version: > > > > foo-1.24-2 is installed > > foo-1.24-2 is curr > > ==> Setup chooses 1.24-2 as default. > > > > Maintainer releases new test version: > > > > foo-1.24-2 is installed > > foo-1.24-2 is curr > > foo-1.25-1 is test > > ==> Setup chooses 1.24-2 as default.
These all make sense to me. > Another case occured to me a few minutes ago. > > What if the "test" version gets removed, without updating "curr"? > > foo-1.24-1 is installed > foo-1.23-1 is curr > no test version A similar question would arise if 1.24-1 had been "curr", then pulled for some reason and not replaced immediately with a 1.24-2. (In such a case on Fedora, the downgrade would be forced through an epoch bump.) Also relevant would be the case where a newer version of a package is installed from a third-party repository (e.g. cmake in Ports), then in a subsequent run, the download cache was removed and said repository is not selected. > Now what? > > Right now, Setup pulls the user back to "curr", so 1.23-1 will be > preselected. This is more or less equivalent to `yum distro-sync' > on Fedora. > > What would make more(?) sense is sticking to "installed" instead, > because the version number is higher than the "curr" version. This > behaviour would reflect the behaviour of `yum update'. > > What do you think? Unfortunately the answer depends on the scenario. Would it be feasible to support both modes in setup? Yaakov