On Tue, 09 Nov 2010 11:06:30 +0100, Michal Sojka wrote: > This sounds good. Still it will be neccessary to synchronize with all > files, not only the first one. OK. I'll add that to the list of things I'll fix up. > > I'd like to get things merged today, so I plan to take your patches and > > then add new commits on top to implement the functions I described > > above. > > Great! Seems that it is still not finished and I do not want to do > duplicite work, so let me know what is the current status and whether > you need some help from me (e.g. tests for multiple messages with same > ID). I should be on IRC today. Yesterday ended up being very busy, but I'm working on this stuff now. My plan is to merge it and then release notmuch 0.5. (And yes, if I had a more strict release manager then 0.5 would have been released yesterday as-is---but it turns out my release manager had an equally busy day yesterday). If you wanted to write some more tests, then that would be very useful. I've been changing the way the tests are written, so you might want to look at the attached file to see what I'm doing and match it. Notable differences: * Using test_begin_subtest and test_expect_equal rather than the list-of-commands to test_expect_success. * Not emitting separate line-item results for things that are already tested in other scripts, (like "add message" and "search for message", etc.) The updating I've done here only goes as far as just before "Add a message to new/ without info". And it looks like one change I made inadvertently broke a later test, so it's expected that "Check that removing info did not change tags" currently fails. [And this failure shows what I don't like about test_expect_success---if we were using test_expect_equal it would be trivial to see what problem I made here.] Finally, when going through these tests I saw: "Removing of unread tag should fail without cur/" And that's behavior I do not want. Adding and removing tags should be reliable whether or not the maildir synchronization can succeed. In this specific case, the right answer is probably to say that a directory without "new" and "cur" is not a maildir so no synchronization should be done. Notmuch does need to be able to support things like mh format still. Do the current patches break that by doing maildir-style renaming in non-maildir directories? If so, we'll need to fix that as well. And that might require an "is_maildir" term to be stored for directory documents in the database. Again, that's something I can help with. Thanks again, -Carl