MailDrop 0.2

MailDrop is a simple Mac OS utility program written to migrate email messages between IMAP mail accounts. MailDrop stands out in its ability to visualize differences between two accounts, and in providing detailed status information about active migration tasks. As such, it makes it easier to verify that an email migration was successful, and track the progress of large gigabyte sized mailboxes.

NOTE: I’ve recently realized that not one, but two previous projects have used the MailDrop name. As such, I’ll be changing the name soon to avoid conflicts and confusion.

Status

Version 0.2 of MailDrop has been used successfully to migrate over 25,000 email messages between Dovecot, Cyrus, and UW-IMAP servers. So the internal architecture is working well, but the interface is not yet polished for general use.

Future versions will refine the user interface, which is fairly minimal in version 0.2. Eventually, I’d like it to be usable by anyone with an email account.

Screenshots

Account Detail View
The view of an account which is being compared to another account. Note the differing colors of messages and folders.

Task Detail Window
A detail window detailing the progress of a fetch task. Processed items are in normal black text, in-progress items are displayed in bold text, and unprocessed items are gray.

Server Detail View
Server detail view, which includes server-supplied capability strings and authentication mechanisms. Not terribly interesting, really, but good for testing whether the server settings are correct.

Brief Usage Guide

Setting Up Your IMAP accounts

After first starting MailDrop, you’ll want to enter your mail server and account information. To do so, first click the ‘Add Server’ button in the toolbar, and enter your mail server details.

Once you have your server information entered correctly, you should see the server capabilities and authentication mechanisms listed to the right of the account list. This information is made available to allow you to check that the connection is configured correctly.

Next, click the ‘Add Account’ button, and enter your email address, login, and password.

With your account created, click the account name in the account list on the left side of the main window. The account detail information should appear to the right, and the account will begin downloading. Large email accounts will take awhile to fully download. You can double-click the status message to see detailed download progress.

Repeat the above steps for your other email accounts. If you have other accounts on the same server, you don’t need to create a different server.

Migrating Messages

A popup menu labeled “Compare To:” is positioned near the top left of the account detail panel. Selecting an account with this menu causes the folders and messages below to be colorized based on their current status.

  • Black messages are those that exist on both servers.

  • Grey messages are those that need to be migrated — they exist in the current account, but not in the destination account.

  • Red messages exist in the destination account, but not in the current account. This can happen if your email is already being delivered to your new account.

To migrate a message, simply select the messages that need to be copied, and control-click (or right-click) the messages. In the context menu that appears, select the destination account from the ‘Copy Messages To >’ sub-menu.

You will then see the status indicator spinning, next to the current status message. You can double-click this status message to get a detailed status window that allows you to follow the progress of the copy task.

Other Tasks

MailDrop also allows you to create, rename, and delete folders, plus delete messages. All of this functionality is available via context menus. Just right-click the item you want to work with, and you should be able to get to what you need.

Try it Out

I've uploaded the current release as a ZIP file. Just unzip it and copy the MailDrop app to your applications directory. It's a universal binary that's been heavily tested on a PPC Mac, but not at all on an Intel build. Let me know if it works for you on an Intel Mac.

License

MailDrop is freeware. You're welcome to use it however you wish, but the software comes as-is, with no warranty, etc. When I get my act together, the source code will be available under the MIT License.

Credits

MailDrop is based on the Pantomime Email Framework, and uses SQLite and QuickLite to cache account content.