obsoleting in compat packages: is it right?
Michael Schwendt
mschwendt.tmp0701.nospam at arcor.de
Thu Sep 6 22:36:16 UTC 2007
On Mon, 27 Aug 2007 21:26:43 +0200, Patrice Dumas wrote:
> Hello,
>
> Sometime there are obsolete of older packages by compat packages. The
> idea is that when coming from an old package a compatible package is
> needed. This is what is done in automake16. It is a compat package, and
> it has
>
> Obsoletes: automake = 1.6.3
>
> It makes sense, however I am not sure that it is that right, since
> somebody having automake-1.6.3-* would also want to have the latest
> automake version.
>
> Another issue is that for this scheme to be really effective, one should
> have in automake15
> Obsoletes: automake < 1.6.0 and automake >= 1.5.0
>
> and in automake16
> Obsoletes: automake < 1.7.0 and automake >= 1.6.0
>
> which, unless I am wrong, cannot be done in rpm.
As in the range 1.5.0 <= x < 1.6.0 ?
I don't think that is possible with "Obsoletes".
With Requires it is different, since all Requires must be satisfied.
> So, what do you think? Is that practice wrong, right, or should it be
> left to the maintainer?
>
> I would personally think that it is wrong, it could be right if one could
> express that when updating 1.6.x, this package should be installed in
> addition to the latest package with same name.
IMO it is right. "Obsoletes" in compat packages is used to rename
a package, to move it from the old name to the new name. It doesn't
matter whether there is a separate package that upgrades the old
one:
automake = 1.6.3 renamed to automake16 = 1.6.3
automake = 1.10 replaces automake = 1.6.3
Also consider that a manual "rpm -Uvh automake16*.rpm" should get rid
of the obsolete automake = 1.6.3, too, when they cannot coexist.
The version upgrade can be requested on demand.
More information about the fedora-devel-list
mailing list