<feed xmlns='http://www.w3.org/2005/Atom'>
<title>notmuch/lib, branch debian/0.15.1-1</title>
<subtitle>thread-based email index, search, and tagging</subtitle>
<id>https://git.notmuchmail.org/git/notmuch/atom?h=debian%2F0.15.1-1</id>
<link rel='self' href='https://git.notmuchmail.org/git/notmuch/atom?h=debian%2F0.15.1-1'/>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/'/>
<updated>2012-12-24T23:02:22Z</updated>
<entry>
<title>_notmuch_message_index_file: unref (free) address lists from gmime.</title>
<updated>2012-12-24T23:02:22Z</updated>
<author>
<name>David Bremner</name>
<email>bremner@debian.org</email>
</author>
<published>2012-12-11T03:33:40Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=47693539a64b884cbd9bffc9c832162848ad98f2'/>
<id>urn:sha1:47693539a64b884cbd9bffc9c832162848ad98f2</id>
<content type='text'>
Apparently as of GMime 2.4, you don't need to call
internet_address_list_destroy anymore, but you still need to call
g_object_unref (from the GMime Changelog).

On the medium performance corpus, valgrind shows "possibly lost"
leakage in "notmuch new" dropping from 7M to 300k.
</content>
</entry>
<entry>
<title>lib/message-file.c: use g_malloc () &amp; g_free () in hash table values</title>
<updated>2012-12-24T23:02:05Z</updated>
<author>
<name>Tomi Ollila</name>
<email>tomi.ollila@iki.fi</email>
</author>
<published>2012-12-21T17:52:01Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=27dacc7947309bb8f6f84b2cd83dc7ec280576b2'/>
<id>urn:sha1:27dacc7947309bb8f6f84b2cd83dc7ec280576b2</id>
<content type='text'>
The message-&gt;headers hash table values get data returned by
g_mime_utils_header_decode_text ().

The pointer returned by g_mime_utils_header_decode_text is from the
following line in rfc2047_decode_tokens

        return g_string_free (decoded, FALSE);

The docs for g_string_free say

 Frees the memory allocated for the GString. If free_segment is TRUE
 it also frees the character data. If it's FALSE, the caller gains
 ownership of the buffer and must free it after use with g_free().

The remaining frees and allocations referencing to message-&gt;headers hash
values have been changed to use g_free and g_malloc functions.

This combines and completes the changes started by David Bremner.
</content>
</entry>
<entry>
<title>lib: fix warnings when building with clang</title>
<updated>2012-12-01T12:10:32Z</updated>
<author>
<name>Jani Nikula</name>
<email>jani@nikula.org</email>
</author>
<published>2012-10-01T07:36:11Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=5505d55515594025fe319c5150fdb360b0ffcd60'/>
<id>urn:sha1:5505d55515594025fe319c5150fdb360b0ffcd60</id>
<content type='text'>
Building notmuch with CC=clang and CXX=clang++ produces the warnings:

CC -O2 lib/tags.o
lib/tags.c:43:5: warning: expression result unused [-Wunused-value]
    talloc_steal (tags, list);
    ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/talloc.h:345:143: note: expanded from:
  ...__location__); __talloc_steal_ret; })
                    ^~~~~~~~~~~~~~~~~~
1 warning generated.

CXX -O2 lib/message.o
lib/message.cc:791:5: warning: expression result unused [-Wunused-value]
    talloc_reference (message, message-&gt;tag_list);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/talloc.h:932:36: note: expanded from:
  ...(_TALLOC_TYPEOF(ptr))_talloc_reference_loc((ctx),(ptr), __location__)
     ^                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.

Check talloc_reference() return value, and explicitly ignore
talloc_steal() return value as it has no failure modes, to silence the
warnings.
</content>
</entry>
<entry>
<title>lib: Reject multi-message mboxes and deprecate single-message mbox</title>
<updated>2012-11-27T01:12:10Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@MIT.EDU</email>
</author>
<published>2012-11-25T06:16:01Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=610f0e09929a5f351f7c1c3850ac7e0d83ffe388'/>
<id>urn:sha1:610f0e09929a5f351f7c1c3850ac7e0d83ffe388</id>
<content type='text'>
Previously, we would treat multi-message mboxes as one giant email,
which, besides the obvious incorrect indexing, often led to
out-of-memory errors for archival mboxes.  Now we explicitly reject
multi-message mboxes.  For historical reasons, we retain support for
single-message mboxes, but official deprecate this behavior.
</content>
</entry>
<entry>
<title>lib: add date range query support</title>
<updated>2012-10-31T19:55:32Z</updated>
<author>
<name>Jani Nikula</name>
<email>jani@nikula.org</email>
</author>
<published>2012-10-30T20:32:37Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=90cd1bac4eeb0d57fbe2740625aaa58d8d925ee5'/>
<id>urn:sha1:90cd1bac4eeb0d57fbe2740625aaa58d8d925ee5</id>
<content type='text'>
Add a custom value range processor to enable date and time searches of
the form date:since..until, where "since" and "until" are expressions
understood by the previously added date/time parser, to restrict the
results to messages within a particular time range (based on the Date:
header).

