<feed xmlns='http://www.w3.org/2005/Atom'>
<title>notmuch/notmuch-client.h, branch 0.15</title>
<subtitle>thread-based email index, search, and tagging</subtitle>
<id>https://git.notmuchmail.org/git/notmuch/atom?h=0.15</id>
<link rel='self' href='https://git.notmuchmail.org/git/notmuch/atom?h=0.15'/>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/'/>
<updated>2012-12-31T01:12:11Z</updated>
<entry>
<title>util: add talloc-extra.[ch]</title>
<updated>2012-12-31T01:12:11Z</updated>
<author>
<name>David Bremner</name>
<email>bremner@debian.org</email>
</author>
<published>2012-12-17T03:12:51Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=0cfb8a24dc025335643a5cfa344c62e5584fb477'/>
<id>urn:sha1:0cfb8a24dc025335643a5cfa344c62e5584fb477</id>
<content type='text'>
These are intended to be simple wrappers to provide slightly better
debugging information than what talloc currently provides natively.
</content>
</entry>
<entry>
<title>cli: Framework for structured output versioning</title>
<updated>2012-12-16T21:20:33Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@MIT.EDU</email>
</author>
<published>2012-12-16T03:17:23Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=1c6195b9e35e511e115f94b45d97aa58ee41b307'/>
<id>urn:sha1:1c6195b9e35e511e115f94b45d97aa58ee41b307</id>
<content type='text'>
Currently there is a period of pain whenever we make
backward-incompatible changes to the structured output format, which
discourages not only backward-incompatible improvements to the format,
but also backwards-compatible additions that may not be "perfect".  In
the end, these problems limit experimentation and innovation.

This series of patches introduces a way for CLI callers to request a
specific format version on the command line and to determine if the
CLI does not supported the requested version (and perhaps present a
useful diagnostic to the user).  Since the caller requests a format
version, it's also possible for the CLI to support multiple
incompatible versions simultaneously, unlike the alternate approach of
including version information in the output.

This patch lays the groundwork by introducing a versioning convention,
standard exit codes, and a utility function to check the requested
version and produce standardized diagnostic messages and exit
statuses.
</content>
</entry>
<entry>
<title>Rename the -json printer functions in notmuch-reply and notmuch-show to generic -sprinter functions.</title>
<updated>2012-12-08T13:28:19Z</updated>
<author>
<name>Peter Feigl</name>
<email>craven@gmx.net</email>
</author>
<published>2012-12-06T21:12:12Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=1bf3720b6eaca6698f25781a7d299afcbd7a4be8'/>
<id>urn:sha1:1bf3720b6eaca6698f25781a7d299afcbd7a4be8</id>
<content type='text'>
All the structured output functions in notmuch-reply and notmuch-show
are renamed to a generic name (as they do not contain any json-specific
code anyway). This patch is a preparation to actually using the new
S-Expression sprinter in notmuch-reply and notmuch-show.
</content>
</entry>
<entry>
<title>show: Remove now unused fields from notmuch_show_format</title>
<updated>2012-08-03T23:40:01Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@MIT.EDU</email>
</author>
<published>2012-08-03T01:14:59Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=1cbaad158e36a1402f1f9bc49ba7f2b56640c0d1'/>
<id>urn:sha1:1cbaad158e36a1402f1f9bc49ba7f2b56640c0d1</id>
<content type='text'>
The message_set_{begin,sep,end} and null_message fields are no longer
used because we now use the structure printer provided by the format.
</content>
</entry>
<entry>
<title>show: Convert format_headers_json to use sprinter</title>
<updated>2012-08-03T23:30:49Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@MIT.EDU</email>
</author>
<published>2012-08-03T01:14:53Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=7018fc58b4ebf6e2c52102c0443169f8120db261'/>
<id>urn:sha1:7018fc58b4ebf6e2c52102c0443169f8120db261</id>
<content type='text'>
This no longer requires a talloc context (not that it really did
before since it didn't return anything), so we remove its context
argument.
</content>
</entry>
<entry>
<title>show: Feed the sprinter down to part formatters</title>
<updated>2012-08-03T23:27:25Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@MIT.EDU</email>
</author>
<published>2012-08-03T01:14:52Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=3a08341e504d7f9b27f8a67a2fed223a38edb706'/>
<id>urn:sha1:3a08341e504d7f9b27f8a67a2fed223a38edb706</id>
<content type='text'>
There are several levels of function calls between where we create the
sprinter and the call to the part formatter in show_message. This
feeds the sprinter through all of them and into the part formatters.
</content>
</entry>
<entry>
<title>show: Associate an sprinter with each format</title>
<updated>2012-08-03T23:21:50Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@MIT.EDU</email>
</author>
<published>2012-08-03T01:14:50Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=d79b24b98d26e08f7529df6c404d523739175347'/>
<id>urn:sha1:d79b24b98d26e08f7529df6c404d523739175347</id>
<content type='text'>
This associates an sprinter constructor with each show format and uses
this to construct the appropriate sprinter.  Currently nothing is done
with this sprinter, but the following patches will weave it through
the layers of notmuch show.
</content>
</entry>
<entry>
<title>cli: add --body=true|false option to notmuch-show.c</title>
<updated>2012-07-24T18:29:22Z</updated>
<author>
<name>Mark Walters</name>
<email>markwalters1009@gmail.com</email>
</author>
<published>2012-07-24T18:23:27Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=0e63372efe28f2fff0791b293240695b19bfefd2'/>
<id>urn:sha1:0e63372efe28f2fff0791b293240695b19bfefd2</id>
<content type='text'>
This option allows the caller to suppress the output of the bodies of
the messages. Currently this is only implemented for format=json.

This is used by notmuch-pick.el (although not needed) because it gives
a speed-up of at least a factor of a two (and in some cases a speed up
of more than a factor of 8); moreover it reduces the memory usage in
emacs hugely.
</content>
</entry>
<entry>
<title>cli: Let json output "null" messages for non --entire-thread</title>
<updated>2012-06-30T01:31:53Z</updated>
<author>
<name>Mark Walters</name>
<email>markwalters1009@gmail.com</email>
</author>
<published>2012-06-16T10:21:43Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=4d3bfba98316ef703c430bb3202dc4e258f05ae5'/>
<id>urn:sha1:4d3bfba98316ef703c430bb3202dc4e258f05ae5</id>
<content type='text'>
All formats except Json can output empty messages for non
entire-thread, but in Json format we output "null" to keep the other
elements (e.g. the replies to the omitted message) in the correct
place.
</content>
</entry>
<entry>
<title>cli: use new notmuch_crypto_get_context in mime-node.c</title>
<updated>2012-06-10T23:09:42Z</updated>
<author>
<name>Jameson Graef Rollins</name>
<email>jrollins@finestructure.net</email>
</author>
<published>2012-05-26T18:45:46Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=e04b18cf3624e1ba29a45cd1f15715e1da244021'/>
<id>urn:sha1:e04b18cf3624e1ba29a45cd1f15715e1da244021</id>
<content type='text'>
This has the affect of lazily creating the crypto contexts only when
needed.  This removes code duplication from notmuch-show and
notmuch-reply, and should speed up these functions considerably if the
crypto flags are provided but the messages don't have any
cryptographic parts.
</content>
</entry>
</feed>
