Hello Jani, On Sat, Dec 08 2012, Jani Nikula wrote: > On Sat, 08 Dec 2012, david@tethera.net wrote: >> From: Michal Sojka <sojka@os.inf.tu-dresden.de> >> >> Some MUA's like mutt show the difference between "new" emails living in maildir >> directory new/, and "old" emails living in maildir directory cur/. However >> notmuch tag unconditionally moves selected messages from new/ to cur/, even if >> no maildir synchronized tag is changed. >> >> While maildir specification forbids messages with tags living in new/, there is >> no need to move messages to cur/ when no maildir synchronized tag is changed. >> Thus notmuch can remain transparent with respect to other MUA's. >> >> [ Edited commit log to better describe the intended changes, and tag the >> test as broken until the actual changes are implemented -- Louis Rilling ] >> >> Signed-off-by: Louis Rilling <l.rilling@av7.net> >> >> [ Converted to use test_subtest_known_broken, David Bremner ] >> --- >> >> Do we agree that the behaviour of moving messages to ./cur on tagging >> is broken? If so, maybe it's worth tidying up and applying this. The >> use of cd and ls strikes me as slightly suspect, but I welcome other >> opinions. > > I think I would narrow down the special case a bit: I think messages in > ./new that have no maildir flags, and have no ":2," in the end of the > filename, and and the tag change(s) will not affect maildir flags, > should stay in ./new. Files in ./new should not have ":2," or maildir > flags, and I see no reason to support having them there. > > Thus any messages in ./new that do have maildir flags, or have ":2," in > the end of the filename should probably be moved to ./cur, even if the > tag change(s) do not affect maildir flags. The patch in this thread > fails here. It also changes the behaviour for messages in ./cur by not > appending ":2," to them. I agree with you. In id:1355952747-27350-1-git-send-email-sojkam1@fel.cvut.cz I sent the tests for the cases descried above as well as the updated patch for tag to maildir synchronization. > As to the test, I think it should do something along the lines of (based > on search-output test): > > notmuch search --output=files subject:"Message to stay in new" | sed -e "s,$MAIL_DIR,MAIL_DIR," >OUTPUT > cat <<EOF >EXPECTED > MAIL_DIR/new/message-to-stay-in-new > EOF > test_expect_equal_file OUTPUT EXPECTED With this you test what notmuch thinks about the file names of messages, not whether the files have actually been renamed. For this reason I kept the previous way of testing in the new patches. Cheers, -Michal