[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [sup-devel] Adding backward synchronization for Maildir sources
Sup Damien,
I cut over to your branch, plus one patch of my own making.
THE GOOD NEWS
It works! Whereby, messages are marked read in my webmail client and
deleted messages go away.
THE BAD NEWS
It makes Sup very crashy and there's some strange behavior. This is probably
the sixth time I'm composing this message (yeah, haven't learned my
lesson.) In more detail...
* You want the following OfflineImap patch, because otherwise the massive
changes to labels that will surely be induced by backwards syncing will
cause OfflineImap to CRAWL.
diff --git a/offlineimap/folder/LocalStatus.py b/offlineimap/folder/LocalStatus.py
index 157989d..7f4dc5b 100644
--- a/offlineimap/folder/LocalStatus.py
+++ b/offlineimap/folder/LocalStatus.py
@@ -33,7 +33,7 @@ class LocalStatusFolder(BaseFolder):
self.messagelist = None
self.repository = repository
self.savelock = threading.Lock()
- self.doautosave = 1
+ self.doautosave = 0
self.accountname = accountname
BaseFolder.__init__(self)
Though, you probably want to undo this patch when you're done. Autosaving
means partial progress is saved.
* Backwards syncing appears to make old deleted mail show up again; I'm not
sure if it's because touching the Maildir causes Sup to pick up on deleted
tags again or something, but I had to go back and delete lots of deleted mail.
* When Sup is deleting messages, it is /extremely/ unsafe to iterate over
a list of all messages in the index and query them for info: the threading means
that any given message might not exist anymore. I had a hook that kept triggering
this bug, and earlier on in the process drawing functions would also frequently
Nil error. This is probably under-tested codepaths in Sup that we should track
down; unfortunately I didn't have the presence of mind to record traces until
later (and the ones I got all look like my hooks fault).
* In a similar vein, while messages are going away, '@' will occasionally return
no messages (pressing again usually fixes it). Messages that are labelled inbox
will show up in 'U', but not in the inbox view without a Sup restart.
I haven't done a code review yet.
Cheers,
Edward
_______________________________________________
Sup-devel mailing list
Sup-devel@rubyforge.org
http://rubyforge.org/mailman/listinfo/sup-devel