<feed xmlns='http://www.w3.org/2005/Atom'>
<title>notmuch/notmuch-tag.c, branch 0.13</title>
<subtitle>thread-based email index, search, and tagging</subtitle>
<id>https://git.notmuchmail.org/git/notmuch/atom?h=0.13</id>
<link rel='self' href='https://git.notmuchmail.org/git/notmuch/atom?h=0.13'/>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/'/>
<updated>2012-05-05T13:11:57Z</updated>
<entry>
<title>lib/cli: Make notmuch_database_open return a status code</title>
<updated>2012-05-05T13:11:57Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@MIT.EDU</email>
</author>
<published>2012-04-30T16:25:33Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=5fddc07dc31481453c1af186bf7da241c00cdbf1'/>
<id>urn:sha1:5fddc07dc31481453c1af186bf7da241c00cdbf1</id>
<content type='text'>
It has been a long-standing issue that notmuch_database_open doesn't
return any indication of why it failed.  This patch changes its
prototype to return a notmuch_status_t and set an out-argument to the
database itself, like other functions that return both a status and an
object.

In the interest of atomicity, this also updates every use in the CLI
so that notmuch still compiles.  Since this patch does not update the
bindings, the Python bindings test fails.
</content>
</entry>
<entry>
<title>Use notmuch_database_destroy instead of notmuch_database_close</title>
<updated>2012-04-28T12:27:33Z</updated>
<author>
<name>Justus Winter</name>
<email>4winter@informatik.uni-hamburg.de</email>
</author>
<published>2012-04-22T12:07:53Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=6f7469f54744656f90ce215f365d5731e16acd3c'/>
<id>urn:sha1:6f7469f54744656f90ce215f365d5731e16acd3c</id>
<content type='text'>
Adapt the notmuch binaries source to the notmuch_database_close split.

Signed-off-by: Justus Winter &lt;4winter@informatik.uni-hamburg.de&gt;
</content>
</entry>
<entry>
<title>cli: refactor "notmuch tag" query tagging into a separate function</title>
<updated>2012-03-31T00:22:31Z</updated>
<author>
<name>Jani Nikula</name>
<email>jani@nikula.org</email>
</author>
<published>2012-03-26T21:04:10Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=9605e62099b8c5d9e1debc27b31ae1e256703a3b'/>
<id>urn:sha1:9605e62099b8c5d9e1debc27b31ae1e256703a3b</id>
<content type='text'>
Refactor to make tagging code easier to reuse in the future. No
functional changes.

Signed-off-by: Jani Nikula &lt;jani@nikula.org&gt;
</content>
</entry>
<entry>
<title>cli: refactor "notmuch tag" data structures for tagging operations</title>
<updated>2012-03-31T00:20:36Z</updated>
<author>
<name>Jani Nikula</name>
<email>jani@nikula.org</email>
</author>
<published>2012-03-26T21:04:09Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=8e3ff8fb03dc647f1daea4665c35a2214473ced8'/>
<id>urn:sha1:8e3ff8fb03dc647f1daea4665c35a2214473ced8</id>
<content type='text'>
To simplify code, keep all tagging operations in a single array
instead of separate add and remove arrays. Apply tag changes in the
order specified on the command line, instead of first removing and
then adding the tags.

This results in a minor functional change: If a tag is both added and
removed, the last specified operation is now used. Previously the tag
was always added. Change the relevant test to reflect the new
behaviour.

Signed-off-by: Jani Nikula &lt;jani@nikula.org&gt;
</content>
</entry>
<entry>
<title>tag: remove unused attribute from notmuch_tag_command() arguments</title>
<updated>2012-02-08T13:19:29Z</updated>
<author>
<name>Dmitry Kurochkin</name>
<email>dmitry.kurochkin@gmail.com</email>
</author>
<published>2012-01-28T08:02:33Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=cc3756aabed5d6e50a481a5d38a5859754206be2'/>
<id>urn:sha1:cc3756aabed5d6e50a481a5d38a5859754206be2</id>
<content type='text'>
Argc and argv arguments are used in notmuch_tag_command() function.
So unused attribute is not appropriate for them.
</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>tag: Automatically limit to messages whose tags will actually change.</title>
<updated>2011-11-28T14:54:42Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@MIT.EDU</email>
</author>
<published>2011-11-09T13:44:35Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=da67bf12ce122759f72d1d510fb8996df3c9f946'/>
<id>urn:sha1:da67bf12ce122759f72d1d510fb8996df3c9f946</id>
<content type='text'>
This optimizes the user's tagging query to exclude messages that won't
be affected by the tagging operation, saving computation and IO for
redundant tagging operations.

For example,
  notmuch tag +notmuch to:notmuch@notmuchmail.org
will now use the query
  ( to:notmuch@notmuchmail.org ) and (not tag:"notmuch")

In the past, we've often suggested that people do this exact
transformation by hand for slow tagging operations.  This makes that
unnecessary.
</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>Remove some variables which were set but not used.</title>
<updated>2011-05-11T20:27:14Z</updated>
<author>
<name>Carl Worth</name>
<email>cworth@cworth.org</email>
</author>
<published>2011-05-11T19:34:13Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=2f3a76c569e5efad54520613315c0d29512ce69c'/>
<id>urn:sha1:2f3a76c569e5efad54520613315c0d29512ce69c</id>
<content type='text'>
gcc (at least as of version 4.6.0) is kind enough to point these out to us,
(when given -Wunused-but-set-variable explicitly or implicitly via -Wunused
or -Wall).

One of these cases was a legitimately unused variable. Two were simply
variables (named ignored) we were assigning only to squelch a warning about
unused function return values. I don't seem to be getting those warnings
even without setting the ignored variable. And the gcc docs. say that the
correct way to squelch that warning is with a cast to (void) anyway.
</content>
</entry>
</feed>
