<feed xmlns='http://www.w3.org/2005/Atom'>
<title>notmuch/Makefile.local, branch debian/squeeze-backports</title>
<subtitle>thread-based email index, search, and tagging</subtitle>
<id>https://git.notmuchmail.org/git/notmuch/atom?h=debian%2Fsqueeze-backports</id>
<link rel='self' href='https://git.notmuchmail.org/git/notmuch/atom?h=debian%2Fsqueeze-backports'/>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/'/>
<updated>2012-12-09T17:33:34Z</updated>
<entry>
<title>tag-util.[ch]: New files for common tagging routines</title>
<updated>2012-12-09T17:33:34Z</updated>
<author>
<name>David Bremner</name>
<email>bremner@debian.org</email>
</author>
<published>2012-11-13T01:54:16Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=fb50cc41fe6f508118697d65a44e8f742a466ca0'/>
<id>urn:sha1:fb50cc41fe6f508118697d65a44e8f742a466ca0</id>
<content type='text'>
These are meant to be shared between notmuch-tag and notmuch-restore.

The bulk of the routines implement a "tag operation list" abstract
data type act as a structured representation of a set of tag
operations (typically coming from a single tag command or line of
input).
</content>
</entry>
<entry>
<title>Adding an S-expression structured output printer.</title>
<updated>2012-12-08T13:26:29Z</updated>
<author>
<name>Peter Feigl</name>
<email>craven@gmx.net</email>
</author>
<published>2012-12-06T21:12:11Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=fd3ffe35a2bf15676426235b809df915cd3473e4'/>
<id>urn:sha1:fd3ffe35a2bf15676426235b809df915cd3473e4</id>
<content type='text'>
This commit adds a structured output printer for Lisp
S-Expressions. Later commits will use this printer in notmuch search,
show and reply.

The structure is the same as json, but:
- arrays are written as lists: ("foo" "bar" "baaz" 1 2 3)
- maps are written as p-lists: (:key "value" :other-key "other-value")
- true is written as t
- false is written as nil
- null is written as nil

[ whitespace changes by db ]
</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>{., man}/Makefile.local: edit/remove release-checks.sh related targets</title>
<updated>2012-09-05T11:34:01Z</updated>
<author>
<name>Tomi Ollila</name>
<email>tomi.ollila@iki.fi</email>
</author>
<published>2012-09-04T14:49:13Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=69843dd6283f17656510f1aae197bc263f9633e1'/>
<id>urn:sha1:69843dd6283f17656510f1aae197bc263f9633e1</id>
<content type='text'>
Use new target release-checks in place of verify-version-debian,
verify-version-python verify-version-manpage. This target executes
devel/release-checks.sh which does all the verifications the three
dropped targets did, and some more.
</content>
</entry>
<entry>
<title>cli: Remove now-unused json.c</title>
<updated>2012-08-12T19:28:08Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@MIT.EDU</email>
</author>
<published>2012-08-07T13:04:27Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=d41946ea781caaf9652d037caa5f65a93a199b80'/>
<id>urn:sha1:d41946ea781caaf9652d037caa5f65a93a199b80</id>
<content type='text'>
The string buffer quoting functions in json.c have been superseded by
the new sprinter interface and are no longer used.  Remove them.
</content>
</entry>
<entry>
<title>build system: remove configure output in Make distclean.</title>
<updated>2012-08-03T00:10:15Z</updated>
<author>
<name>David Bremner</name>
<email>bremner@debian.org</email>
</author>
<published>2012-08-02T12:30:31Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=719897cdc330a41c22271fded8d911035c275dec'/>
<id>urn:sha1:719897cdc330a41c22271fded8d911035c275dec</id>
<content type='text'>
Create a variable DISTCLEAN which contains a list of things to
clean in the distclean target (in addition to running the clean
target).

The deleted comment seems to be false these days, since we do
create files during configuration.

