Re: [calsify] RFC7986 and EMAIL parameter

Neil Jenkins <neilj@fastmailteam.com> Fri, 19 February 2021 09:15 UTC

Return-Path: <neilj@fastmailteam.com>
X-Original-To: calsify@ietfa.amsl.com
Delivered-To: calsify@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 681443A12C5 for <calsify@ietfa.amsl.com>; Fri, 19 Feb 2021 01:15:10 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.096
X-Spam-Level:
X-Spam-Status: No, score=-2.096 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_BLOCKED=0.001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=fastmailteam.com header.b=Z83l+/qZ; dkim=pass (2048-bit key) header.d=messagingengine.com header.b=cLFsjzoY
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 4-Ra8_XZB_TQ for <calsify@ietfa.amsl.com>; Fri, 19 Feb 2021 01:15:09 -0800 (PST)
Received: from out3-smtp.messagingengine.com (out3-smtp.messagingengine.com [66.111.4.27]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 17FF63A12C3 for <calsify@ietf.org>; Fri, 19 Feb 2021 01:15:09 -0800 (PST)
Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailout.nyi.internal (Postfix) with ESMTP id 6480F5C007E; Fri, 19 Feb 2021 04:15:08 -0500 (EST)
Received: from imap7 ([10.202.2.57]) by compute3.internal (MEProxy); Fri, 19 Feb 2021 04:15:08 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= fastmailteam.com; h=mime-version:message-id:in-reply-to :references:date:from:to:subject:content-type; s=fm2; bh=Ov7uzMF RxdF/YAlhkkcTaq1kW2JUnKcMDzAccsxweOQ=; b=Z83l+/qZ+l1zjTNyPnn+QJp vZv2FRUCgs7ZZtMlmX0ixOuqCkqgBHv30DjMjZg8BtqC5Xpb1oFVuXjlKr6FDkty dfv1/z8OT6VN5GPVaKzsToELGRpX8/hdAWV7vddbT2WiQfB2N7XZMhP0uGQlxFu3 DTXGDxA0TgXuWXLctMR7uTgrbdn9WAchTcARsWXWfpeSWTKbxBcXqUjMCQC2dion aPjfoLQCv45thN3QlppTWGktKsjZLHXFe7+tI6bSckAwM0JViMDOhf2O74c/Viv6 IyT0hsVbucemNC8RwRz4CfYSzTYiiWwyqLjFd/ltjFoxX7MRq27c+cJ2OWpoINQ= =
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm2; bh=Ov7uzM FRxdF/YAlhkkcTaq1kW2JUnKcMDzAccsxweOQ=; b=cLFsjzoYgag/3zoWE5tWZX pXWmi0hXkeEx1PlQGR0An7RYVcz1KGPqmET++9qLSQ41Bm9bbhGZNSP98x12lwnd /qWgeMJDEICuAt0XNssa9oLATimBv0gebCdYcY06ZrgYKCIiXCjOLEqU6gy/1F22 NQYugQNY1hnsDC0anc4pRuoDLIFTp4vT8PmDr4OM15zEcI2Uwgubvis1c0WVRf5p tg7CYeluR98UH3gd0XH1R+Y2H29EKP7aGmCIsqyAUVbHTJZqibKjJNySvZdWygVY d8fUy71x7x9UQuP6KJecET6DgFW1q3cBWSVJVX2iIJfgGEFJ7YpbjSjnr3/hSWCA ==
X-ME-Sender: <xms:m4EvYJIobWgEd6CVOQBu_UaGUnbZYQQrUWeYtDUbqgc8WN1XewBErQ> <xme:m4EvYFKOe9N302Q_YnvVy9OCVaii5gro7YrrfmrfnGS8ptBUwZ5Sjlccj5kWLOnaZ wXgd8lOFKDQOg>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduledrjeeigddtudcutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc fjughrpefofgggkfgjfhffhffvufgtsegrtderreerredtnecuhfhrohhmpedfpfgvihhl ucflvghnkhhinhhsfdcuoehnvghilhhjsehfrghsthhmrghilhhtvggrmhdrtghomheqne cuggftrfgrthhtvghrnhepvedvtedvudelkefhgefhteeftedtlefhheefveffveelkedu tdduffeiveejvefhnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilh hfrhhomhepnhgvihhljhesfhgrshhtmhgrihhlthgvrghmrdgtohhm
X-ME-Proxy: <xmx:m4EvYBudcVQzr_G6eGApr-pDJNJ0Dvfe7fQE_Xa7VHk5w3G4QJViuA> <xmx:m4EvYKaSTYvwCQZxHR-E40qj70glIipctWJmYCYuPDvS9jTHsZ-iQQ> <xmx:m4EvYAZZFGPqn18bKjeNS-L5iE5xw10S4lKSt3HuP1reeMG6q1MC3Q> <xmx:nIEvYG158O9P4iImxwc-xwkZB0vyQHQxmBvsflKB-G7c6oiJkLueAw>
Received: by mailuser.nyi.internal (Postfix, from userid 501) id 3E1B336005C; Fri, 19 Feb 2021 04:15:07 -0500 (EST)
X-Mailer: MessagingEngine.com Webmail Interface
User-Agent: Cyrus-JMAP/3.5.0-alpha0-141-gf094924a34-fm-20210210.001-gf094924a
Mime-Version: 1.0
Message-Id: <7f87de4f-5047-49f7-90e9-79eca4046a31@dogfood.fastmail.com>
In-Reply-To: <f7a8cc4c-6ed7-4fff-a719-ac577ee407ab@cyrus.local>
References: <e1e7222e-8c6e-40b3-a8cf-a45982acb00c@dogfood.fastmail.com> <f7a8cc4c-6ed7-4fff-a719-ac577ee407ab@cyrus.local>
Date: Fri, 19 Feb 2021 20:14:54 +1100
From: "Neil Jenkins" <neilj@fastmailteam.com>
To: "Cyrus Daboo" <cyrus@daboo.name>, calsify@ietf.org
Content-Type: multipart/alternative; boundary=bc9ed706a2ca4b529243e19ac95f4967
Archived-At: <https://mailarchive.ietf.org/arch/msg/calsify/KKL4WdTFAmHUoHNlWTkIPnNBDU8>
Subject: Re: [calsify] RFC7986 and EMAIL parameter
X-BeenThere: calsify@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: <calsify.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/calsify>, <mailto:calsify-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/calsify/>
List-Post: <mailto:calsify@ietf.org>
List-Help: <mailto:calsify-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/calsify>, <mailto:calsify-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 19 Feb 2021 09:15:10 -0000

On Fri, 19 Feb 2021, at 14:23, Cyrus Daboo wrote:
> Can't we just use the URI scheme to determine the method? Why do we need 
> 'imip' and 'other' nested keys?

The reason for nested keys is that you might have multiple. For example, at some point I'd like to look again at standardising an HTTP protocol we can use between servers rather than having to keep using iMIP forever. To invite someone external, you would still start by sending an iMIP email, as otherwise we still have the identity problem (we don't know where your calendar is, we just have your email). However, the invitation can include a JSCalendar version as well as the iCalendar version (for backwards compat), and the JSCalendar `replyTo` property can have entries for both imip and also the new protocol. If the invitee's calendar supports it, it can "upgrade" to the new protocol by replying with that instead of iMIP. If not, the iMIP option is still there.

As to why the values have keys instead of just an array of URIs where you just look at the scheme, it's mainly because it's more ergonomic: if my app just supports iMIP, I'll just look for an imip key. If I support multiple, I can quickly check for their presence in order of my preferred priority without having to scan. And of course we could end up with multiple HTTP protocols although I agree it would probably be better to give these unique schemes.

Neil.