Thanks for the detailed anwser.

So it falls under the "feature" section. I will keep that in mind in future sieves.

And I think you are right, :copy only makes sense in situations where the flow can lead to other places than the Inbox.

On 24/08/2022 20:04, Sean Kamath wrote:
I recommend reading the RFC: 2.10.2 <https://www.rfc-editor.org/rfc/rfc5228#section-2.10.2> is where the Implicit Keep is described.

Basically, if you don’t take action on a message, there is an “implicit keep” that will save the mail in the default location.  If an action *is* taken on a message (that results in it being saved somewhere; i.e., ‘fileinto’), then the implicit keep is removed (since you have explicitly said where to put it).

So there’s the “keep” keyword (see 4.3 <https://www.rfc-editor.org/rfc/rfc5228#section-4.3>), to “do what you would do in the implicit keep” (more or less).

So:

fileinto :create “ac” -> puts the message into “ac” and removes “implicit keep”
keep -> puts implicit keep back (more or less)

fileinto :copy :create “ac” -> puts a *COPY* of the message into “ac”, and the original retains “implicit keep”.

They do the same thing, though I try and avoid unnecessary extensions when I can.

Sean

On Aug 24, 2022, at 07:29, João Silva <joaopfml...@lipc.fis.uc.pt> wrote:


On 23/08/2022 13:03, Rob Sterenborg (Lists) wrote:

On 23-08-2022 11:44, João Silva wrote:
Hi

If a sieve filter contains a rule

if header :regex ["From"] ["@xxx.com","@yyy.pt"] {
         fileinto :create "ac";
}

The mail should be copied to the folder ac and then proceed to other rules that a user might have or I understood the

fileinto

wrong?

Using dovecot-pigeonhole-2.2.36-8.el7.x86_64


I use it like this, and it works for me:

if address :is "From" "sender@domain" {
  fileinto :create "some_mail_folder";
  stop;
}

Almost 20 years ago, I figured out that I *need* the "stop;" line, but I don't remember why.

The stop; is needed to prevent further script actions on the email and that is a very curious thing that I dont know if falls in the "bug or feature" field.

if I use

if header :regex ["From"] ["@xxx.com","@yyy.pt"] {
         fileinto :create "ac";

        keep;

}

It delivers the mail in my Inbox which was my intention in the first place.

When I used the filter without the keep; and since I didn't had the stop; I was expecting further actions on that email that will lead to the email end up in the Inbox and that didn't happened.

So it apears that the fileinto rule have a stop; into it without the stop being declared.

In a complex mail management scenario that can cause problems. So my question is, "bug or feature"?





--
Rob

Reply via email to