<feed xmlns='http://www.w3.org/2005/Atom'>
<title>notmuch/notmuch-show.c, branch 0.4</title>
<subtitle>thread-based email index, search, and tagging</subtitle>
<id>https://git.notmuchmail.org/git/notmuch/atom?h=0.4</id>
<link rel='self' href='https://git.notmuchmail.org/git/notmuch/atom?h=0.4'/>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/'/>
<updated>2010-06-09T02:45:54Z</updated>
<entry>
<title>notmuch show: Add a --format=mbox option</title>
<updated>2010-06-09T02:45:54Z</updated>
<author>
<name>Carl Worth</name>
<email>cworth@cworth.org</email>
</author>
<published>2010-06-09T02:45:54Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=33cd247dc183708cf710d1afcbc0c3ed6ac6e2b7'/>
<id>urn:sha1:33cd247dc183708cf710d1afcbc0c3ed6ac6e2b7</id>
<content type='text'>
We don't love the mbox format, but it's still sometimes the most
practical way to share a collection of messages as a single file.

Here we implement the "mboxrd" variant of the mbox file format. This
variant applies reversible escaping by prefixing a '&gt;' character to
all lines in the email messages matching the regular expression:

	"^&gt;*From "

This allows the escaping to be reliably removed. A reader should remove
a '&gt;' from any line matching the regular expression:

	"^&gt;&gt;*From "

More details on the mboxrd formats (and others as well) can be found
here:

