--- Begin Message ---
Source: notmuch
Version: 0.35-1
Severity: serious
Justification: FTBFS
Tags: bookworm sid ftbfs
User: lu...@debian.org
Usertags: ftbfs-20220326 ftbfs-bookworm
Hi,
During a rebuild of all packages in sid, your package failed to build
on amd64.
Relevant part (hopefully):
> make[2]: Entering directory '/<<PKGBUILDDIR>>'
> cc -c -DNOTMUCH_VERSION=0.35 -Wall -Wextra -Wwrite-strings
> -Wmissing-declarations -I./util -I./compat -I./lib -fPIC -fvisibility=hidden
> -I./parse-time-string -I. -Wdate-time -D_FORTIFY_SOURCE=2
> -D_LARGEFILE64_SOURCE -pthread -I/usr/include/gmime-3.0
> -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0
> -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -DHAVE_VALGRIND=0
> -DHAVE_SFSEXP=1 -I/usr/include/sfsexp -DHAVE_GETLINE=1 -DWITH_EMACS=1
> -DHAVE_CANONICALIZE_FILE_NAME=1 -DHAVE_STRCASESTR=1 -DHAVE_STRSEP=1
> -DHAVE_TIMEGM=1 -DHAVE_D_TYPE=1 -DSTD_GETPWUID=1 -DSTD_ASCTIME=1
> -DSILENCE_XAPIAN_DEPRECATION_WARNINGS -DHAVE_XAPIAN_DB_RETRY_LOCK=1 -g -O2
> -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat
> -Werror=format-security test/arg-test.c -o test/arg-test.o -MD -MP -MF
> .deps/test/arg-test.d
> cc -c -DNOTMUCH_VERSION=0.35 -Wall -Wextra -Wwrite-strings
> -Wmissing-declarations -I./util -I./compat -I./lib -fPIC -fvisibility=hidden
> -I./parse-time-string -I. -Wdate-time -D_FORTIFY_SOURCE=2
> -D_LARGEFILE64_SOURCE -pthread -I/usr/include/gmime-3.0
> -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0
> -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -DHAVE_VALGRIND=0
> -DHAVE_SFSEXP=1 -I/usr/include/sfsexp -DHAVE_GETLINE=1 -DWITH_EMACS=1
> -DHAVE_CANONICALIZE_FILE_NAME=1 -DHAVE_STRCASESTR=1 -DHAVE_STRSEP=1
> -DHAVE_TIMEGM=1 -DHAVE_D_TYPE=1 -DSTD_GETPWUID=1 -DSTD_ASCTIME=1
> -DSILENCE_XAPIAN_DEPRECATION_WARNINGS -DHAVE_XAPIAN_DB_RETRY_LOCK=1 -g -O2
> -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat
> -Werror=format-security test/hex-xcode.c -o test/hex-xcode.o -MD -MP -MF
> .deps/test/hex-xcode.d
> cc -c -DNOTMUCH_VERSION=0.35 -Wall -Wextra -Wwrite-strings
> -Wmissing-declarations -I./util -I./compat -I./lib -fPIC -fvisibility=hidden
> -I./parse-time-string -I. -Wdate-time -D_FORTIFY_SOURCE=2
> -D_LARGEFILE64_SOURCE -pthread -I/usr/include/gmime-3.0
> -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0
> -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -DHAVE_VALGRIND=0
> -DHAVE_SFSEXP=1 -I/usr/include/sfsexp -DHAVE_GETLINE=1 -DWITH_EMACS=1
> -DHAVE_CANONICALIZE_FILE_NAME=1 -DHAVE_STRCASESTR=1 -DHAVE_STRSEP=1
> -DHAVE_TIMEGM=1 -DHAVE_D_TYPE=1 -DSTD_GETPWUID=1 -DSTD_ASCTIME=1
> -DSILENCE_XAPIAN_DEPRECATION_WARNINGS -DHAVE_XAPIAN_DB_RETRY_LOCK=1 -g -O2
> -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat
> -Werror=format-security test/random-corpus.c -o test/random-corpus.o -MD -MP
> -MF .deps/test/random-corpus.d
> cc -c -DNOTMUCH_VERSION=0.35 -Wall -Wextra -Wwrite-strings
> -Wmissing-declarations -I./util -I./compat -I./lib -fPIC -fvisibility=hidden
> -I./parse-time-string -I. -Wdate-time -D_FORTIFY_SOURCE=2
> -D_LARGEFILE64_SOURCE -pthread -I/usr/include/gmime-3.0
> -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0
> -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -DHAVE_VALGRIND=0
> -DHAVE_SFSEXP=1 -I/usr/include/sfsexp -DHAVE_GETLINE=1 -DWITH_EMACS=1
> -DHAVE_CANONICALIZE_FILE_NAME=1 -DHAVE_STRCASESTR=1 -DHAVE_STRSEP=1
> -DHAVE_TIMEGM=1 -DHAVE_D_TYPE=1 -DSTD_GETPWUID=1 -DSTD_ASCTIME=1
> -DSILENCE_XAPIAN_DEPRECATION_WARNINGS -DHAVE_XAPIAN_DB_RETRY_LOCK=1 -g -O2
> -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat
> -Werror=format-security test/database-test.c -o test/database-test.o -MD -MP
> -MF .deps/test/database-test.d
> cc -c -DNOTMUCH_VERSION=0.35 -Wall -Wextra -Wwrite-strings
> -Wmissing-declarations -I./util -I./compat -I./lib -fPIC -fvisibility=hidden
> -I./parse-time-string -I. -Wdate-time -D_FORTIFY_SOURCE=2
> -D_LARGEFILE64_SOURCE -pthread -I/usr/include/gmime-3.0
> -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0
> -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -DHAVE_VALGRIND=0
> -DHAVE_SFSEXP=1 -I/usr/include/sfsexp -DHAVE_GETLINE=1 -DWITH_EMACS=1
> -DHAVE_CANONICALIZE_FILE_NAME=1 -DHAVE_STRCASESTR=1 -DHAVE_STRSEP=1
> -DHAVE_TIMEGM=1 -DHAVE_D_TYPE=1 -DSTD_GETPWUID=1 -DSTD_ASCTIME=1
> -DSILENCE_XAPIAN_DEPRECATION_WARNINGS -DHAVE_XAPIAN_DB_RETRY_LOCK=1 -g -O2
> -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat
> -Werror=format-security test/parse-time.c -o test/parse-time.o -MD -MP -MF
> .deps/test/parse-time.d
> cc -c -DNOTMUCH_VERSION=0.35 -Wall -Wextra -Wwrite-strings
> -Wmissing-declarations -I./util -I./compat -I./lib -fPIC -fvisibility=hidden
> -I./parse-time-string -I. -Wdate-time -D_FORTIFY_SOURCE=2
> -D_LARGEFILE64_SOURCE -pthread -I/usr/include/gmime-3.0
> -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0
> -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -DHAVE_VALGRIND=0
> -DHAVE_SFSEXP=1 -I/usr/include/sfsexp -DHAVE_GETLINE=1 -DWITH_EMACS=1
> -DHAVE_CANONICALIZE_FILE_NAME=1 -DHAVE_STRCASESTR=1 -DHAVE_STRSEP=1
> -DHAVE_TIMEGM=1 -DHAVE_D_TYPE=1 -DSTD_GETPWUID=1 -DSTD_ASCTIME=1
> -DSILENCE_XAPIAN_DEPRECATION_WARNINGS -DHAVE_XAPIAN_DB_RETRY_LOCK=1 -g -O2
> -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat
> -Werror=format-security test/smtp-dummy.c -o test/smtp-dummy.o -MD -MP -MF
> .deps/test/smtp-dummy.d
> c++ -c -Wall -Wextra -Wwrite-strings -I./util -I./compat -I./lib -fPIC
> -fvisibility=hidden -I./parse-time-string -I. -fvisibility-inlines-hidden
> -Wdate-time -D_FORTIFY_SOURCE=2 -D_LARGEFILE64_SOURCE -pthread
> -I/usr/include/gmime-3.0 -I/usr/include/libmount -I/usr/include/blkid
> -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include
> -DHAVE_VALGRIND=0 -DHAVE_SFSEXP=1 -I/usr/include/sfsexp -DHAVE_GETLINE=1
> -DWITH_EMACS=1 -DHAVE_CANONICALIZE_FILE_NAME=1 -DHAVE_STRCASESTR=1
> -DHAVE_STRSEP=1 -DHAVE_TIMEGM=1 -DHAVE_D_TYPE=1 -DSTD_GETPWUID=1
> -DSTD_ASCTIME=1 -DSILENCE_XAPIAN_DEPRECATION_WARNINGS
> -DHAVE_XAPIAN_DB_RETRY_LOCK=1 -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=.
> -fstack-protector-strong -Wformat -Werror=format-security test/symbol-test.cc
> -o test/symbol-test.o -MD -MP -MF .deps/test/symbol-test.d
> c++ -c -Wall -Wextra -Wwrite-strings -I./util -I./compat -I./lib -fPIC
> -fvisibility=hidden -I./parse-time-string -I. -fvisibility-inlines-hidden
> -Wdate-time -D_FORTIFY_SOURCE=2 -D_LARGEFILE64_SOURCE -pthread
> -I/usr/include/gmime-3.0 -I/usr/include/libmount -I/usr/include/blkid
> -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include
> -DHAVE_VALGRIND=0 -DHAVE_SFSEXP=1 -I/usr/include/sfsexp -DHAVE_GETLINE=1
> -DWITH_EMACS=1 -DHAVE_CANONICALIZE_FILE_NAME=1 -DHAVE_STRCASESTR=1
> -DHAVE_STRSEP=1 -DHAVE_TIMEGM=1 -DHAVE_D_TYPE=1 -DSTD_GETPWUID=1
> -DSTD_ASCTIME=1 -DSILENCE_XAPIAN_DEPRECATION_WARNINGS
> -DHAVE_XAPIAN_DB_RETRY_LOCK=1 -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=.
> -fstack-protector-strong -Wformat -Werror=format-security
> test/make-db-version.cc -o test/make-db-version.o -MD -MP -MF
> .deps/test/make-db-version.d
> c++ -c -Wall -Wextra -Wwrite-strings -I./util -I./compat -I./lib -fPIC
> -fvisibility=hidden -I./parse-time-string -I. -fvisibility-inlines-hidden
> -Wdate-time -D_FORTIFY_SOURCE=2 -D_LARGEFILE64_SOURCE -pthread
> -I/usr/include/gmime-3.0 -I/usr/include/libmount -I/usr/include/blkid
> -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include
> -DHAVE_VALGRIND=0 -DHAVE_SFSEXP=1 -I/usr/include/sfsexp -DHAVE_GETLINE=1
> -DWITH_EMACS=1 -DHAVE_CANONICALIZE_FILE_NAME=1 -DHAVE_STRCASESTR=1
> -DHAVE_STRSEP=1 -DHAVE_TIMEGM=1 -DHAVE_D_TYPE=1 -DSTD_GETPWUID=1
> -DSTD_ASCTIME=1 -DSILENCE_XAPIAN_DEPRECATION_WARNINGS
> -DHAVE_XAPIAN_DB_RETRY_LOCK=1 -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=.
> -fstack-protector-strong -Wformat -Werror=format-security
> test/ghost-report.cc -o test/ghost-report.o -MD -MP -MF
> .deps/test/ghost-report.d
> cc -c -DNOTMUCH_VERSION=0.35 -Wall -Wextra -Wwrite-strings
> -Wmissing-declarations -I./util -I./compat -I./lib -fPIC -fvisibility=hidden
> -I./parse-time-string -I. -Wdate-time -D_FORTIFY_SOURCE=2
> -D_LARGEFILE64_SOURCE -pthread -I/usr/include/gmime-3.0
> -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0
> -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -DHAVE_VALGRIND=0
> -DHAVE_SFSEXP=1 -I/usr/include/sfsexp -DHAVE_GETLINE=1 -DWITH_EMACS=1
> -DHAVE_CANONICALIZE_FILE_NAME=1 -DHAVE_STRCASESTR=1 -DHAVE_STRSEP=1
> -DHAVE_TIMEGM=1 -DHAVE_D_TYPE=1 -DSTD_GETPWUID=1 -DSTD_ASCTIME=1
> -DSILENCE_XAPIAN_DEPRECATION_WARNINGS -DHAVE_XAPIAN_DB_RETRY_LOCK=1 -g -O2
> -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat
> -Werror=format-security test/message-id-parse.c -o test/message-id-parse.o
> -MD -MP -MF .deps/test/message-id-parse.d
> cc test/arg-test.o command-line-arguments.o util/libnotmuch_util.a -o
> test/arg-test -Wl,-z,relro -Wl,-z,now
> cc test/parse-time.o parse-time-string/parse-time-string.o -o test/parse-time
> -Wl,-z,relro -Wl,-z,now
> cc test/smtp-dummy.o -o test/smtp-dummy -Wl,-z,relro -Wl,-z,now
> cc test/hex-xcode.o command-line-arguments.o util/libnotmuch_util.a -o
> test/hex-xcode -Wl,-z,relro -Wl,-z,now -ltalloc
> c++ test/random-corpus.o test/database-test.o notmuch-config.o status.o
> command-line-arguments.o lib/libnotmuch.a util/libnotmuch_util.a
> parse-time-string/libparse-time-string.a -o test/random-corpus -Wl,-z,relro
> -Wl,-z,now -lgmime-3.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -ltalloc -lz
> -L/usr/lib/x86_64-linux-gnu -lxapian -lsexp
> cc test/message-id-parse.o lib/libnotmuch.a util/libnotmuch_util.a -o
> test/message-id-parse -Wl,-z,relro -Wl,-z,now -ltalloc
> c++ test/symbol-test.o lib/libnotmuch.so -o test/symbol-test -Wl,-z,relro
> -Wl,-z,now -Llib -lnotmuch -L/usr/lib/x86_64-linux-gnu -lxapian
> c++ test/make-db-version.o -o test/make-db-version -Wl,-z,relro -Wl,-z,now
> -L/usr/lib/x86_64-linux-gnu -lxapian
> c++ test/ghost-report.o -o test/ghost-report -Wl,-z,relro -Wl,-z,now
> -L/usr/lib/x86_64-linux-gnu -lxapian
> INFO: using 2m timeout for tests
>
> T000-basic: Testing the test framework itself.
> PASS success is reported like this
> PASS test runs if prerequisite is satisfied
> PASS tests clean up after themselves
> PASS tests clean up even after a failure
> PASS failure to clean up causes the test to fail
> PASS Ensure that test output is suppressed unless the test fails
> PASS Ensure that -v does not suppress test output
> PASS test that mail store was created
> PASS mail store should be empty
> PASS NOTMUCH_CONFIG is set and points to an existing file
> PASS PATH is set to build directory
> PASS notmuch is compiled with debugging symbols
>
> T010-help-test: Testing online help
> PASS notmuch --help
> PASS notmuch help
> PASS notmuch --version
> PASS notmuch --help tag
> PASS notmuch help tag
>
> T020-compact: Testing "notmuch compact"
> PASS Running compact
> PASS Compact preserves database
> PASS Restoring Backup
> PASS Checking restored backup
>
> T030-config: Testing "notmuch config"
> PASS Get string value
> PASS Get list value
> PASS Set string value
> PASS Set string value again
> PASS Set list value
> PASS Set list value again
> PASS Remove key
> PASS Remove non-existent key
> PASS List all items
> BROKEN Round trip config item with leading spaces
> --- T030-config.10.expected 2022-03-26 19:29:38.934739982 +0000
> +++ T030-config.10.output 2022-03-26 19:29:38.934739982 +0000
> @@ -1 +1 @@
> - thing
> +thing
> BROKEN Round trip config item with leading tab
> --- T030-config.11.expected 2022-03-26 19:29:38.950739998 +0000
> +++ T030-config.11.output 2022-03-26 19:29:38.950739998 +0000
> @@ -1 +1 @@
> - thing
> +thing
> PASS Round trip config item with embedded tab
> PASS Round trip config item with embedded backslash
> PASS Round trip config item with embedded NL/CR
> PASS Top level --config=FILE option
> PASS Top level --config:FILE option
> PASS Top level --config<space>FILE option
> PASS Top level --config=FILE option changed the right file
> PASS Read config file through a symlink
> PASS Write config file through a symlink
> PASS Writing config file through symlink follows symlink
> PASS Round trip arbitrary key
> PASS Clear arbitrary key
> PASS Absolute database path returned
> PASS Relative database path expanded
> PASS Add config to database
> PASS Roundtrip config to/from database
> PASS set built_with.* yields error
> PASS get built_with.{compact,field_processor} prints true
> PASS get built_with.nonexistent prints false
>
> T035-read-config: Testing Various options for reading configuration
> PASS count with saved query from config file
> PASS count with saved query from config file (xdg)
> PASS count with saved query from config file (xdg+profile)
> PASS dump with saved query from config file
> PASS dump with saved query from config file (xdg)
> PASS dump with saved query from config file (xdg+profile)
> PASS restore with xdg config
> PASS restore with xdg+profile config
> PASS Insert message with custom new.tags (xdg)
> PASS Insert message with custom new.tags (xdg+profile)
> PASS reindex with saved query from config file
> PASS reindex with saved query from config file (xdg)
> PASS reindex with saved query from config file (xdg+profile)
> PASS reply with saved query from config file
> PASS reply with saved query from config file (xdg)
> PASS reply with saved query from config file (xdg+profile)
> PASS search with alternate config
> PASS search with saved query from config file
> PASS search with saved query from config file (xdg)
> PASS search with saved query from config file (xdg + profile)
> PASS address: saved query from config file
> PASS address: saved query from config file (xdg)
> PASS address: saved query from config file (xdg+profile)
> PASS show with alternate config
> PASS show with alternate config (xdg)
> PASS show with alternate config (xdg+profile)
> PASS tag with saved query from config file
> PASS tag with saved query from config file (xdg)
> PASS tag with saved query from config file (xdg+profile)
> PASS running compact (xdg)
> PASS running compact (xdg + profile)
> PASS run notmuch-new (xdg)
> PASS run notmuch-new (xdg + profile)
>
> T040-setup: Testing "notmuch setup"
> PASS Notmuch new without a config suggests notmuch setup
> PASS Create a new config interactively
> PASS setup consistent with config-set for single items
> PASS notmuch with a config but without a database suggests notmuch new
>
> T050-new: Testing "notmuch new" in several variations
> PASS No new messages
> PASS Single new message
> PASS Single message (full-scan)
> PASS Multiple new messages
> PASS Multiple new messages (full-scan)
> PASS No new messages (non-empty DB)
> PASS No new messages (full-scan)
> PASS New directories
> PASS Alternate inode order
> PASS Message moved in
> PASS Renamed message
> PASS Deleted message
> PASS Renamed directory
> PASS Deleted directory
> PASS New directory (at end of list)
> PASS Deleted directory (end of list)
> PASS New symlink to directory
> PASS New symlink to a file
> PASS Broken symlink aborts
> PASS New two-level directory
> PASS Deleted two-level directory
> PASS One character directory at top level
> PASS Support single-message mbox
> PASS Skip and report non-mail files
> PASS Ignore files and directories specified in new.ignore
> PASS Ignore files and directories specified in new.ignore (full-scan)
> PASS Ignore files and directories specified in new.ignore (multiple
> occurrences)
> PASS Don't stop for ignored broken symlinks
> PASS Ignore files and directories specified in new.ignore (regexp)
> PASS Quiet: No new mail.
> PASS Quiet: new, removed and renamed messages.
> PASS Empty tags in new.tags are ignored
> PASS leading/trailing whitespace in new.tags is ignored
> PASS Tags starting with '-' in new.tags are forbidden
> PASS Invalid tags set exit code
> PASS .notmuch only ignored at top level
> BROKEN RFC822 group names are indexed
> --- T050-new.37.expected 2022-03-26 19:29:41.638742656 +0000
> +++ T050-new.37.output 2022-03-26 19:29:41.638742656 +0000
> @@ -1 +1 @@
> -msg-030@notmuch-test-suite
> +
> BROKEN Long directory names don't cause rescan
> --- T050-new.38.EXPECTED 2022-03-26 19:29:41.670742689 +0000
> +++ T050-new.38.OUTPUT 2022-03-26 19:29:41.670742689 +0000
> @@ -1,3 +1,4 @@
> -Added 1 new message to the database.
> No new mail.
> -No new mail. Removed 1 message.
> +Processed 1 file in almost no time.
> +No new mail.
> +No new mail.
> add_file: A Xapian exception occurred
> A Xapian exception occurred finding/creating a directory: Term too long (>
> 245):
> XDDIRENTRY2:zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz.
> Note: A fatal error was encountered: A Xapian exception occurred
> add_file: A Xapian exception occurred
> A Xapian exception occurred finding/creating a directory: Term too long (>
> 245):
> XDDIRENTRY2:zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz.
> Note: A fatal error was encountered: A Xapian exception occurred
> PASS Xapian exception: read only files
> PASS Handle files vanishing between scandir and add_file
> PASS Relative database path expanded in new
> PASS Relative mail root (in db) expanded in new
> PASS reference loop does not crash
> PASS reference loop ordered by date
>
> T051-new-renames: Testing "notmuch new" with directory renames
> PASS Index the messages, round 1
> PASS Rename folder
> PASS Rename folder back
> PASS Files remain the same
> PASS Index the messages, round 2
> PASS Rename folder
> PASS Rename folder back
> PASS Files remain the same
> PASS Index the messages, round 3
> PASS Rename folder
> PASS Rename folder back
> PASS Files remain the same
> PASS Index the messages, round 4
> PASS Rename folder
> PASS Rename folder back
> PASS Files remain the same
> PASS Index the messages, round 5
> PASS Rename folder
> PASS Rename folder back
> PASS Files remain the same
> PASS Index the messages, round 6
> PASS Rename folder
> PASS Rename folder back
> PASS Files remain the same
> PASS Index the messages, round 7
> PASS Rename folder
> PASS Rename folder back
> PASS Files remain the same
> PASS Index the messages, round 8
> PASS Rename folder
> PASS Rename folder back
> PASS Files remain the same
> PASS Index the messages, round 9
> PASS Rename folder
> PASS Rename folder back
> PASS Files remain the same
> PASS Index the messages, round 10
> PASS Rename folder
> PASS Rename folder back
> PASS Files remain the same
>
> T055-path-config: Testing Configuration of mail-root and database path
> PASS count (traditional)
> PASS count+tag (traditional)
> PASS address (traditional)
> PASS dump (traditional)
> PASS dump + tag + restore (traditional)
> PASS reindex (traditional)
> PASS use existing database (traditional)
> PASS create database (traditional)
> PASS detect new files (traditional)
> PASS Show a raw message (traditional)
> PASS reply (traditional)
> PASS insert+search (traditional)
> PASS compact+search (traditional)
> PASS upgrade backup (traditional)
> PASS notmuch +config -database suggests notmuch new (traditional)
> PASS Set config value (traditional)
> PASS Set config value in database (traditional)
> PASS Config list (traditional)
> PASS .notmuch without xapian/ handled gracefully (traditional)
> PASS count (split)
> PASS count+tag (split)
> PASS address (split)
> PASS dump (split)
> PASS dump + tag + restore (split)
> PASS reindex (split)
> PASS use existing database (split)
> PASS create database (split)
> PASS detect new files (split)
> PASS Show a raw message (split)
> PASS reply (split)
> PASS insert+search (split)
> PASS compact+search (split)
> PASS upgrade backup (split)
> PASS notmuch +config -database suggests notmuch new (split)
> PASS Set config value (split)
> PASS Set config value in database (split)
> PASS Config list (split)
> PASS 'to' header does not crash (python-cffi) (split)
> PASS count (XDG)
> PASS count+tag (XDG)
> PASS address (XDG)
> PASS dump (XDG)
> PASS dump + tag + restore (XDG)
> PASS reindex (XDG)
> PASS use existing database (XDG)
> PASS create database (XDG)
> PASS detect new files (XDG)
> PASS Show a raw message (XDG)
> PASS reply (XDG)
> PASS insert+search (XDG)
> PASS compact+search (XDG)
> PASS upgrade backup (XDG)
> PASS notmuch +config -database suggests notmuch new (XDG)
> PASS Set config value (XDG)
> PASS Set config value in database (XDG)
> PASS Config list (XDG)
> PASS Set shadowed config value in database (XDG)
> PASS 'to' header does not crash (python-cffi) (XDG)
> PASS count (XDG+profile)
> PASS count+tag (XDG+profile)
> PASS address (XDG+profile)
> PASS dump (XDG+profile)
> PASS dump + tag + restore (XDG+profile)
> PASS reindex (XDG+profile)
> PASS use existing database (XDG+profile)
> PASS create database (XDG+profile)
> PASS detect new files (XDG+profile)
> PASS Show a raw message (XDG+profile)
> PASS reply (XDG+profile)
> PASS insert+search (XDG+profile)
> PASS compact+search (XDG+profile)
> PASS upgrade backup (XDG+profile)
> PASS notmuch +config -database suggests notmuch new (XDG+profile)
> PASS Set config value (XDG+profile)
> PASS Set config value in database (XDG+profile)
> PASS Config list (XDG+profile)
> PASS Set shadowed config value in database (XDG+profile)
> PASS 'to' header does not crash (python-cffi) (XDG+profile)
> PASS count (symlink)
> PASS count+tag (symlink)
> PASS address (symlink)
> PASS dump (symlink)
> PASS dump + tag + restore (symlink)
> PASS reindex (symlink)
> PASS use existing database (symlink)
> PASS create database (symlink)
> PASS detect new files (symlink)
> PASS Show a raw message (symlink)
> PASS reply (symlink)
> PASS insert+search (symlink)
> PASS compact+search (symlink)
> PASS upgrade backup (symlink)
> PASS notmuch +config -database suggests notmuch new (symlink)
> PASS Set config value (symlink)
> PASS Set config value in database (symlink)
> PASS Config list (symlink)
> PASS .notmuch without xapian/ handled gracefully (symlink)
> PASS count (home_mail)
> PASS count+tag (home_mail)
> PASS address (home_mail)
> PASS dump (home_mail)
> PASS dump + tag + restore (home_mail)
> PASS reindex (home_mail)
> PASS use existing database (home_mail)
> PASS create database (home_mail)
> PASS detect new files (home_mail)
> PASS Show a raw message (home_mail)
> PASS reply (home_mail)
> PASS insert+search (home_mail)
> PASS compact+search (home_mail)
> PASS upgrade backup (home_mail)
> PASS notmuch +config -database suggests notmuch new (home_mail)
> PASS Set config value (home_mail)
> PASS Set config value in database (home_mail)
> PASS Config list (home_mail)
> PASS .notmuch without xapian/ handled gracefully (home_mail)
> PASS count (maildir_env)
> PASS count+tag (maildir_env)
> PASS address (maildir_env)
> PASS dump (maildir_env)
> PASS dump + tag + restore (maildir_env)
> PASS reindex (maildir_env)
> PASS use existing database (maildir_env)
> PASS create database (maildir_env)
> PASS detect new files (maildir_env)
> PASS Show a raw message (maildir_env)
> PASS reply (maildir_env)
> PASS insert+search (maildir_env)
> PASS compact+search (maildir_env)
> PASS upgrade backup (maildir_env)
> PASS notmuch +config -database suggests notmuch new (maildir_env)
> PASS Set config value (maildir_env)
> PASS Set config value in database (maildir_env)
> PASS Config list (maildir_env)
> PASS .notmuch without xapian/ handled gracefully (maildir_env)
>
> T060-count: Testing "notmuch count" for messages and threads
> PASS message count is the default for notmuch count
> PASS message count with --output=messages
> PASS thread count with --output=threads
> PASS thread count is the default for notmuch search
> PASS files count
> PASS files count for a duplicate message-id
> PASS count with no matching messages
> PASS count with no matching threads
> PASS message count is the default for batch count
> PASS batch message count
> PASS batch thread count
> PASS batch message count with input file
> PASS error message for database open
> PASS error message from query_search_messages
> PASS count library function is non-destructive
> PASS and of exact terms (query=sexp)
> PASS or of exact terms (query=sexp)
> PASS starts-with, case-insensitive (query=sexp)
> PASS query that matches no messages (query=sexp)
> PASS Compound subquery (query=sexp)
>
> T070-insert: Testing "notmuch insert"
> PASS Insert zero-length file
> PASS Insert non-message
> PASS Database empty so far
> PASS Insert message
> PASS Permissions on inserted message should be 0600
> PASS Insert message adds default tags
> PASS Insert duplicate message
> PASS Duplicate message does not change tags
> PASS Insert message, add tag
> PASS Insert tagged world-readable message
> PASS Permissions on inserted world-readable message should be 0644
> PASS Insert tagged world-readable message with group-only umask
> PASS Permissions on inserted world-readable message with funny umask
> should be 0640
> PASS Insert message, add/remove tags
> PASS Insert message with default tags stays in new/
> PASS Insert message with non-maildir synced tags stays in new/
> PASS Insert message with custom new.tags goes to cur/
> PASS Insert message with custom new.tags actually gets the tags
> PASS Insert message with maildir synced tags goes to cur/
> PASS Insert message with maildir sync off goes to new/
> PASS Insert message into folder
> PASS Insert message into top level folder
> PASS Insert message into folder with trailing /
> PASS Insert message into folder, add/remove tags
> PASS Insert message into non-existent folder
> PASS Insert message, create folder
> PASS Insert message, create subfolder
> PASS Created subfolder should have permissions 0700
> PASS Created subfolder new/ should also have permissions 0700
> PASS Insert message, create world-readable subfolder
> PASS Created world-readable subfolder should have permissions 0755
> PASS Created world-readable subfolder new/ should also have permissions
> 0755
> PASS Insert message, create existing subfolder
> PASS Insert message, create invalid subfolder
> PASS Empty tags in new.tags are ignored
> PASS leading/trailing whitespace in new.tags is ignored
> PASS Tags starting with '-' in new.tags are forbidden
> PASS Invalid tags set exit code
> PASS EXIT_FAILURE when index_file returns FILE_NOT_EMAIL
> PASS success exit with --keep when index_file returns FILE_NOT_EMAIL
> PASS EXIT_FAILURE when index_file returns READ_ONLY_DATABASE
> PASS success exit with --keep when index_file returns READ_ONLY_DATABASE
> PASS EXIT_FAILURE when index_file returns UPGRADE_REQUIRED
> PASS success exit with --keep when index_file returns UPGRADE_REQUIRED
> PASS EXIT_FAILURE when index_file returns PATH_ERROR
> PASS success exit with --keep when index_file returns PATH_ERROR
> PASS EX_TEMPFAIL when index_file returns OUT_OF_MEMORY
> PASS success exit with --keep when index_file returns OUT_OF_MEMORY
> PASS EX_TEMPFAIL when index_file returns XAPIAN_EXCEPTION
> PASS success exit with --keep when index_file returns XAPIAN_EXCEPTION
>
> T080-search: Testing "notmuch search" in several variations
> PASS Search body
> PASS Search by from:
> PASS Search by to:
> PASS Search by subject:
> PASS Search by subject (utf-8):
> PASS Search by id:
> PASS Search by mid:
> PASS Search by tag:
> PASS Search by thread:
> PASS Search body (phrase)
> PASS Search by from: (address)
> PASS Search by from: (name)
> PASS Search by from: (name and address)
> PASS Search by from: without prefix (name and address)
> PASS Search by to: (address)
> PASS Search by to: (name)
> PASS Search by to: (name and address)
> PASS Search by to: without prefix (name and address)
> PASS Search by subject: (phrase)
> PASS Search for all messages ("*")
> PASS Search body (utf-8):
> PASS headers do not have adjacent term positions
> PASS parts have non-overlapping term positions
> PASS parts do not have adjacent term positions
>
> T081-sexpr-search: Testing "notmuch search" in several variations
> PASS all messages: ()
> PASS all messages: (not)
> PASS all messages: (and)
> PASS all messages: (or ())
> PASS all messages: (or (not))
> PASS all messages: (or (and))
> PASS all messages: (or (and) (or) (not (and)))
> PASS no messages: (or)
> PASS no messages: (not ())
> PASS no messages: (not (not))
> PASS no messages: (not (and))
> PASS no messages: (not (or (and) (or) (not (and))))
> PASS and of exact terms
> PASS or of exact terms
> PASS single term in body
> PASS single term in body (case insensitive)
> PASS single term in body, stemmed version
> PASS single term in body, unstemmed version
> PASS Search by 'subject'
> PASS Search by 'subject' (case insensitive)
> PASS Search by 'subject' (utf-8):
> PASS Search by 'subject' (utf-8, and):
> PASS Search by 'subject' (utf-8, and outside):
> PASS Search by 'subject' (utf-8, or):
> PASS Search by 'subject' (utf-8, or outside):
> PASS Search by 'attachment'
> PASS Search by 'body'
> PASS Search by 'body' (phrase)
> PASS Search by 'body' (utf-8):
> PASS search without body: prefix
> PASS negated body: prefix
> PASS search unprefixed for prefixed term
> PASS search with body: prefix for term only in subject
> PASS Search by 'from'
> PASS Search by 'from' (address)
> PASS Search by 'from' (name)
> PASS Search by 'from' (name and address)
> PASS Search by 'folder' (multiple)
> PASS Search by 'folder': top level.
> PASS Search by 'folder' with --output=files
> PASS Search by 'folder' with --output=files (trailing /)
> PASS Search by 'folder' (multiple)
> PASS Search by 'folder' (multiple, trailing /)
> PASS Search by 'path' with --output=files
> PASS Search by 'path' with --output=files (trailing /)
> PASS Search by 'path' specification (multiple)
> PASS Search by 'path' specification (multiple, trailing /)
> PASS Search by 'id'
> PASS Search by 'id' (or)
> PASS Search by 'is' (multiple)
> PASS Search by 'mid'
> PASS Search by 'mid' (or)
> PASS Search by 'mimetype'
> PASS ill-formed named query search
> PASS ill-formed named query search 2
> PASS search named query
> PASS Search by 'subject' (utf-8, phrase-token):
> PASS search named query with other terms
> PASS search nested named query
> PASS Search by 'subject' (utf-8, quoted string):
> PASS Search by 'subject' (combine phrase, term):
> PASS Search by 'subject' (combine phrase, term 2):
> PASS Search by 'subject' (combine phrase, term 3):
> PASS Search by 'tag'
> PASS Search by 'tag' (multiple)
> PASS Search by 'tag' and 'subject'
> PASS Search by 'thread'
> PASS Search by 'to'
> PASS Search by 'to' (address)
> PASS Search by 'to' (name)
> PASS Search by 'to' (name and address)
> PASS starts-with, no prefix
> PASS starts-with, case-insensitive
> PASS starts-with, no prefix, all messages
> PASS starts-with, attachment
> PASS starts-with, folder
> PASS starts-with, from
> PASS starts-with, id
> PASS starts-with, is
> PASS starts-with, mid
> PASS starts-with, mimetype
> PASS starts-with, property
> PASS starts-with, subject
> PASS starts-with, tag
> PASS negated starts-with, tag
> PASS negated starts-with, tag 2
> PASS negated starts-with, tag 3
> PASS starts-with, thread
> PASS starts-with, to
> PASS wildcard search for 'is'
> PASS negated wildcard search for 'is'
> PASS wildcard search for 'property'
> PASS wildcard search for 'tag'
> PASS negated wildcard search for 'tag'
> PASS search for 'tag' "*"
> PASS search for missing / empty to
> PASS Unbalanced parens
> PASS Unbalanced parens, error message
> PASS unknown prefix
> PASS list as prefix
> PASS illegal nesting
> PASS starts-with, no argument
> PASS starts-with, list argument
> PASS starts-with, too many arguments
> PASS starts-with, illegal field
> PASS wildcard, illegal field
> PASS Search, exclude "deleted" messages from search
> PASS Search, exclude "deleted" messages from message search --exclude=false
> PASS Search, exclude "deleted" messages from search, overridden
> PASS Search, exclude "deleted" messages from threads
> PASS Search, don't exclude "deleted" messages when --exclude=flag specified
> PASS Search, don't exclude "deleted" messages from search if not configured
> PASS regex at top level
> PASS regex in illegal field
> PASS regexp 'from' search
> PASS regexp search for 'from' 2
> PASS regexp 'folder' search
> PASS regexp 'id' search
> PASS unanchored 'is' search
> PASS anchored 'is' search
> PASS combine regexp mid and subject
> PASS regexp 'path' search
> PASS regexp 'property' search
> PASS anchored 'tag' search
> PASS regexp 'thread' search
> PASS Basic query that matches no messages
> PASS Same query against threads
> PASS Mix thread and non-threads query
> PASS Compound subquery
> PASS empty subquery
> PASS illegal expansion
> PASS (folder (of subquery))
> PASS infix query
> PASS bad infix query 1
> PASS bad infix query 2
> PASS bad infix query 3: bad nesting
> PASS infix query that matches no messages
> PASS compound infix query
> PASS compound infix query 2
> PASS date query, empty
> PASS date query, one argument
> PASS date query, two arguments
> PASS date query, illegal nesting 1
> PASS date query, illegal nesting 2
> PASS date query, illegal nesting 3
> PASS date query, illegal nesting 4
> PASS date query, too many arguments
> PASS date query, bad date
> PASS lastmod query, empty
> PASS lastmod query, one argument
> PASS lastmod query, two arguments
> PASS lastmod query, illegal nesting 1
> PASS lastmod query, bad from revision
> PASS lastmod query, bad to revision
> PASS lastmod query, illegal nesting 2
> PASS lastmod query, illegal nesting 3
> PASS lastmod query, illegal nesting 4
> PASS lastmod query, too many arguments
> PASS user header (unknown header)
> PASS adding user header
> PASS reindexing
> PASS wildcard search for user header
> PASS wildcard search for user header 2
> PASS search for user header
> PASS search for user header (list token)
> PASS search for user header (quoted string)
> PASS search for user header (atoms)
> PASS check saved query name
> PASS roundtrip saved query (database)
> PASS roundtrip saved query
> PASS unknown saved query
> PASS syntax error in saved query
> PASS Saved Search by 'tag' and 'subject'
> PASS Saved Search: illegal nesting
> PASS Saved Search: list as prefix
> PASS Saved Search: bad parameter syntax
> PASS Saved Search: bad parameter syntax 2
> PASS Saved Search: bad parameter syntax 3
> PASS Saved Search: bad parameter syntax 4
> PASS Saved Search: macro without body
> PASS macro in query
> PASS zero argument macro
> PASS undefined argument
> PASS Single argument macro
> PASS Single argument macro, list argument
> PASS two argument macro
> PASS nested macros (shadowing)
> PASS nested macros (no dynamic scope)
> PASS combine macro and user defined header
> PASS combine macro and user defined header
>
> T090-search-output: Testing various settings for "notmuch search --output="
> PASS --output=threads
> PASS --output=threads --format=json
> PASS --output=messages
> PASS --output=messages --duplicate=1
> PASS --output=messages --duplicate=2
> PASS --output=messages --duplicate=3
> PASS --output=messages --format=json
> PASS --output=messages --format=json --duplicate=1
> PASS --output=messages --format=json --duplicate=2
> PASS --output=messages --format=json --duplicate=3
> PASS --output=files
> PASS --output=files --duplicate=1
> PASS --output=files --format=json
> PASS --output=files --format=json --duplicate=2
> PASS --output=tags
> PASS --output=tags --format=json
> PASS sanitize output for quoted-printable line-breaks in author and subject
> PASS search for non-existent message prints nothing
> PASS search --format=json for non-existent message prints proper empty json
>
> T095-address: Testing "notmuch address" in several variants
> PASS --output=sender
> PASS without --output
> PASS --output=sender --format=json
> PASS --output=recipients
> PASS --output=sender --output=recipients
> PASS --output=sender --output=count
> PASS --output=recipients --output=address
> PASS --output=sender --output=address --output=count
> PASS --output=count --format=json
> PASS --deduplicate=no --sort=oldest-first --output=sender
> PASS --deduplicate=no --sort=newest-first --output=sender
> --output=recipients
> PASS --deduplicate=address --output=sender --output=recipients
> PASS --deduplicate=no --output=sender
> PASS --deduplicate=mailbox --output=sender --output=count
> PASS --deduplicate=address --output=sender --output=count
>
> T100-search-by-folder: Testing "notmuch search" by folder: and path: (with
> variations)
> PASS Single-world folder: specification (multiple results)
> PASS search by path: specification (multiple)
> PASS Top level folder
> PASS Two-word path to narrow results to one
> PASS Folder search with --output=files
> PASS Folder search with --output=files (trailing /)
> PASS After removing duplicate instance of matching path
> PASS Folder search with --output=files part #2
> PASS After removing duplicate instance of matching path part #2
> PASS After rename, old path returns nothing
> PASS After rename, new path returns result
> PASS folder: search
> PASS top level folder: search
> PASS path: search
> PASS path: search (trailing /)
> PASS top level path: search
> PASS recursive path: search
>
> T110-search-position-overlap-bug: Testing that notmuch does not overlap term
> positions
> PASS Search for a@b.c matches
> PASS Search for x@y.z matches
> PASS Search for a@y.c must not match
>
> T120-search-insufficient-from-quoting: Testing messages with unquoted . in
> name
> PASS Search by first name
> PASS Search by last name:
> PASS Search by address:
> PASS Search for all messages:
>
> T130-search-limiting: Testing "notmuch search" --offset and --limit parameters
> PASS messages: limit does the right thing
> PASS messages: concatenation of limited searches
> PASS messages: limit larger than result set
> PASS messages: limit = 0
> PASS messages: offset does the right thing
> PASS messages: offset = 0
> PASS messages: negative offset
> PASS messages: negative offset
> PASS messages: negative offset combined with limit
> PASS messages: negative offset combined with equal limit
> PASS messages: negative offset combined with large limit
> PASS messages: negative offset larger then results
> PASS threads: limit does the right thing
> PASS threads: concatenation of limited searches
> PASS threads: limit larger than result set
> PASS threads: limit = 0
> PASS threads: offset does the right thing
> PASS threads: offset = 0
> PASS threads: negative offset
> PASS threads: negative offset
> PASS threads: negative offset combined with limit
> PASS threads: negative offset combined with equal limit
> PASS threads: negative offset combined with large limit
> PASS threads: negative offset larger then results
>
> T140-excludes: Testing "notmuch search, count and show" with excludes in
> several variations
> PASS Search, exclude "deleted" messages from search
> PASS Search, exclude "deleted" messages; alternate config file
> PASS Search, exclude "deleted" messages from message search
> PASS Search, exclude "deleted" messages from message search --exclude=false
> PASS Search, exclude "deleted" messages from message search (non-existent
> exclude-tag)
> PASS Search, exclude "deleted" messages from search, overridden
> PASS Search, exclude "deleted" messages from threads
> PASS Search, don't exclude "deleted" messages when --exclude=flag specified
> PASS Search, don't exclude "deleted" messages from search if not configured
> PASS Search, default exclusion (thread summary)
> PASS Search, default exclusion (messages)
> PASS Search, exclude=true (thread summary)
> PASS Search, exclude=true (messages)
> PASS Search, exclude=false (thread summary)
> PASS Search, exclude=false (messages)
> PASS Search, exclude=flag (thread summary)
> PASS Search, exclude=flag (messages)
> PASS Search, exclude=all (thread summary)
> PASS Search, exclude=all (messages)
> PASS Search, default exclusion: tag in query (thread summary)
> PASS Search, default exclusion: tag in query (messages)
> PASS Search, exclude=true: tag in query (thread summary)
> PASS Search, exclude=true: tag in query (messages)
> PASS Search, exclude=false: tag in query (thread summary)
> PASS Search, exclude=false: tag in query (messages)
> PASS Search, exclude=flag: tag in query (thread summary)
> PASS Search, exclude=flag: tag in query (messages)
> PASS Search, exclude=all: tag in query (thread summary)
> PASS Search, exclude=all: tag in query (messages)
> PASS Count, default exclusion (messages)
> PASS Count, default exclusion (threads)
> PASS Count, exclude=true (messages)
> PASS Count, exclude=true (threads)
> PASS Count, exclude=false (messages)
> PASS Count, exclude=false (threads)
> PASS Count, default exclusion: tag in query (messages)
> PASS Count, default exclusion: tag in query (threads)
> PASS Count, default exclusion, batch
> PASS Count, exclude=true: tag in query (messages)
> PASS Count, exclude=true: tag in query (threads)
> PASS Count, exclude=false: tag in query (messages)
> PASS Count, exclude=false: tag in query (threads)
> PASS Show, default exclusion
> PASS Show, default exclusion (entire-thread)
> PASS Show, exclude=true
> PASS Show, exclude=true (entire-thread)
> PASS Show, exclude=false
> PASS Show, exclude=false (entire-thread)
>
> T150-tagging: Testing "notmuch tag"
> PASS Adding tags
> PASS Removing tags
> PASS No tag operations
> PASS No query
> PASS Redundant tagging
> PASS Remove all
> PASS Remove all with batch
> PASS Remove all with a no-op
> PASS Special characters in tags
> PASS Tagging order
> PASS --batch
> PASS --input
> PASS --batch --input
> PASS --batch --input --remove-all
> PASS --batch, dependence on previous line
> PASS --batch, blank lines and comments
> PASS --batch: checking error messages
> PASS --batch: tags with quotes
> PASS --batch: tags with punctuation and space
> PASS --batch: unicode tags
> PASS --batch: only space and % needs to be encoded.
> PASS --batch: unicode message-ids
> PASS Empty tag names
> PASS Tag name beginning with -
> PASS Xapian exception: read only files
> PASS sexpr query: (and "wonderful" "wizard")
> PASS sexpr query: (or "php" "wizard")
> PASS sexpr query: wizard
> PASS sexpr query: Wizard
> PASS sexpr query: (attachment notmuch-help.patch)
> PASS sexpr query: (mimetype text/html)
> PASS --batch --query=sexp
>
> T160-json: Testing --format=json output
> PASS Show message: json
> PASS Show message: json --body=true
> PASS Show message: json --body=false
> PASS Search message: json
> PASS Show message: json, utf-8
> PASS Show message: json, inline attachment filename
> PASS Search message: json, utf-8
> PASS Search message: json, 64-bit timestamp
> PASS Format version: too low
> PASS Format version: too high
> PASS Show message: multiple filenames
> PASS Show message: multiple filenames, format version 2
> PASS show extra headers
>
> T170-sexp: Testing --format=sexp output
> PASS Show message: sexp
> PASS Show message: sexp --body=true
> PASS Show message: sexp --body=false
> PASS Search message: sexp
> PASS Show message: sexp, utf-8
> PASS Search message: sexp, utf-8
> PASS Show message: sexp, inline attachment filename
> PASS show extra headers
>
> T180-text: Testing --format=text output
> PASS Show message: text
> PASS Search message: text
> PASS Show message: text, utf-8
> PASS Search message: text, utf-8
> PASS Search message tags: text0
> PASS Compare text vs. text0 for threads
> PASS Compare text vs. text0 for messages
> PASS Compare text vs. text0 for files
> PASS Compare text vs. text0 for tags
>
> T190-multipart: Testing output of multipart message
> PASS --format=text --part=0, full message
> PASS --format=text --part=0 --body=false, message header
> PASS --format=text --part=1, message body
> PASS --format=text --part=2, multipart/mixed
> PASS --format=text --part=3, rfc822 part
> PASS --format=text --part=4, rfc822's multipart
> PASS --format=text --part=5, rfc822's html part
> PASS --format=text --include-html --part=5, rfc822's html part
> PASS --format=text --part=6, rfc822's text part
> PASS --format=text --part=7, inline attachment
> PASS --format=text --part=8, plain text part
> PASS --format=text --part=9, pgp signature (unverified)
> PASS --format=text --part=8, no part, expect error
> PASS --format=json --part=0, full message
> PASS --format=json --part=1, message body
> PASS --format=json --part=2, multipart/mixed
> PASS --format=json --part=3, rfc822 part
> PASS --format=json --part=4, rfc822's multipart/alternative
> PASS --format=json --part=5, rfc822's html part
> PASS --format=json --part=6, rfc822's text part
> PASS --format=json --part=7, inline attachment
> PASS --format=json --part=8, plain text part
> PASS --format=json --part=9, pgp signature (unverified)
> PASS --format=json --part=10, no part, expect error
> PASS --format=raw
> PASS --format=raw --part=0, full message
> PASS --format=raw --part=1, message body
> PASS --format=raw --part=2, multipart/mixed
> PASS --format=raw --part=3, rfc822 part
> PASS --format=raw --part=4, rfc822's multipart
> PASS --format=raw --part=5, rfc822's html part
> PASS --format=raw --part=6, rfc822's text part
> PASS --format=raw --part=7, inline attachment
> PASS --format=raw --part=8, plain text part
> PASS --format=raw --part=9, pgp signature (unverified)
> PASS --format=raw --part=10, no part, expect error
> PASS --format=mbox
> PASS --format=mbox --part=1, incompatible, expect error
> PASS 'notmuch reply' to a multipart message
> PASS 'notmuch reply' to a multipart message with json format
> PASS 'notmuch show --part' does not corrupt a part with CRLF pair
> PASS html parts excluded by default
> PASS html parts included
> PASS indexes mime-type #1
> PASS indexes mime-type #2
> PASS indexes mime-type #3
> PASS case of Content-Disposition doesn't matter for indexing
>
> T200-thread-naming: Testing naming of threads with changing subject
> PASS Initial thread name (oldest-first search)
> PASS Initial thread name (newest-first search)
> PASS Changed thread name (oldest-first search)
> PASS Changed thread name (newest-first search)
> PASS Ignore added reply prefix (Re:)
> PASS Ignore added reply prefix (Aw:)
> PASS Ignore added reply prefix (Vs:)
> PASS Ignore added reply prefix (Sv:)
> PASS Use empty subjects if necessary.
> PASS Avoid empty subjects if possible (newest-first).
> PASS Avoid empty subjects if possible (oldest-first).
> PASS Test order of messages in "notmuch show"
>
> T205-author-naming: Testing naming of authors with unusual addresses
> PASS Add author with empty quoted real name
>
> T210-raw: Testing notmuch show --format=raw
> PASS Attempt to show multiple raw messages
> PASS Show a raw message
> PASS Show another raw message
> PASS content, message of size 0001024
> PASS return value, message of size 0001024
> PASS content, message of size 0002048
> PASS return value, message of size 0002048
> PASS content, message of size 0004096
> PASS return value, message of size 0004096
> PASS content, message of size 0008192
> PASS return value, message of size 0008192
> PASS content, message of size 0016384
> PASS return value, message of size 0016384
> PASS content, message of size 0032768
> PASS return value, message of size 0032768
> PASS content, message of size 0065536
> PASS return value, message of size 0065536
> PASS content, message of size 0131072
> PASS return value, message of size 0131072
> PASS content, message of size 0262144
> PASS return value, message of size 0262144
> PASS content, message of size 0524288
> PASS return value, message of size 0524288
> PASS content, message of size 1048576
> PASS return value, message of size 1048576
>
> T220-reply: Testing "notmuch reply" in several variations
> PASS Basic reply
> PASS Basic reply (query=sexp)
> PASS Multiple recipients
> PASS Reply with CC
> PASS Reply from alternate address
> PASS Reply from address in named group list
> PASS Support for Reply-To
> PASS Un-munging Reply-To
> PASS Un-munging Reply-To With Exact Match
> PASS Un-munging Reply-To With Raw addr-spec
> PASS Message with header of exactly 200 bytes
> PASS From guessing: Envelope-To
> PASS From guessing: X-Original-To
> PASS From guessing: Delivered-To
> PASS From guessing: multiple Delivered-To
> PASS Reply with RFC 2047-encoded headers
> PASS Reply with RFC 2047-encoded headers (JSON)
> PASS Reply to a message with multiple Cc headers
>
> T230-reply-to-sender: Testing "notmuch reply --reply-to=sender" in several
> variations
> PASS Basic reply-to-sender
> PASS From Us, Basic reply to message
> PASS Multiple recipients
> PASS From Us, Multiple TO recipients
> PASS Reply with CC
> PASS From Us, Reply with CC
> PASS From Us, Reply no TO but with CC
> PASS Reply from alternate address
> PASS Support for Reply-To
> PASS Support for Reply-To with multiple recipients
> PASS Un-munging Reply-To
> PASS Message with header of exactly 200 bytes
>
> T240-dump-restore: Testing "notmuch dump" and "notmuch restore"
> PASS dump header
> PASS Dumping all tags
> PASS Dumping all tags II
> PASS Clearing all tags
> PASS Clearing all tags
> PASS Restoring original tags
> PASS Restore with nothing to do
> PASS Accumulate with existing tags
> PASS Accumulate with no tags
> PASS Accumulate with new tags
> PASS Invalid restore invocation
> PASS dump --output=outfile
> PASS dump --output=outfile --
> PASS dump --gzip
> PASS dump --gzip --output=outfile
> PASS restoring gzipped stdin
> PASS restoring gzipped file
> PASS dump -- from:cworth
> PASS dump --query=sexp -- '(from cworth)'
> PASS dump --query=sexp --output=outfile '(from cworth)'
> PASS dump --output=outfile from:cworth
> PASS dump --output=outfile -- from:cworth
> PASS Check for a safe set of message-ids
> PASS format=batch-tag, dump sanity check.
> PASS format=batch-tag, missing newline
> PASS format=batch-tag, # round-trip
> PASS format=batch-tag, # blank lines and comments
> PASS format=batch-tag, # reverse-round-trip empty tag
> PASS restoring empty file is not an error
> PASS file of comments and blank lines is not an error
> PASS detect format=batch-tag with leading comments and blanks
> PASS detect format=sup with leading comments and blanks
> PASS format=batch-tag, round trip with strange tags
> PASS format=batch-tag, checking encoded output
> PASS restoring sane tags
> PASS format=batch-tag, restore=auto
> PASS format=sup, restore=auto
> PASS format=batch-tag, restore=default
> PASS format=sup, restore=default
> PASS restore: checking error messages
> PASS roundtripping random message-ids and tags
>
> T250-uuencode: Testing handling of uuencoded data
> PASS Ensure content before uu data is indexed
> PASS Ensure uu data is not indexed
> PASS Ensure content after uu data is indexed
>
> T260-thread-order: Testing threading when messages received out of order
> PASS Messages with one parent get linked in all delivery orders
> PASS Messages with all parents get linked in all delivery orders
>
> T270-author-order: Testing author reordering;
> PASS Adding parent message
> PASS Adding initial child message
> PASS Adding second child message
> PASS Searching when all three messages match
> PASS Searching when two messages match
> PASS Searching when only one message matches
> PASS Searching when only first message matches
> PASS Adding duplicate author
> PASS Searching when all four messages match
> PASS Adding non-monotonic child message
> PASS Searching non-monotonic messages (oldest-first)
> PASS Searching non-monotonic messages (newest-first)
>
> T280-from-guessing: Testing From line heuristics (with multiple configured
> addresses)
> PASS Magic from guessing (nothing to go on)
> PASS Magic from guessing (Envelope-to:)
> PASS Magic from guessing (X-Original-To:)
> PASS Magic from guessing (Received: .. for ..)
> PASS Magic from guessing (Received: domain)
> PASS Magic from guessing (multiple Received: headers)
> PASS Testing From line heuristics (with single configured address)
> PASS Magic from guessing (nothing to go on)
> PASS Magic from guessing (Envelope-to:)
> PASS Magic from guessing (X-Original-To:)
> PASS Magic from guessing (Received: .. for ..)
> PASS Magic from guessing (Received: domain)
>
> T290-long-id: Testing messages with ridiculously-long message IDs
> PASS Referencing long ID before adding
> PASS Adding message with long ID
> PASS Referencing long ID after adding
> PASS Ensure all messages were threaded together
>
> T300-encoding: Testing encoding issues
> PASS Message with text of unknown charset
> PASS Search for ISO-8859-2 encoded message
> PASS RFC 2047 encoded word with spaces
> PASS RFC 2047 encoded words back to back
> PASS RFC 2047 encoded words without space before or after
> PASS Mislabeled Windows-1252 encoding
>
> T310-emacs: Testing emacs interface
> PASS Syntax of emacs test library
> PASS Basic notmuch-hello view in emacs
> PASS Saved search with 0 results
> PASS No saved searches displayed (all with 0 results)
> PASS Basic notmuch-search view in emacs
> PASS Functions in search-result-format
> PASS Incremental parsing of search results
> PASS Navigation of notmuch-hello to search results
> PASS Basic notmuch-show view in emacs
> PASS Basic notmuch-show view in emacs default indentation
> PASS Basic notmuch-show view in emacs without indentation
> PASS Basic notmuch-show view in emacs with fourfold indentation
> PASS notmuch-show for message with invalid From
> PASS Navigation of notmuch-search to thread view
> PASS Add tag from search view
> PASS Remove tag from search view
> PASS Add tag (large query)
> PASS notmuch-show: add single tag to single message
> PASS notmuch-show: remove single tag from single message
> PASS notmuch-show: add multiple tags to single message
> PASS notmuch-show: remove multiple tags from single message
> PASS notmuch-show: before-tag-hook is run, variables are defined
> PASS notmuch-show: after-tag-hook is run, variables are defined
> PASS Message with .. in Message-Id:
> PASS Message with quote in Message-Id:
> PASS Sending a message via (fake) SMTP
> PASS Folding a long header when sending via (fake) SMTP
> PASS Verify that sent messages are saved/searchable (via FCC)
> PASS notmuch-fcc-dirs set to nil
> PASS notmuch-fcc-dirs set to a string
> PASS notmuch-fcc-dirs set to a list (with match)
> PASS notmuch-fcc-dirs set to a list (catch-all)
> PASS notmuch-fcc-dirs set to a list (no match)
> PASS Reply within emacs
> PASS Reply within emacs to a message with TAB in subject
> PASS Reply from alternate address within emacs
> PASS Reply with show.extra_headers set
> PASS Reply from address in named group list within emacs
> PASS Reply within emacs to a multipart/mixed message
> PASS Reply within emacs to a multipart/alternative message
> PASS Reply within emacs to an html-only message
> PASS Reply within emacs to message from self
> PASS Quote MML tags in reply
> PASS Save attachment from within emacs using notmuch-show-save-attachments
> PASS Save attachment from within emacs using notmuch-show-save-part
> PASS Save 8bit attachment from within emacs using
> notmuch-show-save-attachments
> PASS View raw message within emacs
> PASS Hiding/showing signature in notmuch-show view
> PASS Detection and hiding of top-post quoting of message
> PASS Hiding message in notmuch-show view
> PASS Hiding message with visible citation in notmuch-show view
> PASS notmuch-show: show message headers
> PASS notmuch-show: hide message headers
> PASS notmuch-show: hide message headers (w/
> notmuch-show-toggle-visibility-headers)
> PASS notmuch-show: collapse all messages in thread
> PASS notmuch-show: uncollapse all messages in thread
> PASS Stashing in notmuch-show
> PASS Stashing in notmuch-search
> PASS notmuch-show-advance-and-archive with invisible signature
> PASS Refresh show buffer
> PASS Refresh modified show buffer
> PASS Do not call notmuch for non-inlinable application/mpeg parts
> PASS Do not call notmuch for non-inlinable audio/mpeg parts
> PASS notmuch-hello-mode hook is called
> PASS notmuch-hello-mode hook is not called on updates
> PASS notmuch-hello-refresh hook is called
> PASS notmuch-hello-refresh hook is called on updates
> PASS Rendering HTML mail with images
> PASS Search handles subprocess error exit codes
> PASS Search handles subprocess warnings
> PASS Search thread tag operations are race-free
> PASS Search global tag operations are race-free
> PASS Term escaping
> PASS Sending a message calls the send message hooks
> PASS notmuch-search with nonexistent CWD
>
> T320-emacs-large-search-buffer: Testing Emacs with large search results buffer
> PASS Ensure that emacs doesn't drop results
>
> T330-emacs-subject-to-filename: Testing emacs: mail subject to filename
> PASS no patch sequence number
> PASS patch sequence number #1
> PASS patch sequence number #2
> PASS patch sequence number #3
> PASS patch sequence number #4
> PASS patch sequence number #5
> PASS patch sequence number #6
> PASS patch sequence number #7
> PASS filename #1
> PASS filename #2
> PASS filename #3
> PASS filename #4
> PASS filename #5
> PASS filename #6
> PASS filename #7
> PASS filename #8
> PASS filename #9
> PASS patch filename #1
> PASS patch filename #2
> PASS patch filename #3
> PASS patch filename #4
>
> T340-maildir-sync: Testing maildir synchronization
> PASS Adding 'S' flag to existing filename removes 'unread' tag
> PASS Adding message with 'S' flag prevents 'unread' tag
> PASS Adding message with 'S' w/o 'unread' in new.tags prevents 'unread' tag
> PASS Adding 'replied' tag adds 'R' flag to filename
> PASS notmuch show works with renamed file (without notmuch new)
> PASS notmuch reply works with renamed file (without notmuch new)
> PASS notmuch new detects no file rename after tag->flag synchronization
> PASS When read, message moved from new to cur
> PASS No rename should be detected by notmuch new
> PASS Adding non-maildir tags does not move message from new to cur
> PASS Message in cur lacking maildir info gets one on any tag change
> PASS Message in new with maildir info is moved to cur on any tag change
> PASS Removing 'S' flag from existing filename adds 'unread' tag
> PASS Removing info from filename leaves tags unchanged
> PASS Can remove unread tag from message in non-maildir directory
> PASS Message in non-maildir directory does not get renamed
> PASS notmuch dump/restore re-synchronizes maildir tags with flags
> PASS Adding flags to duplicate message tags the mail
> PASS Adding duplicate message without flags does not remove tags
> PASS Tag changes modify flags of multiple files
> PASS Synchronizing tag changes preserves unsupported maildir flags
> PASS A file with non-compliant maildir info will not be renamed
> PASS Files in new/ get default synchronized tags
> PASS draft is valid in new.tags
> PASS flagged is valid in new.tags
> PASS passed is valid in new.tags
> PASS replied is valid in new.tags
>
> T350-crypto: Testing PGP/MIME signature verification and decryption
> PASS emacs delivery of signed message via fcc
> PASS emacs delivery of signed message via fcc and smtp
> PASS signed part content-type indexing
> PASS signature verification
> PASS detection of modified signed contents
> PASS corrupted pgp/mime signature
> PASS signature verification without full user ID validity
> PASS signature verification with signer key unavailable
> PASS emacs delivery of encrypted message with attachment
> PASS encrypted part content-type indexing
> PASS decryption, --format=text
> PASS decryption, --format=json
> PASS decryption, --format=json, --part=4
> PASS decrypt attachment (--part=5 --format=raw)
> PASS decryption failure with missing key
> PASS emacs delivery of encrypted + signed message
> PASS decryption + signature verification
> PASS reply to encrypted message
> PASS Reply within emacs to an encrypted message
> PASS signature verification with revoked key
>
> T351-pgpmime-mangling: Testing PGP/MIME message mangling
> PASS show 'Mixed-Up' mangled PGP/MIME message correctly
> PASS reply to 'Mixed-Up' mangled PGP/MIME message correctly
> PASS repaired 'Mixed-up' messages can be found with index.repaired=mixedup
> PASS index cleartext of 'Mixed-Up' mangled PGP/MIME message
> PASS search cleartext of 'Mixed-Up' mangled PGP/MIME message
>
> T355-smime: Testing S/MIME signature verification and decryption
> PASS emacs delivery of S/MIME signed message
> PASS emacs delivery of S/MIME encrypted + signed message
> PASS Signature verification (openssl)
> FAIL signature verification (notmuch CLI)
> --- T355-smime.4.expected 2022-03-26 19:30:20.394780996 +0000
> +++ T355-smime.4.output 2022-03-26 19:30:20.394780996 +0000
> @@ -24,7 +24,7 @@
> "sigstatus": [
> {
> "created": 946728000,
> - "email":
> "<test_su...@notmuchmail.org>",
> + "email": "test_su...@notmuchmail.org",
> "expires": 424242424,
> "fingerprint":
> "616F46CD73834C63847756AF0DFB64A6E0972A47",
> "status": "good",
> @@ -38,7 +38,7 @@
> "status": [
> {
> "created": 946728000,
> - "email":
> "<test_su...@notmuchmail.org>",
> + "email": "test_su...@notmuchmail.org",
> "expires": 424242424,
> "fingerprint":
> "616F46CD73834C63847756AF0DFB64A6E0972A47",
> "status": "good",
> PASS Decryption and signature verification (openssl)
> PASS Decryption (notmuch CLI)
> PASS Cryptographic message status (encrypted+signed)
> PASS encrypted+signed message is known to be encrypted, but signature is
> unknown
> PASS Encrypted body is not indexed
> PASS Reindex cleartext
> PASS signature is now known
> PASS Encrypted body is indexed
> PASS index PKCS#7 SignedData message
> PASS do not index embedded certificates from PKCS#7 SignedData
> PASS know the MIME type of the embedded part in PKCS#7 SignedData
> PASS PKCS#7 SignedData message is tagged 'signed'
> PASS show contents of PKCS#7 SignedData message
> PASS reply to PKCS#7 SignedData message with proper quoting and attribution
> PASS show PKCS#7 SignedData outputs valid JSON
> PASS Verify signature on PKCS#7 SignedData message
> PASS Verify signature on PKCS#7 SignedData message signer User ID
>
> T356-protected-headers: Testing Message decryption with protected headers
> PASS verify protected header is not visible without decryption
> PASS verify protected header is visible with decryption
> PASS when no external header is present, show masked subject as null
> PASS misplaced protected headers should not be made visible during
> decryption
> PASS verify double-wrapped phony protected header is not visible when
> inner decryption fails
> PASS cleartext phony protected headers should not be made visible when
> decryption fails
> PASS wrapped protected headers should not be made visible during decryption
> PASS internal headers without protected-header attribute should be skipped
> PASS verify nested message/rfc822 protected header is visible
> PASS show cryptographic envelope on signed mail
> PASS verify signed protected header
> PASS protected subject does not leak by default in replies
> PASS protected subject is not indexed by default
> PASS reindex message with protected header
> PASS protected subject is indexed when cleartext is indexed
> PASS indexed protected subject is visible in search
> PASS indexed protected subject is not visible in reply header
> PASS verify correct protected header when submessage exists
> PASS verify protected header is both signed and encrypted
> PASS verify protected header is signed even when not masked
> PASS reindex everything, ensure headers are as expected
> PASS when rendering protected headers, avoid rendering legacy-display part
> PASS when replying, avoid rendering legacy-display part
> PASS do not treat legacy-display part as body when indexing
> PASS identify message that had a legacy display part skipped during
> indexing
> PASS verify signed PKCS#7 subject (multipart-signed)
> PASS verify signed PKCS#7 subject (multipart-signed) signer User ID
> PASS verify signed PKCS#7 subject (onepart-signed)
> PASS verify signed PKCS#7 subject (onepart-signed) signer User ID
> PASS confirm signed and encrypted PKCS#7 subject (sign+enc)
> PASS confirm signed and encrypted PKCS#7 subject (sign+enc) signer User ID
> PASS confirm signed and encrypted PKCS#7 subject (sign+enc+legacy-disp)
> PASS confirm signed and encrypted PKCS#7 subject (sign+enc+legacy-disp)
> signer User ID
> PASS confirm encryption-protected PKCS#7 subject (enc+legacy-disp)
>
> T357-index-decryption: Testing indexing decrypted mail
> PASS emacs delivery of encrypted message
> PASS search for unindexed cleartext
> PASS emacs delivery of encrypted message
> PASS emacs delivery of encrypted message, indexed cleartext
> PASS emacs search by property for one message
> PASS show the message body of the encrypted message
> PASS message should go away after deletion
> PASS message cleartext not present after insert
> PASS stash decryption during show
> PASS search should now find the contents
> PASS message cleartext is present after reinserting with --decrypt=true
> PASS delete all copies of the message
> PASS message cleartext is present with insert --decrypt=true
> PASS tagging all messages
> PASS verify that tags have not changed
> PASS reindex old messages
> PASS reindexed encrypted message, including cleartext
> PASS emacs search by property for both messages
> PASS reindex in auto mode
> PASS reindexed encrypted messages, should not have changed
> PASS reindex without cleartext
> PASS reindexed encrypted messages, without cleartext
> PASS reindex using only session keys
> PASS reindexed encrypted messages, decrypting only with session keys
> PASS emacs search by property with both messages unindexed
> PASS verify that tags remain without cleartext
> PASS index cleartext without keeping session keys
> PASS Ensure that the indexed terms are present
> PASS show one of the messages with --decrypt=true
> PASS Ensure that we cannot show the message with --decrypt=auto
> PASS indexing message fails when secret key not available
> PASS cannot find cleartext index
> PASS cleartext index recovery on reindexing with stashed session keys
> PASS notmuch reply should show cleartext if session key is present
> PASS notmuch show should show cleartext if session key is present
> PASS notmuch show should show nothing if decryption is explicitly
> disallowed
> PASS purging stashed session keys should lose access to the cleartext
> PASS and cleartext should be unrecoverable now that there are no stashed
> session keys
> PASS verify signature without a session key stashed when --decrypt=true
> PASS do not verify sig without a session key stashed if --decrypt=auto
> PASS verify signature when --decrypt=stash
> PASS verify signature with stashed session key
>
> T358-emacs-protected-headers: Testing protected headers in emacs interface
> PASS notmuch-search should show not unindexed protected subject header in
> emacs
> PASS notmuch-show should not show unindexed protected subject header in
> emacs when nm-c-process-mime is nil
> PASS notmuch-show should show protected subject header in emacs
> PASS Reply within emacs to a message with protected headers, not leaking
> subject
> PASS defaulting to indexing cleartext
> PASS try reindexing protected header message
> PASS notmuch-search should show indexed protected subject header in emacs
> PASS don't leak protected subject during reply, even if indexed
>
> T360-symbol-hiding: Testing exception symbol hiding
> PASS running test
> PASS checking output
> PASS comparing existing to exported symbols
>
> T370-search-folder-coherence: Testing folder tags removed and added through
> file renames remain consistent
> PASS No new messages
> PASS Single new message
> PASS Add second folder for same message
> PASS Multiple files for same message
> PASS Test matches folder:spam
> PASS Remove folder:spam copy of email
> PASS No mails match the folder:spam search
>
> T380-atomicity: Testing atomicity
> PASS "notmuch new" is idempotent under arbitrary aborts
> PASS detected 20>10 abort points
>
> T385-transactions: Testing transactions
> PASS initial new
> PASS Some changes saved with open transaction
>
> T390-python: Testing python bindings
> PASS compare thread ids
> PASS compare message ids
> PASS get non-existent file
> PASS get revision
> PASS output of count matches test code
> PASS Add ISO-8859-2 encoded message, call get_message_parts
> PASS set and get config values
> PASS get_configs with no match returns empty generator
> PASS get_configs with no arguments returns all pairs
> PASS get_configs prefix is used to match keys
> PASS set_config with no value will unset config entries
> PASS index message with decryption
>
> T391-python-cffi: Testing python bindings (pytest)
> PASS python cffi tests (NOTMUCH_CONFIG set)
> PASS python cffi tests (NOTMUCH_CONFIG unset)
>
> T392-python-cffi-notmuch: Testing python bindings (notmuch test suite)
> PASS recursive traversal of replies (no crash)
> PASS recursive traversal of replies (output)
>
> T395-ruby: Testing ruby bindings
> PASS compare thread ids
> PASS compare message ids
> PASS get non-existent file
> PASS count messages
> PASS count threads
> PASS get all tags
> PASS omit excluded all
> PASS check sort argument
> PASS check exclude_tags argument
>
> T400-hooks: Testing hooks
> PASS pre-new is run [traditional]
> PASS post-new is run [traditional]
> PASS post-insert hook is run [traditional]
> PASS pre-new is run before post-new [traditional]
> PASS pre-new non-zero exit status (hook status) [traditional]
> PASS pre-new non-zero exit status (notmuch status) [traditional]
> PASS pre-new non-zero exit status aborts new [traditional]
> PASS post-new non-zero exit status (hook status) [traditional]
> PASS post-new non-zero exit status (notmuch status) [traditional]
> PASS post-insert hook does not affect insert status [traditional]
> PASS hook without executable permissions [traditional]
> PASS hook execution failure [traditional]
> PASS post-new with write access [traditional]
> PASS pre-new with write access [traditional]
> PASS add message in pre-new [traditional]
> PASS pre-new is run [profile]
> PASS post-new is run [profile]
> PASS post-insert hook is run [profile]
> PASS pre-new is run before post-new [profile]
> PASS pre-new non-zero exit status (hook status) [profile]
> PASS pre-new non-zero exit status (notmuch status) [profile]
> PASS pre-new non-zero exit status aborts new [profile]
> PASS post-new non-zero exit status (hook status) [profile]
> PASS post-new non-zero exit status (notmuch status) [profile]
> PASS post-insert hook does not affect insert status [profile]
> PASS hook without executable permissions [profile]
> PASS hook execution failure [profile]
> PASS post-new with write access [profile]
> PASS pre-new with write access [profile]
> PASS add message in pre-new [profile]
> PASS pre-new is run [explicit]
> PASS post-new is run [explicit]
> PASS post-insert hook is run [explicit]
> PASS pre-new is run before post-new [explicit]
> PASS pre-new non-zero exit status (hook status) [explicit]
> PASS pre-new non-zero exit status (notmuch status) [explicit]
> PASS pre-new non-zero exit status aborts new [explicit]
> PASS post-new non-zero exit status (hook status) [explicit]
> PASS post-new non-zero exit status (notmuch status) [explicit]
> PASS post-insert hook does not affect insert status [explicit]
> PASS hook without executable permissions [explicit]
> PASS hook execution failure [explicit]
> PASS post-new with write access [explicit]
> PASS pre-new with write access [explicit]
> PASS add message in pre-new [explicit]
> PASS pre-new is run [relative]
> PASS post-new is run [relative]
> PASS post-insert hook is run [relative]
> PASS pre-new is run before post-new [relative]
> PASS pre-new non-zero exit status (hook status) [relative]
> PASS pre-new non-zero exit status (notmuch status) [relative]
> PASS pre-new non-zero exit status aborts new [relative]
> PASS post-new non-zero exit status (hook status) [relative]
> PASS post-new non-zero exit status (notmuch status) [relative]
> PASS post-insert hook does not affect insert status [relative]
> PASS hook without executable permissions [relative]
> PASS hook execution failure [relative]
> PASS post-new with write access [relative]
> PASS pre-new with write access [relative]
> PASS add message in pre-new [relative]
> PASS pre-new is run [XDG]
> PASS post-new is run [XDG]
> PASS post-insert hook is run [XDG]
> PASS pre-new is run before post-new [XDG]
> PASS pre-new non-zero exit status (hook status) [XDG]
> PASS pre-new non-zero exit status (notmuch status) [XDG]
> PASS pre-new non-zero exit status aborts new [XDG]
> PASS post-new non-zero exit status (hook status) [XDG]
> PASS post-new non-zero exit status (notmuch status) [XDG]
> PASS post-insert hook does not affect insert status [XDG]
> PASS hook without executable permissions [XDG]
> PASS hook execution failure [XDG]
> PASS post-new with write access [XDG]
> PASS pre-new with write access [XDG]
> PASS add message in pre-new [XDG]
> PASS pre-new is run [split]
> PASS post-new is run [split]
> PASS post-insert hook is run [split]
> PASS pre-new is run before post-new [split]
> PASS pre-new non-zero exit status (hook status) [split]
> PASS pre-new non-zero exit status (notmuch status) [split]
> PASS pre-new non-zero exit status aborts new [split]
> PASS post-new non-zero exit status (hook status) [split]
> PASS post-new non-zero exit status (notmuch status) [split]
> PASS post-insert hook does not affect insert status [split]
> PASS hook without executable permissions [split]
> PASS hook execution failure [split]
> PASS post-new with write access [split]
> PASS pre-new with write access [split]
> PASS add message in pre-new [split]
>
> T410-argument-parsing: Testing argument parsing
> PASS sanity check
> PASS sanity check zero values
> PASS space instead of = between parameter name and value
> PASS --boolean=true
> PASS --boolean=false
> PASS --no-boolean
> PASS --no-flag
> PASS test keyword arguments without value
> PASS test keyword arguments with non-default value separated by a space
> PASS test keyword arguments without value at the end
> PASS test keyword arguments without value but with = (should be an error)
>
> T420-emacs-test-functions: Testing emacs test function sanity
> PASS emacs test function sanity
>
> T430-emacs-address-cleaning: Testing emacs address cleaning
> PASS notmuch-test-address-clean part 1
> PASS notmuch-test-address-clean part 2
> PASS notmuch-test-address-clean part 3
>
> T440-emacs-hello: Testing emacs notmuch-hello view
> PASS User-defined section with inbox tag
> PASS User-defined section with empty, hidden entry
> PASS User-defined section, unread tag filtered out
> PASS User-defined section, different query for counts
> PASS Empty custom tags section
> PASS Empty custom queries section
> PASS Column alignment for tag/queries with long names
> PASS All tags show up
>
> T450-emacs-show: Testing emacs notmuch-show view
> PASS Hiding Original Message region at beginning of a message
> PASS Bare subject #1
> PASS Bare subject #2
> PASS Bare subject #3
> PASS don't process cryptographic MIME parts
> PASS process cryptographic MIME parts
> PASS process cryptographic MIME parts (w/
> notmuch-show-toggle-process-crypto)
> PASS notmuch-show: don't elide non-matching messages
> PASS notmuch-show: elide non-matching messages
> PASS notmuch-show: elide non-matching messages (w/
> notmuch-show-toggle-elide-non-matching)
> PASS notmuch-show: elide non-matching messages (w/ prefix arg to
> notmuch-show)
> PASS notmuch-show: disable indentation of thread content (w/
> notmuch-show-toggle-thread-indentation)
> PASS id buttonization
> PASS Show handles subprocess errors
> PASS text/enriched exploit mitigation
> PASS show decrypted message
> BROKEN show encrypted rfc822 message
> exit code 0, expected 1 fgrep "!!!" OUTPUT
> !!! Bodypart handler `notmuch-show-insert-part-*/*' threw an error:
> !!! Symbol’s value as variable is void: gnus-newsgroup-charset
> PASS show undecryptable message
> PASS show encrypted message when not processing crypto
> PASS notmuch-show with nonexistent CWD
>
> T455-emacs-charsets: Testing emacs notmuch-show charset handling
> PASS Text parts are decoded when rendering
> PASS 8bit text parts are decoded when rendering
> PASS HTML parts are decoded when rendering
> PASS Text parts are not decoded when saving
> PASS 8bit text parts are not decoded when saving
> PASS HTML parts are not decoded when saving
> PASS Binary parts are not decoded when saving
> PASS Text message are not decoded when viewing
> PASS 8bit text message are not decoded when viewing
>
> T460-emacs-tree: Testing emacs tree view interface
> PASS Basic notmuch-tree view in emacs
> PASS Refreshed notmuch-tree view in emacs
> PASS Tag message in notmuch tree view (display)
> PASS Tag message in notmuch tree view (database)
> PASS Untag message in notmuch tree view
> PASS Untag message in notmuch tree view (database)
> PASS Tag thread in notmuch tree view
> PASS Tag message in notmuch tree view (database)
> PASS Untag thread in notmuch tree view
> PASS Untag message in notmuch tree view (database)
> PASS Navigation of notmuch-hello to search results
> PASS Tree view of a single thread (from search)
> PASS Tree view of a single thread (from show)
> PASS Message window of tree view
> PASS Stash id
> PASS Move to next matching message
> PASS Move to next thread
> PASS Move to previous thread
> PASS Move to previous previous thread
> PASS Functions in tree-result-format
> PASS notmuch-tree with nonexistent CWD
>
> T465-emacs-unthreaded: Testing emacs unthreaded interface
> PASS large thread
> PASS message from large thread (status)
> PASS Functions in unthreaded-result-format
> PASS notmuch-unthreaded with nonexistent CWD
>
> T470-missing-headers: Testing messages with missing headers
> PASS Search: text
> PASS Search: json
> PASS Show: text
> PASS Show: json
>
> T480-hex-escaping: Testing hex encoding and decoding
> PASS round trip
> PASS punctuation
> PASS round trip newlines
> PASS round trip 8bit chars
> PASS round trip (in-place)
> PASS punctuation (in-place)
> PASS round trip newlines (in-place)
> PASS round trip 8bit chars (in-place)
>
> T490-parse-time-string: Testing date/time parser module
> PASS date(1) default format without TZ code
> PASS date(1) --rfc-2822 format
> PASS date(1) --rfc=3339=seconds format
> PASS Date parser tests
> PASS Second rounding tests
>
> T500-search-date: Testing date:since..until queries
> PASS Absolute date range
> PASS Absolute date range with 'same' operator
> PASS Absolute date field
> PASS Absolute time range with TZ
>
> T510-thread-replies: Testing test of proper handling of in-reply-to and
> references headers
> PASS Use References when In-Reply-To is broken
> PASS Prefer References to dodgy In-Reply-To
> PASS Use In-Reply-To when no References
> PASS Use last Reference when In-Reply-To is dodgy
> PASS Ignore garbage at the end of References
> PASS reply to ghost
> PASS reply to ghost (tree view)
> PASS reply to ghost (RT)
> PASS reply to ghost (RT/tree view)
> PASS trusting reply-to (tree view)
>
> T520-show: Testing "notmuch show"
> PASS exit code for show invalid query
> PASS notmuch show --sort=newest-first
> PASS notmuch show --sort=oldest-first
> PASS notmuch show --sort for single thread
> PASS sexpr query: (and "wonderful" "wizard")
> PASS sexpr query: (or "php" "wizard")
> PASS sexpr query: wizard
> PASS sexpr query: Wizard
> PASS sexpr query: (attachment notmuch-help.patch)
>
> T530-upgrade: Testing database upgrades
> PASS upgrade is triggered by missing 'multiple paths per message'
> PASS backup can be restored ['multiple paths per message']
> PASS upgrade is triggered by missing 'relative directory paths'
> PASS backup can be restored ['relative directory paths']
> PASS upgrade is triggered by missing 'exact folder:/path: search'
> PASS backup can be restored ['exact folder:/path: search']
> PASS upgrade is triggered by missing 'mail documents for missing messages'
> PASS backup can be restored ['mail documents for missing messages']
> PASS upgrade is triggered by missing 'modification tracking'
> PASS backup can be restored ['modification tracking']
> PASS upgrade not triggered by missing 'from/subject/message-ID in database'
> PASS upgrade not triggered by missing 'indexed MIME types'
> PASS upgrade not triggered by missing 'index body and headers separately'
> PASS upgrade with configured backup dir
> PASS upgrade with relative configured backup dir
>
> T550-db-features: Testing database version and feature compatibility
> PASS future database versions abort open
> PASS unknown 'rw' feature aborts read/write open
> PASS unknown 'rw' feature aborts read-only open
> PASS unknown 'w' feature aborts read/write open
> PASS unknown 'w' feature does not abort read-only open
>
> T560-lib-error: Testing error reporting for library
> PASS building database
> PASS Open null pointer
> PASS Open relative path
> PASS Create database in relative path
> PASS Open nonexistent database
> PASS create NULL path
> PASS Create database in nonexistent directory
> PASS Write to read-only database
> PASS Add non-existent file
> PASS compact, overwriting existing backup
> PASS Xapian exception finding message
> PASS Xapian exception getting tags
> PASS Xapian exception creating directory
> PASS Xapian exception searching messages
> PASS Xapian exception counting messages
>
> T562-lib-database: Testing notmuch_database_* API
> PASS building database
> PASS get status_string with closed db
> PASS get path with closed db
> PASS get version with closed db
> PASS re-close a closed db
> PASS destroy a closed db
> PASS destroy an open db
> PASS check a closed db for upgrade
> PASS upgrade a closed db
> PASS begin atomic section for a closed db
> PASS end atomic section for a closed db
> PASS get revision for a closed db
> PASS get directory for a closed db
> PASS index file with a closed db
> PASS index file (relative path)
> PASS index file (absolute path outside mail root)
> PASS remove message file with a closed db
> PASS find message by filename with a closed db
> PASS Handle getting tags from closed database
> PASS get config from closed database
> PASS set config in closed database
> PASS get indexopts from closed database
> PASS get decryption policy from closed database
> PASS set decryption policy with closed database
>
> T563-lib-directory: Testing notmuch_directory_* API
> PASS building database
> PASS get child directories for a closed db
> PASS get child filenames for a closed db
> PASS delete directory document for a closed db
> PASS get/set mtime of directory for a closed db
> PASS get/set mtime of directory for a closed db
>
> T564-lib-query: Testing notmuch_query_* API
> PASS building database
> PASS roundtrip query string with closed db
> PASS retrieve closed db from query
> PASS set omit_excluded on closed db
> PASS roundtrip sort on closed db
> PASS add tag_exclude on closed db
> PASS search threads on closed db
> PASS search messages on closed db
> PASS count messages on closed db
> PASS count threads on closed db
> PASS destroy query with closed db
>
> T566-lib-message: Testing API tests for notmuch_message_*
> PASS building database
> PASS Handle getting message-id from closed database
> PASS Handle getting thread-id from closed database
> PASS Handle getting header from closed database
> PASS Handle getting replies from closed database
> PASS Handle getting message filename from closed database
> PASS Handle getting all message filenames from closed database
> PASS iterate over all message filenames from closed database
> PASS Handle getting ghost flag from closed database
> PASS Handle getting date from closed database
> PASS Handle getting tags from closed database
> PASS Handle counting files from closed database
> PASS Handle adding tag with closed database
> PASS Handle removing tag with closed database
> PASS Handle read maildir flag with closed database
> PASS Handle checking maildir flag with closed db (new API)
> PASS Handle converting maildir flags to tags with closed db
> PASS Handle removing all tags with closed db
> PASS Handle freezing message with closed db
> PASS Handle thawing message with closed db
> PASS Handle destroying message with closed db
> PASS Handle retrieving closed db from message
> PASS Handle reindexing message with closed db
>
> T568-lib-thread: Testing API tests for notmuch_thread_*
> PASS building database
> PASS finding thread
> PASS get thread-id from closed database
> PASS get total messages with closed database
> PASS get total files with closed database
> PASS get top level messages with closed database
> PASS iterate over level messages with closed database
> PASS iterate over level messages with closed database
> PASS iterate over replies with closed database
> PASS iterate over all messages with closed database
> PASS get authors from closed database
> PASS get subject from closed database
> PASS oldest date from closed database
> PASS newest date from closed database
> PASS iterate tags from closed database
> PASS collect tags with closed database
> PASS destroy thread with closed database
>
> T570-revision-tracking: Testing database revision tracking
> PASS notmuch_database_get_revision
> PASS output of count matches test code
> PASS modification count increases
> PASS search succeeds with correct uuid
> PASS uuid works as global option
> PASS uuid works as global option II
> PASS search fails with incorrect uuid
> PASS show succeeds with correct uuid
> PASS show fails with incorrect uuid
> PASS tag succeeds with correct uuid
> PASS tag fails with incorrect uuid
> PASS lastmod:0.. matches everything
> PASS lastmod:1000000.. matches nothing
> PASS exclude one message using lastmod
>
> T580-thread-search: Testing test of searching by thread-id
> PASS Every message is found in exactly one thread
> PASS roundtripping message-ids via thread-ids
>
> T585-thread-subquery: Testing test of searching by using thread subqueries
> PASS Basic query that matches no messages
> PASS Same query against threads
> PASS Mix thread and non-threads query
> PASS Compound subquery
> PASS Syntax/quoting error in subquery
>
> T590-libconfig: Testing library config API
> PASS notmuch_database_{set,get}_config
> PASS notmuch_database_get_config_list: empty list
> PASS notmuch_database_get_config_list: closed db
> PASS notmuch_database_get_config_list: all pairs
> PASS notmuch_database_get_config_list: all pairs (closed db)
> PASS notmuch_database_get_config_list: one prefix
> PASS dump config
> PASS restore config
> PASS override config from file
> PASS NOTMUCH_CONFIG_HOOK_DIR: traditional
> PASS NOTMUCH_CONFIG_HOOK_DIR: xdg
> PASS notmuch_config_get_values
> PASS notmuch_config_get_values (ignore leading/trailing whitespace)
> PASS notmuch_config_get_values_string
> PASS notmuch_config_get_values (restart)
> PASS notmuch_config_get_values, trailing ;
> PASS get config by key
> PASS set config by key
> PASS load default values
> PASS override config from ${NOTMUCH_CONFIG}
> PASS override config from ${HOME}/.notmuch-config
> PASS override config from ${XDG_CONFIG_HOME}/notmuch
> PASS override config from ${XDG_CONFIG_HOME}/notmuch with profile
> PASS override config from ${HOME}/.notmuch-config.work (via args)
> PASS no config, fail to open database
> PASS open database from NOTMUCH_DATABASE
> PASS NOTMUCH_DATABASE overrides config
> PASS notmuch_database_get_config (ndlc)
> PASS notmuch_database_get_config_list: all pairs (ndlc)
> PASS notmuch_database_get_config_list: one prefix (ndlc)
> PASS list by keys (ndlc)
> PASS load default values (ndlc, nonexistent config)
> PASS override config from ${HOME}/.notmuch-config (ndlc)
> PASS notmuch_config_get_pairs: prefix (ndlc)
> PASS notmuch_config_get_pairs: all pairs (ndlc)
> PASS open: database set to null on missing config
> PASS open: database set to null on missing config (env)
> PASS create: database set to null on missing config
> PASS create: database set to null on missing config (env)
> PASS load_config: database set non-null on missing config
> PASS load_config: database non-null on missing config (env)
> PASS load_config: database set to NULL on fatal error
> PASS open: database parameter overrides implicit config
> PASS open/error: config=empty with no mail root in db
> PASS open/error: config=empty with no mail root in db (xdg)
>
> T592-thread-breakage: Testing thread breakage during reindexing
> PASS There should be no threads initially
> PASS There should be no ghosts initially
> PASS One message in: one thread
> PASS looking for 1 instance of 'apple'
> PASS looking for 0 instance of 'banana'
> PASS Expecting 0 ghosts(s)
> PASS Second message in the same thread: one thread
> PASS looking for 1 instance of 'apple'
> PASS looking for 1 instance of 'banana'
> PASS Expecting 0 ghosts(s)
> PASS First message removed: still only one thread
> PASS looking for 0 instance of 'apple'
> PASS looking for 1 instance of 'banana'
> PASS should be one ghost after first message removed
> PASS First message reappears: should return to the same thread
> PASS looking for 1 instance of 'apple'
> PASS looking for 1 instance of 'banana'
> PASS Expecting 0 ghosts(s)
> PASS Removing second message: still only one thread
> PASS looking for 1 instance of 'apple'
> PASS looking for 0 instance of 'banana'
> BROKEN No ghosts should remain after deletion of second message
> --- T592-thread-breakage.22.expected 2022-03-26 19:31:15.290835302
> +0000
> +++ T592-thread-breakage.22.output 2022-03-26 19:31:15.290835302
> +0000
> @@ -1 +1 @@
> -0
> +1
> PASS All messages gone: no threads
> PASS looking for 0 instance of 'apple'
> PASS looking for 0 instance of 'banana'
> PASS No ghosts should remain after full thread deletion
>
> T595-reopen: Testing library reopen API
> PASS notmuch_database_reopen (read=>write)
> PASS notmuch_database_reopen (read=>read)
> PASS notmuch_database_reopen (write=>read)
> PASS notmuch_database_reopen (write=>write)
>
> T600-named-queries: Testing named queries
> PASS error adding named query to DB before initialization
> PASS adding named query (database)
> PASS adding nested named query
> PASS retrieve named query
> PASS List all queries
> PASS dump named queries
> PASS dumping large queries
> PASS delete named queries
> PASS restore named queries
> PASS search named query
> PASS search named query with other terms
> PASS search nested named query
>
> T610-message-property: Testing message property API
> PASS notmuch_message_{add,get,remove}_property
> PASS notmuch_message_remove_all_properties
> PASS testing string map binary search (via message properties)
> PASS notmuch_message_get_properties: empty list
> PASS notmuch_message_properties: one value
> PASS notmuch_message_properties: multiple values
> PASS notmuch_message_properties: prefix
> PASS notmuch_message_properties: modify during iteration
> PASS dump message properties
> PASS dump _only_ message properties
> PASS restore missing message property (single line)
> PASS restore missing message property (full dump)
> PASS restore clear extra message property
> PASS test 'property:' queries: empty
> PASS test 'property:' queries: single message
> PASS msg.get_property (python)
> PASS msg.get_properties (python)
> PASS msg.get_properties (python, prefix)
> PASS msg.get_properties (python, exact)
>
> T620-lock: Testing locking
> PASS blocking open
>
> T630-emacs-draft: Testing Emacs Draft Handling
> PASS Saving a draft indexes it
> PASS Saving a draft tags previous draft as deleted
> PASS Saving a signed draft adds header
> PASS Refusing to save an encrypted draft
> PASS Resuming a signed draft
>
> T640-database-modified: Testing DatabaseModifiedError handling
> PASS catching DatabaseModifiedError in _notmuch_message_ensure_metadata
>
> T650-regexp-query: Testing regular expression searches
> PASS empty path:// search
> PASS empty folder:// search
> PASS unanchored folder:// specification
> PASS anchored folder:// search
> PASS unanchored path:// specification
> PASS anchored path:// search
> PASS null from: search
> PASS null subject: search
> PASS xapian wildcard search for from:
> PASS xapian wildcard search for subject:
> PASS quoted xapian keyword search for from:
> PASS quoted xapian keyword search for subject:
> PASS regexp from search, case sensitive
> PASS empty regexp or query
> PASS non-empty regexp and query
> PASS regexp from search, duplicate term search
> PASS long enough regexp matches only desired senders
> PASS shorter regexp matches one more sender
> PASS regexp subject search, non-ASCII
> PASS regexp subject search, punctuation
> PASS regexp subject search, no punctuation
> PASS combine regexp from and subject
> PASS regexp error reporting
> PASS empty mid search
> PASS non-empty mid regex search
> PASS combine regexp mid and subject
> PASS unanchored tag search
> PASS anchored tag search
>
> T660-bad-date: Testing parsing of bad dates
> PASS Bad dates translate to a date after the Unix epoch
>
> T670-duplicate-mid: Testing duplicate message ids
> PASS at most 1 thread-id per xapian document
> PASS search: first indexed subject preserved
> BROKEN First subject preserved in notmuch-show (json)
> --- T670-duplicate-mid.3.expected 2022-03-26 19:31:23.778843698
> +0000
> +++ T670-duplicate-mid.3.output 2022-03-26 19:31:23.778843698 +0000
> @@ -2,6 +2,7 @@
> [
> [
> {
> + "crypto": {},
> "date_relative": "2001-01-05",
> "excluded": false,
> "filename": [
> @@ -12,7 +13,7 @@
> "headers": {
> "Date": "GENERATED_DATE",
> "From": "Notmuch Test Suite
> <test_su...@notmuchmail.org>",
> - "Subject": "message 1",
> + "Subject": "message 0",
> "To": "Notmuch Test Suite
> <test_su...@notmuchmail.org>"
> },
> "id": "XXXXX",
> PASS Search for second subject
> BROKEN Regexp search for second subject
> --- T670-duplicate-mid.5.EXPECTED 2022-03-26 19:31:23.802843722
> +0000
> +++ T670-duplicate-mid.5.OUTPUT 2022-03-26 19:31:23.806843726 +0000
> @@ -1,3 +0,0 @@
> -MAIL_DIR/copy0
> -MAIL_DIR/copy1
> -MAIL_DIR/copy2
> PASS search for body in duplicate file
> PASS reindex drops terms in duplicate file
> PASS reindex choses subject from first filename
> PASS Deleted first duplicate file does not stop notmuch show from working
>
> T680-html-indexing: Testing indexing of html parts
> PASS embedded images should not be indexed
> PASS ignore > in attribute text
> PASS non tag text should be indexed
>
> T690-command-line-args: Testing command line arguments
> PASS bad option to show
> PASS string option with space
> PASS string option with =
> PASS string option with :
> PASS single keyword option with space
> PASS single keyword option with =
> PASS single keyword option with :
> PASS multiple keyword options with space
> PASS multiple keyword options with =
> PASS mixed space and = delimiters
> PASS mixed space and : delimiters
> PASS show --entire-thread
> PASS show --exclude
>
> T700-reindex: Testing reindexing messages
> PASS reindex all messages: ()
> PASS reindex all messages: (not)
> PASS reindex all messages: (and)
> PASS reindex all messages: (or ())
> PASS reindex all messages: (or (not))
> PASS reindex all messages: (or (and))
> PASS reindex all messages: (or (and) (or) (not (and)))
> PASS reindex preserves threads
> PASS reindex after removing duplicate file preserves threads
> PASS reindex preserves message-ids
> PASS reindex preserves tags
> PASS reindex preserves tags with special prefixes
> PASS reindex moves a message between threads
> PASS reindex detects removal of all files
> PASS reindex detects removal of all files
> PASS reindex preserves properties
> PASS reindex of lkml corpus preserves threads
> PASS reindex after removing corpus
>
> T710-message-id: Testing message id parsing
> PASS good message ids
> PASS leading and trailing space is OK
> PASS <> delimiters are required
> PASS embedded whitespace is forbidden
> PASS folded real life bad In-Reply-To values
>
> T720-emacs-attachment-warnings: Testing emacs attachment warnings
> PASS notmuch-test-attachment-warning part 1
>
> T720-lib-lifetime: Testing Lifetime constraints for library
> PASS building database
> PASS Message outlives parent Messages from replies
>
> T730-emacs-forwarding: Testing emacs forwarding
> PASS Forward setting the correct references header
> PASS Forwarding adding the forwarded tag
>
> T740-body: Testing search body
> PASS search with body: prefix
> PASS search without body: prefix
> PASS negated body: prefix
> PASS search unprefixed for prefixed term
> PASS search with body: prefix for term only in subject
>
> T750-gzip: Testing support for gzipped messages
> PASS Single new gzipped message
> PASS Single new gzipped message (full-scan)
> PASS Multiple new messages, one gzipped
> PASS Multiple new messages, one gzipped (full-scan)
> PASS Renamed (gzipped) message
> PASS notmuch search with partially gzipped mail store
> PASS notmuch search --output=files with partially gzipped mail store
> PASS show un-gzipped message
> PASS show un-gzipped message (format mbox)
> PASS show un-gzipped message (format raw)
> PASS show gzipped message
> PASS show gzipped message (mbox)
> PASS show gzipped message (raw)
> PASS new doesn't run out of file descriptors with many gzipped files
>
> T750-user-header: Testing indexing user specified headers
> PASS adding illegal prefix name, bad utf8
> PASS adding illegal prefix name, reserved for notmuch
> PASS adding illegal prefix name, non-word character.
> PASS adding empty prefix name.
> PASS adding user header
> PASS adding existing user header
> PASS retrieve user header
> PASS reindex after adding header preserves threads
> PASS List all user headers
> PASS parse user prefix
> PASS parse user prefix, stemmed
> PASS parse user prefix, phrase
> PASS index user header
> PASS index user header, config from file
>
> T800-asan: Testing run code with ASAN enabled against the library
> PASS open and destroy
>
> Notmuch test suite complete.
> 1835/1844 tests passed.
> 8 broken tests failed as expected.
> 1 test failed.
> ERROR: some tests failed; first failed returned error code 1
> make[2]: *** [test/Makefile.local:75: test] Error 1
> make[2]: Leaving directory '/<<PKGBUILDDIR>>'
> dh_auto_test: error: make -j8 test VERBOSE=1 V=1 returned exit code 2
The full build log is available from:
http://qa-logs.debian.net/2022/03/26/notmuch_0.35-1_unstable.log
A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!
If you reassign this bug to another package, please marking it as 'affects'-ing
this package. See https://www.debian.org/Bugs/server-control#affects
If you fail to reproduce this, please provide a build log and diff it with mine
so that we can identify if something relevant changed in the meantime.
--- End Message ---