Files
macports-base/config/mp_version
T
Juan Manuel Palacios ce8a77c858 Revert part of https://trac.macports.org/changeset/43375, as my understanding of the floating point to x.y.z transition was indeed a bit flawed.
@MP_VERSION@ and base/config/mp_version being in the old floating point format, and @MACPORTS_VERSION@ and
base/config/macports_version being their x.y.z counterparts, the correct analysis goes as follows:

 1. 1.700 and previous clients need to read the floating point version number in newer releases,
 as otherwise they'll be comparing, e.g., 1.700 vs. 1.8.0, which will fail to trigger any upgrade.
 Therefore, revive the base/config/mp_version file for it to exist in svn && rsync, which is all that's
 needed to get selfupdate working for old clients again (given that they prefer that file over
 config/base/macports_version).

 2. Remove the special-case hack in macports::selfupdate, since base/config/mp_version @ 1.800
 is enough to upgrade all 1.700 and previous clients to 1.8.x, while those in turn have no need for the
 hack at all (they'll only read base/config/macports_version while selfupdating and thus rpm-vercomp
 its contents successfully against their internal version number, i.e. @MACPORTS_VERSION@).

 3. Proposal: freeze base/config/mp_version @ 1.800, since point 1 above takes care of all pre 1.8.0
 clients across the transition and point 2 of all post 1.8.0 clients going forward (they record @MACPORTS_VERSION@,
 rather than @MP_VERSION@, as their version number and compare that against base/config/macports_version
 when selfupdating, so there will be no need to update base/config/mp_version beyond anything  greater
 than the last floating point release, i.e. 1.700).

So, from this analysis I conclude that the only thing necessary to get pre 1.8.0 clients across to 1.8.x,
added to what was done up until https://trac.macports.org/changeset/43375, is the existence of base/config/mp_version in svn, and as soon as
we remove it we break selfupdate backwards compatibility with them, at which point we'll need to instruct
stragglers to either force the selfupdate or install from the dmg.

PS: I've thought all this out rather extensively, so I believe this approach is functional, but don't be shy to pull
my ear if I again got it wrong!

git-svn-id: https://svn.macports.org/repository/macports/trunk/base@43571 d073be05-634f-4543-b044-5fe20cf6d1d6
2008-12-12 03:11:11 +00:00

2 lines
6 B
Plaintext