My work, or University as a whole, has two email systems. One linux based, using Dovecot and Sendmail, and the other being Exchange 2013. In an effort to “simplify” things, IT units around campus are being tasked with migrating all employees over to Exchange. Since I had been doing this on my own for a while, when the call went out officially, I only had about 60 users to do. Sadly, of those 60 or so, 3 of them were using POP3 and Mail.app. After beating my head against a wall trying to automate this migration, I finally just did it manually for one user. Except then, a problem arose.
Apple Mail (Mail.app) uses the filesystem date/time as the “Date Received” in views. It doesn’t use the header in the message (that header is instead reflected in “Date Sent”). So all the mail I manually copied over had the wrong “Date Received” (it moved to the day I did the migration, not the date it was actually received). =(
Sadly, though, the solution isn’t free. I purchased an application called Emailchemy to do the worst part. The only other tool I used was imapsync to migrate the email. Here’s the basic workflow. Based on how we do migrations, this will be the quickest way to get them receiving new email while the rest of the stuff runs in the background.