If "since" or "until" describes date/time at an accuracy of days or
less, the values are rounded according to the accuracy, towards past
for "since" and towards future for "until". For example,
date:november..yesterday would match from the beginning of November
until the end of yesterday. Expressions such as date:today..today
means since the beginning of today until the end of today.

Open-ended ranges are supported (since Xapian 1.2.1), i.e. you can
specify date:..until or date:since.. to not limit the start or end
date, respectively.

CAVEATS:

Xapian does not support spaces in range expressions. You can replace
the spaces with '_', or (in most cases) '-', or (in some cases) leave
the spaces out altogether.

Entering date:expr without ".." (for example date:yesterday) will not
work as you might expect. You can achieve the expected result by
duplicating the expr both sides of ".." (for example
date:yesterday..yesterday).

Open-ended ranges won't work with pre-1.2.1 Xapian, but they don't
produce an error either.

Signed-off-by: Jani Nikula &lt;jani@nikula.org&gt;
</content>
</entry>
<entry>
<title>build: build parse-time-string as part of the notmuch lib and static cli</title>
<updated>2012-10-31T19:53:01Z</updated>
<author>
<name>Jani Nikula</name>
<email>jani@nikula.org</email>
</author>
<published>2012-10-30T20:32:36Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=af6b4b29f97b1f457bb7220491bf37536e1b9d7a'/>
<id>urn:sha1:af6b4b29f97b1f457bb7220491bf37536e1b9d7a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Support OpenBSD</title>
<updated>2012-10-27T12:35:47Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@MIT.EDU</email>
</author>
<published>2012-10-24T21:43:28Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=b04c062aee50f456f46bf7f31641384010780791'/>
<id>urn:sha1:b04c062aee50f456f46bf7f31641384010780791</id>
<content type='text'>
OpenBSD's build flags are identical to FreeBSD, except that libraries
need to be explicitly linked against libc.  No code changes are
necessary.

From: Cody Cutler &lt;ccutler@csail.mit.edu&gt;
</content>
</entry>
<entry>
<title>Fix the COERCE_STATUS macro</title>
<updated>2012-09-27T15:51:51Z</updated>
<author>
<name>Justus Winter</name>
<email>4winter@informatik.uni-hamburg.de</email>
</author>
<published>2012-09-24T15:21:18Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=faf6ede3ef7b09df0d61264cb7a907860d69abbb'/>
<id>urn:sha1:faf6ede3ef7b09df0d61264cb7a907860d69abbb</id>
<content type='text'>
Fix the COERCE_STATUS macro to handle _internal_error being declared
as void function.

Note that the function _internal_error does not return. Evaluating to
NOTMUCH_STATUS_SUCCESS is done purely to appease the compiler.

Signed-off-by: Justus Winter &lt;4winter@informatik.uni-hamburg.de&gt;
</content>
</entry>
<entry>
<title>lib: fix NULL checks for filenames iterators</title>
<updated>2012-09-02T02:03:11Z</updated>
<author>
<name>Sascha Silbe</name>
<email>sascha-pgp@silbe.org</email>
</author>
<published>2012-06-24T16:29:24Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=8dd4e9770ec12de9b2e6fc53259375b2d1720f38'/>
<id>urn:sha1:8dd4e9770ec12de9b2e6fc53259375b2d1720f38</id>
<content type='text'>
The API documentation (notmuch.h) states that the parameter may be NULL,
but the implementation only checked the current element, potentially
dereferencing a NULL pointer in the process.

Signed-off-by: Sascha Silbe &lt;sascha-pgp@silbe.org&gt;
</content>
</entry>
<entry>
<title>lib: Treat messages in new/ as maildir messages with no flags set</title>
<updated>2012-06-10T23:14:56Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@MIT.EDU</email>
</author>
<published>2012-06-09T19:14:17Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=b88030bda6da084ef74e41f588589fd98e773ad7'/>
<id>urn:sha1:b88030bda6da084ef74e41f588589fd98e773ad7</id>
<content type='text'>
Previously, notmuch new only synchronized maildir flags to tags for
files with a maildir "info" part.  Since messages in new/ don't have
an info part, notmuch would ignore them for flag-to-tag
synchronization.

This patch makes notmuch consider messages in new/ to be legitimate
maildir messages that simply have no maildir flags set.  The most
visible effect of this is that such messages now automatically get the
unread tag.
</content>
</entry>
</feed>
