When I compiled and installed this, Sieve scripts were being ignored. Not sure if it's my own stupid mistake, but when I put v0.4.6 back in place, it worked fine. No configuration changes, only make install on the different sources and restart dovecot. Could you show your dovecot -n output?
Also, if you enable mail_debug, what sieve-related debug lines are shown? OK, I re-tested and it's still ignoring personal scripts (but not global ones). No .svbin gets generated, no errors, just nothing. However, I do see that Sieve was accessing the user home directory because for some reason now it just created a ".pki" directory therein, which inside of it has an empty "nssdb" directory. That never happened before...? Not a big problem, but I'd prefer not to have that there.
Sieve doesn't do that. I don't think Dovecot does that either, but I am not sure.
Odd. Some lib Sieve uses? These directories do not appear in user home directories unless I install the newest Sieve (and not until a delivery via LMTP happens). No other changes. No other software is currently accessing user home locations at all.
Re: mail_debug, this relates to another post I made that didn't get any replies - can I not override settings such as that (and log_path) from a userdb lookup? Hmm, I WAS able to override mail_debug from userdb, but not log_path?
Sieve-related mail_debug, then?
This looks like the relevant log info:
dovecot: lmtp(testuser@example.com): Debug: Be3h7iRf/1TnUw2PM/SpMA: sieve: file storage: Storage path `/vmail/example.com/testuser/sieve' not found dovecot: lmtp(testuser@example.com): Debug: Be3h7iRf/1TnUw2PM/SpMA: sieve: No default script configured for user dovecot: lmtp(testuser@example.com): Debug: Be3h7iRf/1TnUw2PM/SpMA: sieve: User has no personal script
I'll check on 0.4.6 and report if I see anything interesting, but I will assume for the moment that since personal scripts work in 0.4.6 that this log info won't be there. It is correct that there is no "sieve" file or directory in the user's home dir. This wasn't a problem in 0.4.6. Is it a requirement?
Well, since your config says the following:
sieve = file:~/sieve;active=~/.dovecot.sieve
It expects a sieve storage directory at ~/sieve (created when ManageSieve is used to upload a script). Also, a symbolic link pointing to the active script will be located at ~/.dovecot.sieve once a script is activated (i.e. through ManageSieve or doveadm sieve).
I wonder how this would have worked before with 0.4.6. Is the ~/.dovecot.sieve a normal script file perhaps (rather than a symlink)? This would mean that the following config would work (e.g. if you don't use ManageSieve):
sieve = file:~/.dovecot.sieve
The configuration for that was not of my doing (doesn't that mean it shouldn't have shown up in doveconf -n?). Yes, the .sieve scripts in user home are regular files. Strange 0.4.6 didn't mind this situation, but seems easy to put the configuration right and move on.