Use "rm -rf" here as well in case we want to add directories to
DISTCLEAN.
</content>
</entry>
<entry>
<title>build system: remove directories created by tests in "make clean"</title>
<updated>2012-08-03T00:09:45Z</updated>
<author>
<name>David Bremner</name>
<email>bremner@debian.org</email>
</author>
<published>2012-08-02T12:27:26Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=8a745d310f966194e82f12f6453f05cc877379d6'/>
<id>urn:sha1:8a745d310f966194e82f12f6453f05cc877379d6</id>
<content type='text'>
These extra directories cause problems for building on Debian
twice in a row.

In order to remove directories, we need to us "rm -rf" instead of
"rm -f". So now we should be extra careful what we add to the
variable CLEAN.
</content>
</entry>
<entry>
<title>Add structured output formatter for JSON and plain text (but don't use them yet).</title>
<updated>2012-07-24T12:26:59Z</updated>
<author>
<name>craven@gmx.net</name>
<email>craven@gmx.net</email>
</author>
<published>2012-07-23T10:39:45Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=36522fca1cac6ca23c2c4c0280e3e20e96f7bfbb'/>
<id>urn:sha1:36522fca1cac6ca23c2c4c0280e3e20e96f7bfbb</id>
<content type='text'>
Using the new structured printer support in sprinter.h, implement
sprinter_json_create, which returns a new JSON structured output
formatter. The formatter prints output similar to the existing JSON, but
with differences in whitespace (mostly newlines, --output=summary prints
the entire message summary on one line, not split across multiple lines).

Also implement a "structured" formatter for plain text that prints
prefixed strings, to be used with notmuch-search.c plain text output.
</content>
</entry>
<entry>
<title>cli: new crypto structure to store crypto contexts and parameters, and functions to support it</title>
<updated>2012-06-10T23:05:02Z</updated>
<author>
<name>Jameson Graef Rollins</name>
<email>jrollins@finestructure.net</email>
</author>
<published>2012-05-26T18:45:41Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=e3be5afbad1bc7a10d9c38f2c2eb611f5ba3cccb'/>
<id>urn:sha1:e3be5afbad1bc7a10d9c38f2c2eb611f5ba3cccb</id>
<content type='text'>
This new structure, notmuch_crypto_t, keeps all relevant crypto
contexts and parameters together, and will make it easier to pass the
stuff around and clean it up.  The name of the crypto context inside
this new struct will change, to reflect that it is actually a GPG
context, which is a sub type of Crypto context.  There are other types
of Crypto contexts (Pkcs7 in particular, which we hope to support) so
we want to be clear.

The new crypto.c contains functions to return the proper context from
the struct for a given protocol (and initialize it if needed), and to
cleanup a struct by releasing the crypto contexts.
</content>
</entry>
<entry>
<title>Record dependencies during build instead of before</title>
<updated>2012-04-15T12:42:15Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@MIT.EDU</email>
</author>
<published>2012-04-11T20:38:39Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=cddc27034687e1c3bc52204314dfa46219b5d6f9'/>
<id>urn:sha1:cddc27034687e1c3bc52204314dfa46219b5d6f9</id>
<content type='text'>
Previously, the makefile created dependency files in a separate, first
pass.  In particular, include-ing the dependency files would cause
make to attempt to rebuild those files using the dependency-generation
rules in the makefile.  Unfortunately, this approach required obtuse
rules and silently delayed the start of the build process (by quite a
bit on a clean tree without any dependency files).  Worse, this
required the dependency files to themselves depend on all of the
headers the source file depended on, which meant that, if a header
file was removed, the depedency file could not be updated because of a
missing dependency (!), which would cause make to silently fail.

This patch eliminates the dependency generation rules and instead
generates dependency files as a side-effect of the regular build rule.
On the first build, we don't need to know the dependencies beforehand;
the object file doesn't exist, so it will be built anyway.  On
subsequent builds, if a header file is updated, the dependency rules
generated by the previous build will force a rebuild.  If a source
file is updated, the dependency rules may be stale, but it doesn't
matter because the updated source file will force a rebuild.

In the final case above, the stale dependency rules may refer to a
header file that no longer exists but is also no longer needed.  In
order to prevent this from breaking the build, we also pass gcc the
-MP option, which generates phony targets for every depended-on header
file, so make won't complain if it can't find them during a later
build.
</content>
</entry>
</feed>
