<feed xmlns='http://www.w3.org/2005/Atom'>
<title>notmuch/lib, branch 0.2</title>
<subtitle>thread-based email index, search, and tagging</subtitle>
<id>https://git.notmuchmail.org/git/notmuch/atom?h=0.2</id>
<link rel='self' href='https://git.notmuchmail.org/git/notmuch/atom?h=0.2'/>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/'/>
<updated>2010-04-15T21:54:40Z</updated>
<entry>
<title>lib: search_threads: Fix nested search to handle original search of "*"</title>
<updated>2010-04-15T21:54:40Z</updated>
<author>
<name>Carl Worth</name>
<email>cworth@cworth.org</email>
</author>
<published>2010-04-15T16:15:10Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=c48dcc302c5509452e5364a8aebdfa03f33a6857'/>
<id>urn:sha1:c48dcc302c5509452e5364a8aebdfa03f33a6857</id>
<content type='text'>
When constructing a thread, we usually run a nested query to find all
messages in the thread that match the original search string. However,
we need to have special-case handling of an original search string of
"*" now that that is a supported means of specifying all messages.

The special-case ends up bein quite simple---we do less work, (just
skipping the nested search since we know that all messages must
match). I had been wanting to write this identical code to more
efficiently handle "notmuch search thread:&lt;foo&gt;" which was previously
running two identical searches. So that case is now more efficient as
well.
</content>
</entry>
<entry>
<title>Makefile: Add library version information on OS X.</title>
<updated>2010-04-14T23:18:19Z</updated>
<author>
<name>Carl Worth</name>
<email>cworth@cworth.org</email>
</author>
<published>2010-04-14T23:18:19Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=72ea1b71c6b65965e3b205271d51c66ff66e13bf'/>
<id>urn:sha1:72ea1b71c6b65965e3b205271d51c66ff66e13bf</id>
<content type='text'>
This encodes the library version into the library, where the linking
binary can pick it up, and the linker can even enforce mismatches in
the minor release, (such as linking a binary against version 1.2 and
then attempting to run it against version 1.1).
</content>
</entry>
<entry>
<title>Makefile: Fix library linking command for OS X</title>
<updated>2010-04-14T23:16:05Z</updated>
<author>
<name>Carl Worth</name>
<email>cworth@cworth.org</email>
</author>
<published>2010-04-14T23:16:05Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=1036867897c05215fa55863a10e5afdaef7dfd5d'/>
<id>urn:sha1:1036867897c05215fa55863a10e5afdaef7dfd5d</id>
<content type='text'>
I'm not sure which system Aaron used, but on the machine I have access
to, (Darwin 8.11.0), the -shared and -dylib_install_name options are
not recognized. Instead I use -dynamic_lib and -install_name as
documented here:

http://www.finkproject.org/doc/porting/shared.php
</content>
</entry>
<entry>
<title>Add infrastructure for building shared library on OS X.</title>
<updated>2010-04-14T23:10:27Z</updated>
<author>
<name>Aaron Ecay</name>
<email>aaronecay@gmail.com</email>
</author>
<published>2010-04-11T23:44:53Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=8c8079a8b14fac5e8ca6b682e5c76e08a824f2e7'/>
<id>urn:sha1:8c8079a8b14fac5e8ca6b682e5c76e08a824f2e7</id>
<content type='text'>
This patch adds a configure check for OS X (actually Darwin),
and sets up the Makefiles to build a proper shared library on
that platform.

