aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
* 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
|
* 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.
| * emacs: use 'gnus-decoded in notmuch-mm-display-part-inline ()Gravatar Tomi Ollila2012-05-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When mail message is read from emacs, the message structure obtained may contain parts which have content included (`text/plain` for example) and other parts where content is not included (`text/html` for example). In case content is included, the string is already available in emacs' internal format and therefore mm-... functions should not attempt to do further decoding for the data in temp buffer provided for it. Currently when reply buffer is created, notmuch-mm-display-part-inline () is used to provided quoted reply content. This change makes the mm-... functions called by it use 'gnus-decoded as charset whenever the content is already available. File .../emacs-23.3/lisp/gnus/mm-uu.el mentions: "`gnus-decoded' is a fake charset, which means no further decoding."
* | python: deprecate Messages.{format,print}_messagesGravatar Justus Winter2012-05-17
| | | | | | | | | | | | | | | | | | This code adds functionality at the python level that is unlikely to be useful for anyone. Furthermore the python bindings strive to be a thin wrapper around libnotmuch, so this code will be removed in notmuch 0.15. Signed-off-by: Justus Winter <4winter@informatik.uni-hamburg.de>
* | python: deprecate Database.db_pGravatar Justus Winter2012-05-17
| | | | | | | | Signed-off-by: Justus Winter <4winter@informatik.uni-hamburg.de>
* | python: fix Message.get_headerGravatar Justus Winter2012-05-17
| | | | | | | | | | | | | | | | | | | | | | | | 8dc8495010057202b725ac029831c03f4e3ab6bd introduced a bug, if the requested header is not set the underlying notmuch function returns an empty string that also made the expression true resulting in an exception being raised. Partly revert the commit to fix this issue. Testing for equality with None is correct in this case since the restype of the function Message._get_header is c_char_p so NULL pointers are in fact converted to None in this case. Signed-off-by: Justus Winter <4winter@informatik.uni-hamburg.de>
* | python: add a file abstracting away differences between python 2 and 3Gravatar Justus Winter2012-05-17
| | | | | | | | Signed-off-by: Justus Winter <4winter@informatik.uni-hamburg.de>
* | python: remove the "notmuch binary" section from the docsGravatar Justus Winter2012-05-17
| | | | | | | | Signed-off-by: Justus Winter <4winter@informatik.uni-hamburg.de>
* | python: Fix the remaining broken NULL pointer testsGravatar Justus Winter2012-05-17
| | | | | | | | Signed-off-by: Justus Winter <4winter@informatik.uni-hamburg.de>
* | python: use relative importsGravatar Justus Winter2012-05-17
| | | | | | | | Signed-off-by: Justus Winter <4winter@informatik.uni-hamburg.de>
* | python: remove unused import of the json moduleGravatar Justus Winter2012-05-17
| | | | | | | | Signed-off-by: Justus Winter <4winter@informatik.uni-hamburg.de>
| * debian: fix typo in changelog.Gravatar David Bremner2012-05-16
| | | | | | | | | | the path for NEWS was wrong (cherry picked from commit b9520ef033ea9ae54507f94f7258641a6a1ad2e6)
| * NEWS: Capitalized go bindings changes titleGravatar Tomi Ollila2012-05-16
| | | | | | | | Align 'Go bindings changes' title capitalization to rest of the file
| * NEWS: Insert markdown formatting commands in 0.13 section textGravatar Tomi Ollila2012-05-16
| | | | | | | | | | NEWS entries in section 0.13 is brought consistent with rest of the NEWS file.
| * NEWS: Changed 0.13 release date in NEWS file to 2012-05-15Gravatar Tomi Ollila2012-05-16
| |
| * NEWS: Dropped old 'Reply to sender' sectionGravatar Tomi Ollila2012-05-16
| | | | | | | | | | 'Reply to sender' section was 0.12 news which was accidentally duplicated in 0.13 news
* | debian: fix typo in changelog.Gravatar David Bremner2012-05-16
| | | | | | | | the path for NEWS was wrong
* | python: remove format_message_as_{json,text} from the sphinx docsGravatar Justus Winter2012-05-16
| | | | | | | | Signed-off-by: Justus Winter <4winter@informatik.uni-hamburg.de>
* | python: remove functions that have been marked as deprecated in 0.13Gravatar Justus Winter2012-05-16
| | | | | | | | | | | | | | | | | | | | | | Removes Message.format_message_{internal,as_json,as_text}. This code adds functionality at the python level that is unlikely to be useful for anyone. Furthermore the python bindings strive to be a thin wrapper around libnotmuch. The code has been marked as deprecated in 0.13 and is now removed. Signed-off-by: Justus Winter <4winter@informatik.uni-hamburg.de>
* | python: remove notmuch.pyGravatar Justus Winter2012-05-16
|/ | | | | | | | | | | | Removes notmuch.py. If someone wants to step up and work on this it can always be restored using the version control system. notmuch.py was meant to be a python implementation of the notmuch utility. It was never finished and hasn't been updated to changes in the API and bindings and its features and interface haven't been kept in sync with the notmuch utility. Signed-off-by: Justus Winter <4winter@informatik.uni-hamburg.de>
* debian: changelog stanza for 0.13Gravatar David Bremner2012-05-15
| | | | My usual lazy self, refer to upstream NEWS.
* version: bump to 0.13Gravatar David Bremner2012-05-15
|
* add NEWS item about new emacs tagging interface.Gravatar Jameson Graef Rollins2012-05-15
| | | | | This is fairly important to mention, since it represents a user interface change.
* debian: recommend notmuch-mutt as an alternative user interfaceGravatar Stefano Zacchiroli2012-05-15
| | | | | | | | | Recommend all notmuch UI (including notmuch-mutt) as alternatives, to avoid unneeded vim/emacs installation. Thanks Matteo F. Vescovi for the patch. Closes: #673011
* news: Update for changes to notmuch_database_get_directoryGravatar Austin Clements2012-05-15
|
* ruby: Update for changes to notmuch_database_get_directoryGravatar Austin Clements2012-05-15
|
* python: Update for changes to notmuch_database_get_directoryGravatar Austin Clements2012-05-15
| | | | | | notmuch_database_get_directory now returns NOTMUCH_STATUS_READ_ONLY_DATABASE on its own (rather than crashing) so the workaround in Database.get_directory is no longer necessary.
* go: Update for changes to notmuch_database_get_directoryGravatar Austin Clements2012-05-15
|
* lib/cli: Make notmuch_database_get_directory return a status codeGravatar Austin Clements2012-05-15
| | | | | | | | | | | | | | Previously, notmuch_database_get_directory had no way to indicate how it had failed. This changes its prototype to return a status code and set an out-argument to the retrieved directory, like similar functions in the library API. This does *not* change its currently broken behavior of creating directory objects when they don't exist, but it does document it and paves the way for fixing this. Also, it can now check for a read-only database and return NOTMUCH_STATUS_READ_ONLY_DATABASE instead of crashing. In the interest of atomicity, this also updates calls from the CLI so that notmuch still compiles.
* NEWS: add an entry for the go 1 compatibilityGravatar Justus Winter2012-05-12
| | | | Signed-off-by: Justus Winter <4winter@informatik.uni-hamburg.de>
* go: format the souce code using gofmtGravatar Justus Winter2012-05-11
| | | | Signed-off-by: Justus Winter <4winter@informatik.uni-hamburg.de>
* go: update the build systemGravatar Justus Winter2012-05-11
| | | | | | | | | The new "go" utility does not require any Makefiles to compile go packages and programs. Remove the old Makefiles and replace the top level Makefile with one defining some convenience targets for compiling the notmuch bindings and the notmuch-addrlookup utility. Signed-off-by: Justus Winter <4winter@informatik.uni-hamburg.de>