Bug 168563

Summary: Versioned self-obsoletes do not work
Product: [Fedora] Fedora Reporter: Ville Skyttä <scop>
Component: rpmAssignee: Paul Nasrat <nobody+pnasrat>
Status: CLOSED WONTFIX QA Contact: Mike McLean <mikem>
Severity: medium Docs Contact:
Priority: medium    
Version: 4CC: rdieter
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2005-09-22 18:19:36 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
test-1.0 (obsoletes test = 1.1)
none
test-1.1 none

Description Ville Skyttä 2005-09-17 10:09:33 UTC
Using versioned self-obsoletes would be a convenient way to avoid Epoch bumps 
in a lot of cases.  However, they don't work (tested on FC-4, I don't have a 
more recent system to test with).  Reproducer specfiles attached. 
 
# rpm -qp --provides test-1.0-1.i386.rpm 
test = 1.0-1 
# rpm -qp --provides test-1.1-1.i386.rpm 
test = 1.1-1 
# rpm -qp --obsoletes test-1.0-1.i386.rpm 
test = 1.1 
# rpm -qp --obsoletes test-1.1-1.i386.rpm 
(none) 
# rpm -i test-1.0-1.i386.rpm 
# rpm -U test-1.1-1.i386.rpm 
# rpm -q test 
test-1.1-1 
# rpm -U test-1.0-1.i386.rpm 
        package test-1.1-1 (which is newer than test-1.0-1) is already 
 
I would expect 1.1 not to be treated as an upgrade over 1.0, but yes the other 
way around.

Comment 1 Ville Skyttä 2005-09-17 10:09:33 UTC
Created attachment 118929 [details]
test-1.0 (obsoletes test = 1.1)

Comment 2 Ville Skyttä 2005-09-17 10:10:14 UTC
Created attachment 118930 [details]
test-1.1

Comment 3 Jeff Johnson 2005-09-22 18:19:36 UTC
Versioned: self-obsoletes is bad craziness. You really expect a package monkey to figure out how to use 
an overloaded Obsoletes: functionality in sensible and general ways?

Comment 4 Ville Skyttä 2005-09-22 18:46:00 UTC
What "overloaded Obsoletes"?  Consistent behaviour is easy to understand.