Re: Unversioned and >/=/>= obsoletes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Fixed in python and python-docs

Charalampos Stratakis
Associate Software Engineer
Python Maintenance Team, Red Hat


----- Original Message -----
From: "Igor Gnatenko" <ignatenko@xxxxxxxxxx>
To: "Development discussions related to Fedora" <devel@xxxxxxxxxxxxxxxxxxxxxxx>, devel-announce@xxxxxxxxxxxxxxxxxxxxxxx
Sent: Friday, September 2, 2016 1:14:13 PM
Subject: Unversioned and >/=/>= obsoletes

All guidelines mandate the use of </<= Obsoletes, but unfortunately we
have some number of packages (179 source rpms -> 292 binary rpms) with
unversioned Obsoletes or with >/=/>= Obsoletes.

It is causing problems with upgrade (if package is getting re-added)
or with 3rd-party repositories. Older package is obsoleting new
package.

Problem categories (in following text by "never" I mean latest N-2 releases):

* Package/SubPackage was never built in Fedora
Package "python" has "Obsoletes: python2" which was never built ->
drop Obsoletes
SubPackage "qpid-proton-c" of "qpid-proton" has "Obsoletes:
qpid-proton" which was not the package for long time -> drop Obsoletes

* Package replacement
Package "storaged" has "Obsoletes: udisks2" -> take latest version
from koji (2.1.7-1) and make Obsoletes versioned: udisks2 < 2.1.7-2
storaged is not simple use-case as it replaces udisks2, but latter is
still not retired.

* "=" Obsoletes
"rubygem-vte" has "Obsoletes: ruby-vte = 3.0.9-1.fc26" (probably it's
macro in spec) which seems really weird as it will not obsolete
F24/F25 with such version

* Obsoletes by Provides
It doesn't work to prevent undefined behavior. Imagine you have
installed "A" and "B", both providing "C". Package "D" has "Obsoletes:
C", it should not remove "A" and "B".
** %{?_isa}
"glibc-headers" has "Obsoletes: glibc-headers(i686)". %{?_isa} is just
text, it's not part of architecture or something else.
** Other provides
"rubygem-http_connection" has "Obsoletes:
rubygem(right_http_connection)". Latter is virtual provides.

* Weird obsoletes (broken)
"krb5-server" has "Obsoletes: krb5-server-1.14.3-8.fc26.i686".
Basically it will not obsolete anything because it's threated as
package name (and we definitely don't have such package name).

* >/>= Obsoletes
"vdsm" has "Obsoletes: vdsm-infra >= 4.16.0". It's almost same as
unversioned Obsoletes. So it must not be used.

Table of affected packages/maintainers:
https://ignatenkobrain.fedorapeople.org/broken-obsoletes/2016-09-02/broken-obsoletes.txt
-- 
-Igor Gnatenko
--
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxxx
https://lists.fedoraproject.org/admin/lists/devel@xxxxxxxxxxxxxxxxxxxxxxx
--
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxxx
https://lists.fedoraproject.org/admin/lists/devel@xxxxxxxxxxxxxxxxxxxxxxx




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]
  Powered by Linux