It’s all just plain nuts!

When PHP 5.0 was released some time ago, I upgraded to it and my Web based email application, Horde (Imp), stopped working properly. I would read message #1, with it’s text message. Then, on deleting it, would receive message #2. But, when I looked at it, I’d see the text of message #1 again! Only by logging out and then back in again was I able to see the real text from message #2. Or, if I never deleted any message, I could see everything uniquely. Needless to say, I downgraded back to PHP 4, which fixed things.

Well. About a week ago, I upgraded to PHP 4.4.0. At that point, I started getting several warning messages – so I upgraded Horde to the most recent beta version. Things worked just fine for about 24 hours. Then, inexplicably, Horde would stop working whenever messages of a certain type were received. I think anything with a MIME embedded attachment did it, but I’m still not sure if that was entirely it or not. Horde “died” by showing a blank Inbox screen. Downgrading Horde back to the previously released version brought back the Inbox screen – but it showed that there were no new messages, when there clearly were. (Pegasus had no problem downloading them.) So, fine, I thought to myself, I’ll just go back to PHP 4.3.11. Well, that didn’t work either. In fact, several days later, no matter what I did, Horde simply refused to function.

I finally gave up on Horde and looked around for other Web based email products. I found phpGroupWare, a nice little program that was easier to configure than Horde. It didn’t have Horde’s problem. However, I did discover that with it when clicking on an email that contained a file attachement, nothing would happen. Clicking on messages without attachments, the application would proceed to let you view them as you’d expect. But nothing at all would happen with messages containing attachments.

So, I decided to try upgrading to PHP 5.0 again, thinking that my previous problem with Horde and PHP 5.0 may have been specific to the two of them together. Apparently it wasn’t. Now I couldn’t see the text of messages at all. A message would open up, but the body would be blank. Plus, I still couldn’t open up messages with email attachments.

I ripped everything out, all references to PHP and anything else related, then installed it all again. No luck.

Now – I’ve installed the new Virgil into a virtual machine using VMware GSX. The point of this was that it was supposed to make testing and maintenance easier. In other words, take a snapshot, perform an upgrade, or something that might cause problems, and, if it does, revert back to the snapshot to undo the harm. That’s good in theory, but I guess I haven’t fully adjusted to the concept yet. Throughout all of this, I hadn’t taken a snapshot – so, like with a physical system, I was stuck without any way of going back. (I did have a backup, but only from a time slightly after all of the problems started – so it wouldn’t have fixed everything.)

SquirrelMail to the rescue. Glen’s been using this for a while. He started an install, but I took over and finished the process. It worked like a charm! None of the problems that have plagued Horde or phpGroupWare at all. So – this is now what is being “officially” used as our Web based email solution. It’s a shame, in a way, because Horde’s been working mostly solidly for me for a long time. (Although it did have a problem whereby messages with attachments would “stay in cache” also – so message #2 with an attachment would show message #1’s attachment. Unless I logged out and back in again. This was annoying, and I’m glad to be rid of it under SquirrelMail, but I receive so few attachments that it wasn’t really a huge headache.)

One minor issue with SquirrelMail is that while the count of messages in the Inbox folder will refresh at a user defined interval, the actual view of the folder, listing all of the individual messages, will not. At least not by default. So you have to click on a link to get the new messages you know are there. I have no idea why such an otherwise excellent application would have this one glaring design flaw. I’ve since modified the code a bit to get the contents of the Inbox to also refresh. It’s not elegant, but it will do the trick well enough until they “fix” things themselves, or I come up with a more appropriate solution on my own.

As Michelle keeps saying these days, “Brown cow rights!” Or, in this case, “Webmail for nuts!”