Obsoletes, Obsoletes, Obsoletes

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

 



Oh no! Another one of those threads... ;-)

Well, a comment from Thomas Moschny inspired me to examine "Obsoletes"
tags in our package collection a bit.

How to find "Obsoletes" tags, which are not high enough?

For example, it happens regularly that even with Fedora's Package Rename
Process, which requires a package review, incorrect Obsoletes (the $obsver
in the guidelines) manage to slip through because of the dist tag. The
supposed-to-be-obsolete package remains installed and installable. Or
worse, if not retired properly, it might return with a bumped release
after a rebuild:

      pexpect-0:2.3-9.fc19.noarch  isn't obsoleted
      pexpect <= 0:2.3-9  obsoleted by  python-pexpect-0:2.5.1-6.fc19.noarch

      pexpect-0:2.3-10.fc20.noarch  isn't obsoleted
      pexpect <= 0:2.3-9  obsoleted by  python-pexpect-0:2.5.1-6.fc19.noarch

What has happened? It should have been retired in Fedora 18 already when
it got obsoleted.


So, my first idea has been to look at all packages in the repositories and
search for builds with an EVR that is higher than an existing Obsoletes
tag for that package name. Huge output! A nightmare. A Herculean task to
check them all (until the script may be trusted), but easy enough to
skim over the list and perform a plausibility check:

  latte-integrale
      4ti2-0:1.5-3.fc18.i686  isn't obsoleted
      4ti2 < 0:1.5-1  obsoleted by  4ti2-0:1.5-10.fc20.i686

Indeed. "latte-integrale" is the src.rpm name. It builds a "4ti2"
binary rpm with an EVR higher than the Obsoletes tag. Checking the 
spec file in git:

  %package -n 4ti2
  # This can be removed once Fedora 18 reaches EOL.
  Provides:       4ti2 = %{version}-%{release}
  Obsoletes:      4ti2 < 1.5-1

And there are many more like that. We're really bad here.
I don't even understand that spec file. _Why_ does it add such
Provides (those are automatic for %name anyway) and self-Obsoletes?

Anyway, enjoy the full list here:
http://mschwendt.fedorapeople.org/dubious_Obsoletes_in_Rawhide_20130821.txt


On to the second experiment. Ancient Obsoletes! Which Obsoletes tags
are too low for any current build in Fedora 16 up to Rawhide?
It's a shorter list:
http://mschwendt.fedorapeople.org/ancient_Obsoletes_in_Rawhide_20130821.txt

But hey, what the heck is stuff like this?

erlang
    erlang-0:R14B-04.1.fc16.i686  is oldest
    erlang < 0:R13B-04.5  obsoleted by  erlang-erl_interface-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-et-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-crypto-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-examples-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-sasl-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-compiler-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-inviso-0:R15B-03.3.fc18.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-reltool-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-syntax_tools-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-diameter-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-eldap-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-erts-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-webtool-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-cosNotification-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-parsetools-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-jinterface-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-dialyzer-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-gs-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-cosTime-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-toolbar-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-tools-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-tv-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-megaco-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-eunit-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-percept-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-ssh-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-asn1-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-erl_docgen-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-ic-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-edoc-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-wx-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-appmon-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-runtime_tools-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-orber-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-stdlib-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-cosFileTransfer-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-cosEvent-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-snmp-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-test_server-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-cosEventDomain-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-cosProperty-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-ssl-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-mnesia-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-debugger-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-pman-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-typer-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-otp_mibs-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-xmerl-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-kernel-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-common_test-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-hipe-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-cosTransactions-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-os_mon-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-inets-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-public_key-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-odbc-0:R16B-01.1.fc20.1.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-docbuilder-0:R14B-04.1.fc16.i686
    erlang < 0:R13B-04.5  obsoleted by  erlang-observer-0:R16B-01.1.fc20.1.i686

# repoquery --whatobsoletes erlang|wc -l
112
-- 
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxxx
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct





[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