KEP-0014.txt

Georg Greve greve at kolabsys.com
Thu Sep 15 16:30:49 CEST 2011


 KEP-0014.txt |   13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

New commits:
commit 9c95f235363d941f729ce7642bb36a94e9f96bf4
Author: Georg Greve <greve at kolabsys.com>
Date:   Thu Sep 15 16:30:13 2011 +0200

    Some more feedback, minor language tweaks

diff --git a/KEP-0014.txt b/KEP-0014.txt
index a2c876d..139fa90 100644
--- a/KEP-0014.txt
+++ b/KEP-0014.txt
@@ -153,12 +153,19 @@ When parsing an existing script, editor '''SHALL''' parse for the variables 'edi
 * '''Different, supported editor'''
 :If the variables are set and match a different editor and version which is supported by the editor reading the script, editor '''MAY''' parse the script normally and present it to the user for display/editing. When changing the file on the server, editor '''SHALL''' preserve the format of the editor and version which originally wrote the file and '''MUST''' preserve the variables accordingly. 
 * '''Different editor'''
-:If the variables are set and match a different editor, editor '''MAY''' attempt to parse the script. Upon success, editor '''SHALL''' default to presenting the user with the script for display in '''read-only''' mode. Editor '''MAY''' allow the user to edit the script if the user requests that the editor take ownership of this script. Upon replacing the script on the server the editor '''SHALL''' then write out the script in its own format and with the editor and version variables set to its own name and version.
+:If the variables are set and match a different editor, editor '''MAY''' attempt to parse the script. Upon success, editor '''SHALL''' default to presenting the user with the script for display in '''read-only''' mode. Editor '''MAY''' allow the user to edit the script, '''SHALL''' require postitive confirmation from the user for taking ownership by this editor, and '''MUST''' then write out the script in its own format and with the editor and version variables set to its own name and version.
 :If editor has not attempted to parse the script, or could not successfuly parse, it '''SHALL''' treat the script as read-only and '''MAY''' present it to the user as best it can, in raw format, or not at all.
 * '''Variables not set'''
-:If the variables are '''not''' set, editor '''SHALL''' assume a manually written script. It '''MAY''' attempt to parse the script and proceed as outlined in the 'Different editor' provisions, above.
+:If the variables are '''not''' set, editor '''SHALL''' assume a manually maintained script. It '''MAY''' attempt to parse the script and proceed as outlined in the 'Different editor' provisions, above.
 * '''Variables set to READONLY, NONE'''
-:If the editor variable is set to 'READONLY' and the version is set to 'NONE', editor '''SHALL''' treat the script as '''explicitly read only'''. It '''MAY''' attempt to parse and display, but it '''MUST''' never modify this script.
+:If the editor variable is set to 'READONLY' and the version is set to 'NONE', editor '''SHALL''' treat the script as '''explicitly read only'''. It '''MAY''' attempt to parse and display, but it '''SHALL NOT''' modify this script.
+
+==== Other provisions ====
+For IMAP servers which support {{rfc|2342}}<ref name="namespace1">{{rfc|2342|title=IMAP4 Namespace}}</ref>/{{rfc|4466}}<ref name="namespace2">{{rfc|2342|title=Collected Extensions to IMAP4 ABNF}}</ref> clients '''SHOULD''' make use of the NAMESPACE command to retrieve the values of the folder hierarchy delimiter or separator, and the prefixes for personal, shared and (other) user folders upon reading and writing sieve scripts to the server to ensure folders are correctly mapped.
+
+Editors '''MAY''' also want to check commands against IMAP ACLs to prevent creation of illegal rules at the time of editing the script, instead of during execution time.
+
+Editors '''MAY''' also want to take into account that not all IMAP servers support {{rfc|5232}}<ref name="sieve">{{rfc|5232|title=Sieve Email Filtering: Imap4flags Extension}}</ref> yet, but implement earlier draft versions of what became the RFC.
 
 ==== Sample user specific script ====
 





More information about the commits mailing list