Red Hat Bugzilla – Bug 137229
Evolution wrongly Requires: spamassassin
Last modified: 2007-11-30 17:10:53 EST
Evolution has to be installed with nodeps because I do not have and do
not want spamassassin installed. Evolution does not require
spamassassin, and the RPM should not claim that it does.
Evolution calls out to spamassassin to do client-side junk mail
filtering on accounts where you enable it. So if you don't want to do
client-side filtering, yes, this dependency (and the perl deps it
pulls in) is unnecessary.
However, if you don't have it installed and turn on client-side junk
filtering for an account, evolution will silently fail. The package
could be patched to give better error handling, and warn about the
missing feature in the account configuration dialogs (or hide the
feature) - though that's a low priority job for me.
The upstream maintainers specifically asked me to add this dependency,
presumably in order to avoid having to write the handling, and to
minimise bug reports they get involving calling out to missing
(Does RPM have any kind of "partial dependency" feature, where we can
say that a package will be improved by the presence of another package
, but doesn't need it? Dependencies seem to be very much a boolean
property to me)
Adding the requirement for FC3 as a quick and dirty workaround for the
brokenness does seem like a reasonable enough answer, I suppose.
Can we back it out in rawhide though and fix the thing properly?
Well, Ubuntu shipped an Evo without spamassassin and thats never the
best idea because suddenly junk mail filtering seems really fast (just
that it doesn't work). Short of patching out the Junk/No Junk icons
when spamassassin isn't detected, doesn't this become rather difficult?
How about fixing the nonexistent error handling so that it correctly
warns the user that SA isn't present or isn't working, and behaves as
if junk filtering is disabled? And yes, disabling the Junk crap would
be nice -- it would be especially useful to be able to read my 'junk'
IMAP folder with Evolution again, rather than only being able to
access it with PINE.
The error handling was going to be fixed for FC4 so the bogus requirement can be
removed, wasn't it?
How do we handle "partial dependencies"? Evolution's plugin system may have
made it easier to patch things so that the spamassassin dep really is optional
(with appropriate modifications to the UI). However, I'm not sure how to do
this without causing complications in the installer for the end-user.
I believe most people won't want to worry about this, and would want the
client-side junk filtering in Evolution without having to tick anything in the
So perhaps we could factor put the client-side junk filtering into an
evolution-junk-filtering package, built from the evolution.src.rpm, which would
have the spamassassin dep. This package would be selected by default if
Evolution was selected, but could be unselected for people wanting to optimize
Adding katzj to CC, hoping for suggestions on how to achieve this in the installer.
Regarding comment #6, to my knowledge rpm does not offer anything equivalent to
Debian's "recommends" or "suggests" tags for "partial" dependencies.
Ironically, Debian's Evolution package only "recommends" SpamAssassin, which
leaves it susceptible to the confusing behavior that Dave warned about in
comment #1. That appears to have been reported upstream .
Closing this bug as UPSTREAM and will continue to track the problem there.
Until the usability issues get sorted out, I'm afraid the spamassassin
requirement will have to stay.