[PATCH v2 00/11] Add filesize index, search, sort & emacs UI

Jani Nikula jani at nikula.org
Tue May 23 10:19:44 PDT 2017


On Fri, 19 May 2017, Ioan-Adrian Ratiu <adi at adirat.com> wrote:
> I'd like to add a feature to quickly work with mail file sizes
> because using custom scripts / external programs which parse
> maildir contents is slow, and non-intuitive, especially since
> notmuch does incremental parsing and has such a nice emacs UI.

Before we dive into the details, I guess at least I'd like to see better
rationale for the feature. I don't see myself searching or sorting based
on message size. What's the use case? (I wouldn't mind adding the
message size to the formatted output, but that doesn't require indexing
the size or adding the search support for it.)

One fundamental issue David noted on IRC, it'll be hard to decide what
to index for "message" size when there are duplicates that typically
have different sizes. For other things, we've indexed whatever comes
first, but I suppose we'd like to fix that.

BR,
Jani.

>
>
> Ioan-Adrian Ratiu (11):
>   lib: message: index message file sizes
>   lib: database: store message filesize & add range processor
>   notmuch-search: add filesize based sort order
>   emacs: make notmuch-search-oldest-first generic
>   emacs: notmuch-search: add filesize sorting
>   sprinter: add unsigned_long printer function
>   lib: thread: add thread total size function
>   notmuch-search: output total_filesize thread result
>   notmuch-show: export message filesize
>   emacs: notmuch-search: add display thread sizes capability
>   emacs: notmuch-show: add filesize to headerline
>
>  devel/schemata         |  1 +
>  doc/notmuch-emacs.rst  |  4 ++--
>  emacs/notmuch-hello.el | 24 +++++++++++++-----------
>  emacs/notmuch-jump.el  | 11 +++++------
>  emacs/notmuch-lib.el   |  9 ++++++---
>  emacs/notmuch-show.el  |  5 ++++-
>  emacs/notmuch-tree.el  |  2 +-
>  emacs/notmuch.el       | 48 +++++++++++++++++++++++++++++++++---------------
>  lib/database-private.h |  1 +
>  lib/database.cc        |  6 ++++++
>  lib/index.cc           | 10 ++++++++++
>  lib/message-file.c     | 18 +++++++++++++++++-
>  lib/message.cc         | 29 +++++++++++++++++++++++++++++
>  lib/notmuch-private.h  | 16 ++++++++++++++++
>  lib/notmuch.h          | 21 +++++++++++++++++++++
>  lib/query.cc           |  6 ++++++
>  lib/thread.cc          | 12 ++++++++++++
>  notmuch-search.c       |  8 +++++++-
>  notmuch-show.c         |  5 +++++
>  sprinter-json.c        |  9 +++++++++
>  sprinter-sexp.c        |  9 +++++++++
>  sprinter-text.c        |  9 +++++++++
>  sprinter.h             |  1 +
>  23 files changed, 223 insertions(+), 41 deletions(-)
>
> -- 
> 2.13.0
>
> _______________________________________________
> notmuch mailing list
> notmuch at notmuchmail.org
> https://notmuchmail.org/mailman/listinfo/notmuch


More information about the notmuch mailing list