<feed xmlns='http://www.w3.org/2005/Atom'>
<title>notmuch/notmuch-show.c, branch 0.11</title>
<subtitle>thread-based email index, search, and tagging</subtitle>
<id>https://git.notmuchmail.org/git/notmuch/atom?h=0.11</id>
<link rel='self' href='https://git.notmuchmail.org/git/notmuch/atom?h=0.11'/>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/'/>
<updated>2011-12-21T11:32:16Z</updated>
<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>notmuch: unref charset_filter to fix one memory leak</title>
<updated>2011-12-15T11:38:06Z</updated>
<author>
<name>Tomi Ollila</name>
<email>tomi.ollila@iki.fi</email>
</author>
<published>2011-12-13T18:18:48Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=ff91aeedc170b15ea26c68e514b8279ca3ebd3b6'/>
<id>urn:sha1:ff91aeedc170b15ea26c68e514b8279ca3ebd3b6</id>
<content type='text'>
In my test case added g_object_unref(charset_filter) reduces memory
consumption over 90% when 'notmuch show --format=text "*"' is
executed (~11000 messages, RES ~330M -&gt; ~25M).
</content>
</entry>
<entry>
<title>Release memory allocated by internet_address_list_parse_string()</title>
<updated>2011-12-11T14:32:29Z</updated>
<author>
<name>Tomi Ollila</name>
<email>tomi.ollila@iki.fi</email>
</author>
<published>2011-12-10T10:18:54Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=3aca0ea421786e7dc6416390f236886e2f03c58e'/>
<id>urn:sha1:3aca0ea421786e7dc6416390f236886e2f03c58e</id>
<content type='text'>
g_object_unref() releases the memory of the InternetAddressList object
returned by internet_address_list_parse_string() -- when last (only)
reference is released, internet_address_list_finalize() will do cleanup.
</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>Do not attempt to output part raw if part is not GMimePart.</title>
<updated>2011-09-07T21:41:38Z</updated>
<author>
<name>Jameson Graef Rollins</name>
<email>jrollins@finestructure.net</email>
</author>
<published>2011-06-03T17:01:06Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=a6b93ef32b3274f0ae51acc336500a439371d0fc'/>
<id>urn:sha1:a6b93ef32b3274f0ae51acc336500a439371d0fc</id>
<content type='text'>
This was a minor oversite in checking of part type when outputing
content raw.  This was causing gmime was to throw an exception to
stderr.

Unfortunately the gmime exception was not being caught by notmuch, or
the test suite.  I'm not sure if notmuch should have done anything in
this case, but certainly the test suite should be capable of detecting
that something unexpected was output to stderr.
</content>
</entry>
<entry>
<title>Improve handling of message/rfc822 parts by adding a new header_message_part function to the formating structure.</title>
<updated>2011-09-06T01:58:52Z</updated>
<author>
<name>Jameson Graef Rollins</name>
<email>jrollins@finestructure.net</email>
</author>
<published>2011-06-06T00:29:28Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=12de016686351b78631546299ed35cced01f1e77'/>
<id>urn:sha1:12de016686351b78631546299ed35cced01f1e77</id>
<content type='text'>
This new function takes a GMimeMessage as input, and outputs the
formatted headers.  This allows for message/rfc822 parts to be
formatted on output in a similar way to full messages (see previous
patch that overhauls the multipart test for more info).
</content>
</entry>
<entry>
<title>Add part filename and content-id in notmuch show output if available.</title>
<updated>2011-06-29T02:19:16Z</updated>
<author>
<name>Dmitry Kurochkin</name>
<email>dmitry.kurochkin@gmail.com</email>
</author>
<published>2011-05-28T22:03:47Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=1a27b33f20da46a6f5643782dea84d04b6615ef6'/>
<id>urn:sha1:1a27b33f20da46a6f5643782dea84d04b6615ef6</id>
<content type='text'>
Before the change, notmuch show output had filename only for
parts with "Content-Disposition: attachment".  But parts with
inline disposition may have filename as well.

