<feed xmlns='http://www.w3.org/2005/Atom'>
<title>notmuch/notmuch-new.c, branch 0.12</title>
<subtitle>thread-based email index, search, and tagging</subtitle>
<id>https://git.notmuchmail.org/git/notmuch/atom?h=0.12</id>
<link rel='self' href='https://git.notmuchmail.org/git/notmuch/atom?h=0.12'/>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/'/>
<updated>2012-02-17T12:04:34Z</updated>
<entry>
<title>add support for user-specified files &amp; directories to ignore</title>
<updated>2012-02-17T12:04:34Z</updated>
<author>
<name>Tomi Ollila</name>
<email>tomi.ollila@iki.fi</email>
</author>
<published>2012-02-15T09:17:31Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=ce1e720de64270a7cbb4bc3fba2c7fe081de3edc'/>
<id>urn:sha1:ce1e720de64270a7cbb4bc3fba2c7fe081de3edc</id>
<content type='text'>
A new configuration key 'new.ignore' is used to determine which
files and directories user wants not to be scanned as new mails.

Mark the corresponding test as no longer broken.
This work merges my previous attempts and Andreas Amann's work
in id:"ylp7hi23mw8.fsf@tyndall.ie"
</content>
</entry>
<entry>
<title>Free the results of scandir()</title>
<updated>2012-02-15T03:44:30Z</updated>
<author>
<name>Ethan Glasser-Camp</name>
<email>ethan@betacantrips.com</email>
</author>
<published>2012-02-07T10:05:03Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=5f39979a4aa2aea7d587201702fa3443248334bd'/>
<id>urn:sha1:5f39979a4aa2aea7d587201702fa3443248334bd</id>
<content type='text'>
scandir() returns "strings allocated via malloc(3)" which are then
"collected in array namelist which is allocated via
malloc(3)". Currently we just free the array namelist. Instead, free
all the entries of namelist, and then free namelist.

entry only points to elements of namelist, so we don't free it
separately.
</content>
</entry>
<entry>
<title>Silence buildbot warnings about unused results</title>
<updated>2012-01-21T12:49:50Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@MIT.EDU</email>
</author>
<published>2012-01-19T22:29:19Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=a9a9e374e2567caad8601d1781a3b0af8a3dde13'/>
<id>urn:sha1:a9a9e374e2567caad8601d1781a3b0af8a3dde13</id>
<content type='text'>
This ignores the results of the two writes in sigint handlers even
harder than before.

While my libc lacks the declarations that trigger these warnings, this
can be tested by adding the following to notmuch.h:

__attribute__((warn_unused_result))
ssize_t write(int fd, const void *buf, size_t count);
</content>
</entry>
<entry>
<title>notmuch: Quiet buildbot warnings.</title>
<updated>2011-12-21T11:32:16Z</updated>
<author>
<name>David Edmondson</name>
<email>dme@dme.org</email>
</author>
<published>2011-12-20T15:20:04Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=77ec8108a10a8d372bed6298e22c89d7de651577'/>
<id>urn:sha1:77ec8108a10a8d372bed6298e22c89d7de651577</id>
<content type='text'>
Cast away the result of various *write functions. Provide a default
value for some variables to avoid "use before set" warnings.
</content>
</entry>
<entry>
<title>cli: add support for pre and post notmuch new hooks</title>
<updated>2011-12-11T17:58:15Z</updated>
<author>
<name>Jani Nikula</name>
<email>jani@nikula.org</email>
</author>
<published>2011-12-08T22:48:30Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=69bb7f35b6e59fd3a3b1fb2d0f0367f7016cba80'/>
<id>urn:sha1:69bb7f35b6e59fd3a3b1fb2d0f0367f7016cba80</id>
<content type='text'>
Run notmuch new pre and post hooks, named "pre-new" and "post-new", if
present in the notmuch hooks directory. The hooks will be run before and
after incorporating new messages to the database.

Typical use cases for pre-new and post-new hooks are fetching or delivering
new mail to the maildir, and custom tagging of the mail incorporated to the
database.

