Status flag lost when saving to folder with Gmail

Glen Pfeiffer glen at thepfeiffers.net
Wed Dec 1 16:19:25 UTC 2010


Hi Everyone,

I reported this issue in the bug tracker before it was closed 
down. There was never any resolution to it, and since the 
preferred mechanism is to discuss on the list, I am bringing it 
up again.


When I save an email to a label-folder (a folders that the Gmail 
IMAP interface creates based on a Label), its "Read" status flag 
is lost; first on the server and then on the client.


Steps to reproduce:
1. Read a "New" mail in local mail client.
2. Save mail to "Follow Up" (just an example) and ensure it is 
   marked as "Read".
3. Execute offlineimap.
4. View the "Follow Up" and "All Mail" folders in *local email 
   client*.

   Expected Result: The email should be *"Read"* in both folders.
   Actual Result: The email is *"Read"* in both folders.
   _(Everything appears fine in the local mail client)_

5. View the "Follow Up" and "All Mail" folders in *Gmail*.

   Expected Result: The email should be *"Read"* in both folders.
   Actual Result: The email is *"Unread"* in both folders.
   _(The actual result is incorrect here)_


I am not sure if these next steps are technically correct because 
I do not know which repository should win in this situation. The 
remote repository states that the email is "Unread" while the 
local repository states it is "Read". But, from the users 
standpoint, these steps are correct.

6. Execute offlineimap again.
7. View the "Follow Up" and "All Mail" folders in local email 
   client.

   Expected Result: The email should be *"Read"* in both folders.
   Actual Result: The email is *"Unread"* in both folders.
   _(The actual result is incorrect)_

8. View the "Follow Up" and "All Mail" folders in Gmail.

   Expected Result: The email should be *"Read"* in both folders.
   Actual Result: The email is *"Unread"* in both folders.
   _(The actual result is incorrect)_


I have confirmed that the correct behavior is experienced with 
Thunderbird 2 & 3 via IMAP.


There is a workaround to make this work. I am posting it in hopes 
that it sheds light on the problem.
1. Read the email.
2. Save the mailbox.
3. Synchronize the account. This step ensures that the server 
   knows the read status of the email.
4. Move the email to the new folder.
5. Synchronize the account. Since the server already knew the 
   read status before we did this, it will retain the correct 
   read status.


Here are the relevant portions of my .offlineimaprc

<code>
[general]
accounts = Personal
maxsyncaccounts = 5
ui = Noninteractive.Basic

[Account Personal]
localrepository = LocalPersonal
remoterepository = RemotePersonal

[Repository LocalPersonal]
type = Maildir
localfolders = ~/mail/personal

[Repository RemotePersonal]
type = Gmail
remotehost = imap.gmail.com
remoteuser = scrubbed
remotepass = scrubbed
ssl = yes
realdelete = no
</code>


I have confirmed with one friend that he also experiences this 
with offlineimap and Gmail. Does anyone else on the list 
experience this? Is there a workaround?

Thanks!

-- 
Glen 




More information about the OfflineIMAP-project mailing list