Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 93984

Summary: gnome-panel locks dependency on old version of evolution-data-server
Product: Gentoo Linux Reporter: Andrew Esh <andrew_esh>
Component: New packagesAssignee: Gentoo Linux Gnome Desktop Team <gnome>
Status: RESOLVED CANTFIX    
Severity: normal    
Priority: High    
Version: unspecified   
Hardware: All   
OS: All   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: Patches gnome-panel-2.8.3.ebuild to fix evolution-data-server version requirement.
Proposed new gnome-panel-2.8.3.ebuild

Description Andrew Esh 2005-05-25 12:22:54 UTC
While upgrading Evolution to 2.2.1.1, also upgraded
gnome-extra/evolution-data-server from version 1.0.4 to version 1.2.1.
Afterward, emerge updates wanted to downgrade it back to version 1.0.4. Found
that gnome-extras/gnome-panel-2.8.2.ebuild has an RDEPEND line like this: "eds?
( =gnome-extra/evolution-data-server-1.0* )", which selects on "1.0*" versions.
Changed to "eds? ( >=gnome-extra/evolution-data-server-1.0* )", which allows the
use of version 1.2.1. Now emerge doesn't try to downgrade it anymore.

Attaching patch and the updated ebuild file.

NOTE: This change fixes the evolution-data-server(EDS) version selection only.
If gnome-panel is not fully forward compatible with EDS version 1.2.1, then EDS
will have to be slotted, and both versions 1.0.4 and 1.2.1 will have to be
emerged. Such compatibility was not fully tested.

Reproducible: Always
Steps to Reproduce:
1. Set ~x86 mask and emerge evolution-data-server 1.2.1 in the presence of
gnome-panel-2.8.3
2. emerge -uDav --newuse world
3. emerge asks to downgrade back to eds version 1.0.4

Actual Results:  
root@charon:andrewes # emerge -uDav --newuse world

These are the packages that I would merge, in order:

Calculating world dependencies ...done!
[ebuild     UD] gnome-extra/evolution-data-server-1.0.4 [1.2.1] -debug -doc
+ldap 0 kB

Total size of downloads: 0 kB

Do you want me to merge these packages? [Yes/No] no


Expected Results:  
root@charon:andrewes # emerge -uDav --newuse world

These are the packages that I would merge, in order:

Calculating world dependencies ...done!

Total size of downloads: 0 kB

Nothing to merge; do you want me to auto-clean packages? [Yes/No] no
Comment 1 Andrew Esh 2005-05-25 12:24:07 UTC
Created attachment 59809 [details, diff]
Patches gnome-panel-2.8.3.ebuild to fix evolution-data-server version requirement.

Patches gnome-panel-2.8.3.ebuild to fix evolution-data-server version
requirement.
Comment 2 Andrew Esh 2005-05-25 12:25:18 UTC
Created attachment 59810 [details]
Proposed new gnome-panel-2.8.3.ebuild

Fixes evolution-data-server version requirement.
Comment 3 Andrew Esh 2005-05-25 12:53:13 UTC
(In reply to comment #0)
> Found that gnome-extras/gnome-panel-2.8.2.ebuild has an RDEPEND line like
this: "eds?
> ( =gnome-extra/evolution-data-server-1.0* )", which selects on "1.0*" versions.
> Changed to "eds? ( >=gnome-extra/evolution-data-server-1.0* )", which allows the
> use of version 1.2.1. Now emerge doesn't try to downgrade it anymore.

> NOTE: This change fixes the evolution-data-server(EDS) version selection only.
> If gnome-panel is not fully forward compatible with EDS version 1.2.1, then EDS
> will have to be slotted, and both versions 1.0.4 and 1.2.1 will have to be
> emerged. Such compatibility was not fully tested.

After doing the above change, and then doing a revdep-rebuild, a rebuild of
gnome-panel was attempted. Library checks failed for libecal. gnome-panel-2.8.3
appears to require libecal-1.0, while evolution-data-server provides
libecal-1.2. They need to be slotted.
Comment 4 Daniel Gryniewicz (RETIRED) gentoo-dev 2005-05-25 13:21:36 UTC
eds cannot be slotted.  You will not be able to run both evolution-2.2 and gnome
2.8, as evolution 2.2 is part of gnome 2.10.  Probably, evolution 2.2 should be
masked as long as gnome 2.10 is.
Comment 5 Andrew Esh 2005-05-25 14:07:04 UTC
(In reply to comment #4)
> eds cannot be slotted.  You will not be able to run both evolution-2.2 and gnome
> 2.8, as evolution 2.2 is part of gnome 2.10.  Probably, evolution 2.2 should be
> masked as long as gnome 2.10 is.

Well, I slotted it in my portage overlay, and I have 1.0.4 and 1.2.1 both
installed now. The latter probably overwrote parts of the former, so I bet 1.0.4
isn't fully there, but enough of it is to cause gnome-panel to emerge correctly.
I have libecal-1.0 and libecal-1.2, so gnome-panel and evolution are satisfied,
respectively. revdep-rebuild has stopped complaining now, too.

I'll leave well enough alone and drop this issue here. I don't use gnome enough
to be making rational choices for its ebuilds. I'm an Evolution user.

BTW: Why can't eds be slotted? I want to know how to look at a package and tell
that it can't be, so I don't waste my time trying.
Comment 6 Daniel Gryniewicz (RETIRED) gentoo-dev 2005-05-25 20:47:39 UTC
In general, a package can be slotted if everything it installs is versioned in
name (either in file name or in directory name), and you can run two different
versions at the same time without confusing ether version or anything depending
them.  Eds is actually quite good about this already, and could probably be made
to be slotted, but, since it's part of gnome 2.10 now, and will be an integral
part of gnome going forward, it's probably better to just tie it to the correct
gnome version.
Comment 7 Andrew Esh 2005-05-26 06:50:09 UTC
(In reply to comment #6)
> but, since it's part of gnome 2.10 now, and will be an integral
> part of gnome going forward, it's probably better to just tie it to the correct
> gnome version.

Thanks for the reply. I know more now.

The problem with tying it to Gnome is: I'm a KDE user. Aside from any Gnome
libraries that are actually linked to Evolution, I don't need Gnome. I think
that's why the developers didn't form a dependency on a version of Gnome,
because Evolution can be run without it, and shouldn't depend on it and pull it
in. Maybe there is some langauge in the RDEPEND syntax that can be used to
express such a dependency.

Comment 8 Daniel Gryniewicz (RETIRED) gentoo-dev 2005-05-26 08:45:59 UTC
The real problem is evolution coming out of ~arch before the rest of gnome 2.10.
 Why is gnome-panel installed just for evo?  That sounds like a bizarre
dependency chain.  I'll look into it.