aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
* 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.
* 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
|
* 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
| * test/test-lib.sh: use vt100 as dtach terminal if TERM dumb or unset/emptyGravatar Tomi Ollila2013-01-24
| | | | | | | | | | | | | | | | | | | | | | | | The TERM environment variable is set to 'dumb' when running tests, but the original value of it is stored for echoing colors and running emacs (somewhat interactively) in detached session. Emacs requires some terminal control sequences to be available for interactive operation. In case original TERM is (also) 'dumb' (or unset/empty) emacs cannot run interactively. To fix this problem dtach (and emacs as it's child process) is run with TERM=vt100 in case original TERM was unset, empty or 'dumb'. This way there is a chance to run emacs tests with different user terminals and potentially find problems there.
* | python: fix the creation of notmuch databasesGravatar Justus Winter2013-01-23
| | | | | | | | | | | | | | Remove the superfluous mode argument given to notmuch_database_create fixing the creation of notmuch databases using python code. Signed-off-by: Justus Winter <4winter@informatik.uni-hamburg.de>
* | man: document existing top level optionsGravatar David Bremner2013-01-22
| | | | | | | | | | | | The options --help and --version were not documented before. One could quibble about how useful that documentation is, but we will soon add more options.
* | CLI: convert top level argument parsing to use command-line-argumentsGravatar David Bremner2013-01-22
| | | | | | | | | | This isn't really a win for conciseness yet, but will make it easier to add options.
* | CLI: remove alias machinery, and "part", "search-tags" commandsGravatar David Bremner2013-01-22
| | | | | | | | | | | | The commands are long deprecated, so removal is probably overdue. The real motivation is to simplify argument handling for notmuch so that we can migrate to the common argument parsing framework.
* | emacs: don't use deprecated "notmuch search-tags" commandGravatar David Bremner2013-01-22
| | | | | | | | | | A followup patch will finally remove this command, so we need to stop using it.
* | NEWS: correction to section 0.15 for markdown processingGravatar Tomi Ollila2013-01-22
| | | | | | | | | | At the end of section 0.15 the strings TEST_EMACS & TEST_EMACSCLIENT are now put inside ``:s for better output after markdown processing.
* | lib/Makefile.local: depend on libs we are linking withGravatar Amadeusz Żołnowski2013-01-22
| |
* | Merge tag 'debian/0.15-2'Gravatar David Bremner2013-01-21
|\| | | | | | | debian bug fix release, disable tests
| * debian: disable running tests.Gravatar David Bremner2013-01-20
| | | | | | | | | | Hopefully this is temporary, but I don't want to rush a fix for the tests.
* | devel/release-checks.sh: version string problem does not halt executionGravatar Tomi Ollila2013-01-19
| | | | | | | | | | | | | | | | | | | | Version string has strict format requirements in release-check.sh: only numbers and periods (in sane order) are accepted. Mismatch there used to halt further execution. In this case, checking versions like '*~rc1' for (more) problems was not possible. This 'fatal error' is now changed buffered error message like in following tests, and is displayed at the end of execution.
* | notmuch-tag: initialize with enum instead of 0Gravatar David Bremner2013-01-19
|/ | | | This is just a cosmetic fix to make the "type" of ret more clear.
* version: update to 0.15Gravatar David Bremner2013-01-18
| | | | Bump the version in-place in NEWS.
* debian: changelog stanza for 0.15Gravatar David Bremner2013-01-18
| | | | Cribbed from NEWS.
* NEWS: document that print message prints all parts including hidden partsGravatar Mark Walters2013-01-18
|
* NEWS: describe 'batch-tag' dump/restore/tagGravatar David Bremner2013-01-18
| | | | | Hopefully it is clear that more details are available in the man pages.
* debian: add install file for python3-notmuchGravatar David Bremner2013-01-17
| | | | Without this file, the created package is empty.
* version: set version to 0.15~rc1Gravatar David Bremner2013-01-16
| | | | | This is in some sense a rollback, but it makes all the automation happier if the Debian and upstream versions match.
* debian: note that ical bug is fixedGravatar David Bremner2013-01-16
| | | | This was fixed a while ago in git, but not released yet.
* debian: add python 3 bindingsGravatar David Bremner2013-01-16
| | | | | | | This patch is due to Jakub Wilk <jwilk@debian.org>. It does add a build depend on python3 for people using the "make debian-snapshot" target.
* debian/compat: upgrade to compat level 9Gravatar David Bremner2013-01-14
| | | | | | | | | | | - enable hardening - fix dh syntax. Now that we have compat level 9, the old, wrong syntax is no longer accepted. - update debian/libnotmuch{3,-dev}.install for multiarch. - update versioned dependency on debhelper.
* debian: remove Dm-Upload-Allowed field.Gravatar David Bremner2013-01-14
| | | | | If we have some DMs we want to upload, we have to enable it with a signed command file to dak.
* debian: change priority to optional.Gravatar David Bremner2013-01-14
| | | | | | The distinction between extra and optional is generally not very important, except that being extra forces anything that depends on you to be extra.
* cli: propagate batch tagging warnings to exit valueGravatar Tomi Ollila2013-01-14
| | | | | | | | In case last input for batch tagging was either invalid or skippable line, notmuch command exited with non-zero value. After this change if there is at least one invalid line, notmuch command will exit with non-zero value. Additionally, skipped lines (last or other) doesn't cause non-zero value to be returned.
* emacs: show: w3m/invisibility workaroundGravatar Mark Walters2013-01-14
| | | | | | | | | | | | | | | | | | There is a bug in the current notmuch code with w3m and invisible parts. w3m sets a keymap, and if we have a hidden [text/html] point at the start of the following line still gets this w3m keymap which causes some strange effects. For example, RET gives an error "No URL at Point" rather than hiding the message, <down> goes to the next link rather than just down a line. These keybinding are also inconvenient when the text/html part is displayed so we ask w3m not to install a keymap. This is only likely to be a problem for emacs 23 as shr is preferred as html renderer on emacs 24 (although the user can set the renderer to w3m even on emacs 24). This solution was suggested by Tomi Ollila <tomi.ollila@iki.fi>
* man: tag changes are applied in the order they are specified in notmuch tagGravatar Jani Nikula2013-01-10
|
* cli: bail out and propagate tagging errors in notmuch tagGravatar Jani Nikula2013-01-09
| | | | | | | | | Checking and propagating tag_op_list_apply() errors is especially important with batch tagging, as the processing of the batch input would not stop otherwise. Additionally this sets the exit code, which is useful in scripts. Amended by: David Bremner
* debian/changelog: start stanze for 0.15~rc1-1Gravatar David Bremner2013-01-07
| | | | | as usual (and doubly so since Debian is in release freeze), destined for experimental.