Re: [notmuch] [Sebastian Spaeth] Pull requests

2010-04-09 Thread Michal Sojka
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

2010-04-09 Thread Sebastian Spaeth
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

2010-04-08 Thread Michal Sojka
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

2010-04-07 Thread Carl Worth
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

2010-04-07 Thread Carl Worth
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

2010-04-07 Thread Sebastian Spaeth
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

2010-04-06 Thread micah anderson
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

2010-03-27 Thread Sebastian Spaeth
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

2010-03-25 Thread micah anderson
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