[PATCH v4 00/13] boolean folder: and path: searches
Jani Nikula
jani at nikula.org
Sun Mar 9 14:40:21 PDT 2014
This is v4 of id:1394313585-28422-1-git-send-email-david at tethera.net.
Changes since v3, mostly addressing Austin's review and comments on IRC:
* Removed the extra corpus for folder tests. Instead, arranged the
existing corpus into more folders. (Patch 01.)
* Changed the folder/path tests to reflect the above, and incorporated
them into existing folder tests instead of adding a new one. (Patch
07.)
* Added a new patch to do notmuch_search_files_sanitize. (Patch 02.)
* Folded test updates to folder: update to make tests pass at every
commit. (Patch 06.)
* Fixed indent fails and added comment about XFOLDER: prefix,
spotted/suggested by Austin. (Patch 06.)
* Used Austin's man page suggestion verbatim, but this may have to be
redone if David's documentation changes get merged first. (Patch 09.)
* Fixed a stray make dependency. (Patch 13.)
* Notably *no* functional code changes.
Finally, take heed of David's warning id:874n37a017.fsf at zancas.localnet.
BR,
Jani.
David Bremner (2):
test: commit folders-v1.tar.xz checksum, ignore actual databases
test: add machinery to download and verify databases
Jani Nikula (11):
test: rearrange the test corpus into subfolders
test: add notmuch_search_files_sanitize and use it
lib: refactor folder term update after filename removal
lib: add support for path: prefix searches
test: make insert test use the path: prefix
lib: make folder: prefix literal
test: add tests for the new boolean folder: and path: prefixes
test: add database upgrade test from format version 1 to 2
man: update man pages for folder: and path: search terms
man: try to clarify the folder: and path: vs. --output=files confusion
devel: add script to generate test databases
Makefile | 3 +-
devel/gen-testdb.sh | 131 ++++++++++++++
lib/database.cc | 51 +++++-
lib/message.cc | 249 ++++++++++++++++++---------
lib/notmuch-private.h | 3 +
man/man1/notmuch-search.1 | 10 +-
man/man7/notmuch-search-terms.7 | 41 ++++-
test/README | 8 +
test/T070-insert.sh | 10 +-
test/T090-search-output.sh | 176 +++++++++----------
test/T100-search-by-folder.sh | 117 ++++++++++++-
test/T370-search-folder-coherence.sh | 2 +-
test/T530-upgrade.sh | 115 +++++++++++++
test/corpus/{cur => }/01:2, | 0
test/corpus/{cur => }/02:2, | 0
test/corpus/{cur => bar}/17:2, | 0
test/corpus/{cur => bar}/18:2, | 0
test/corpus/{cur => bar/baz}/05:2, | 0
test/corpus/{cur => bar/baz}/23:2, | 0
test/corpus/{cur => bar/baz}/24:2, | 0
test/corpus/{ => bar/baz}/cur/25:2, | 0
test/corpus/{ => bar/baz}/cur/26:2, | 0
test/corpus/{cur => bar/baz/new}/27:2, | 0
test/corpus/{cur => bar/baz/new}/28:2, | 0
test/corpus/{ => bar}/cur/19:2, | 0
test/corpus/{ => bar}/cur/20:2, | 0
test/corpus/{cur => bar/new}/21:2, | 0
test/corpus/{cur => bar/new}/22:2, | 0
test/corpus/{cur => foo}/06:2, | 0
test/corpus/{cur => foo/baz}/11:2, | 0
test/corpus/{cur => foo/baz}/12:2, | 0
test/corpus/{ => foo/baz}/cur/13:2, | 0
test/corpus/{ => foo/baz}/cur/14:2, | 0
test/corpus/{cur => foo/baz/new}/15:2, | 0
test/corpus/{cur => foo/baz/new}/16:2, | 0
test/corpus/{ => foo}/cur/07:2, | 0
test/corpus/{ => foo}/cur/08:2, | 0
test/corpus/{cur => foo/new}/03:2, | 0
test/corpus/{cur => foo/new}/09:2, | 0
test/corpus/{cur => foo/new}/10:2, | 0
test/corpus/{cur => new}/04:2, | 0
test/test-databases/.gitignore | 1 +
test/test-databases/Makefile | 7 +
test/test-databases/Makefile.local | 14 ++
test/test-databases/folders-v1.tar.xz.sha256 | 1 +
test/test-lib.sh | 5 +
46 files changed, 753 insertions(+), 191 deletions(-)
create mode 100755 devel/gen-testdb.sh
create mode 100755 test/T530-upgrade.sh
rename test/corpus/{cur => }/01:2, (100%)
rename test/corpus/{cur => }/02:2, (100%)
rename test/corpus/{cur => bar}/17:2, (100%)
rename test/corpus/{cur => bar}/18:2, (100%)
rename test/corpus/{cur => bar/baz}/05:2, (100%)
rename test/corpus/{cur => bar/baz}/23:2, (100%)
rename test/corpus/{cur => bar/baz}/24:2, (100%)
rename test/corpus/{ => bar/baz}/cur/25:2, (100%)
rename test/corpus/{ => bar/baz}/cur/26:2, (100%)
rename test/corpus/{cur => bar/baz/new}/27:2, (100%)
rename test/corpus/{cur => bar/baz/new}/28:2, (100%)
rename test/corpus/{ => bar}/cur/19:2, (100%)
rename test/corpus/{ => bar}/cur/20:2, (100%)
rename test/corpus/{cur => bar/new}/21:2, (100%)
rename test/corpus/{cur => bar/new}/22:2, (100%)
rename test/corpus/{cur => foo}/06:2, (100%)
rename test/corpus/{cur => foo/baz}/11:2, (100%)
rename test/corpus/{cur => foo/baz}/12:2, (100%)
rename test/corpus/{ => foo/baz}/cur/13:2, (100%)
rename test/corpus/{ => foo/baz}/cur/14:2, (100%)
rename test/corpus/{cur => foo/baz/new}/15:2, (100%)
rename test/corpus/{cur => foo/baz/new}/16:2, (100%)
rename test/corpus/{ => foo}/cur/07:2, (100%)
rename test/corpus/{ => foo}/cur/08:2, (100%)
rename test/corpus/{cur => foo/new}/03:2, (100%)
rename test/corpus/{cur => foo/new}/09:2, (100%)
rename test/corpus/{cur => foo/new}/10:2, (100%)
rename test/corpus/{cur => new}/04:2, (100%)
create mode 100644 test/test-databases/.gitignore
create mode 100644 test/test-databases/Makefile
create mode 100644 test/test-databases/Makefile.local
create mode 100644 test/test-databases/folders-v1.tar.xz.sha256
--
1.9.0
More information about the notmuch
mailing list