aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
* emacs: Add notmuch-combine-face-text-property-stringGravatar Damien Cassou2013-03-25
| | | | Signed-off-by: Damien Cassou <damien.cassou@gmail.com>
* emacs: Combine string faces and combine under existing facesGravatar Austin Clements2013-03-25
| | | | | | This improves notmuch-combine-face-text-property to support both applying faces to strings and to support combining the given face under existing faces, rather than over.
* emacs: Handle all face forms when combining facesGravatar Austin Clements2013-03-25
| | | | | | | | | | | | | | | Previously, notmuch-combine-face-text-property assumed that any existing face properties of the modified text were already in face list form. This was true as long as it was the only function manipulating faces (since it always produced a list form face), but if anything else has manipulated the face, it was more likely to be either a face name or a face plist. It also didn't correctly handle face lists as arguments, even though the doc string claimed it did. This patch fixes notmuch-combine-face-text-property to handle all face forms correctly by canonicalizing both the argument face and the existing faces into list form. This also means we can set the face to a simpler non-list form if there's no existing face.
* Bug#703608: [PATCH] debian: tighten notmuch-mutt dependency on notmuchGravatar Jameson Graef Rollins2013-03-22
| | | | notmuch version 0.4 is required for the --output=files option.
* man: document the notmuch --config=FILE global optionGravatar Jani Nikula2013-03-08
|
* cli: add top level --config=FILE optionGravatar Jani Nikula2013-03-08
| | | | Let the user specify the config file on the command line.
* cli: move config open/close to main() from subcommandsGravatar Jani Nikula2013-03-08
| | | | | | | | | | | | | 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.
* cli: config: make notmuch_config_open() "is new" parameter input onlyGravatar Jani Nikula2013-03-07
| | | | | | | | 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.
* cli: config: keep track of whether the config is newly createdGravatar Jani Nikula2013-03-07
| | | | | | | | Keep track of whether the config is newly created, and add notmuch_config_is_new() accessor function to query this. This is to support anyone with a config handle to check this, instead of just whoever called notmuch_config_open().
* cli: plug main notmuch command into subcommand machineryGravatar Jani Nikula2013-03-07
| | | | | | This allows top level arguments to be added to notmuch in a way that doesn't require special handling for the plain notmuch command without a subcommand.
* cli: abstract subcommand finding into a new functionGravatar Jani Nikula2013-03-07
| | | | Clean up code.
* test/README: mention the test_expect_equal_json and *sanitize* functionsGravatar Aaron Ecay2013-03-07
| | | | also fix one typo
* nmbug: allow empty prefixGravatar David Bremner2013-03-02
| | | | | | | Current code does not distinguish between an empty string in the NMBPREFIX environment variable and the variable being undefined. This makes it impossible to define an empty prefix, if, e.g. somebody wants to dump all of their tags with nmbug.
* nmbug: replace hard-coded magic hash with git-hash-objectGravatar David Bremner2013-03-02
| | | | | | This is at least easier to understand than the magic hash. It may also be a bit more robust, although it is hard to imagine these numbers changing without many other changes in git.
* nmbug: use 'notmuch tag --batch'Gravatar David Bremner2013-03-02
| | | | | | | | This should be more robust with respect to tags with whitespace and and other special characters. It also (hopefully) fixes a remaining bug handling message-ids with whitespace. It should also be noticeably faster for large sets of changes since it does one exec per change set as opposed to one exec per tag changed.
* nmbug: use dump --format=batch-tagGravatar David Bremner2013-03-02
| | | | | | | This should make nmbug tolerate tags with whitespace and other special characters it. At the moment this relies on _not_ passing calls to notmuch tag through the shell, which is a documented feature of perl's system function.
* man: show and reply --decrypt option requires gpg-agentGravatar Jani Nikula2013-03-02
|
* cli: crypto: tell gmime to use gpg-agentGravatar Jani Nikula2013-03-02
| | | | | | | | | | | | | | | | | | | | | | | | | For decryption, we expect there to be a functioning gpg-agent, and we want gpg to talk to it for any needed credentials. There's a gmime function to declare that: g_mime_gpg_context_set_use_agent() [1], [2]. Start using it. I had gpg-agent running, but gpg "use-agent" configuration option disabled. This resulted in an error message from 'notmuch show': Failed to decrypt part: Canceled. and json had this: "encstatus" : [ { "status" : "bad" } ] One could argue the "use-agent" option should be enabled, but I'd like to use the agent only as a last resort. I think that's irrelevant though. There's a gmime function to declare what we expect, so we should use it. Conveniently it also fixes the problem in a user friendly way. [1] http://git.gnome.org/browse/gmime/commit/?id=ed985397843a9da3745a8b5de3d1d652acd24724 [2] https://bugzilla.gnome.org/show_bug.cgi?id=651826
* NEWS: one typo fixed and 0.15.1 header line tidied upGravatar Tomi Ollila2013-02-27
|
* Merge branch 'release'Gravatar David Bremner2013-02-18
|\ | | | | | | | | | | | | add in NEWS from 0.15.2 Conflicts: NEWS
* | devel/release-checks.sh: added check that 1st NEWS header is tidyGravatar Tomi Ollila2013-02-18
| | | | | | | | | | | | | | Check that the underlining '===...' for first (header) line in NEWS file is of the same length as the header text and it is all '=':s. -- extra execs removed by db.
* | ruby: Add bindings for notmuch_thread_get_messagesGravatar Austin Clements2013-02-18
| |
* | lib: Add an iterator over all messages in a threadGravatar Austin Clements2013-02-18
| | | | | | | | | | | | | | | | Previously, getting the list of all messages in a thread required recursively traversing the thread's message hierarchy, which was both difficult and resulted in messages being out of order. This adds a public function to retrieve an iterator over all of the messages in a thread in oldest-first order.
* | lib: Eliminate _notmuch_message_list_appendGravatar Austin Clements2013-02-18
| | | | | | | | | | This API invited micro-optimized and complicated list pointer manipulation and is no longer used.
* | lib: Separate list of all messages from top-level messagesGravatar Austin Clements2013-02-18
| | | | | | | | | | | | | | | | | | | | | | | | Previously, thread.cc built up a list of all messages, then proceeded to tear it apart to transform it into a list of top-level messages. Now we simply build a new list of top-level messages. This simplifies the interface to _notmuch_message_add_reply, eliminates the pointer acrobatics from _resolve_thread_relationships, and will enable us to do things with the list of all messages in the following patches.
* | lib: Clean up error handling in _notmuch_thread_createGravatar Austin Clements2013-02-18
| | | | | | | | | | | | | | Previously, there were various opportunities for memory leaks in the error-handling paths of this function. Use a local talloc context and some reparenting to make eliminate these leaks, while keeping the control flow simple.
* | test/test-lib.sh: separate signaled exitGravatar Tomi Ollila2013-02-18
| | | | | | | | | | | | | | When execution of tests is interrupted by signal coming outside of the test system itself, output just one line "interrupted by signal <num>" message to standard output. This distinguishes the case from internal exit and reduces noise.
* | test/test-lib.sh: use $test_subtest_name in all testsGravatar Tomi Ollila2013-02-18
| | | | | | | | | | | | | | | | | | Set the variable '$test_subtest_name' in all functions which starts a new test and use that variable in all functions that output test results. Additionally output the latest '$test_subtest_name' in case of abnormal exit, to avoid confusion.
* | emacs: show: make buttons select windowGravatar Mark Walters2013-02-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Emacs has two button type objects: widgets (as used for saved searches in notmuch-hello) and buttons as used by parts/citations and id links in notmuch-show. These two behave subtly differently when clicked with the mouse: widgets select the window clicked before running the action, buttons do not. This patch makes all of these behave the same: clicking always selects the clicked window. It does this by defining a notmuch-button-type supertype that the other notmuch buttons can inherit from. This supertype binds the mouse-action to select the window and then activate the button.
| * bump versions to 0.15.2Gravatar David Bremner2013-02-17
| |
| * debian: changelog stanza for 0.15.2-1Gravatar David Bremner2013-02-17
| |
| * NEWS: News for 0.15.2Gravatar David Bremner2013-02-17
| | | | | | | | Another couple of build fixes.
* | notmuch-mutt: improve robustness of mutt macrosGravatar Kevin J. McCarthy2013-02-16
| | | | | | | | | | | | | | | | | | Details: - $pipe_decode is turned off, to prevent message-id from being filtered out by "ignore" settings in the muttrc. - Original values for $pipe_decode and $wait_key are saved and restored. - The macros, being much longer now, are line wrapped for improved readability.
* | notmuch-mutt: Use of uninitialized value.Gravatar Stefano Zacchiroli2013-02-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Thu, Feb 14, 2013 at 12:36:58AM +0100, Profpatsch wrote: > On 13-02-13 02:35pm, Kevin J. McCarthy wrote: > > A more likely idea is to check whether you have $pipe_decode set. > > BRILLIANT! > So much for copying a basic rc from someone else. > Of course, that was it and I’m officially an idiot. Neat, thanks Kevin for debugging the issue down to $pipe_decode (which I've never used, mutt never stops to amaze me :-)). > And apparently Mail::Internet errors out if there is no Message-ID. > (Which mentioned in the docs at CPAN…) > > Mystery solved. Right, but still a more graceful failure model would be nice. Please find attached a patch that in such cases should 1) give a supposedly nice error message explaining what's going on and 2) empty the results dir to avoid showing you unrelated results. It works for me. But extra checking never hurts, in particular for the tag action, which I don't personally use. I guess it would also be nice to actually disable $pipe_decode in the relevant Mutt macros, but I'm not sure about to do that without interfering with user desired configuration. Kevin: do you know if there is a common Mutt trick to store the value of a variable before changing it, and restoring it a posteriori? More isolation for this kind of things in Mutt would definitely be welcome... Cheers. -- Stefano Zacchiroli . . . . . . . zack@upsilon.cc . . . . o . . . o . o Maître de conférences . . . . . http://upsilon.cc/zack . . . o . . . o o Debian Project Leader . . . . . . @zack on identi.ca . . o o o . . . o . « the first rule of tautology club is the first rule of tautology club » From b67ab95855ce7d279d8c0b3ddcbc20e679afc70b Mon Sep 17 00:00:00 2001 From: Stefano Zacchiroli <zack@upsilon.cc> Date: Thu, 14 Feb 2013 09:31:37 +0100 Subject: [PATCH] notmuch-mutt: more graceful handling of missing Message-Id errors in particular: - the "thread" action would print an error and empty results dir - the "tag action would print an error
* | debian: stop building a binary package for notmuch-vimGravatar David Bremner2013-02-16
| | | | | | | | | | Since it is deprecated upstream, we don't want to encourage more users to install it.
* | notmuch-vim: deprecate, move to contribGravatar David Bremner2013-02-16
| | | | | | | | | | | | As discussed in id:871udhcmks.fsf@zancas.localnet, notmuch-vim doesn't really meet the standards of the CLI, emacs interface, or python bindings in terms of being well maintained.
* | nmbug: move from contrib to develGravatar David Bremner2013-02-16
| | | | | | | | | | | | | | There seems to be consensus to use presence in contrib as documentation of limited support by the notmuch developers; in fact nmbug is pretty integrated into our current development process, so devel seems more appropriate.
* | bitmap:improve memory usage using CHAR_BITS and unsigned CHARGravatar Robert Mast2013-02-15
| | | | | | | | | | | | | | Using char instead of int allows for simpler definitions of the DOCIDSET macros so the code is easier to understand and consistent with respect to memory-usage. Estimated reduction of memory-usage for bitmap about 8 times.
* | nmbug: only push master branch on nmbug pushGravatar Jani Nikula2013-02-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | nmbug pull only merges upstream master, but nmbug push tries to push all local branches. The asymmetry results in conflicts whenever there have been changes in the config branch in the origin: $ nmbug push To nmbug@nmbug.tethera.net:nmbug-tags ! [rejected] config -> config (non-fast-forward) error: failed to push some refs to 'nmbug@nmbug.tethera.net:nmbug-tags' hint: Updates were rejected because a pushed branch tip is behind its remote hint: counterpart. If you did not intend to push that branch, you may want to hint: specify branches to push or set the 'push.default' configuration hint: variable to 'current' or 'upstream' to push only the current branch. 'git push origin' exited with nonzero value To fix this, only push the master branch on nmbug push. Any config changes need to be done manually via git anyway.
* | CLI: add simple error handling for talloc loggingGravatar David Bremner2013-02-08
| | | | | | | | | | | | This really should have been there before. I think it's better to do the actual operation and then possibly fail writing the memory log, but it would not be too hard to change it to abort earlier.
* | man: document NOTMUCH_TALLOC_REPORT environment variableGravatar David Bremner2013-02-08
| |
| * test: delay watchdog checks in emacs.Gravatar David Bremner2013-01-29
| | | | | | | | | | | | | | | | | | Instead of checking immediately for the watched process, delay a minute, or in the case that process-attributes returns nil, for two minutes. This is intended to cope with the case that process-attributes is unimplimented, and returns always returns nil. In this case, the watchdog check is the same as the two minute limit imposed by timeout.
| * lib/Makefile.local: depend on libs we are linking withGravatar Amadeusz Żołnowski2013-01-29
| |
* | Merge branch 'release'Gravatar David Bremner2013-01-24
|\| | | | | | | | | | | | | Conflicts: NEWS Inserted news from 0.15.1
* | TODO: update entry on date range queriesGravatar Jani Nikula2013-01-24
| |
* | TODO: cleanup stuff that has been doneGravatar Jani Nikula2013-01-24
| | | | | | | | | | | | | | | | M-RET notmuch-show-open-or-close-all opens all closed messages. The archiving change is mentioned twice, remove dupe. "notmuch search" supports --format=text0 to work with xargs -0
| * debian: changelog stanza for 0.15.1-1Gravatar David Bremner2013-01-24
| |
| * NEWS: update for 0.15.1Gravatar David Bremner2013-01-24
| | | | | | | | Not much to report here, just the one patch
| * debian: re-enable testsGravatar David Bremner2013-01-24
| | | | | | | | | | Now that we have Tomi's fix to set TERM for dtach, it should be safe to run the tests on the autobuilders.
| * version: bump to 0.15.1Gravatar David Bremner2013-01-24
| | | | | | | | A simple bugfix release, no user visible changes