Recache folder list after creating a new folder
If we create a new folder we would previously not update our folder list, which led to us skipping the synchronization of those new folders during the initial run (subsequent runs would pick it up). Invalidate the folder cache when we create a folder during folder structure sync. Regetting the whole list from an IMAP server might be slightly suboptimal from a performance point, but it is easy and will lead to consistent results. Hopefully we will not have to create new folders on each new run. Reported-by: Daniel Shahaf <d.s@daniel.shahaf.name> Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
This commit is contained in:
@ -72,6 +72,10 @@ class MaildirRepository(BaseRepository):
|
||||
def makefolder(self, foldername):
|
||||
"""Create new Maildir folder if necessary
|
||||
|
||||
This will not update the list cached in getfolders(). You will
|
||||
need to invoke :meth:`forgetfolders` to force new caching when
|
||||
you are done creating folders yourself.
|
||||
|
||||
:param foldername: A relative mailbox name. The maildir will be
|
||||
created in self.root+'/'+foldername. All intermediate folder
|
||||
levels will be created if they do not exist yet. 'cur',
|
||||
@ -108,8 +112,6 @@ class MaildirRepository(BaseRepository):
|
||||
(foldername, subdir))
|
||||
else:
|
||||
raise
|
||||
# Invalidate the folder cache
|
||||
self.folders = None
|
||||
|
||||
def deletefolder(self, foldername):
|
||||
self.ui.warn("NOT YET IMPLEMENTED: DELETE FOLDER %s" % foldername)
|
||||
|
Reference in New Issue
Block a user