Evolution SpamBayes Plugin is an Evolution plugin that allows Evolution to use the SpamBayes bayesian filtering system.
The plugin is based on the Bogofilter EPlugin by Mikhail Zabaluev with some "pass message to process" code from the built-in SpamAssassin filtering plugin by Vivek Jain (amongst others).
The plugin is implemented using two python support scripts, one (sb_evolution_plugin_server) which sets up a DBus server holding the SpamBayes database and another (sb_evolution_plugin_client) which can query the client and tell it to train or untrain on messages received on stdin.
The Evolution plugin is implemented as a simple C EPlugin for Evolution using some junk-mail hooks in the evolution EPlugin architecture which is not published on the web yet (for unknown reasons).
Evolution sports a button for marking a message as spam, and it is clear that when the user clicks this button the message should be marked as spam, that much is clear. But messages which are not marked as spam has no way to be marked as ham.
One way to fix this could be to train all messages that are marked as ham (in the checking function) as ham - and then call untrain ham and then train spam for messages when they are marked as spam.
The same problem applies when messages arrive that are marked as spam (but are ham), should they also automatically be trained as spam and then untrained as spam and re-trained as ham?
It could also be that SpamBayes is happy to only be trained when it does something wrong, rather then also when it does something right.
Where does unsure fit in?
Should the plugin do something specific to facilitate the unsure result of the SpamBayes engine?
Ideally Evolution wouls support the unsure option and make it possible to either mark the message as spam or ham (both buttons/menu-options should be active), but the message should still be delivered in the normal fashion.
An "unsure" icon in the message list (or a, maybe orange, background color in the message list), would also improve usability in my oppinion.
Conflicting with existing spam filtering plugins
Evolution apparently only supports one junk filtering plugin at the time, so you have to disable the built-in SpamAssassin plugin before the SpamBayes one will work.
What's New in This Release: [ read full changelog ]
· Automatically remove the database if we get bsddb.db.DBInvalidArgError when trying to open the database