The patch makes notmuch show always output filename if available,
independent of Content-Disposition.  Both JSON and text output
formats are changed.

Also, the patch adds Content-id to text output format of notmuch
show.

The main goal of these changes is to have filenames on Emacs
buttons for inline attachments.  In particular, this is very
helpful for inline patches.

Note: text format changes may require updates in clients that use
it.  The changes are:

* text part header format changed from:

    ^Lpart{ ID: 2, Content-type: text/x-diff

  to:

    ^Lpart{ ID: 2, Filename: cool-feature.patch, Content-type: text/x-diff

* attachment format changed from:

    ^Lattachment{ ID: 4, Content-type: application/octet-stream
    Attachment: data.tar.bz2 (application/octet-stream)
    Non-text part: application/octet-stream
    ^Lattachment}

  to:

    ^Lattachment{ ID: 4, Filename: data.tar.bz2, Content-type: application/octet-stream
    Non-text part: application/octet-stream
    ^Lattachment}
</content>
</entry>
<entry>
<title>Use stock GMimeSession by default</title>
<updated>2011-06-04T00:42:54Z</updated>
<author>
<name>Daniel Kahn Gillmor</name>
<email>dkg@fifthhorseman.net</email>
</author>
<published>2011-06-03T23:57:46Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=5143e5e840b5e9d95611f57fdc9d4b27af6f0564'/>
<id>urn:sha1:5143e5e840b5e9d95611f57fdc9d4b27af6f0564</id>
<content type='text'>
Our use of GMimeSession was unneeded boilerplate, and we weren't doing
anything with it.  This simplifies and clarifies that assumption.

If we want to do anything fancier later, the examples in the gmime
source are a reasonable source to work from in defining a new
GMimeSession derivative.

Since GMimeSession is going away in GMime 2.6, though, i don't
recommend using it.
</content>
</entry>
<entry>
<title>show: Avoid inadvertently closing stdout</title>
<updated>2011-06-03T22:24:44Z</updated>
<author>
<name>Jameson Graef Rollins</name>
<email>jrollins@finestructure.net</email>
</author>
<published>2011-05-28T21:52:00Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=d5b4d950245605b84c56ce991fa3c59a073a70e5'/>
<id>urn:sha1:d5b4d950245605b84c56ce991fa3c59a073a70e5</id>
<content type='text'>
GMime has a nasty habit of taking ownership by default of any FILE*
handed to it va g_mime_stream_file_new. Specifically it will close the
FILE* when the stream is destroyed---even though GMime didn't open the
file itself.

To avoid this bad behavior, we have to carefully set_owner(FALSE)
after calling g_mime_stream_file_new. In the format_part_content_text
function, since commit d92146d3a6809f8ad940302af49cd99a0820665e we've
been calling g_mime_stream_file_new unconditionally, but only calling
g_mime_stream_file_set_owner(FALSE) conditionally.

This led to the FILE* being closed early when notmuch show output was
redirected to a file.

Fixing this fixes the test-suite cases that broke with the previous
commit, (which added redirected "notmuch show" calls to the test suite
to expose this bug).

Edited-by: Carl Worth &lt;cworth@cworth.org&gt; with a new commit message to
explain the bug and fix.
</content>
</entry>
<entry>
<title>Rename signerstatustostring to signer_status_to_string</title>
<updated>2011-05-31T23:20:56Z</updated>
<author>
<name>Carl Worth</name>
<email>cworth@cworth.org</email>
</author>
<published>2011-05-31T23:20:56Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=1a96c4078cd24ac51788f07fb0e2e745dc680681'/>
<id>urn:sha1:1a96c4078cd24ac51788f07fb0e2e745dc680681</id>
<content type='text'>
Otherwise, it's fartoohardformetoreadthis code.
</content>
</entry>
</feed>
