[PATCH 0/4] Mailstore abstraction v4

Michal Sojka sojkam1 at fel.cvut.cz
Thu Apr 8 07:42:42 PDT 2010


Hi all,

this is the fourth version of my mailstore abstraction series. I split
it into two parts, with the first part being sent here. I think that
this part becomes mostly ready for merging.

>From the user's point of view, it adds only the 'cat' subcommand and
modifies the .el to use it. Thanks to this change it is easy to use
Emacs client with the database accessed remotely over SSH. The only
additional patch that must be applied is
id:m1my03gsmu.fsf at watt.gilman.jhu.edu. The rebased version is at
http://rtime.felk.cvut.cz/gitweb/notmuch.git/shortlog/refs/heads/jr/quote-args-in-notmuch-show
and can be pulled by 'git pull git://rtime.felk.cvut.cz/notmuch.git
jr/quote-args-in-notmuch-show').

More importantly, there are bigger changes for developers. Since it
might be quite painful to rebase these patches to quickly changing
master (as of the last few days) I'd like to have these merged ASAP.

So the patches here are the following:

Michal Sojka (4):
  Mailstore abstraction interface
  Conversion to mailstore abstraction
  Access messages through mail store interface
  Add 'cat' subcommand

My biggest question relates to the first patch, which does an
incompatible change to libnotmuch API. After reading RELEASING file, I
found that this change is probably not what Carl wants to merge (and I
understand that) so I'd like to get some feedback on my suggestion in
that patch.

The subsequent patches are quite straightforward and the comments
there should describe what these patches do.

These patches are also located at git://rtime.felk.cvut.cz/notmuch.git
and tagged by mailstore-abstraction-v4-part1.

This is the overall diffstat:
 NEWS                                   |    3 +
 emacs/notmuch-show.el                  |   11 +-
 lib/Makefile.local                     |    2 +
 lib/database-private.h                 |    1 +
 lib/database.cc                        |   29 +-
 lib/index.cc                           |    8 +-
 notmuch-new.c => lib/mailstore-files.c |  418 +++++----------------
 lib/mailstore-private.h                |   59 +++
 lib/mailstore.c                        |   80 ++++
 lib/message-file.c                     |    8 +-
 lib/message.cc                         |   46 ++-
 lib/notmuch-private.h                  |    6 +-
 lib/notmuch.h                          |   98 +++++-
 lib/sha1.c                             |    6 +-
 notmuch-client.h                       |   12 +-
 notmuch-config.c                       |   34 ++
 notmuch-count.c                        |    3 +-
 notmuch-dump.c                         |    3 +-
 notmuch-new.c                          |  658 +++-----------------------------
 notmuch-reply.c                        |   13 +-
 notmuch-restore.c                      |    3 +-
 notmuch-search-tags.c                  |    3 +-
 notmuch-search.c                       |    3 +-
 notmuch-show.c                         |   82 ++++-
 notmuch-tag.c                          |    3 +-
 notmuch.c                              |    4 +
 show-message.c                         |   14 +-
 27 files changed, 621 insertions(+), 989 deletions(-)
 copy notmuch-new.c => lib/mailstore-files.c (61%)
 create mode 100644 lib/mailstore-private.h
 create mode 100644 lib/mailstore.c



More information about the notmuch mailing list