ietf-mta-filters
[Top] [All Lists]

Re: [sieve] WGLC: draft-ietf-sieve-imap-sieve-04.txt

2012-06-15 20:09:32
Review with my contributor hat on:

Major:
RFC 5464 says:
   All entries MUST have either "/shared" or "/private" as a prefix.
   Entry names are case-insensitive.

I think that means our metadata key should be
"/shared/imapsieve/script". Text below implements this change, but
please double-check.

Minor and Nits:

Global nit: perform regex s/section (\d+)/Section $1/g

Section 1.2: remove extra comma
OLD
  At times other than message delivery, delivery "envelope"
  information, might not be available.
NEW
  At times other than message delivery, delivery "envelope"
  information might not be available.

Section 2.1: feels like there should be a MUST in here somewhere?

OLD
   The corresponding Sieve implementation uses the Sieve capability
   string "imapsieve", and Sieve scripts that depend upon the IMAP
   events MUST include that string in their "required" lists.
NEW
   The corresponding Sieve implementation MUST provide the "imapsieve"
   capability string (see [RFC5228] Section 6.1), and Sieve scripts that depend
   upon IMAP events MUST include that string in their "required" lists.

Section 2.2: Add a MUST regarding individual script execution, because
I missed this requirement the first two times I read through it:
OLD
   If more than one message is affected at the same time, each message
   triggers the execution of a Sieve script separately.  The scripts MAY
   be run in parallel.
NEW
   If more than one message is affected at the same time, each message
   MUST trigger execution of the Sieve script separately.  The scripts MAY
   be run in parallel.

Section 2.3.1: Convert from prose to list, and rephrase to include a
lot of MUSTs
OLD
   When an applicable event occurs on an IMAP mailbox, if there is an
   IMAP metadata entry named "/IMAPSieve/Script" for the mailbox, that
   entry is used.  If there is not, but there is an IMAP metadata entry
   named "/IMAPSieve/Script" for the server, that entry is used
   (providing a way to define a global script for all mailboxes on a
   server).  If neither entry exists, then no script will be invoked.
NEW
   When an applicable event occurs, the IMAP server MUST inspect
   the following metadata entries, in order, to determine which Sieve
   script to invoke:
   o "/IMAPSieve/Script" for the target mailbox,
   o "/IMAPSieve/Script" for the server.
   If neither entry exists, then no script will be invoked.

MINOR: I just realized that there might be confusion over an "empty"
script name. I propose that a global server script, and a mailbox
script with no value, means "run this script for every mailbox, except
this one". If that's OK with you, I propose this text immediately
following the text above:
NEW
    If the script name is an empty string, the server MUST NOT
    inspect any further metadata entries (this allows a user to specify
    a global server script, but disable it for specific mailboxes).

Given the above, and the Major issue at the top, I think this
paragraph can be removed:

OLD
   If an "/IMAPSieve/Script" metadata entry was selected above, the
   shared value of that metadata name (its "value.shared" attribute)
   MUST be the name of the Sieve script that will be invoked in response
   to the IMAP event.  Note that only the value.shared attribute is
   used; any value.priv attributes are ignored.
NEW
   [nothing]

The registration template in RFC 5464 is changed since early drafts, therefore:

Section 7.4:
OLD
   To: iana(_at_)iana(_dot_)org
   Subject: IMAP METADATA Registration
   Please register the following IMAP METADATA item:
   [x] Entry           [ ] Attribute
   [x] Mailbox         [ ] Server
   Name: /IMAPSieve/Script
   Description: This entry name is used to define mailbox metadata
   associated with IMAP events in Sieve for the associated mailbox.
   Specifically, this specifies the Sieve script that will be invoked
   when IMAP events occur on the specified mailbox.
   Content-type: text/plain; charset=utf-8
   RFC number: [[this RFC]]
   Contact address: Sieve mailing list <sieve(_at_)ietf(_dot_)org>
NEW
       To: iana(_at_)iana(_dot_)org
       Subject: IMAP METADATA Entry Registration

       Type:         Mailbox
       Name:         /shared/imapsieve/script
       Description:  This entry name is used to define mailbox metadata
   associated with IMAP events in Sieve for the associated mailbox.
   Specifically, this specifies the Sieve script that will be invoked
   when IMAP events occur on the specified mailbox.
       Content-type: text/plain; charset=utf-8
       RFC Number:   [this RFC]
       Contact:      Sieve mailing list <sieve(_at_)ietf(_dot_)org>

Section 7.5:
OLD
  To: iana(_at_)iana(_dot_)org
   Subject: IMAP METADATA Registration
   Please register the following IMAP METADATA item:
   [x] Entry           [ ] Attribute
   [ ] Mailbox         [x] Server
   Name: /IMAPSieve/Script
   Description: This entry name is used to define metadata associated
   globally with IMAP events in Sieve for the associated server.
   Specifically, this specifies the Sieve script that will be invoked
   when IMAP events occur on any mailbox in the server that does not
   have its own mailbox-level /IMAPSieve/Script entry.
   Content-type: text/plain; charset=utf-8
   RFC number: [[this RFC]]
   Contact address: Sieve mailing list <sieve(_at_)ietf(_dot_)org>
NEW
       To: iana(_at_)iana(_dot_)org
       Subject: IMAP METADATA Entry Registration

       Type:         Server
       Name:         /shared/imapsieve/script
       Description:  This entry name is used to define metadata associated
   globally with IMAP events in Sieve for the associated server.
   Specifically, this specifies the Sieve script that will be invoked
   when IMAP events occur on any mailbox in the server that does not
   have its own mailbox-level /IMAPSieve/Script entry.
       Content-type: text/plain; charset=utf-8
       RFC Number:   [this RFC]
       Contact:      Sieve mailing list <sieve(_at_)ietf(_dot_)org>


Draft looks awesome besides the above, and I'm looking forward to publication!

Best,
Aaron


On Wed, May 30, 2012 at 1:30 PM, Cyrus Daboo <cyrus(_at_)daboo(_dot_)name> 
wrote:
Hi folks,
I am starting a working group last call on
draft-ietf-sieve-imap-sieve-04.txt. This is the last document this working
group has on its plate and once finished, we intend to shut down the working
group.

The last call on draft-ietf-sieve-imap-sieve-04.txt will run for two weeks.
Please review this draft and send comments to the list. This document has
been around for a while, so if you have done a detailed review before, just
checking the changes now should be sufficient. In any case, the chairs want
to heard from everyone who has done a review and those who have decided for
or against doing an implementation of this in the near future.

--
Cyrus Daboo

_______________________________________________
sieve mailing list
sieve(_at_)ietf(_dot_)org
https://www.ietf.org/mailman/listinfo/sieve
_______________________________________________
sieve mailing list
sieve(_at_)ietf(_dot_)org
https://www.ietf.org/mailman/listinfo/sieve