c5c748f65f92f6180c8ebb9ef26bf05652a17b02
[notmuch] / TODO
1 Write a "notmuch tag" command to add/remove tags from messages
2 matching a search query.
3
4 Write a "notmuch show" that displays a single thread.
5
6 Fix to use the *last* Message-ID header if multiple such headers are
7 encountered, (I noticed this is one thing that kept me from seeing the
8 same message-ID values as sup).
9
10 Think about this race condition:
11
12         A client executes "notmuch search"
13         Then executes "notmuch show" on a thread
14         While user is reading, new mail is added to database for the thread
15         Client asks for the thread to be archived.
16
17    The bug here is that email that was never read will be
18    archived. That's bad. With the command set above, the user can
19    avoid the problem by just not running "notmuch new" while reading
20    mail, but the same problems exists with the API. One possible
21    solution would be to store an additional timestamp with each mail
22    document for the time it was added to the database. Then searches
23    could return a timestamp, and the client could pass that same
24    timestamp back to the archive command to not modify any messages
25    with a timestamp newer than what's passed.