On 2.8.2010, at 19.04, Daniel L. Miller wrote:
On 8/2/2010 8:15 AM, Timo Sirainen wrote:
cause IDLE is no longer advertised in CAPABILITY before login. This is the only widely used IMAP client I know of that has this problem now. Wonder if RIM would have any interest in fixing this themselves.. Probably not. Maybe I should just give up and put IDLE into the pre-login capability..
Why the change? RFC compliance? Performance?
To get rid of the horrible ugly way of getting a list of capabilities at startup. Dovecot doesn't know what capabilities are available until it has loaded all plugins and loaded them and asked what capabilities those plugins added. This caused numerous problems with v1.x for many years. I doubt all of the potential problems are still fixed in latest v1.2.
Per-user capabilities aren't possible if the capability list must be the same before and after login.
So I reduced the pre-login capability list to be as minimal as it can be. Not just because of 1) and 2), but because the minimal capability list would make it obvious when a client doesn't recognize the post-login capabilities and that the client could also never support 2). Several of these clients were already found and fixed. And I knew that this worked fine with the most widely used clients. But I hadn't encountered RIM before.. Does anyone happen to know anyone in RIM's email team? :) The good thing here is that it would only require RIM to upgrade their servers to fix this, not to force thousands or millions of users to upgrade their clients..