From: David Bremner Date: Sun, 29 Dec 2013 01:45:19 +0000 (-0400) Subject: Merge tag '0.17_rc4' X-Git-Tag: 0.18_rc0~210 X-Git-Url: https://git.notmuchmail.org/git?a=commitdiff_plain;h=47b9314eeecc7ae6c97a5933c8fe028fb6d2b410;hp=2de8ce9b37bfaed7c5a962a5316dbc9c9c3cb2c8;p=notmuch Merge tag '0.17_rc4' notmuch 0.17~rc4 release --- diff --git a/NEWS b/NEWS index 12506cfa..f4d2abe9 100644 --- a/NEWS +++ b/NEWS @@ -1,4 +1,4 @@ -Notmuch 0.17~rc3 (2013-12-07) +Notmuch 0.17~rc4 (2013-12-28) ============================= Incompatible change in SHA1 computation diff --git a/bindings/python/notmuch/version.py b/bindings/python/notmuch/version.py index 413f87b8..27124f4f 100644 --- a/bindings/python/notmuch/version.py +++ b/bindings/python/notmuch/version.py @@ -1,2 +1,2 @@ # this file should be kept in sync with ../../../version -__VERSION__ = '0.17~rc3' +__VERSION__ = '0.17~rc4' diff --git a/debian/changelog b/debian/changelog index 8aecbbfa..9cbfdcaf 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +notmuch (0.17~rc4-1) experimental; urgency=low + + * New upstream release candidate + + -- David Bremner Sat, 28 Dec 2013 18:30:06 -0400 + notmuch (0.17~rc3-1) experimental; urgency=low * New upstream release candidate diff --git a/man/man1/notmuch-compact.1 b/man/man1/notmuch-compact.1 index 09f40cd3..5ab9b513 100644 --- a/man/man1/notmuch-compact.1 +++ b/man/man1/notmuch-compact.1 @@ -1,4 +1,4 @@ -.TH NOTMUCH-COMPACT 1 2013-12-07 "Notmuch 0.17~rc3" +.TH NOTMUCH-COMPACT 1 2013-12-28 "Notmuch 0.17~rc4" .SH NAME notmuch-compact \- compact the notmuch database .SH SYNOPSIS diff --git a/man/man1/notmuch-config.1 b/man/man1/notmuch-config.1 index 5b51ce57..b90987eb 100644 --- a/man/man1/notmuch-config.1 +++ b/man/man1/notmuch-config.1 @@ -1,4 +1,4 @@ -.TH NOTMUCH-CONFIG 1 2013-12-07 "Notmuch 0.17~rc3" +.TH NOTMUCH-CONFIG 1 2013-12-28 "Notmuch 0.17~rc4" .SH NAME notmuch-config \- access notmuch configuration file .SH SYNOPSIS diff --git a/man/man1/notmuch-count.1 b/man/man1/notmuch-count.1 index c4bca151..9e2e2c11 100644 --- a/man/man1/notmuch-count.1 +++ b/man/man1/notmuch-count.1 @@ -1,4 +1,4 @@ -.TH NOTMUCH-COUNT 1 2013-12-07 "Notmuch 0.17~rc3" +.TH NOTMUCH-COUNT 1 2013-12-28 "Notmuch 0.17~rc4" .SH NAME notmuch-count \- count messages matching the given search terms .SH SYNOPSIS diff --git a/man/man1/notmuch-dump.1 b/man/man1/notmuch-dump.1 index cb5d92ea..e1f69836 100644 --- a/man/man1/notmuch-dump.1 +++ b/man/man1/notmuch-dump.1 @@ -1,4 +1,4 @@ -.TH NOTMUCH-DUMP 1 2013-12-07 "Notmuch 0.17~rc3" +.TH NOTMUCH-DUMP 1 2013-12-28 "Notmuch 0.17~rc4" .SH NAME notmuch-dump \- creates a plain-text dump of the tags of each message diff --git a/man/man1/notmuch-insert.1 b/man/man1/notmuch-insert.1 index 07c82834..bbf5793c 100644 --- a/man/man1/notmuch-insert.1 +++ b/man/man1/notmuch-insert.1 @@ -1,4 +1,4 @@ -.TH NOTMUCH-INSERT 1 2013-12-07 "Notmuch 0.17~rc3" +.TH NOTMUCH-INSERT 1 2013-12-28 "Notmuch 0.17~rc4" .SH NAME notmuch-insert \- add a message to the maildir and notmuch database .SH SYNOPSIS diff --git a/man/man1/notmuch-new.1 b/man/man1/notmuch-new.1 index de6cf873..ef6d88ce 100644 --- a/man/man1/notmuch-new.1 +++ b/man/man1/notmuch-new.1 @@ -1,4 +1,4 @@ -.TH NOTMUCH-NEW 1 2013-12-07 "Notmuch 0.17~rc3" +.TH NOTMUCH-NEW 1 2013-12-28 "Notmuch 0.17~rc4" .SH NAME notmuch-new \- incorporate new mail into the notmuch database .SH SYNOPSIS diff --git a/man/man1/notmuch-reply.1 b/man/man1/notmuch-reply.1 index dd8c5ec8..4742aad0 100644 --- a/man/man1/notmuch-reply.1 +++ b/man/man1/notmuch-reply.1 @@ -1,4 +1,4 @@ -.TH NOTMUCH-REPLY 1 2013-12-07 "Notmuch 0.17~rc3" +.TH NOTMUCH-REPLY 1 2013-12-28 "Notmuch 0.17~rc4" .SH NAME notmuch-reply \- constructs a reply template for a set of messages diff --git a/man/man1/notmuch-restore.1 b/man/man1/notmuch-restore.1 index 06ed39d8..649000d0 100644 --- a/man/man1/notmuch-restore.1 +++ b/man/man1/notmuch-restore.1 @@ -1,4 +1,4 @@ -.TH NOTMUCH-RESTORE 1 2013-12-07 "Notmuch 0.17~rc3" +.TH NOTMUCH-RESTORE 1 2013-12-28 "Notmuch 0.17~rc4" .SH NAME notmuch-restore \- restores the tags from the given file (see notmuch dump) diff --git a/man/man1/notmuch-search.1 b/man/man1/notmuch-search.1 index b679f377..be427248 100644 --- a/man/man1/notmuch-search.1 +++ b/man/man1/notmuch-search.1 @@ -1,4 +1,4 @@ -.TH NOTMUCH-SEARCH 1 2013-12-07 "Notmuch 0.17~rc3" +.TH NOTMUCH-SEARCH 1 2013-12-28 "Notmuch 0.17~rc4" .SH NAME notmuch-search \- search for messages matching the given search terms .SH SYNOPSIS diff --git a/man/man1/notmuch-show.1 b/man/man1/notmuch-show.1 index 9d24b171..68e5e8a9 100644 --- a/man/man1/notmuch-show.1 +++ b/man/man1/notmuch-show.1 @@ -1,4 +1,4 @@ -.TH NOTMUCH-SHOW 1 2013-12-07 "Notmuch 0.17~rc3" +.TH NOTMUCH-SHOW 1 2013-12-28 "Notmuch 0.17~rc4" .SH NAME notmuch-show \- show messages matching the given search terms .SH SYNOPSIS diff --git a/man/man1/notmuch-tag.1 b/man/man1/notmuch-tag.1 index 2d13f552..1a611520 100644 --- a/man/man1/notmuch-tag.1 +++ b/man/man1/notmuch-tag.1 @@ -1,4 +1,4 @@ -.TH NOTMUCH-TAG 1 2013-12-07 "Notmuch 0.17~rc3" +.TH NOTMUCH-TAG 1 2013-12-28 "Notmuch 0.17~rc4" .SH NAME notmuch-tag \- add/remove tags for all messages matching the search terms diff --git a/man/man1/notmuch.1 b/man/man1/notmuch.1 index f302d928..87662cf2 100644 --- a/man/man1/notmuch.1 +++ b/man/man1/notmuch.1 @@ -16,7 +16,7 @@ .\" along with this program. If not, see http://www.gnu.org/licenses/ . .\" .\" Author: Carl Worth -.TH NOTMUCH 1 2013-12-07 "Notmuch 0.17~rc3" +.TH NOTMUCH 1 2013-12-28 "Notmuch 0.17~rc4" .SH NAME notmuch \- thread-based email index, search, and tagging .SH SYNOPSIS diff --git a/man/man5/notmuch-hooks.5 b/man/man5/notmuch-hooks.5 index 90f7c239..9fec30fb 100644 --- a/man/man5/notmuch-hooks.5 +++ b/man/man5/notmuch-hooks.5 @@ -1,4 +1,4 @@ -.TH NOTMUCH-HOOKS 5 2013-12-07 "Notmuch 0.17~rc3" +.TH NOTMUCH-HOOKS 5 2013-12-28 "Notmuch 0.17~rc4" .SH NAME notmuch-hooks \- hooks for notmuch diff --git a/man/man7/notmuch-search-terms.7 b/man/man7/notmuch-search-terms.7 index f1627b34..0f8b1860 100644 --- a/man/man7/notmuch-search-terms.7 +++ b/man/man7/notmuch-search-terms.7 @@ -1,4 +1,4 @@ -.TH NOTMUCH-SEARCH-TERMS 7 2013-12-07 "Notmuch 0.17~rc3" +.TH NOTMUCH-SEARCH-TERMS 7 2013-12-28 "Notmuch 0.17~rc4" .SH NAME notmuch-search-terms \- syntax for notmuch queries diff --git a/test/crypto b/test/crypto index 9e5ff4f7..477b397e 100755 --- a/test/crypto +++ b/test/crypto @@ -28,12 +28,8 @@ add_gnupg_home # get key fingerprint FINGERPRINT=$(gpg --no-tty --list-secret-keys --with-colons --fingerprint | grep '^fpr:' | cut -d: -f10) -# for some reason this is needed for emacs_deliver_message to work, -# although I can't figure out why -add_email_corpus - test_expect_success 'emacs delivery of signed message' \ -'emacs_deliver_message \ +'emacs_fcc_message \ "test signed message 001" \ "This is a test signed message." \ "(mml-secure-message-sign)"' @@ -143,7 +139,7 @@ cat <TESTATTACHMENT This is a test file. EOF test_expect_success 'emacs delivery of encrypted message with attachment' \ -'emacs_deliver_message \ +'emacs_fcc_message \ "test encrypted message 001" \ "This is a test encrypted message.\n" \ "(mml-attach-file \"TESTATTACHMENT\") (mml-secure-message-encrypt)"' @@ -270,7 +266,7 @@ test_expect_equal_json \ mv "${GNUPGHOME}"{.bak,} test_expect_success 'emacs delivery of encrypted + signed message' \ -'emacs_deliver_message \ +'emacs_fcc_message \ "test encrypted message 002" \ "This is another test encrypted message.\n" \ "(mml-secure-message-sign-encrypt)"' diff --git a/test/emacs b/test/emacs index 456435c1..863219d9 100755 --- a/test/emacs +++ b/test/emacs @@ -86,15 +86,16 @@ add_message "[subject]=\"message-with-invalid-from\"" \ "[from]=\"\\\"Invalid \\\" From\\\" \"" thread=$(notmuch search --output=threads subject:message-with-invalid-from) test_emacs "(notmuch-show \"$thread\") - (test-output)" + (test-output \"OUTPUT.raw\")" cat <EXPECTED "Invalid " (2001-01-05) (inbox) Subject: message-with-invalid-from To: Notmuch Test Suite -Date: Fri, 05 Jan 2001 15:43:57 +0000 +Date: GENERATED_DATE This is just a test message (#1) EOF +notmuch_date_sanitize < OUTPUT.raw > OUTPUT test_expect_equal_file OUTPUT EXPECTED test_begin_subtest "Navigation of notmuch-search to thread view" @@ -605,11 +606,11 @@ Q: Why is top-posting such a bad thing? A: Top-posting. Q: What is the most annoying thing in e-mail?"' test_emacs "(notmuch-show \"top-posting\") - (test-visible-output)" + (test-visible-output \"OUTPUT.raw\")" echo "Notmuch Test Suite (2001-01-05) (inbox) Subject: The problem with top-posting To: Notmuch Test Suite -Date: Fri, 05 Jan 2001 15:43:57 +0000 +Date: GENERATED_DATE A: Because it messes up the order in which people normally read text. Q: Why is top-posting such a bad thing? @@ -618,13 +619,14 @@ Q: What is the most annoying thing in e-mail? Top Poster (2001-01-05) (inbox unread) Subject: Re: The problem with top-posting To: Notmuch Test Suite -Date: Fri, 05 Jan 2001 15:43:57 +0000 +Date: GENERATED_DATE Thanks for the advice! I will be sure to put it to good use. -Top Poster [ 9-line hidden original message. Click/Enter to show. ]" > EXPECTED +notmuch_date_sanitize < OUTPUT.raw > OUTPUT test_expect_equal_file OUTPUT EXPECTED test_begin_subtest "Hiding message in notmuch-show view" @@ -769,7 +771,7 @@ test_expect_equal_file OUTPUT EXPECTED test_begin_subtest "Do not call notmuch for non-inlinable application/mpeg parts" id='message-with-application/mpeg-attachment@notmuchmail.org' -emacs_deliver_message \ +emacs_fcc_message \ 'Message with application/mpeg attachment' \ '' \ "(message-goto-eoh) @@ -784,7 +786,7 @@ test_expect_equal $(notmuch_counter_value) 1 test_begin_subtest "Do not call notmuch for non-inlinable audio/mpeg parts" id='message-with-audio/mpeg-attachment@notmuchmail.org' -emacs_deliver_message \ +emacs_fcc_message \ 'Message with audio/mpeg attachment' \ '' \ "(message-goto-eoh) diff --git a/test/emacs-show b/test/emacs-show index ec863334..2a3a5356 100755 --- a/test/emacs-show +++ b/test/emacs-show @@ -19,13 +19,14 @@ cat <EXPECTED Notmuch Test Suite (2001-01-05) (inbox) Subject: Hiding Original Message region at beginning of a message To: Notmuch Test Suite -Date: Fri, 05 Jan 2001 15:43:57 +0000 +Date: GENERATED_DATE [ 2-line hidden original message. Click/Enter to show. ] EOF test_emacs "(notmuch-show \"id:$message_id\") - (test-visible-output)" + (test-visible-output \"OUTPUT.raw\")" +notmuch_date_sanitize < OUTPUT.raw > OUTPUT test_expect_equal_file OUTPUT EXPECTED test_begin_subtest "Bare subject #1" @@ -130,12 +131,12 @@ mid:abc%20def mid:abc. mid:abc, mid:abc;"' test_emacs '(notmuch-show "id:'$gen_msg_id'") (notmuch-test-mark-links) - (test-visible-output)' + (test-visible-output "OUTPUT.raw")' cat <EXPECTED Notmuch Test Suite (2001-01-05) (inbox) Subject: id buttonization To: Notmuch Test Suite -Date: Fri, 05 Jan 2001 15:43:57 +0000 +Date: GENERATED_DATE <> <>. <>, <>; <>: @@ -159,6 +160,7 @@ cid:xxx <> <>. <>, <>; EOF +notmuch_date_sanitize < OUTPUT.raw > OUTPUT test_expect_equal_file OUTPUT EXPECTED diff --git a/test/encoding b/test/encoding index 8609652c..b6c86bf0 100755 --- a/test/encoding +++ b/test/encoding @@ -5,14 +5,14 @@ test_description="encoding issues" test_begin_subtest "Message with text of unknown charset" add_message '[content-type]="text/plain; charset=unknown-8bit"' \ "[body]=irrelevant" -output=$(notmuch show id:${gen_msg_id} 2>&1 | notmuch_show_sanitize) -test_expect_equal "$output" " message{ id:msg-001@notmuch-test-suite depth:0 match:1 excluded:0 filename:/XXX/mail/msg-001 +output=$(notmuch show id:${gen_msg_id} 2>&1 | notmuch_show_sanitize_all) +test_expect_equal "$output" " message{ id:XXXXX depth:0 match:1 excluded:0 filename:XXXXX header{ Notmuch Test Suite (2001-01-05) (inbox unread) Subject: Message with text of unknown charset From: Notmuch Test Suite To: Notmuch Test Suite -Date: Fri, 05 Jan 2001 15:43:57 +0000 +Date: GENERATED_DATE header} body{ part{ ID: 1, Content-type: text/plain @@ -26,7 +26,7 @@ add_message '[content-type]="text/plain; charset=iso-8859-2"' \ '[content-transfer-encoding]=8bit' \ '[subject]="ISO-8859-2 encoded message"' \ "[body]=$'Czech word tu\350\362\341\350\350\355 means pinguin\'s.'" # ISO-8859-2 characters are generated by shell's escape sequences -output=$(notmuch search tučňáččí 2>&1 | notmuch_show_sanitize) +output=$(notmuch search tučňáččí 2>&1 | notmuch_show_sanitize_all) test_expect_equal "$output" "thread:0000000000000002 2001-01-05 [1/1] Notmuch Test Suite; ISO-8859-2 encoded message (inbox unread)" test_begin_subtest "RFC 2047 encoded word with spaces" diff --git a/test/excludes b/test/excludes index f1ae9ea9..8bbbc2dd 100755 --- a/test/excludes +++ b/test/excludes @@ -67,7 +67,7 @@ thread:XXX 2001-01-05 [1/2] Notmuch Test Suite; Not deleted reply (deleted inb test_begin_subtest "Search, don't exclude \"deleted\" messages when --exclude=flag specified" output=$(notmuch search --exclude=flag subject:deleted | notmuch_search_sanitize) test_expect_equal "$output" "thread:XXX 2001-01-05 [1/1] Notmuch Test Suite; Not deleted (inbox unread) -thread:XXX 2001-01-05 [1/2] Notmuch Test Suite; Not deleted reply (deleted inbox unread)" +thread:XXX 2001-01-05 [1/2] Notmuch Test Suite; Deleted (deleted inbox unread)" test_begin_subtest "Search, don't exclude \"deleted\" messages from search if not configured" notmuch config set search.exclude_tags @@ -152,7 +152,7 @@ ${matching_message_ids[5]}" test_begin_subtest "Search, exclude=flag (thread summary)" output=$(notmuch search --exclude=flag tag:test | notmuch_search_sanitize) test_expect_equal "$output" "thread:XXX 2001-01-05 [0/6] Notmuch Test Suite; All messages excluded: single match: reply 2 (deleted inbox test unread) -thread:XXX 2001-01-05 [0/6] Notmuch Test Suite; All messages excluded: double match: reply 4 (deleted inbox test unread) +thread:XXX 2001-01-05 [0/6] Notmuch Test Suite; All messages excluded: double match: reply 2 (deleted inbox test unread) thread:XXX 2001-01-05 [0/6] Notmuch Test Suite; Some messages excluded: single excluded match: reply 3 (deleted inbox test unread) thread:XXX 2001-01-05 [1/6] Notmuch Test Suite; Some messages excluded: single non-excluded match: reply 4 (deleted inbox test unread) thread:XXX 2001-01-05 [1/6] Notmuch Test Suite; No messages excluded: single match: reply 3 (inbox test unread)" diff --git a/test/json b/test/json index e07a2904..c1cf649d 100755 --- a/test/json +++ b/test/json @@ -38,7 +38,7 @@ test_expect_equal_json "$output" "[[[{\"id\": \"${gen_msg_id}\", \"match\": true test_begin_subtest "Show message: json, inline attachment filename" subject='json-show-inline-attachment-filename' id="json-show-inline-attachment-filename@notmuchmail.org" -emacs_deliver_message \ +emacs_fcc_message \ "$subject" \ 'This is a test message with inline attachment with a filename' \ "(mml-attach-file \"$TEST_DIRECTORY/README\" nil nil \"inline\") diff --git a/test/maildir-sync b/test/maildir-sync index 33d2c585..3186e70f 100755 --- a/test/maildir-sync +++ b/test/maildir-sync @@ -4,11 +4,6 @@ test_description="maildir synchronization" . ./test-lib.sh -# Avoid including the local value of MAIL_DIR in the result. -filter_show_json() { - sed -e "s|${MAIL_DIR}/|MAIL_DIR/|" -} - # Create the expected maildir structure mkdir $MAIL_DIR/cur mkdir $MAIL_DIR/new @@ -40,18 +35,18 @@ output=$(cd ${MAIL_DIR}/cur; ls -1 adding-replied*) test_expect_equal "$output" "adding-replied-tag:2,RS" test_begin_subtest "notmuch show works with renamed file (without notmuch new)" -output=$(notmuch show --format=json id:${gen_msg_id} | filter_show_json) -test_expect_equal_json "$output" '[[[{"id": "adding-replied-tag@notmuch-test-suite", +output=$(notmuch show --format=json id:${gen_msg_id} | notmuch_json_show_sanitize) +test_expect_equal_json "$output" '[[[{"id": "XXXXX", "match": true, "excluded": false, -"filename": "MAIL_DIR/cur/adding-replied-tag:2,RS", -"timestamp": 978709437, +"filename": "YYYYY", +"timestamp": 42, "date_relative": "2001-01-05", "tags": ["inbox","replied"], "headers": {"Subject": "Adding replied tag", "From": "Notmuch Test Suite ", "To": "Notmuch Test Suite ", -"Date": "Fri, 05 Jan 2001 15:43:57 +0000"}, +"Date": "GENERATED_DATE"}, "body": [{"id": 1, "content-type": "text/plain", "content": "This is just a test message (#3)\n"}]}, diff --git a/test/missing-headers b/test/missing-headers index 43e861bc..cb38301c 100755 --- a/test/missing-headers +++ b/test/missing-headers @@ -95,7 +95,7 @@ Body test_begin_subtest "Show: json" output=$(notmuch show --format=json '*' | notmuch_json_show_sanitize) -test_expect_equal_json "$output" ' +expected=$(notmuch_json_show_sanitize <OUTPUT -cat <EXPECTED +notmuch_json_show_sanitize <EXPECTED {"reply-headers": {"Subject": "Re: Multipart message", "From": "Notmuch Test Suite ", "To": "Carl Worth , cworth@cworth.org", diff --git a/test/new b/test/new index 3eff2fe9..f27423da 100755 --- a/test/new +++ b/test/new @@ -218,9 +218,10 @@ test_expect_equal "$output" "Added 1 new message to the database." test_begin_subtest "Ignore files and directories specified in new.ignore (multiple occurrences)" notmuch config set new.ignore .git ignored_file .ignored_hidden_file +notmuch new > /dev/null # ensure that files/folders will be printed in ASCII order. touch "${MAIL_DIR}"/.git # change .git's mtime for notmuch new to rescan. +touch "${MAIL_DIR}" # likewise for MAIL_DIR mkdir -p "${MAIL_DIR}"/one/two/three/.git -notmuch new > /dev/null # ensure that files/folders will be printed in ASCII order. touch "${MAIL_DIR}"/{one,one/two,one/two/three}/ignored_file output=$(NOTMUCH_NEW --debug 2>&1 | sort) test_expect_equal "$output" \ diff --git a/test/raw b/test/raw index de0b8677..daf5735c 100755 --- a/test/raw +++ b/test/raw @@ -11,22 +11,22 @@ output=$(notmuch show --format=raw "*" 2>&1) test_expect_equal "$output" "Error: search term did not match precisely one message." test_begin_subtest "Show a raw message" -output=$(notmuch show --format=raw id:msg-001@notmuch-test-suite) +output=$(notmuch show --format=raw id:msg-001@notmuch-test-suite | notmuch_date_sanitize) test_expect_equal "$output" "From: Notmuch Test Suite To: Notmuch Test Suite Message-Id: Subject: Test message #1 -Date: Fri, 05 Jan 2001 15:43:57 +0000 +Date: GENERATED_DATE This is just a test message (#1)" test_begin_subtest "Show another raw message" -output=$(notmuch show --format=raw id:msg-002@notmuch-test-suite) +output=$(notmuch show --format=raw id:msg-002@notmuch-test-suite | notmuch_date_sanitize) test_expect_equal "$output" "From: Notmuch Test Suite To: Notmuch Test Suite Message-Id: Subject: Test message #2 -Date: Fri, 05 Jan 2001 15:43:57 +0000 +Date: GENERATED_DATE This is just a test message (#2)" diff --git a/test/sexp b/test/sexp index be815e12..667e3195 100755 --- a/test/sexp +++ b/test/sexp @@ -29,7 +29,7 @@ test_expect_equal "$output" "((((:id \"${gen_msg_id}\" :match t :excluded nil :f test_begin_subtest "Show message: sexp, inline attachment filename" subject='sexp-show-inline-attachment-filename' id="sexp-show-inline-attachment-filename@notmuchmail.org" -emacs_deliver_message \ +emacs_fcc_message \ "$subject" \ 'This is a test message with inline attachment with a filename' \ "(mml-attach-file \"$TEST_DIRECTORY/README\" nil nil \"inline\") diff --git a/test/test-lib.sh b/test/test-lib.sh index d8e0d911..2fcaba65 100644 --- a/test/test-lib.sh +++ b/test/test-lib.sh @@ -370,7 +370,11 @@ generate_message () fi if [ -z "${template[date]}" ]; then - template[date]="Fri, 05 Jan 2001 15:43:57 +0000" + # we use decreasing timestamps here for historical reasons; + # the existing test suite when we converted to unique timestamps just + # happened to have signicantly fewer failures with that choice. + template[date]=$(TZ=UTC printf "%(%a, %d %b %Y %T %z)T\n" \ + $((978709437 - gen_msg_cnt))) fi additional_headers="" @@ -462,7 +466,6 @@ emacs_deliver_message () (mail-host-address \"example.com\") (smtpmail-smtp-server \"localhost\") (smtpmail-smtp-service \"25025\")) - (notmuch-hello) (notmuch-mua-mail) (message-goto-to) (insert \"test_suite@notmuchmail.org\nDate: 01 Jan 2000 12:00:00 -0000\") @@ -480,6 +483,36 @@ emacs_deliver_message () notmuch new >/dev/null } +# Pretend to deliver a message with emacs. Really save it to a file +# and add it to the database +# +# Uses emacs to generate and deliver a message to the mail store. +# Accepts arbitrary extra emacs/elisp functions to modify the message +# before sending, which is useful to doing things like attaching files +# to the message and encrypting/signing. +emacs_fcc_message () +{ + local subject="$1" + local body="$2" + shift 2 + # before we can send a message, we have to prepare the FCC maildir + mkdir -p "$MAIL_DIR"/sent/{cur,new,tmp} + + test_emacs \ + "(let ((message-send-mail-function (lambda () t)) + (mail-host-address \"example.com\")) + (notmuch-mua-mail) + (message-goto-to) + (insert \"test_suite@notmuchmail.org\nDate: 01 Jan 2000 12:00:00 -0000\") + (message-goto-subject) + (insert \"${subject}\") + (message-goto-body) + (insert \"${body}\") + $@ + (message-send-and-exit))" || return 1 + notmuch new >/dev/null +} + # Generate a corpus of email and add it to the database. # # This corpus is fixed, (it happens to be 50 messages from early in @@ -632,14 +665,17 @@ notmuch_show_sanitize_all () { sed \ -e 's| filename:.*| filename:XXXXX|' \ - -e 's| id:[^ ]* | id:XXXXX |' + -e 's| id:[^ ]* | id:XXXXX |' | \ + notmuch_date_sanitize } notmuch_json_show_sanitize () { sed \ -e 's|"id": "[^"]*",|"id": "XXXXX",|g' \ - -e 's|"filename": "/[^"]*",|"filename": "YYYYY",|g' + -e 's|"Date": "Fri, 05 Jan 2001 [^"]*0000"|"Date": "GENERATED_DATE"|g' \ + -e 's|"filename": "/[^"]*",|"filename": "YYYYY",|g' \ + -e 's|"timestamp": 97.......|"timestamp": 42|g' } notmuch_emacs_error_sanitize () @@ -653,6 +689,12 @@ notmuch_emacs_error_sanitize () -e 's/^\[.*\]$/[XXX]/' \ -e "s|^\(command: \)\{0,1\}/.*/$command|\1YYY/$command|" } + +notmuch_date_sanitize () +{ + sed \ + -e 's/^Date: Fri, 05 Jan 2001 .*0000/Date: GENERATED_DATE/' +} # End of notmuch helper functions # Use test_set_prereq to tell that a particular prerequisite is available. diff --git a/version b/version index 14113d4d..fb5096cf 100644 --- a/version +++ b/version @@ -1 +1 @@ -0.17~rc3 +0.17~rc4