aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
* cli: use new notmuch_crypto_get_context in mime-node.cGravatar Jameson Graef Rollins2012-06-10
| | | | | | | | 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.
* cli: new crypto verify flag to handle verificationGravatar Jameson Graef Rollins2012-06-10
| | | | | | | Use this flag rather than depend on the existence of an initialized gpgctx, to determine whether we should verify a multipart/signed. We will be moving to create the ctx lazily, so we don't want to depend on it being previously initialized if it's not needed.
* cli: modify mime_node_context to use the new crypto structGravatar Jameson Graef Rollins2012-06-10
| | | | This simplifies some more interfaces.
* cli: modify mime_node_open to take new crypto struct as argumentGravatar Jameson Graef Rollins2012-06-10
| | | | This simplifies the interface considerably.
* cli: modify show and reply to use new crypto structGravatar Jameson Graef Rollins2012-06-10
| | | | | notmuch_show_params_t is modified to use the new notmuch_crypto_t, and notmuch-show and notmuch-reply are modified accordingly.
* cli: new crypto structure to store crypto contexts and parameters, and ↵Gravatar Jameson Graef Rollins2012-06-10
| | | | | | | | | | | | | | | | functions to support it 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.
* cli: use new typedef to deal with gmime 2.4/2.6 context incompatibilityGravatar Jameson Graef Rollins2012-06-10
| | | | | | gmime 2.4 defines GMimeCipherContext, while 2.6 defines GMimeCryptoContext. typedef them both to notmuch_crypto_context_t to cover this discrepancy and remove a bunch of #ifdefs.
* emacs: only strip "re:" in the beginning of subjectGravatar Jani Nikula2012-06-07
| | | | | Fix notmuch-show-strip-re by matching "re:" only in the beginning of the input string.
* test: add test for emacs notmuch-show-strip-re functionGravatar Jani Nikula2012-06-07
| | | | | | The function is used for stripping "re:" from subjects to generate "bare subjects". Include broken test for having "re:" in the middle of the subject.
* nmbug: check whether every forked process exit with (non)zero valueGravatar Tomi Ollila2012-06-03
| | | | | | If any of the forked process exits with nonzero value, terminate current operation -- nonzero exit value indicates failure and then there is no point continuing.
* uncrustify.cfg: comments and more typesGravatar Tomi Ollila2012-06-03
| | | | | | | | | Changes to devel/uncrustify.cfg: * Updated header comment to state this is config file for *notmuch*. * Added comment about the reason of 'type' keyword used. * Added some more custom types woth 'type' keyword. * Have (every) multiline comment lines start with '*'.
* emacs: Suppress warnings about using cl at runtimeGravatar Austin Clements2012-06-03
| | | | | | | | | It was decided in the thread starting at [0] that it is okay for notmuch to use 'cl runtime functions. However, by default, these produce byte compiler warnings. This suppresses those using file-local variables. [0] id:"m262g864dz.fsf@wal122.wireless-pennnet.upenn.edu"
* config: add quoting to fix IFS bugGravatar Jameson Graef Rollins2012-06-03
| | | | | | Without proper quoting the DEFAULT_IFS was getting set incorrectly, which was causing problems with the storage of some variables later in the script. Quoting fixes the problem.
* Merge tag '0.13.2'Gravatar David Bremner2012-06-03
|\ | | | | | | notmuch 0.13.2 release
| * debian: changelog stanza for 0.13.2-1Gravatar David Bremner2012-06-02
| |
| * NEWS: update for 0.13.2Gravatar David Bremner2012-06-02
| |
| * version: update to 0.13.2Gravatar David Bremner2012-06-02
| |
| * notmuch-deliver: Update to new notmuch_database_open APIGravatar Austin Clements2012-06-01
| | | | | | | | Commit 5fddc07 changed this API, but missed this use of it.
* | notmuch-mutt: lookup notmuch-search-terms(7) when asked for helpGravatar Stefano Zacchiroli2012-05-29
| | | | | | | | | | | | | | | | When asked for interactive help, lookup notmuch-search-terms(7) instead of notmuch(1). Syntax of notmuch queries used to be described in the latter, but has recently been moved to the former. Closes: #675073 (in the Debian BTS)
* | Merge branch 'release'Gravatar David Bremner2012-05-29
|\|
| * NEWS: add item about ruby bindings.Gravatar David Bremner2012-05-28
| | | | | | | | Corrections or clarifications welcome.
| * Revert "ruby: Add workarounds to use in-tree build not the installed one"Gravatar Felipe Contreras2012-05-28
| | | | | | | | | | | | | | | | | | This reverts commit 82b73ffd7380b85d259eeb91100dd6ac2d14223a. Only leave the copyright changes. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> (cherry picked from commit 35cb1c95cc8afa964900d29c813349ad8e24e7a8)
* | configure: add help note about gmime versionGravatar Jameson Graef Rollins2012-05-25
| |
* | cli: fix documentation about --decrypt for showGravatar Jameson Graef Rollins2012-05-25
| | | | | | | | Forgot to mention that it implies --verify.
* | test: remove "Testing" from test description in emacs-hello and emacs-showGravatar Dmitry Kurochkin2012-05-25
| | | | | | | | | | "Testing" is printed by test/test-lib.sh, so having "Testing" in test description results in duplicate "Testing" in console output.
| * debian: changelog stanza for 0.13.1Gravatar David Bremner2012-05-25
| |
| * version: bump to 0.13.1Gravatar David Bremner2012-05-25
| |
| * fix release date for 0.13.1Gravatar David Bremner2012-05-25
| |
| * NEWS for directory function fixesGravatar Austin Clements2012-05-25
| |
* | Revert "ruby: Add workarounds to use in-tree build not the installed one"Gravatar Felipe Contreras2012-05-25
| | | | | | | | | | | | | | | | This reverts commit 82b73ffd7380b85d259eeb91100dd6ac2d14223a. Only leave the copyright changes. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
* | test: add tests for notmuch reply From guessingGravatar Jani Nikula2012-05-24
| | | | | | | | | | | | | | Add tests for picking up user's From address from fallback headers Envelope-To, X-Original-To, and Delivered-To. Signed-off-by: Jani Nikula <jani@nikula.org>
* | cli: also use Delivered-To header to figure out the reply from addressGravatar Jani Nikula2012-05-24
| | | | | | | | | | | | | | | | | | | | Add another fallback header Delivered-To for guessing the user's from address for notmuch reply before using the Received headers. Apparently some MTAs use Delivered-To instead of X-Original-To (which already exists as a fallback). Reported-by: Michael Hudson-Doyle <michael.hudson@canonical.com> Signed-off-by: Jani Nikula <jani@nikula.org>
* | Recommend libgmime-2.6-dev in INSTALLGravatar Austin Clements2012-05-24
| | | | | | | | | | Given that everything prefers 2.6 over 2.4, it seems appropriate to suggest that people install the 2.6 dev package instead of 2.4.
* | new: Unify add_files and add_files_recursiveGravatar Austin Clements2012-05-24
| | | | | | | | | | | | | | | | 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.
* | new: Merge error checks from add_files and add_files_recursiveGravatar Austin Clements2012-05-24
| | | | | | | | | | | | | | | | | | | | | | | | 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.
* | new: Centralize file type stat-ing logicGravatar Austin Clements2012-05-24
| | | | | | | | | | | | | | | | | | | | 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).
* | test: Test notmuch new with a broken symlinkGravatar Austin Clements2012-05-24
| |
| * NEWS: started 0.13.1 stanza: fix decoding of text/plain parts in replyGravatar Tomi Ollila2012-05-24
| | | | | | | | | | NEWS item for forthcoming 0.13.1 bug fix release: UTF-8 characters were incorrectly decoded when inserting reply content from text/plain parts.
* | Merge branch 'release'Gravatar David Bremner2012-05-23
|\| | | | | | | | | merge 0.13.1 bugfix patches back to master, fixes for emacs reply and spurious directory document creation.
* | cli: clean up user address matching code in guess_from_received_header()Gravatar Jani Nikula2012-05-23
| | | | | | | | | | | | | | | | | | | | Get rid of user address matching code duplication in guess_from_received_header() by using the new address matching helpers. No functional changes. Signed-off-by: Jani Nikula <jani@nikula.org>
* | cli: add user address matching helpers for notmuch replyGravatar Jani Nikula2012-05-23
| | | | | | | | | | | | | | | | | | | | | | | | Add a multi-purpose address_match() function for matching strings against user's configured primary and other email addresses. Add thin wrappers user_address_in_string() and string_in_user_address() for ease of use, and also convert existing address_is_users() to wrapper for the same. No functional changes. Signed-off-by: Jani Nikula <jani@nikula.org>
| * lib: Don't needlessly create directory docs in _notmuch_message_remove_filenameGravatar Austin Clements2012-05-23
| | | | | | | | | | | | Previously, if passed a filename with a directory that did not exist in the database, _notmuch_message_remove_filename would needlessly create that directory document. Fix it so that doesn't happen.
| * python: Remove find_message_by_filename workaroundGravatar Austin Clements2012-05-23
| | | | | | | | | | | | | | | | Now that notmuch_database_find_message_by_filename works on read-only databases, remove the workaround that disabled it on read-write databases. This also adds a regression test for find_message_by_filename.
| * lib: Make notmuch_database_find_message_by_filename not crash on read-only ↵Gravatar Austin Clements2012-05-23
| | | | | | | | | | | | | | | | | | | | | | databases Previously, _notmuch_database_filename_to_direntry would abort with an internal error when called on a read-only database. Now that creating the directory document is optional, notmuch_database_find_message_by_filename can disable directory document creation (as it should) and, as a result, not abort on read-only databases.
| * python: Update Database.get_directory documentationGravatar Austin Clements2012-05-23
| | | | | | | | | | | | notmuch_database_get_directory no longer returns an error for read-only databases, so remove ReadOnlyDatabaseError from the list of get_directory exceptions.
| * new: Remove workaround for detecting newly created directory objectsGravatar Austin Clements2012-05-23
| | | | | | | | | | | | | | | | | | | | Previously, notmuch_database_get_directory did not indicate whether or not the returned directory object was newly created, which required a workaround to distinguish newly created directory objects with no child messages from directory objects that had no mtime set but did have child messages. Now that notmuch_database_get_directory distinguishes whether or not the directory object exists in the database, this workaround is no longer necessary.
| * lib: Make notmuch_database_get_directory return NULL if the directory is not ↵Gravatar Austin Clements2012-05-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | found Using the new support from _notmuch_directory_create, this makes notmuch_database_get_directory a read-only operation that simply returns the directory object if it exists or NULL otherwise. This also means that notmuch_database_get_directory can work on read-only databases. This change breaks the directory mtime workaround in notmuch-new.c by fixing the exact issue it was working around. This permits mtime update races to prevent scans of changed directories, which non-deterministically breaks a few tests. The next patch fixes this.
| * lib: Perform the same transformation to _notmuch_database_filename_to_direntryGravatar Austin Clements2012-05-23
| | | | | | | | | | | | Now _notmuch_database_filename_to_direntry takes a flags argument and can indicate if the necessary directory documents do not exist. Again, callers have been updated, but retain their original behavior.
| * lib: Perform the same transformation to _notmuch_database_find_directory_idGravatar Austin Clements2012-05-23
| | | | | | | | | | | | | | Now _notmuch_database_find_directory_id takes a flags argument, which it passes through to _notmuch_directory_create and can indicate if the directory does not exist. Again, callers have been updated, but retain their original behavior.
| * lib: Make directory document creation optional for _notmuch_directory_createGravatar Austin Clements2012-05-23
| | | | | | | | | | | | | | | | | | | | | | Previously this function would create directory documents if they didn't exist. As a result, it could only be used on writable databases. This adds an argument to make creation optional and to make this function work on read-only databases. We use a flag argument to avoid a bare boolean and to permit future expansion. Both callers have been updated, but currently retain the old behavior. We'll take advantage of the new argument in the following patches.