unofficial mirror of notmuch@notmuchmail.org
 help / color / mirror / code / Atom feed
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

  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).