Description of problem: In today's rawhide there is a file conflict which results in the following yum output: Transaction Check Error: file /usr/bin/gbf-am-parse from install of anjuta-1:2.25.901-2.fc11.x86_64 conflicts with file from package gnome-build-2.24.1-1.fc10.x86_64 file /usr/bin/gbf-mkfile-parse from install of anjuta-1:2.25.901-2.fc11.x86_64 conflicts with file from package gnome-build-2.24.1-1.fc10.x86_64 Version-Release number of selected component (if applicable): How reproducible: Steps to Reproduce: 1. 2. 3. Actual results: Expected results: Additional info:
GNOME-Build has been merged with Anjuta 2.25.4. In Fedora, anjuta >= 1:2.25.901-1 obsoletes gnome-build. Related to this is this ticket filed with the Release Engineering Team to block gnome-build: https://fedorahosted.org/rel-eng/ticket/1283
There may be something wrong with the obsoletes, otherwise I would have expected that updating to a version that obsoleted gnome-build would have resulted in the removal of gnome-build. If the obsoletes is correct, then maybe there is a yum issue.
I took a look at the spec file and the Obsoletes specification is incorrect. The spec file uses: Obsoletes: gnome-build <= 2.24.1-1 I think either of the following could be used: Obsoletes: gnome-build <= 2.24.1 Obsoletes: gnome-build <= 2.24.1-1.fc10
http://fedoraproject.org/wiki/Packaging/NamingGuidelines has an example in " Renaming/replacing existing packages " where it uses "Obsoletes: foo < 2:1.0-4" I tried with other options also but they all reproduce the conflict. It seems to me the issue is some other place.
If "4" was the release that would be correct. However in this case the release of gnome-build is "1.fc10". "1.fc10" > "1" by rpms comparison method. This results in gnome-build-2.24.1-1.fc10 > gnome-build-2.24.1-1 and not obsoleted by the current version on anjuta. The file conflict is always going to be there if both packages are installed. You need to fix the obsoletes requirement so that the lastest version of gnome-build is obsoleted. You also have the option to leave the release name off and only the name and version will be used. This is probably the better option in case there is another release in F10 before its end of life. What other options did you try? Did you actually try what I suggested?
I tried both one by one : Obsoletes: gnome-build <= 2.24.1 Obsoletes: gnome-build <= 2.24.1-1.fc10 but on installing anjuta-*.rpm same conflicts are reproduced.
I have confirmed with Obsoletes: gnome-build <= 2.24.1 a local yum install doesn't remove gnome-build. I suspect that something needs something provided by gnome-build that isn't provided by anjuta. These are provided by gnome-build, but not anjuta: gnome-build = 2.24.1-1.fc10 gnome-build(x86-32) = 2.24.1-1.fc10 libgbf-1.so.2 libgbf-widgets-1.so.2 perl(GBF::Make) = 2.24.1-1.fc10 libgbf-1.so.2 is required by anjuta and gnome-build. Same for libgbf-widgets-1.so.2. (Of stuff I have installed as I used rpm to do the check.) I am going to do some further testing, but since builds of anjuta take a few minutes on my box I'll commit at least this much.
The old anjuta requires libgbf-1.so.2 and libgbf-widgets-1.so.2, but the new one doesn't. However the new one seems to require 'perl(GBF::Make)'. I'll see if I can do something to fudge that to see if that is what is blocking the replacement.
I added a bogus provides to provide perl(GBF::Make) and that didn't help. I am now going to try taking the version off the Obsoletes to see if it is version related. (That shouldn't be done in a released version.) I tried using the -v option on yum to see if that would indicate anything about its obsoletes handling, but it didn't yield any useful information.
It may be the testing process that is at issue. The yum documentation suggest that the obsoletes feature only works during an 'update'. When I was testing updating or install specifically the anjuta rpms I didn't see anything that indicated obsoletes processing was going on. I think that it may be to see the effects, anjuta has to have the new obsoletes value in the repo metadata for it to take effect. I don't have the time now to try createrepo with a munged anjuta, but you might try it, or at least push one with the change and then it will be testable in rawhide. You need to push a change to fix the problem with perl(GBF::Make) in any case.
perl(GBF::Make) was earlier provided by gnome-build. After anjuta merged it .. they some how forgot to include perl module and that is why it is giving perl dependceny problem. Will patch it from upstream. They probably have fixed in cvs. Will look into conflict also ASAP.
*** Bug 485877 has been marked as a duplicate of this bug. ***
This is solved now and in rawhide. I did tested it on my local rawhide box also. In case problem persist, please feel free to reopen.
Did we really fix this one? https://bugzilla.redhat.com/495200
I gave up trying to retest it and just manually removed gnome-build a long time ago. I thought you would be able to easily retest it yourself and I didn't want to keep my system in a screwed up state waiting for a proper fix. Make sure you have the .fc11 (or .fc10) as part of the release name in the obsoletes command.
*** Bug 495200 has been marked as a duplicate of this bug. ***
anjuta-2.26.0.1-2.fc11 really, really fixes this. Sorry for all the confusion and delay.