ThunderBayes 1.0rc1

Well, it’s finally (almost) happened. ThunderBayes has reached the 1.0 milestone!

Download ThunderBayes 1.0rc1 now and give it a try.

NOTE: for those already using ThunderBayes, please read the migration instructions before installing the new version.

This is a huge usability milestone. ThunderBayes now takes care of all the dirty work involved in installing and configuring SpamBayes, and it even makes it very simple to configure filters to move unsure/spam messages to folders of your choice. These new features are integrated into the Thunderbird Account Settings dialog, so you can configure ThunderBayes for each account at the intuitive place, with all the other account settings. Under the covers ThunderBayes also uses a new training API that allows more efficient training.

Migrating to ThunderBayes 1.0 (from any previous version)

As of version 1.0, ThunderBayes ships with a Python interpreter (Windows only) and SpamBayes 1.0.4. This makes it very easy for anyone with Thunderbird to get ThunderBayes installed and operational. Previously it was necessary to install and configure SpamBayes before ThunderBayes actually did anything useful.

Note for users on Mac OS or Linux: ThunderBayes will try to detect the pre-installed version of Python that came with your OS. If it doesn’t find it you’ll need set the Python executable in the ThunderBayes extension options (which can be found in the Add-ons list).

These are the steps to migrate the data from your externally configured SpamBayes to ThunderBayes’ new internal version of SpamBayes. Read all of the instructions before you start the migration process.

  1. Shutdown Thundirbird.
  2. Shutdown your SpamBayes proxy (disable automatic start as well).
  3. Backup your Thunderbird profile. It’s easy.
  4. If you skipped the previous step, go back and do it…really, you might need it if you do something wrong in the following steps. I usually like to make a zip archive of my profile so I don’t accidentally delete or change any of the files contained in it. That, and it’s easy to move around when it’s a single compressed file.
  5. Make a new folder in your Thunderbird profile named ‘spambayes_data’. The path should be something like this (the ‘’ part will be different):
  6. Find out where your existing SpamBayes data is stored. On Windows it might be C:\Documents and Settings\<username>\Application Data\SpamBayes\Proxy. On Mac OS X it might be in /Library/SpamBayes. If you can’t find it just search for some of the files in the next step–that should lead you to the right place.
  7. Copy the following files and folders from your existing SpamBayes directory:
    • _pop3proxyham.mbox
    • _pop3proxyspam.mbox
    • bayescustomize.ini
    • hammie.* (i.e. any files that start with ‘hammie.’)
    • pop3proxy-ham-cache/* (folder and all files inside it)
    • pop3proxy-spam-cache/* (folder and all files inside it)
    • pop3proxy-unknown-cache/* (folder and all files inside it)
    • spambayes.messageinfo.db
  8. Mac OS X and other Linux/Unix users: edit the bayescustomize.ini file and change each port listed on the line beginning with listen_ports to a port number higher than 1023. Then change each account in Thunderbird to use the new port assigned to that account (after the next step). Explanation: on Unix ports lower than 1024 are privileged and cannot be used by non-root users.
  9. Start Thunderbird
  10. If you haven’t already, install ThunderBayes 1.0 and restart Thunderbird

If everything went as planned you should have a fully functional ThunderBayes setup with the same SpamBayes configuration that you had before, except its now running the internal version of SpamBayes distributed with ThunderBayes.

After all that, I will tell you that migrating the SpamBayes database to use the internally bundled version of SpamBayes is not strictly necessary–the internal version can simply be disabled, and you may continue to use your externally configured version of SpamBayes. However, there are a few (minor) features in ThunderBayes that will not work correctly:

  1. The ThunderBayes server name/port configuration in Thunderbird’s Account Settings will not work. Filter configurations will work, although you’ve probably already configured your own which will continue to work as well.
  2. ThunderBayes ships with a patched version of SpamBayes that automatically updates the “Review” page in the SpamBayes proxy web interface upon training with a given message. If you don’t know what that is you don’t have to worry about it. However, if you opt to use an external version of SpamBayes this feature will not work in ThunderBayes 1.0. It did work in ThunderBayes 0.3, which was never formally released. The feature was reimplemented in ThunderBayes 1.0 as a custom extension to SpamBayes, which is much more efficient and makes the code much simpler.
  3. ThunderBayes will not automatically start/stop SpamBayes when Thunderbird starts/stops (obviously).

To disable the internal SpamBayes shipped with ThunderBayes go to Tools->Add-ons->Extensions->ThunderBayes->Preferences. Uncheck the “Use internal SpamBayes proxy” checkbox.

Finally, a simpler option is just to disable your old SpamBayes proxy and install the new version of ThunderBayes. Configure your accounts in Thunderbird, and train from scratch. This will of course be a pain at first because you have to re-establish all of your training data, but it is very easy to get going quickly. NOTE: when you configure your accounts you will need to set the server name and port in Server Settings back to the real server name and port BEFORE you configure the ThunderBayes page in Account Settings.

Comments are closed.