From: Austin Clements <aclements@csail.mit.edu>
To: Jani Nikula <jani@nikula.org>, notmuch@notmuchmail.org
Subject: Re: [PATCH 0/5] lib: make folder: prefix literal
Date: Fri, 24 Jan 2014 16:17:58 -0500 [thread overview]
Message-ID: <87y525m649.fsf@awakening.csail.mit.edu> (raw)
In-Reply-To: <cover.1389304779.git.jani@nikula.org>
On Thu, 09 Jan 2014, Jani Nikula <jani@nikula.org> wrote:
> Hi all, this series makes the folder: search prefix literal, or switches
> it from a probabilistic prefix to a boolean prefix. With this, you have
> to give the path from the maildir root to the folder you want in full,
> including the maildir cur/new component, if any. Examples:
I strongly disagree with requiring the cur/new component. The cur/new
directory is an internal implementation detail of Maildir (and a rather
broken one at that) and no more a part of the "folder" of a piece of
mail than its final file name component. It's also the less obvious
user interface; if we require the cur/new component, we *will* get
people asking why their folder searches aren't working, but if we strip
the cur/new component, nobody will be surprised.
I think the question is not whether we should strip cur/new, but when.
We've already defined a "_filename_is_in_maildir" test in
lib/message.cc, which we depend on for flag sync. It's simple, but I
think this would be the right thing to use for consistency.
> folder:cur
> folder:foo/bar
> folder:""
>
> The last one can be used to refer to the maildir root (note that in
> shell you'll need quoting to pass the double quotes to xapian,
> folder:'""').
>
> The old probabilistic folder: prefix is problematic in a number of
> ways. It's not possible to refer to the maildir root. It does stemming,
> so "inboxing" would match "inbox" too. "cur" for the folder in maildir
> root would match all "cur" folders across the maildir hierarchy. Likely
> some others I forgot.
>
> WARNING! The change requires a database format version bump, and a
> database upgrade, which is automatically done on 'notmuch new'. The
> upgrade is irreversible if you want to try this on your database! A
> complete database rebuild is required for reverting the database format
> version. Make sure your backups are in order!
>
> The series includes some tests, including an initial upgrade test, along
> with a test database in the previous format version.
>
>
> BR,
> Jani.
>
>
>
> Jani Nikula (5):
> lib: make folder: prefix literal
> test: fix insert folder: searches
> test: fix test for literal folder: search
> test: add test database in format version 1
> test: add database upgrade test from format version 1
>
> lib/database.cc | 39 ++++++++-
> lib/message.cc | 154 +++++++++++++++++----------------
> lib/notmuch-private.h | 3 +
> test/insert | 10 +--
> test/notmuch-test | 1 +
> test/search-by-folder | 24 ++++-
> test/test-databases/README | 5 ++
> test/test-databases/database-v1.tar.gz | Bin 0 -> 252243 bytes
> test/upgrade | 25 ++++++
> 9 files changed, 174 insertions(+), 87 deletions(-)
> create mode 100644 test/test-databases/README
> create mode 100644 test/test-databases/database-v1.tar.gz
> create mode 100755 test/upgrade
>
> --
> 1.8.5.2
>
> _______________________________________________
> notmuch mailing list
> notmuch@notmuchmail.org
> http://notmuchmail.org/mailman/listinfo/notmuch
next prev parent reply other threads:[~2014-01-24 21:18 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-01-09 22:18 [PATCH 0/5] lib: make folder: prefix literal Jani Nikula
2014-01-09 22:18 ` [PATCH 1/5] " Jani Nikula
2014-01-24 21:18 ` Austin Clements
2014-01-09 22:18 ` [PATCH 2/5] test: fix insert folder: searches Jani Nikula
2014-01-24 21:20 ` Austin Clements
2014-01-25 19:32 ` Rob Browning
2014-01-09 22:18 ` [PATCH 3/5] test: fix test for literal folder: search Jani Nikula
2014-01-09 22:18 ` [PATCH 4/5] test: add test database in format version 1 Jani Nikula
2014-01-09 22:18 ` [PATCH 5/5] test: add database upgrade test from " Jani Nikula
2014-01-24 21:17 ` Austin Clements [this message]
2014-01-24 23:21 ` [PATCH 0/5] lib: make folder: prefix literal David Bremner
2014-01-25 9:33 ` Jani Nikula
2014-01-25 10:47 ` Tomi Ollila
2014-01-25 11:06 ` Jani Nikula
2014-01-25 11:52 ` Tomi Ollila
2014-01-25 15:38 ` Jani Nikula
2014-01-25 16:58 ` David Bremner
2014-01-25 18:22 ` Jani Nikula
[not found] ` <874n4rvcvo.fsf@yoom.home.cworth.org>
2014-01-29 19:05 ` Jani Nikula
[not found] ` <87k3dir3ci.fsf@yoom.home.cworth.org>
2014-01-29 20:46 ` Austin Clements
[not found] ` <87bnyuqw60.fsf@yoom.home.cworth.org>
2014-01-30 6:34 ` Jani Nikula
2014-01-30 21:15 ` Mark Walters
2014-01-30 22:02 ` Austin Clements
2014-01-31 19:19 ` Rob Browning
2014-02-04 20:14 ` Austin Clements
2014-02-04 20:17 ` Rob Browning
2014-01-31 19:24 ` Rob Browning
2014-02-01 14:54 ` Jani Nikula
2014-02-04 20:02 ` Austin Clements
2014-02-05 13:12 ` Tomi Ollila
2014-02-05 21:12 ` Tomi Ollila
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://notmuchmail.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87y525m649.fsf@awakening.csail.mit.edu \
--to=aclements@csail.mit.edu \
--cc=jani@nikula.org \
--cc=notmuch@notmuchmail.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://yhetil.org/notmuch.git/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).