return to OCLUG Web Site
A Django site.
July 4, 2010

Ottawa Android
» We have mail!

After some procrastination, we finally have our email system working. You can now get in touch with organizers via email. All the information is on our new “Contact Us” page.

October 8, 2009

» Testing Thunderbird 3: What to do if it ’shreds’ your threads

I use Mozilla Thunderbird at work for reading my email and, since Mozilla Messaging is approaching the release of Thunderbird 3, I decided to give the latest beta a try. I’m an Ubuntu user (8.04 “Hardy Heron” on my workstation) so I sought out a PPA for development versions of Thunderbird, and came across ubuntu-mozilla-daily. I added the repository to my apt config and you can too, here’s how:

Add the following lines to /etc/apt/sources.list using your favourite editor.

# Thunderbird 3.0 beta builds from ubuntu-mozilla-daily
# sudo apt-key adv --recv-keys --keyserver 247510BE
deb jaunty main
deb-src jaunty main

Note: Pardon any wrapping that may occur. It’s really four lines, two of which start with a comment ('#'), one with deb and one with deb-src. Also, be sure to replace the text jaunty with the version of Ubuntu you are using. The ubuntu-mozilla-daily PPA linked above can produce these lines for you if you are unsure. Just click the link that says ‘Not using Ubuntu 9.10 (karmic)?’

When you have added the repository to apt, you will need to run the apt-key command listed in the comment above in order to add the signing key to the apt keyring. If you don’t, you’ll receive warnings that the package cannot be verified. Also note that adding the repository this way may cause apt to report that there are updates available for other installed packages. I haven’t tested that particular detail as I was doing this within the confines of a virtual machine.

Once this is done you can install Thunderbird 3 using the following commands:

sudo apt-get update
sudo apt-get install thunderbird-3.0

There will now be an entry in Applications -> Internet named Shredder 3 Mail/News. Upon running it and going through setup of my account, one of the first things I discovered is that Thunderbird 3 was not threading by subject as I had been used to. I spent some time researching why this had changed and if the behaviour was configurable. Eventually I came across a page on the Mozilla wiki that explained Thunderbird’s threading implementation in detail.

It turns out that the default value for two of the settings controlling thread behaviour changed between versions. By default, Thunderbird 3 uses strict threading which means that threading by subject is disabled. There are two settings that control this behaviour though: mail.strict_threading and mail.thread_without_re. The first setting enables/disables threading by subject while the second allows subject-threading even if “Re:” isn’t present. According to the wiki page there is also a setting new to the 3.x branch called mail.correct_threading which threads correctly regardless of the order messages are added to a folder.

These settings are important to me, as the ticketing system Pythian uses sends email notifications when requests are updated/modified, and it cannot use the References and In-Reply-To message headers. Also, the subject of these messages does not include the text “Re:”.

All of this means I needed to toggle the three thread-related settings from their default value in order to get the behaviour I expect. To do so I went into Edit -> Preferences -> Advanced and clicked Config Editor. After promising to be careful I filtered for “thread” and observed the following settings and their values:

Preference Name Value
mail.correct_threading true
mail.strict_threading true
mail.thread_without_re false

I double-clicked each of these to change their value and closed the dialog. I refreshed the view of my inbox and . .  .  still no threading! It occurred to me that I would need to rebuild the index, so I went into Edit -> Folder Properties and clicked the Rebuild Index button. I have a rather large inbox, so after going to get a coffee and checking in a while later I found that Thunderbird 3 was now displaying messages in my inbox in exactly the same way as had the previous version.

Now that was out of the way, I could continue with exploring the rest of the features the new version Thunderbird has to offer, including new search functionality with advanced filtering, and user interface improvements such as a tabbed interface and redesigned toolbar.

November 29, 2006

Dave O'Neill
» MIME::Parser memory usage

rjbs has been trying to improve Email::Simple's memory consumption, so I figured I'd give his test a try on MIME::Parser, just for the heck of it.

It's not a very good test for MIME::Parser, because Email::Simple doesn't itself do most of the stuff MIME::Parser does, but it's something.

Given the numbers he posted, for Email::Simple, I expected MIME::Parser to be much worse, but instead, for an 8MB message with 50 headers I get:

$ perl ./readmail-mimetools big.msg 
just started                : 1556  3384
after require File::Slurp   : 2564  4180
after slurping              : 18204 19812
after require MIME::Parser  : 21928 23460
after construction          : 37684 39236
So... the code over head for MIME::Parser is about 3.7MB, and we take just under 2x the message size for internal representation.

Trying again, with MIME::Parser's tmp_to_core and output_to_core turned off (this makes it litter your filesystem with temp files named "msg-22195-1.txt" for each MIME body) it's a bit better:

$ perl ./readmail-mimetools-noncore big.msg 
just started                : 1560  3384
after require File::Slurp   : 2564  4180
after slurping              : 18204 19812
after require MIME::Parser  : 21928 23460
after construction          : 29832 31412
So, what does this prove? Well, MIME-tools doesn't suck as bad as I thought. That's about it.