Re: [notmuch] [Sebastian Spaeth] Pull requests
On Fri, 09 Apr 2010, Sebastian Spaeth wrote: > On 2010-04-08, Michal Sojka wrote: > > I think that the patch you sent was not the latest version. The latest > > is in id:1265122868-12133-1-git-send-email-sojk...@fel.cvut.cz, but it > > is not rebased to the current master. > > Not sure what I am doing wrong, but with this patch even after a > dump/delete/new/restore. I get > > ./notmuch count to: > 11788 > ./notmuch count folder: > 247 > ./notmuch count folder:inbox > 0 Hi Sebastian, I do not have time to help you with this right now, but you can try the following patch to debug what's happening. It should apply on top of your issue28-search-folder-name branch. -Michal diff --git a/notmuch-new.c b/notmuch-new.c index e787407..ebeb287 100644 --- a/notmuch-new.c +++ b/notmuch-new.c @@ -416,6 +416,7 @@ add_files_recursive (notmuch_database_t *notmuch, case NOTMUCH_STATUS_SUCCESS: state->added_messages++; tag_inbox_and_unread (message); + printf("DBG: Added new message: folder=%s message=%s\n", folder, next); break; /* Non-fatal issues (go on to next file) */ case NOTMUCH_STATUS_DUPLICATE_MESSAGE_ID: ___ notmuch mailing list notmuch@notmuchmail.org http://notmuchmail.org/mailman/listinfo/notmuch
Re: [notmuch] [Sebastian Spaeth] Pull requests
On 2010-04-08, Michal Sojka wrote: > I think that the patch you sent was not the latest version. The latest > is in id:1265122868-12133-1-git-send-email-sojk...@fel.cvut.cz, but it > is not rebased to the current master. Not sure what I am doing wrong, but with this patch even after a dump/delete/new/restore. I get ./notmuch count to: 11788 ./notmuch count folder: 247 ./notmuch count folder:inbox 0 My folders have no weird naming, they are e.g.: /home/spaetz/mail/INBOX/cur/1258732076_0.22934.spaetz-macbook,U=468,FMD5=7e33429f656f1e6e9d79b29c3f82c57e:2,S Sebastian ___ notmuch mailing list notmuch@notmuchmail.org http://notmuchmail.org/mailman/listinfo/notmuch
Re: [notmuch] [Sebastian Spaeth] Pull requests
On Wed, 07 Apr 2010, micah anderson wrote: > On 2010-03-27, micah anderson wrote: > > On Thu, 25 Mar 2010 22:50:52 -0400, micah anderson wrote: > > > On Mon, 01 Mar 2010 15:57:00 +0100, "Sebastian Spaeth" > > > wrote: > > > > > > > From git repository git://github.com/spaetz/notmuch-all-feature.git I > > > > would like to advocate the following branches for quick pulling. Each > > > > contains 1 or 2 patches. They have all been based on todays > > > > cworth/master, so it should be really painless. > > > > > > Thanks for pulling these all together! All the ones that you propose I > > > also use and would really like these to be merged as well. > > > > > > The only other patch that I find absolutely crucial, that you do not > > > include, is the 'Preserve folder information when indexing' patch which, > > > although not perfect, does significantly change my life. > > > > Glad you find it useful. Yes, having the folder information would indeed > > be nice. Is that patch working well for you? (Can you point me to the > > mail ID of the patch you are using? There have been several versions > > around). > > The patch works really well for me. I also had difficulty figuring out > which was the latest. I think that the patch you sent was not the latest version. The latest is in id:1265122868-12133-1-git-send-email-sojk...@fel.cvut.cz, but it is not rebased to the current master. I do not use this patch right now, since I didn't find time to apply it on top of my mailstore abstraction patches. What I remember from when I used it is, that it was really problematic with mail sent by me to mailing lists. There were two version of the message - one in sent folder and one in list folder - and the "folder tag" was not assigned deterministically. I think that now I know how to implement this correctly, I only need some time. Also, the problem is very similar to synchronization of maildir flags to multiple files, which is what I'm solving right now. So probably, after I finish maildir flag synchronization I can work on this patch. -Michal ___ notmuch mailing list notmuch@notmuchmail.org http://notmuchmail.org/mailman/listinfo/notmuch
Re: [notmuch] [Sebastian Spaeth] Pull requests
On Thu, 25 Mar 2010 22:50:52 -0400, micah anderson wrote: > The only other patch that I find absolutely crucial, that you do not > include, is the 'Preserve folder information when indexing' patch which, > although not perfect, does significantly change my life. This, (along with "allow mailing-list headers to be indexed"), is near the top of my mental todo list for notmuch. The trick with these is to smoothly do the re-indexing for people that aren't building an index From scratch, (or providing a "notmuch upgrade" command to do that when convenient or so). I'll have to give that some thought. -Carl pgpTI6ogJau8S.pgp Description: PGP signature ___ notmuch mailing list notmuch@notmuchmail.org http://notmuchmail.org/mailman/listinfo/notmuch
Re: [notmuch] [Sebastian Spaeth] Pull requests
On Mon, 01 Mar 2010 15:57:00 +0100, "Sebastian Spaeth" wrote: > >From git repository git://github.com/spaetz/notmuch-all-feature.git I > would like to advocate the following branches for quick pulling. Each > contains 1 or 2 patches. They have all been based on todays > cworth/master, so it should be really painless. Thanks Sebastian, both for pulling these together and mentioning them here. I've now gone through everything in this list and either merged the patch or asked for further work, (and in either case I've replied to one of the original messages proposing the patch). Keep up the good work! -Carl pgpp9GgjlgbM4.pgp Description: PGP signature ___ notmuch mailing list notmuch@notmuchmail.org http://notmuchmail.org/mailman/listinfo/notmuch
Re: [notmuch] [Sebastian Spaeth] Pull requests
On 2010-04-07, micah anderson wrote: > > > The only other patch that I find absolutely crucial, that you do not > > > include, is the 'Preserve folder information when indexing' patch which, > > > although not perfect, does significantly change my life. This patch in included in my branch now. There is a branch with just that patch over cworth/master in http://github.com/spaetz/notmuch-all-feature/tree/issue28-search-folder-name However, testing this, it does not seem to work for me: I dumped and restored all mails, redoing my database and notmuch count folder:inbox shows 2 messages that contain "folder:" in their body. weird. I'll investigate. Sebastian ___ notmuch mailing list notmuch@notmuchmail.org http://notmuchmail.org/mailman/listinfo/notmuch
Re: [notmuch] [Sebastian Spaeth] Pull requests
On 2010-03-27, micah anderson wrote: > On Thu, 25 Mar 2010 22:50:52 -0400, micah anderson wrote: > > On Mon, 01 Mar 2010 15:57:00 +0100, "Sebastian Spaeth" > > wrote: > > > > > From git repository git://github.com/spaetz/notmuch-all-feature.git I > > > would like to advocate the following branches for quick pulling. Each > > > contains 1 or 2 patches. They have all been based on todays > > > cworth/master, so it should be really painless. > > > > Thanks for pulling these all together! All the ones that you propose I > > also use and would really like these to be merged as well. > > > > The only other patch that I find absolutely crucial, that you do not > > include, is the 'Preserve folder information when indexing' patch which, > > although not perfect, does significantly change my life. > > Glad you find it useful. Yes, having the folder information would indeed > be nice. Is that patch working well for you? (Can you point me to the > mail ID of the patch you are using? There have been several versions > around). The patch works really well for me. I also had difficulty figuring out which was the latest. The thread is thread:4ca0710d708e648c214ba3a67469f5bd, and the Message-ID is: 1265122868-12133-1-git-send-email-sojk...@fel.cvut.cz I had to rebase the patch to get it to apply with the other features that you have in your branch. I'm attaching that rebased patch to this message. pgpjTfePIOaPP.pgp Description: PGP signature commit 91e11a2a406683f1f80e19334da8124a25ec89fe Author: Micah Anderson Date: Thu Mar 25 23:07:10 2010 -0400 add folder patch, rebased diff --git a/lib/database.cc b/lib/database.cc index c91e97c..6364623 100644 --- a/lib/database.cc +++ b/lib/database.cc @@ -84,9 +84,9 @@ typedef struct { * MESSAGE_ID: The unique ID of the mail mess (see "id" above) * * In addition, terms from the content of the message are added with - * "from", "to", "attachment", and "subject" prefixes for use by the - * user in searching. But the database doesn't really care itself - * about any of these. + * "from", "to", "attachment", "subject" and "folder" prefixes for use + * by the user in searching. But the database doesn't really care + * itself about any of these. * * The data portion of a mail document is empty. * @@ -155,7 +155,8 @@ prefix_t PROBABILISTIC_PREFIX[]= { { "from", "XFROM" }, { "to", "XTO" }, { "attachment", "XATTACHMENT" }, -{ "subject", "XSUBJECT"} +{ "subject", "XSUBJECT"}, +{ "folder", "XFOLDER"} }; int @@ -1362,6 +1363,7 @@ _notmuch_database_link_message (notmuch_database_t *notmuch, notmuch_status_t notmuch_database_add_message (notmuch_database_t *notmuch, const char *filename, + const char *folder_name, notmuch_message_t **message_ret) { notmuch_message_file_t *message_file; @@ -1477,6 +1479,9 @@ notmuch_database_add_message (notmuch_database_t *notmuch, date = notmuch_message_file_get_header (message_file, "date"); _notmuch_message_set_date (message, date); + if (folder_name != NULL) + _notmuch_message_gen_terms (message, "folder", folder_name); + _notmuch_message_index_file (message, filename); } else { ret = NOTMUCH_STATUS_DUPLICATE_MESSAGE_ID; diff --git a/lib/notmuch.h b/lib/notmuch.h index 0d9cb0f..e475072 100644 --- a/lib/notmuch.h +++ b/lib/notmuch.h @@ -263,6 +263,7 @@ notmuch_database_get_directory (notmuch_database_t *database, notmuch_status_t notmuch_database_add_message (notmuch_database_t *database, const char *filename, + const char *folder_name, notmuch_message_t **message); /* Remove a message from the given notmuch database. diff --git a/notmuch-new.c b/notmuch-new.c index 93da1d7..394d76c 100644 --- a/notmuch-new.c +++ b/notmuch-new.c @@ -21,6 +21,7 @@ #include "notmuch-client.h" #include +#include typedef struct _filename_node { char *filename; @@ -224,6 +225,35 @@ derive_tags_from_maildir_flags (notmuch_message_t *message, } } +static char* +_get_folder_base_name(const char *path) +{ +gchar *full_folder_name = NULL; +gchar *folder_base_name = NULL; + +/* Find name of "folder" containing the email. */ +full_folder_name = g_strdup(path); +while (1) { + folder_base_name = g_path_get_basename(full_folder_name); + + if (strcmp(folder_base_name, "cur") == 0 + || strcmp(folder_base_name, "new") == 0) { + gchar *parent_name = g_path_get_dirname(full_folder_name); + g_free(full_folder_name); + full_folder_name = parent_name; + } else + break; +} + +g_free(full_folder_name); + +if (strcmp(folder_base_name, ".") == 0) { + g_free(folder_base_name); + folder_base_name = NULL; +} +return folder_base_name; +} + /* Examine 'path' recursively as follows: * * o Ask the filesystem for the mtime of 'path' (fs_mtime) @@ -277,6 +307,7 @@ add_files_recursive (notmuch_database_t *notmuch, notmuch_filenames_t *db_subdir
Re: [notmuch] [Sebastian Spaeth] Pull requests
On Thu, 25 Mar 2010 22:50:52 -0400, micah anderson wrote: > On Mon, 01 Mar 2010 15:57:00 +0100, "Sebastian Spaeth" > wrote: > > > From git repository git://github.com/spaetz/notmuch-all-feature.git I > > would like to advocate the following branches for quick pulling. Each > > contains 1 or 2 patches. They have all been based on todays > > cworth/master, so it should be really painless. > > Thanks for pulling these all together! All the ones that you propose I > also use and would really like these to be merged as well. > > The only other patch that I find absolutely crucial, that you do not > include, is the 'Preserve folder information when indexing' patch which, > although not perfect, does significantly change my life. Glad you find it useful. Yes, having the folder information would indeed be nice. Is that patch working well for you? (Can you point me to the mail ID of the patch you are using? There have been several versions around). Sebastian ___ notmuch mailing list notmuch@notmuchmail.org http://notmuchmail.org/mailman/listinfo/notmuch
Re: [notmuch] [Sebastian Spaeth] Pull requests
On Mon, 01 Mar 2010 15:57:00 +0100, "Sebastian Spaeth" wrote: > From git repository git://github.com/spaetz/notmuch-all-feature.git I > would like to advocate the following branches for quick pulling. Each > contains 1 or 2 patches. They have all been based on todays > cworth/master, so it should be really painless. Thanks for pulling these all together! All the ones that you propose I also use and would really like these to be merged as well. The only other patch that I find absolutely crucial, that you do not include, is the 'Preserve folder information when indexing' patch which, although not perfect, does significantly change my life. micah pgpzkkv2WM3mh.pgp Description: PGP signature ___ notmuch mailing list notmuch@notmuchmail.org http://notmuchmail.org/mailman/listinfo/notmuch