IMAPlib mixin class: pass 'readonly' exception to our callers

This will allow our callers who are capable of dealing with
readonly folders to properly detect this condition and act
accordingly.

One example is Gmail's "Chats" folder that is read-only,
but contains logs of the quick chats.

Minor Changelog improvements.

Tested-by: Abdó Roig-Maranges <abdo.roig@gmail.com>
Signed-off-by: Eygene Ryabinkin <rea@codelabs.ru>
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
This commit is contained in:
Eygene Ryabinkin 2012-08-05 22:40:52 +04:00 committed by Nicolas Sebrecht
parent 799905325c
commit 131ac5c827
2 changed files with 10 additions and 7 deletions

View File

@ -8,17 +8,20 @@ ChangeLog
WIP (add new stuff for the next release)
========================================
* Learn to deal with readonly folders to properly detect this condition and act
accordingly. One example is Gmail's "Chats" folder that is read-only,
but contains logs of the quick chats. (E. Ryabinkin)
* Fix str.format() calls for Python 2.6 (D. Logie)
* Remove APPENDUID hack, previously introduced to fix Gmail, no longer
necessary, it might have been breaking things. (J. Wiegley)
OfflineIMAP v6.5.4 (2012-06-02)
=================================
===============================
* bump bundled imaplib2 library 2.29 --> 2.33
* Actually perform the SSL fingerprint check (reported by J. Cook)
* Curses UI, don't use colors after we shut down curses already (C.Höger)
* Document that '%' needs encoding as '%%' in *.conf
* Document that '%' needs encoding as '%%' in configuration files.
* Fix crash when IMAP.quickchanged() led to an Error (reported by sharat87)
* Implement the createfolders setting to disable folder propagation (see docs)
@ -28,9 +31,6 @@ OfflineIMAP v6.5.3.1 (2012-04-03)
* Don't fail if no dry-run setting exists in offlineimap.conf
(introduced in 6.5.3)
* Don't fail if no dry-run setting exists in offlineimap.conf
(introduced in 6.5.3)
OfflineIMAP v6.5.3 (2012-04-02)
===============================
@ -67,7 +67,7 @@ OfflineIMAP v6.5.3 (2012-04-02)
* Improve compatability of the curses UI with python 2.6
OfflineIMAP v6.5.2.1 (2012-04-04)
=====================================
=================================
* Fix python2.6 compatibility with the TTYUI backend (crash)
@ -123,7 +123,7 @@ Smallish bug fixes that deserve to be put out.
* Add filter information to the filter list in --info output
OfflineIMAP v6.5.1.1 (2012-01-07) - "Das machine control is nicht fur gerfinger-poken und mittengrabben"
==================================================================================================================
========================================================================================================
Blinkenlights UI 6.5.0 regression fixes only.

View File

@ -49,6 +49,9 @@ class UsefulIMAPMixIn(object):
del self.untagged_responses[:]
try:
result = super(UsefulIMAPMixIn, self).select(mailbox, readonly)
except self.readonly as e:
# pass self.readonly to our callers
raise
except self.abort as e:
# self.abort is raised when we are supposed to retry
errstr = "Server '%s' closed connection, error on SELECT '%s'. Ser"\