Public bug reported:

I just upgraded from Kubuntu 11.10 to 12.04, and as soon as I did, a
reliably working cron job using offlineimap started generating errors
every run.  The version of offlineimap I have from 12.04 is Version:
6.3.4-1

The errors looked like the following:

=======
Account sync xxxxxxxxxxxx:
 ***** Processing account xxxxxxxxxxxx
 Copying folder structure from IMAP to Maildir
 Establishing connection to mmmmmmmm:ppp.
Folder sync [xxxxxxxxxxxx]:
 Syncing fffffffffffff: IMAP -> Maildir
Copy message 14677 from fffffffffffff:
 Copy message 14677 IMAP[fffffffffffff] -> Maildir[fffffffffffff]
Folder sync [xxxxxxxxxxxx]:
 Adding flag S to 20 messages on fffffffffffff
 WARNING: ERROR attempting to sync flags for account xxxxxxxxxxxx:Traceback 
(most recent call last):
  File "/usr/lib/pymodules/python2.7/offlineimap/folder/Base.py", line 421, in 
syncmessagesto
    action(dstfolder, statusfolder)
  File "/usr/lib/pymodules/python2.7/offlineimap/folder/Base.py", line 378, in 
syncmessagesto_flags
    dstfolder.addmessagesflags(addflaglist[flag], [flag])
  File "/usr/lib/pymodules/python2.7/offlineimap/folder/Base.py", line 196, in 
addmessagesflags
    self.addmessageflags(uid, flags)
  File "/usr/lib/pymodules/python2.7/offlineimap/folder/Base.py", line 192, in 
addmessageflags
    self.savemessageflags(uid, newflags)
  File "/usr/lib/pymodules/python2.7/offlineimap/folder/Maildir.py", line 299, 
in savemessageflags
    os.path.join(self.getfullname(), newfilename))
OSError: [Errno 2] No such file or directory
=======

I was able to (apparently) fix the problem with the following patch to
/usr/share/pyshared/offlineimap/folder/Maildir.py, however I do not
understand the code well enough to be confident this fix is correct.

=======
--- Maildir.py.old      2012-06-18 03:18:48.786071861 -0500
+++ Maildir.py.new      2012-06-18 03:23:41.979234183 -0500
@@ -292,10 +292,9 @@
         infostr += '2,' + ''.join(flags)
         newname += infostr
         
-        newfilename = os.path.join(dir_prefix, newname)
+        newfilename = os.path.join(self.getfullname(), dir_prefix, newname)
         if (newfilename != oldfilename):
-            os.rename(os.path.join(self.getfullname(), oldfilename),
-                     os.path.join(self.getfullname(), newfilename))
+            os.rename(oldfilename, newfilename)
             self.messagelist[uid]['flags'] = flags
             self.messagelist[uid]['filename'] = newfilename
 =======

** Affects: offlineimap (Ubuntu)
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1014540

Title:
  syncfolder: ERROR attempting to sync flags - No such file or directory

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/offlineimap/+bug/1014540/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to