http://homepage.ntlworld.com/jonathan.deboynepollard/FGA/mail-mbox-formats.html
</content>
</entry>
<entry>
<title>Fix minor style issues in show_part_content function.</title>
<updated>2010-06-05T15:47:13Z</updated>
<author>
<name>Carl Worth</name>
<email>cworth@cworth.org</email>
</author>
<published>2010-06-05T15:47:13Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=2ead072e85315387c0cc3c2236cdedb59503881e'/>
<id>urn:sha1:2ead072e85315387c0cc3c2236cdedb59503881e</id>
<content type='text'>
I was recently editing the code in this function and decided to clean
it up a bit.
</content>
</entry>
<entry>
<title>Avoid giving GMime a NULL MIME-stream filter.</title>
<updated>2010-06-05T15:40:26Z</updated>
<author>
<name>Carl Worth</name>
<email>cworth@cworth.org</email>
</author>
<published>2010-06-05T15:40:26Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=9c7668bdb51e4739eecda83b6452ef668ed0efa3'/>
<id>urn:sha1:9c7668bdb51e4739eecda83b6452ef668ed0efa3</id>
<content type='text'>
Micah Anderson reported an issue where a message failed to display in
the emacs interface, (it instead gave an error, "json-read-string: Bad
string format").

Micah tracked this down to the json output from "notmuch show" being
interrupted by a GMime error message:

	gmime-CRITICAL **: g_mime_stream_filter_add: assertion
	`GMIME_IS_FILTER (filter)

I tracked this down further to notmuch passing a NULL value to
g_mime_stream_filter_add. And this was due to calling
g_mime_filter_charset_new with a value of "unknown-8bit".

So we add a test message withe a Conten-Type of "text/plain;
charset=unknown-8bit" from Micah's message. Then we fix "notmuch show"
to test for NULL before calling g_mime_stream_filter_add. Bug fixed.
</content>
</entry>
<entry>
<title>json: Replace `date_unix' with `timestamp' in show output</title>
<updated>2010-04-22T21:52:32Z</updated>
<author>
<name>David Edmondson</name>
<email>dme@dme.org</email>
</author>
<published>2010-04-16T11:47:49Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=afb8c9ca62ef205b83510b96ffe20aa85f1fb83f'/>
<id>urn:sha1:afb8c9ca62ef205b83510b96ffe20aa85f1fb83f</id>
<content type='text'>
Search output was already using `timestamp' for a very similar field,
so follow that.
</content>
</entry>
<entry>
<title>notmuch: Correctly terminate text/* parts in JSON output</title>
<updated>2010-04-05T17:57:23Z</updated>
<author>
<name>David Edmondson</name>
<email>dme@dme.org</email>
</author>
<published>2010-04-05T09:33:19Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=9eb360329929258fb243cfb5095989ba45391109'/>
<id>urn:sha1:9eb360329929258fb243cfb5095989ba45391109</id>
<content type='text'>
Text parts returned by `g_mime_stream_mem_get_byte_array()' are not
NULL terminated strings - add `json_quote_chararray()' to handle them
correctly.
</content>
</entry>
<entry>
<title>notmuch: Add a 'part' subcommand</title>
<updated>2010-04-02T08:43:03Z</updated>
<author>
<name>David Edmondson</name>
<email>dme@dme.org</email>
</author>
<published>2010-03-24T07:21:20Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=2e9c7aba99598eafd7b5fc52897da14ea13af216'/>
<id>urn:sha1:2e9c7aba99598eafd7b5fc52897da14ea13af216</id>
<content type='text'>
A new 'part' subcommand allows the user to extract a single part from
a MIME message. Usage:
  notmuch part --part=&lt;n&gt; &lt;search terms&gt;
The search terms must match only a single message
(e.g. id:foo@bar.com). The part number specified refers to the part
identifiers output by `notmuch show'. The content of the part is
written the stdout with no formatting or identification marks. It is
not JSON formatted.
</content>
</entry>
<entry>
<title>notmuch-show: Add unix and relative dates to the JSON output</title>
<updated>2010-04-02T08:25:38Z</updated>
<author>
<name>David Edmondson</name>
<email>dme@dme.org</email>
</author>
<published>2010-03-23T09:40:48Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=930a47935fcd87ff4ae6c0c14279fd136f5bd78b'/>
<id>urn:sha1:930a47935fcd87ff4ae6c0c14279fd136f5bd78b</id>
<content type='text'>
Include a 'date_unix' and 'date_relative' field in the JSON output for
each message. 'date_relative' can be used by a UI implementation,
whereas 'date_unix' is useful when scripting.
</content>
</entry>
<entry>
<title>Setup the GMimeStream only when needed</title>
<updated>2010-04-01T21:27:01Z</updated>
<author>
<name>nstraz@redhat.com</name>
<email>nstraz@redhat.com</email>
</author>
<published>2010-04-01T13:47:21Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=685cfcc9e876e9c611d2cb03e8ebd417a7f165b7'/>
<id>urn:sha1:685cfcc9e876e9c611d2cb03e8ebd417a7f165b7</id>
<content type='text'>
I ran into this while looking at the vim plugin.  Vim's system() call
redirects output to a file and it was missing many of the part{ lines.

If stream_stdout is setup too early, it will overwrite the part start
when notmuch is redirected to a file.

Reviewed-by Carl Worth &lt;cworth@cworth.org&gt;: GMime is calling fseek
before every write to reset the FILE* to the position it believes is
correct based on the writes it has seen. Our code was getting
incorrect results because our GMime writes were interleaved with
non-GMime writes via printf.

The bug appears when writing to a file because it's seekable, but not
when writing to a pipe which is not.
</content>
</entry>
<entry>
<title>notmuch-show: add tags to json output</title>
<updated>2010-03-11T12:30:46Z</updated>
<author>
<name>Sebastian Spaeth</name>
<email>Sebastian@SSpaeth.de</email>
</author>
<published>2010-03-11T12:11:43Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=d30049d2b9fd5eb113cd99e88d6fa7b40c36d3c5'/>
<id>urn:sha1:d30049d2b9fd5eb113cd99e88d6fa7b40c36d3c5</id>
<content type='text'>
The previous json patches forgot to add the notmuch tags to the json
output. This is inconsistent to the text output so here they are. We
just output a 'tags' field that sends notmuch tags as a json array.

Signed-off-by: Sebastian Spaeth &lt;Sebastian@SSpaeth.de&gt;
</content>
</entry>
<entry>
<title>notmuch show: Don't show empty headers.</title>
<updated>2010-03-09T18:12:58Z</updated>
<author>
<name>Carl Worth</name>
<email>cworth@cworth.org</email>
</author>
<published>2010-03-09T18:12:58Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=2303d9366e2a4f18173983ab02a0c4d9b05d607c'/>
<id>urn:sha1:2303d9366e2a4f18173983ab02a0c4d9b05d607c</id>
<content type='text'>
This is a fairly old regression. There has always been code to avoid
printing empty headers (such as Cc or Bcc with no values), but it has
been broken since notmuch_message_get_header was changed to return
an empty string rather than a NULL pointer for these fields.
</content>
</entry>
</feed>
