also sprach Asheesh Laroia <asheesh@asheesh.org> [2010.01.14.2112 +1300]: > Sure. But the MDA doesn't need to do the commit immediately. Since > (presumably) we're using Maildir, the MDA on the mail receiving > server is going to generate filenames that won't cause conflicts. > So it's okay to leave the files uncommitted. So when does the commit happen? > When I did the "git merge", git would create the Maildir files in > ~/Maildir/cur/... non-atomically. This might be something that the Git people could address if it was brought up on the mailing list. Then again, it might not be possible without going via a temporary file, which I doubt will fly. I suppose that I never actually considered merges on the IMAP server side, but obviously the IMAP server has to work off a clone, and that means it needs to merge. > Dovecot would notice the file in ~/Maildir/cur/ and think, "This > file must be ready!" So it would parse it even though git hadn't > finished writing it. This caused me to only see partial headers in > Alpine since Dovecot parsed it before it was a complete message. I wonder if a custom merge driver could address this to properly use …/tmp/ to assemble the message and only then move it. -- martin | http://madduck.net/ | http://two.sentenc.es/ "this week dragged past me so slowly; the days fell on their knees..." -- david bowie spamtraps: madduck.bogus@madduck.net