Also add command line option --no-hooks to notmuch new to bypass the hooks.

Signed-off-by: Jani Nikula &lt;jani@nikula.org&gt;
</content>
</entry>
<entry>
<title>cli: change argument parsing convention for subcommands</title>
<updated>2011-10-22T22:42:54Z</updated>
<author>
<name>David Bremner</name>
<email>bremner@debian.org</email>
</author>
<published>2011-10-21T12:19:17Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=61f0a5b8ee2adf540106a09c5f83fe634da6beb3'/>
<id>urn:sha1:61f0a5b8ee2adf540106a09c5f83fe634da6beb3</id>
<content type='text'>
previously we deleted the subcommand name from argv before passing to
the subcommand. In this version, the deletion is done in the actual
subcommands. Although this causes some duplication of code, it allows
us to be more flexible about how we parse command line arguments in
the subcommand, including possibly using off-the-shelf routines like
getopt_long that expect the name of the command in argv[0].
</content>
</entry>
<entry>
<title>lib: make find_message{,by_filename) report errors</title>
<updated>2011-10-04T04:55:29Z</updated>
<author>
<name>Ali Polatel</name>
<email>alip@exherbo.org</email>
</author>
<published>2011-10-04T04:55:29Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=02a30767116ad8abcbd0a3351f2e4d43bbbd655f'/>
<id>urn:sha1:02a30767116ad8abcbd0a3351f2e4d43bbbd655f</id>
<content type='text'>
Previously, the functions notmuch_database_find_message() and
notmuch_database_find_message_by_filename() functions did not properly
report error condition to the library user.

For more information, read the thread on the notmuch mailing list
starting with my mail "id:871uv2unfd.fsf@gmail.com"

Make these functions accept a pointer to 'notmuch_message_t' as argument
and return notmuch_status_t which may be used to check for any error
condition.

restore: Modify for the new notmuch_database_find_message()
new: Modify for the new notmuch_database_find_message_by_filename()
</content>
</entry>
<entry>
<title>new: Wrap adding and removing messages in atomic sections.</title>
<updated>2011-09-24T23:00:29Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@mit.edu</email>
</author>
<published>2011-01-29T16:25:56Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=bff30540d86c77aacbc2c133c83aa7ccee823b48'/>
<id>urn:sha1:bff30540d86c77aacbc2c133c83aa7ccee823b48</id>
<content type='text'>
This addresses atomicity of tag synchronization, the last atomicity
problems in notmuch new.  Each message add or remove is wrapped in its
own atomic section, so interrupting notmuch new doesn't lose progress.
</content>
</entry>
<entry>
<title>new: Synchronize maildir flags eagerly.</title>
<updated>2011-09-24T23:00:28Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@mit.edu</email>
</author>
<published>2011-01-28T01:51:04Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=8305f0aac7f31aeddd54d0af683475ab1492e2b7'/>
<id>urn:sha1:8305f0aac7f31aeddd54d0af683475ab1492e2b7</id>
<content type='text'>
Because flag synchronization is stateless, it can be performed at any
time as long as it's guaranteed to be performed after any change to a
message's filename list.  Take advantage of this to synchronize tags
immediately after a filename is added or removed.

This does not yet make adding or removing a message atomic, but it is
a big step toward atomicity because it reduces the window where the
database tags are inconsistent from nearly the entire notmuch-new to
just around when the message is added or removed.
</content>
</entry>
<entry>
<title>new: Cleanup.  De-duplicate file name removal code.</title>
<updated>2011-09-24T23:00:28Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@mit.edu</email>
</author>
<published>2011-02-06T09:28:01Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=191c4ae693c35ecd9e905e64c7619734171c4a8a'/>
<id>urn:sha1:191c4ae693c35ecd9e905e64c7619734171c4a8a</id>
<content type='text'>
Previously, file name removal was implemented identically in two
places.  Now it's captured in one function.

This is important because file name removal is about to get slightly
more complicated with eager tag synchronization and correct removal
atomicity.
</content>
</entry>
</feed>
