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.




Reply via email to