aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
* cli: clean up exit status code returned by the cli commandsGravatar Jani Nikula2014-01-18
| | | | | | Apart from the status codes for format mismatches, the non-zero exit status codes have been arbitrary. Make the cli consistently return either EXIT_SUCCESS or EXIT_FAILURE.
* emacs: tree: use tag-format-tagsGravatar Mark Walters2014-01-18
| | | | | | | | | | | | | | | | | Previously tree did not use tag-format-tags: since tree wants to distinguish matching messages from non-matching messages it is not a perfect fit. However, in preparation for allowing tag-changes to be shown (i.e., added or deleted tags to be indicated) it is convenient to make all places displaying tags call the same routines. We modify notmuch-tag-format-tags slightly so that it can take and argument for the default characteristics of the face before the special tag features are applied. This also means that things like the star symbol for flagged messages all work in tree.
* emacs: tree: default face for matching/non-matching messagesGravatar Mark Walters2014-01-18
| | | | | | | | | | | This adds default faces for matching and non-matching messages. This makes it easier for a user to do broad customization without having to customize every field. It also fits more neatly with the next patch which switches to using notmuch-tag-format-tags for tag formatting. We set the field specific face customization to nil for all the fields which use the message default face to make it clear to a user which fields customizations are being used.
* test: leave T\d\d\d- in variable $this_test and introduce $this_test_bareGravatar Tomi Ollila2014-01-18
| | | | | | | | | | | | Script `notmuch-test` expects the results file have T\d\d\d- part intact so the results files (and some test output files) are now name as such. Without this change `notmuch-test` will exit in case the test script it was executing exited with nonzero value. The T\d\d\d- part is dropped in new variable $this_test_bare which is used in progress informational messages and when loading .el files in emacs tests (whenever $this_test_bare.el exists).
* lib: fix clang compiler warningGravatar Jani Nikula2014-01-18
| | | | | | With some combination of clang and talloc, not using the return value of talloc_steal() produces a warning. Ignore it, as talloc_steal() has no failure modes per documentation.
* test: add test for syntax of emacs test libraryGravatar David Bremner2014-01-13
| | | | | | | | If there is a syntax error in the emacs test library, it causes other tests to hang or crash without a useful error message. This test could be eliminated if the error reporting for emacs tests was somehow improved.
* cli: initialize quiet variable in compactGravatar Jani Nikula2014-01-13
| | | | Surprisingly there's no compiler warning!
* test: renamed test scripts to format T\d\d\d-name.shGravatar Tomi Ollila2014-01-13
| | | | | | | | All test scripts to be executed are now named as T\d\d\d-name.sh, numers in increments of 10. This eases adding new tests and developers to see which are test scripts that are executed by test suite and in which order.
* test: basic: drop 'ensure all available tests are run'Gravatar Tomi Ollila2014-01-13
| | | | | | | | | When naming test scripts in format 'T\d\d\d-name.sh' the list of tests to run are created dynamically. This makes test 'Ensure that all available tests will be run by notmuch-test' in test/basic obsolete.
* emacs: tree remove comma separator tagsGravatar Mark Walters2014-01-13
| | | | | | | | | | | | Previously the tags on each line in tree view were separarted by ", " not just " ". This is different from show and search views. This patch removes this comma. This is a large patch as essentially every line of each of the expected outputs in the tree tests needs updating. Apart from aesthetic reasons this simplifies the switch to notmuch-tag-format-tags in the next patch.
* build: remove trailing '/.' when doing mkdir -p .deps/.Gravatar Tomi Ollila2014-01-13
| | | | | | | | When make variable $@ does not contain directory part, $(@D) resolves as '.'. In this case .deps/$(@D) is '.deps/.' In some systems `mkdir [-p] directory/.` fails. To make this compatible with more system substitute trailing '/.' (slashdot) with '' (empty string) whenever it occurs there.
* emacs: Makefile.local: HAVE_EMACS usage fixesGravatar Tomi Ollila2014-01-13
| | | | | | | | If we don't have emacs, disable targets that used EMACS while doing the recipes of that target. If we do have emacs, make install-emacs depend on *.elc files, as making the target will attempt to install those.
* Merge tag 'debian/0.17-3'Gravatar David Bremner2014-01-12
|\ | | | | | | uploaded to Debian unstable
| * debian: add single-debian-patchGravatar David Bremner2014-01-12
| | | | | | | | | | The point of fancy patch systems is to share things with upstream. We have met the upstream and he is us.
| * debian: finalize changelog for 0.17-3Gravatar David Bremner2014-01-12
| |
| * test/emacs: replace the use of process-attributes with signal-processGravatar David Bremner2014-01-12
| | | | | | | | | | | | | | | | | | | | In some environments (at least Hurd), process-attributes is unimplimented and always returns nil. This ends up causing test failures (see e.g. id:87a9ffofsc.fsf@zancas.localnet). Historically and according to POSIX 1003.1-2001, a signal of 0 can be used to check the validity of a pid. This seems less heinous than parsing the output of ps(1).
| * debian: update notmuch-emacs for emacs policy 2.0.6Gravatar David Bremner2014-01-12
| | | | | | | | | | | | | | | | This involves - the meta-flavour emacs has gone away - a compat file is needed (also installed by dh_installemacsen) - a conflict with pre-2.0.0 emacsen-common - manually managing the "installed" semaphore file
* | lib: modify notmuch.h for automatic document generationGravatar Jani Nikula2014-01-05
| | | | | | | | Minimal changes to produce a sensible result.
* | devel: add doxygen configuration fileGravatar Jani Nikula2014-01-05
| | | | | | | | | | | | | | | | | | | | This is a pretty basic config to get started, generated using 'doxygen -s -g' and mildly tweaked. To generate the library man page man/man3/notmuch.3 from lib/notmuch.h use: $ doxygen devel/doxygen.cfg
* | insert: respect maildir.synchronize_flagsGravatar Jani Nikula2014-01-03
| | | | | | | | Don't synchronize maildir flags if the user doesn't want it.
* | test: notmuch insert with maildir.synchronize_flags=falseGravatar Jani Nikula2014-01-03
| | | | | | | | Known broken, notmuch insert does not respect the config option.
* | emacs: tree: bare-id in treeGravatar Mark Walters2014-01-03
| | | | | | | | | | | | | | | | | | Previously notmuch-tree-get-message-id always returned the id including the prefix "id:". Modify the function to take an optional `bare' argument saying to return the raw string. This will be useful later and brings the function in line with notmuch-show-get-message-id.
* | test: tree: pick remnants removedGravatar Mark Walters2014-01-03
| | | | | | | | | | Some no longer needed traces of pick remain in the emacs-tree test. Remove these.
* | Merge tag 'debian/0.17-2'Gravatar David Bremner2014-01-01
|\| | | | | | | uploaded to unstable
| * debian: rename NEWS.Debian to NEWSGravatar David Bremner2014-01-01
| | | | | | | | | | Apparently I had it backwards: NEWS is installed as NEWS.Debian, not vice-versa.
* | Merge tag '0.17'Gravatar David Bremner2013-12-30
|\| | | | | | | notmuch 0.17 release
| * devel/release-checks.sh: adjust to LIBNOTMUCH version checksGravatar Tomi Ollila2013-12-30
| | | | | | | | | | | | NOTMUCH_VERSION_* macros in lib/notmuch.h are replaced with LIBNOTMUCH_VERSION_* macros. Check that the values of those match the LIBNOTMUCH_*_VERSION values in lib/Makefile.local.
| * version: bump to 0.17Gravatar David Bremner2013-12-30
| |
| * debian: add changelog and NEWS.Debian for releaseGravatar David Bremner2013-12-30
| | | | | | | | | | NEWS.Debian is displayed at install, so we include the news item about the disruptive change in sha1 computation.
| * debian: disable atomicity tests on ia64Gravatar David Bremner2013-12-30
| | | | | | | | | | | | | | | | | | | | The following fails on Debian ia64: % gdb /bin/mv (gdb) break rename Since this breaks our atomicity test, disable them until someone is motivated to figure out whose fault that is.
* | Merge tag '0.17_rc4'Gravatar David Bremner2013-12-28
|\| | | | | | | notmuch 0.17~rc4 release
| * version: bump to 0.17~rc4Gravatar David Bremner2013-12-28
| | | | | | | | | | Unfortunately release-checks.sh will whine a bit because it has not caught up with the renaming of the version macros.
| * test: Fix transient error in 'new' testGravatar Austin Clements2013-12-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes a non-deterministic failure in "Ignore files and directories specified in new.ignore (multiple occurrences)". The test assumed that all directories would be scanned, even though nothing updated the mtime of ${MAIL_DIR}. It *usually* worked nevertheless because the tests run quickly enough that the directory mtime is usually the same as the current time, so notmuch new does not update the mtime in the database (because more changes could occur in the same second). However, when it occasionally did update the mtime in the database, the notmuch new call in this test would (correctly) skip "pass 2" of scanning ${MAIL_DIR}, causing it to skip the following expected lines: (D) add_files_recursive, pass 2: explicitly ignoring ${MAIL_DIR}/.git (D) add_files_recursive, pass 2: explicitly ignoring ${MAIL_DIR}/.ignored_hidden_file (D) add_files_recursive, pass 2: explicitly ignoring ${MAIL_DIR}/ignored_file This patch fixes this problem by touching ${MAIL_DIR} to ensure it gets scanned and by rearranging the test to ensure the directories are touched immediately before the main notmuch new call in the test.
| * test: remove call to notmuch-hello from emacs_deliver_messageGravatar David Bremner2013-12-22
| | | | | | | | | | | | | | There is an obscure bug in notmuch-hello that very occasionally causes emacs_deliver_message to fail. Since it it doesn't serve any actual purpose in the function we delete it, and leave tracking down the the bug for another day.
| * test: add emacs_fcc_message that does not use smtp-dummyGravatar David Bremner2013-12-22
| | | | | | | | | | | | | | Most of the tests previously using emacs_deliver_message do not use the actual transmitted message, so we replace it with a simpler (and presumably more reliable function) that only saves (and indexes) an fcc copy of the message.
* | perf-test: bump version to 0.4, use manifest filesGravatar David Bremner2013-12-10
| | | | | | | | | | The new revision of the performance test includes manifests for each corpus, so update the support library to use these manifests at the same time.
* | emacs: add '?' to some prefix keymaps to describe its bindingsGravatar Mark Walters2013-12-10
| | | | | | | | | | Added function notmuch-subkeymap-help to describe keybindings of a subkeymap (eg after . or c in notmuch-search and notmuch-show).
* | test: implement and document NOTMUCH_TEST_QUIET variable usageGravatar Tomi Ollila2013-12-09
| | | | | | | | | | | | When NOTMUCH_TEST_QUIET environment variable is set to non-null value messages when new test script starts and when test PASSes are disabled. This eases picking the cases when tests FAIL (as those are still printed).
* | test: print empty line at the beginning of test script, not at endGravatar Tomi Ollila2013-12-09
| | | | | | | | | | | | In preparation for quiet mode print empty line before writing the test description. This is done now in function designed for it -- it will also be called when test fails.
* | test: resolve `basename "$0" .sh` once for all in test-lib.shGravatar Tomi Ollila2013-12-09
| | | | | | | | | | | | | | | | | | | | test-lib.sh sometimes did equivalent of `basename "$0" .sh`, sometimes skipping the basename part and sometimes .sh part. This worked as we never had path components in $0 (more than ./) nor .sh ending. Now the equivalent of `basename "$0" .sh` is done once and used everywhere. In the future we may have .sh suffix in test names -- removing those is a good idea.
| * test: give unique timestamps to messagesGravatar David Bremner2013-12-09
| | | | | | | | | | | | The choice of decreasing timestamps is a hack which reduces the number of existing tests which fail. This can be changed to increasing if/when somebody wants update another 47 tests.
| * test: sanitize dates in emacs, raw, and text outputGravatar David Bremner2013-12-09
| | | | | | | | | | | | | | add a new function notmuch_date_sanitize for rfc822-ish things. Add date sanitization to notmuch_show_sanitize_all and use it more places. This is all in aid of a transition to unique timestamps on messages.
| * test: sanitize Date and timestamp fields in jsonGravatar David Bremner2013-12-09
| | | | | | | | | | | | | | | | | | Eventually we want test messages to have distinct dates to avoid reproducability problems. This sanitization will prevent some test failures when that change is made. Replace the use of a local function in maildir-sync with notmuch_json_show_sanitize
| * test: pass expected output through json_sanitize in 2 placesGravatar David Bremner2013-12-09
|/ | | | | This makes the tests more robust against changes in the sanitization rules.
* version: bump versionGravatar David Bremner2013-12-07
| | | | | | | | Roll (one last?) release candidate because of Austin's LIBNOTMUCH_VERSION changes. Atomically bump the manually (NEWS, debian/changelog) and automatically (everywhere else) updated places version is mentioned.
* lib: Bump library version from 3.0.0 to 3.1.0Gravatar Austin Clements2013-12-07
| | | | | | This version of the library introduces LIBNOTMUCH_CHECK_VERSION and the *_VERSION macros. Bumping the version number is also necessary to make the comment on LIBNOTMUCH_CHECK_VERSION no longer a lie.
* lib: Replace NOTMUCH_*_VERSION with LIBNOTMUCH_*_VERSIONGravatar Austin Clements2013-12-07
| | | | | | This makes it clear that these macros refer to the *library* version, and not to the notmuch application-level release. Since there are no consumers of these macros yet, this is now or never.
* lib: Make VERSION macros agree with soname versionGravatar Austin Clements2013-12-07
| | | | | | | | | | | | | | | | | | We have two distinct "library version" numbers: the soname version and the version macros. We need both for different reasons: the version macros enable easy compile-time version detection (and conditional compilation), while the soname version enables runtime version detection (which includes the version checking done by things like the Python bindings). However, currently, these two version numbers are different, which is unnecessary and can lead to confusion (especially in things like Debian, which include the soname version in the package name). This patch makes them the same by bumping the version macros up to agree with the soname version. (We should probably keep the version number in just one place so they can't get out of sync, but that can be done in another patch.)
* News updates for Mark's bugfixesGravatar Mark Walters2013-12-01
|
* debian: reformat changelog to avoid lintian warning.Gravatar David Bremner2013-11-30
|