On Thu, Dec 23, 2010 at 10:27, David Warden <warden@geneseo.edu> wrote:
Out of curiosity, are you using the "autosubscribe" feature of Dovecot LDA to automatically subscribe people who whatever new folder the Dovecot LDA automatically creates? It looks like this is the -s flag to LDA binary in 1.1.3+ or lda_mailbox_autosubscribe in 2.0+ (not sure exactly what point release...)
I didn't purposely use it. I see nothing in /etc/dovecot/dovecot.conf that suggests that. I see no -s flag on any running binary. There is no -s flag configured for deliver in Postfix's master.cf. So I conclude that answer to be "no".
I don't have a lot of experience with Evolution but I know Thunderbird can be difficult when it comes to new folders showing up on the server that it didn't create. The best you can do is make sure the client gets automatically subscribed to that new folder and hope that the client checks the list of subscribed folders (the LSUB IMAP command) eventually. I would hope that clicking "check/get new mail" would be enough to trigger that in most clients.
I don't know the semantics of this, and would not want to suddenly change things on users. Maybe they are doing subscribes on their own that might highlight what they subscribe to and ignore all else ... and that doing autosubscribe might interfere with that.
Evolution and Thunderbird seem to be fine with no subscriptions going on. On startup they seem to find all the folders. The issue I'm encountering (tried only on Evolution since that is what I use right now) is that when I want to access a folder that was created during delivery, I cannot. There is no folder shown and no option to refresh it (unless doing a subscribe to an as-yet unseen folder would do it, after which I could then unsubscribe) short of quitting Evolution and restarting. Doing "Send/Receive" doesn't refresh (I didn't really expect it to, but I did try it just in case). The most obvious option is doing a right button click on the parent folder and selecting refresh. That didn't add the folder, either, so I conclude it only refreshes the count of emails. So I tried to create it within Evolution. I figured that would at least set up the folder name in the tree on the left panel. But, since IMAP reported a failure to create (because it existed at that time, due to the earlier create during delivery), Evolution just gave up and did not add the folder. I believe what it should do when creating a folder fails is to check to see if that folder already exists, and if so, either add the folder anyway, or ask the user if the "already created" folder should be added.
When programming in C, when I want to create a file in a directory, and want to create the directory if it does not yet exist, what I code is a mkdir() call with error handling that ignores EEXIST. The intended directory name might be something other than a directory. But I know that open() naming a file in that directory to be created, will fail if it wasn't a directory. So I do not need to explicitly stat() the directory to see if it is a directory or not. If open() fails, then I sort out the error to the level that program calls for. Such a program would create the file in that directory whether the directory exists or not. Extending this concept to a program using a protocol like IMAP ... I don't know if that's beyond the ability of the application developer(s) to grasp, or not. But it is the case that I find very little "goofy logic" in systems and server daemons, and find a lot of that in GUI applications. I just didn't want to jump to even an obvious conclusion in this case, knowing that I did not know details about IMAP (if I had known IMAP, I probably would have come to some conclusion, quickly).
-- sHiFt HaPpEnS!