On 05/07/2021 20:47, Oscar del Rio wrote:
On 2021-07-05 10:29 a.m., Tobias Leupold wrote:
require ["include"];
include :personal "some-script";
include :personal "some-other-script";
Now if I delete "some-script", it's actually deleted, but USER.sieve
is not
updated (and still contains 'include :personal "some-script";').
active-script.sieve.log:
sieve: info: started log at Jul 05 14:57:54.
USER: line 12: error: included personal script 'some_script' does not
exist.
USER: error: validation failed.
So the question is now: Is this a KMail bug, a Doveceot bug, or is
the server
misconfigured?!
IMHO the client (KMail) should take care of it.
Perhaps it could also add the "optional" flag in the "include" statement
include :personal :optional "some-script";
https://datatracker.ietf.org/doc/html/rfc6609
Yes, this is the correct answer. Dovecot is doing nothing wrong here.
3.2. Control Structure "include"
Usage: include [LOCATION] [":once"] [":optional"] <value: string>
LOCATION = ":personal" / ":global"
The ":optional" parameter indicates that the script may be missing.
Ordinarily, an implementation MUST generate an error during execution
if an "include" command specifies a script that does not exist. When
":optional" is specified, implementations MUST NOT generate an error
for a missing script, and MUST continue as if the "include" command
had not been present.