<feed xmlns='http://www.w3.org/2005/Atom'>
<title>notmuch/notmuch-new.c, branch 0.17</title>
<subtitle>thread-based email index, search, and tagging</subtitle>
<id>https://git.notmuchmail.org/git/notmuch/atom?h=0.17</id>
<link rel='self' href='https://git.notmuchmail.org/git/notmuch/atom?h=0.17'/>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/'/>
<updated>2013-10-28T19:47:10Z</updated>
<entry>
<title>new: Don't scan unchanged directories with no sub-directories</title>
<updated>2013-10-28T19:47:10Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@MIT.EDU</email>
</author>
<published>2013-10-24T21:38:59Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=516efb7807d672b692921b0b42c30bc49dafb733'/>
<id>urn:sha1:516efb7807d672b692921b0b42c30bc49dafb733</id>
<content type='text'>
This can substantially reduce the cost of notmuch new in some
situations, such as when the file system cache is cold or when the
Maildir is on NFS.
</content>
</entry>
<entry>
<title>cli: move config open/close to main() from subcommands</title>
<updated>2013-03-08T11:54:41Z</updated>
<author>
<name>Jani Nikula</name>
<email>jani@nikula.org</email>
</author>
<published>2013-03-03T21:55:09Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=4ef2106792439f5ade157b3ba3b8f7fa86fcb3ed'/>
<id>urn:sha1:4ef2106792439f5ade157b3ba3b8f7fa86fcb3ed</id>
<content type='text'>
This allows specifying config file as a top level argument to notmuch,
and generally makes it possible to override config file options in
main(), without having to touch the subcommands.

If the config file does not exist, one will be created for the notmuch
main command and setup and help subcommands. Help is special in this
regard; the config is created just to avoid errors about missing
config, but it will not be saved.

This also makes notmuch config the talloc context for subcommands.
</content>
</entry>
<entry>
<title>cli: config: make notmuch_config_open() "is new" parameter input only</title>
<updated>2013-03-07T13:39:12Z</updated>
<author>
<name>Jani Nikula</name>
<email>jani@nikula.org</email>
</author>
<published>2013-03-03T21:55:08Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=e76f6517de020783d828be59f461f1d4f465c4b4'/>
<id>urn:sha1:e76f6517de020783d828be59f461f1d4f465c4b4</id>
<content type='text'>
We now have a notmuch_config_is_new() function to query whether a
config was created or not. Change the notmuch_config_open() is_new
parameter into boolean create_new to determine whether the function
should create a new config if one doesn't exist. This reduces the
complexity of the API.
</content>
</entry>
<entry>
<title>cli: convert "notmuch new" to the argument parser</title>
<updated>2012-12-04T13:10:33Z</updated>
<author>
<name>Jani Nikula</name>
<email>jani@nikula.org</email>
</author>
<published>2012-12-03T20:56:13Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=11365abb90b63af785f5b8ad73e0cbcefc567dce'/>
<id>urn:sha1:11365abb90b63af785f5b8ad73e0cbcefc567dce</id>
<content type='text'>
Use the notmuch argument parser to handle arguments in "notmuch
new". As a side effect, this fixes broken STRNCMP_LITERAL usage that
accepts, for example, --verbosefoo for --verbose.
</content>
</entry>
<entry>
<title>new: Skip ignored broken symlinks</title>
<updated>2012-11-27T02:17:20Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@MIT.EDU</email>
</author>
<published>2012-11-25T05:25:45Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=7611a72be2cf6488c4d57ac0545469ff7ae89760'/>
<id>urn:sha1:7611a72be2cf6488c4d57ac0545469ff7ae89760</id>
<content type='text'>
We now test for user ignore patterns before attempting to determine if
a directory entry is itself a directory.  As a result, we no longer
abort for broken symlinks if the user has explicitly ignored them.

This fixes the test added in the previous patch.  It also slightly
changes the debug output checked by another test of ignores.
</content>
</entry>
<entry>
<title>cli: notmuch new: optionally output debug information when ignoring files/directories</title>
<updated>2012-10-20T20:28:19Z</updated>
<author>
<name>Pieter Praet</name>
<email>pieter@praet.org</email>
</author>
<published>2012-02-19T20:47:54Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=97216b3cb8012d52c7701b2ec8f874985981124a'/>
<id>urn:sha1:97216b3cb8012d52c7701b2ec8f874985981124a</id>
<content type='text'>
When running 'notmuch new' with the '--debug' option, output debug
information regarding explicitly ignored files and directories.
</content>
</entry>
<entry>
<title>cli: add '--debug' option to 'notmuch new'</title>
<updated>2012-10-20T20:27:58Z</updated>
<author>
<name>Pieter Praet</name>
<email>pieter@praet.org</email>
</author>
<published>2012-02-19T20:47:53Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=12d328a59701ea6251dcd5f7c1cfe6d047c657b4'/>
<id>urn:sha1:12d328a59701ea6251dcd5f7c1cfe6d047c657b4</id>
<content type='text'>
This will be used in later patches to test the 'new.ignore'
config option more thoroughly.
</content>
</entry>
<entry>
<title>new: Unify add_files and add_files_recursive</title>
<updated>2012-05-25T00:53:38Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@MIT.EDU</email>
</author>
<published>2012-05-24T22:01:13Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=4ca36441a84155571ca2e572f3f6a96af55685b1'/>
<id>urn:sha1:4ca36441a84155571ca2e572f3f6a96af55685b1</id>
<content type='text'>
Since starting at the top of a directory tree and recursing within
that tree are now identical operations, there's no need for both
add_files and add_files_recursive.  This eliminates add_files (which
did nothing more than call add_files_recursive after the previous
patch) and renames add_files_recursive to add_files.
</content>
</entry>
<entry>
<title>new: Merge error checks from add_files and add_files_recursive</title>
<updated>2012-05-25T00:53:19Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@MIT.EDU</email>
</author>
<published>2012-05-24T22:01:12Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=da170ee6573ca8a04f01ebf789250f6b4b4d3cf0'/>
<id>urn:sha1:da170ee6573ca8a04f01ebf789250f6b4b4d3cf0</id>
<content type='text'>
Previously, add_files_recursive could have been called on a symlink to
a non-directory.  Hence, calling it on a non-directory was not an
error, so a separate function, add_files, existed to fail loudly in
situations where the path had to be a directory.

With the new stat-ing logic, add_files_recursive is always called on
directories, so the separation of this logic is no longer necessary.
Hence, this patch moves the strict error checking previously done by
add_files into add_files_recursive.
</content>
</entry>
<entry>
<title>new: Centralize file type stat-ing logic</title>
<updated>2012-05-25T00:53:08Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@MIT.EDU</email>
</author>
<published>2012-05-24T22:01:11Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=d99270c450d8f9ef3ecfbcbeeb99b581f36c9175'/>
<id>urn:sha1:d99270c450d8f9ef3ecfbcbeeb99b581f36c9175</id>
<content type='text'>
This moves our logic to get a file's type into one function.  This has
several benefits: we can support OSes and file systems that do not
provide dirent.d_type or always return DT_UNKNOWN, complex
symlink-handling logic has been replaced by a simple stat fall-through
in one place, and the error message for un-stat-able file is more
accurate (previously, the error always mentioned directories, even
though a broken symlink is not a directory).
</content>
</entry>
</feed>