Signed-off-by: Aaron Ecay &lt;aaronecay@gmail.com&gt;
</content>
</entry>
<entry>
<title>Makefile: Move compat sources from the client code to the library.</title>
<updated>2010-04-14T23:03:18Z</updated>
<author>
<name>Carl Worth</name>
<email>cworth@cworth.org</email>
</author>
<published>2010-04-14T23:03:18Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=f20640835823f28908005ef9d5dbc90c8a479f62'/>
<id>urn:sha1:f20640835823f28908005ef9d5dbc90c8a479f62</id>
<content type='text'>
Since the library code needs these as well.
</content>
</entry>
<entry>
<title>Do not segfault on empty mime parts</title>
<updated>2010-04-13T15:49:06Z</updated>
<author>
<name>martin f. krafft</name>
<email>madduck@madduck.net</email>
</author>
<published>2010-03-02T15:31:28Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=449a418c65fb1f9281f761aae23576900d0d3ef1'/>
<id>urn:sha1:449a418c65fb1f9281f761aae23576900d0d3ef1</id>
<content type='text'>
notmuch previously unconditionally checked mime parts for various
properties, but not for NULL, which is the case if libgmime encounters
an empty mime part.

Upon encounter of an empty mime part, the following is printed to
stderr (the second line due to my patch):

  (process:17197): gmime-CRITICAL **: g_mime_message_get_mime_part: assertion `GMIME_IS_MESSAGE (message)' failed
  Warning: Not indexing empty mime part.

This is probably a bug that should get addressed in libgmime, but for
not, my patch is an acceptable workaround.

Signed-off-by: martin f. krafft &lt;madduck@madduck.net&gt;
</content>
</entry>
<entry>
<title>Fix typo in notmuch.h documentation regarding database open modes</title>
<updated>2010-04-13T15:39:10Z</updated>
<author>
<name>Michael Forney</name>
<email>michael@obberon.com</email>
</author>
<published>2010-03-26T18:39:17Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=9ddde6eb14c126e314d90e2e08f213fb81f0457f'/>
<id>urn:sha1:9ddde6eb14c126e314d90e2e08f213fb81f0457f</id>
<content type='text'>
Reviewed-by: Carl Worth &lt;cworth@cworth.org&gt;:

The original proposal for having different open modes used the name
WRITABLE. I didn't like that name, (easy to misspell as WRITEABLE even
for native English speakers). So we renamed it to READ_WRITE
immediately, but apparently some of the documentation held the old
name for a while.
</content>
</entry>
<entry>
<title>lib: Remove condition regarding a NULL parent_thread_id.</title>
<updated>2010-04-12T22:54:03Z</updated>
<author>
<name>Carl Worth</name>
<email>cworth@cworth.org</email>
</author>
<published>2010-04-12T22:54:03Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=14073b8851067db4dbf5727bf1f5547a66750934'/>
<id>urn:sha1:14073b8851067db4dbf5727bf1f5547a66750934</id>
<content type='text'>
A recent change guaranteed that a message ID can never be resolved
to a NULL thread ID, so we don't need this extra case.
</content>
</entry>
<entry>
<title>lib: Always add reference terms to the database.</title>
<updated>2010-04-12T22:45:40Z</updated>
<author>
<name>Carl Worth</name>
<email>cworth@cworth.org</email>
</author>
<published>2010-04-12T22:45:40Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=071022c253a6c2fbf445478619d1a32d945be438'/>
<id>urn:sha1:071022c253a6c2fbf445478619d1a32d945be438</id>
<content type='text'>
Previously, we were only adding the reference terms for cases where
the referenced message did not yet exist in the database. For thread
presentation, it's useful to have the connection information provided
by the references, even when the messages are present. So add this
term unconditionally.
</content>
</entry>
<entry>
<title>lib: Document the metadata stored within the Xapian database.</title>
<updated>2010-04-12T22:15:14Z</updated>
<author>
<name>Carl Worth</name>
<email>cworth@cworth.org</email>
</author>
<published>2010-04-12T22:15:14Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=328626d0fd17910eec5d8b5b51dda46f4bbd8189'/>
<id>urn:sha1:328626d0fd17910eec5d8b5b51dda46f4bbd8189</id>
<content type='text'>
We are currently storing "version", "last_thread_id", and
"thread_id_*" values so document how each of these are used.
</content>
</entry>
</feed>
