[PATCH 3/5] cli: move search to the new --exclude= naming scheme.

Austin Clements amdragon at MIT.EDU
Sat Mar 17 08:50:23 PDT 2012


Quoth Mark Walters on Mar 15 at  6:42 pm:
> This commit replaces the --no-exclude option with a
> --exclude=(true|false|flag) option. The default is to omit the
> excluded messages.
> 
> The flag option only makes sense if output=summary (as otherwise there
> is nowhere to print the flag). In summary output exclude=false and
> exclude=flag give almost identical output:
> they differ in that with the exclude=flag option the match count
> (i.e., the x in [x/n] in the output) is the number of matching
> non-excluded messages rather than the number of matching messages.
> 
> Note this changes the default for output=summary when no --exclude=
> option is given: it used to default to flag and now defaults to true
> (i.e. omit excluded messages). This is neccesary to keep the cli
> output uncluttered and for speed reasons.
> ---

Code looks good, but I think there need to be a few more tests.  In
particular, I think we need all 10 valid combinations of

* --output=summary or --output=messages (those two are probably
  enough)

* The three types of exclude (or two for --output=messages)

* Whether or not an excluded term is in the query

Finally, the corpus should have three threads of interest: a thread
with no excluded messages, a thread with both excluded and
non-excluded messages, and a thread consisting entirely of excluded
messages.

We already have many of these, but it would be good to systematically
cover the full gamut of possibilities.


More information about the notmuch mailing list