https://bugzilla.novell.com/show_bug.cgi?id=208447
Summary: rpm Obsoletes does not handle virtual dependencies Product: openSUSE 10.2 Version: Alpha 4 plus Platform: Other OS/Version: Other Status: NEW Severity: Major Priority: P5 - None Component: Basesystem AssignedTo: mls@novell.com ReportedBy: rguenther@novell.com QAContact: qa@suse.de CC: aj@novell.com
rpm currently does not allow updating with -Uhv that would require removal of another package providing the same virtual provides.
Consider:
libgcc41 Provides: libgcc = 4.1.0 Obsoletes: libgcc < 4.1.0
libgcc42 Provides: libgcc = 4.2.0 Obsoletes: libgcc < 4.2.0
if now libgcc41 is installed and we want to install libgcc42, rpm does not know it needs to deinstall libgcc41, even though libgcc42 obsoletes libgcc.
If we know beforehand that libgcc41 exists at the time of packaging libgcc42 this can be worked around by obsoleting libgcc41 as well in libgcc42.
But now let's introduce a libgcc33 package which libgcc42 does not know about and things break again.
libgcc33: Provides: libgcc = 3.3.3 Obsoletes: libgcc < 3.3.3
Somehow teaching rpm to do the right thing here (deinstall all providers of libgcc < $VERSION if libgcc < $VERSION is obsoleted by a to-be-installed package) is essential.
https://bugzilla.novell.com/show_bug.cgi?id=208447
mls@novell.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |WONTFIX
------- Comment #1 from mls@novell.com 2006-09-29 07:15 MST ------- I don't think so ;-)
https://bugzilla.novell.com/show_bug.cgi?id=208447
------- Comment #2 from rguenther@novell.com 2006-09-29 07:19 MST ------- But what is you proposed solution to that problem?
https://bugzilla.novell.com/show_bug.cgi?id=208447
Richard Guenther rguenther@novell.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Found By|Other |Development