Re: [Jmap] Submission

Ned Freed <ned.freed@mrochek.com> Sun, 23 April 2017 23:37 UTC

Return-Path: <ned.freed@mrochek.com>
X-Original-To: jmap@ietfa.amsl.com
Delivered-To: jmap@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id B4153127078 for <jmap@ietfa.amsl.com>; Sun, 23 Apr 2017 16:37:23 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.002
X-Spam-Level:
X-Spam-Status: No, score=-2.002 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RP_MATCHES_RCVD=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=mrochek.com
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 wAsSVN_7DsFp for <jmap@ietfa.amsl.com>; Sun, 23 Apr 2017 16:37:22 -0700 (PDT)
Received: from mauve.mrochek.com (mauve.mrochek.com [68.183.62.69]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 4AFB7127076 for <jmap@ietf.org>; Sun, 23 Apr 2017 16:37:22 -0700 (PDT)
Received: from dkim-sign.mauve.mrochek.com by mauve.mrochek.com (PMDF V6.1-1 #35243) id <01QDITVTCROW0083TI@mauve.mrochek.com> for jmap@ietf.org; Sun, 23 Apr 2017 16:32:19 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=mrochek.com; s=mauve; t=1492990338; bh=7ZAW2Mg4biMgQNxEqcNQI6l+iygDOT8n1LK6YjwC+Io=; h=Cc:Date:From:Subject:In-reply-to:References:To; b=HjmmN4OiCqYWLv9b7va5s+eBvJDQAKTwX8TL69nlEtHjkNz7W2ahAw4mDtOxw7m7l URK4cVUFswYgLdEJlhIArKjuN3Ffcm2ux6KbYAuGmUBLHbOAHQR3opXSfyOZhaFgu4 Yompbsrujl701Xf2odx9PdFQiHV7P6MSaUQQ76ew=
MIME-version: 1.0
Content-transfer-encoding: 7bit
Content-type: TEXT/PLAIN; CHARSET="us-ascii"
Received: from mauve.mrochek.com by mauve.mrochek.com (PMDF V6.1-1 #35243) id <01QD64433M0W00005B@mauve.mrochek.com>; Sun, 23 Apr 2017 16:32:16 -0700 (PDT)
Cc: Ned Freed <ned.freed@mrochek.com>, jmap@ietf.org
Message-id: <01QDITVRJT3O00005B@mauve.mrochek.com>
Date: Sun, 23 Apr 2017 16:13:36 -0700
From: Ned Freed <ned.freed@mrochek.com>
In-reply-to: "Your message dated Fri, 21 Apr 2017 11:27:57 -0400" <65CA1C64-ACD9-4AF5-8ED4-59D4285B5A8D@fugue.com>
References: <20170419163429.8556.qmail@ary.lan> <87d1c873cf.fsf@fifthhorseman.net> <alpine.OSX.2.20.1704191353500.43511@ary.qy> <01QDEV2QM6XC00005O@mauve.mrochek.com> <BC098A22-2837-4316-822A-27232A896EF1@fugue.com> <01QDFJV9BBBS00005O@mauve.mrochek.com> <65CA1C64-ACD9-4AF5-8ED4-59D4285B5A8D@fugue.com>
To: Ted Lemon <mellon@fugue.com>
Archived-At: <https://mailarchive.ietf.org/arch/msg/jmap/CcmX51QEdYwkbNxLd-KclkSAVsE>
Subject: Re: [Jmap] Submission
X-BeenThere: jmap@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: JSON Message Access Protocol <jmap.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/jmap>, <mailto:jmap-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/jmap/>
List-Post: <mailto:jmap@ietf.org>
List-Help: <mailto:jmap-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/jmap>, <mailto:jmap-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 23 Apr 2017 23:37:24 -0000

> On Apr 21, 2017, at 11:02 AM, Ned Freed <ned.freed@mrochek.com> wrote:
> > The issue is semantics, not syntax. If your design locks you in to a
> > particular set of semantics that cannot be extended - which is what any
> > design that fails to allow for capability discovery and attachment of
> > arbitrary parameters - you've put yourself in a position where you need
> > to continually revise things in order to keep them synchronized as the
> > capabilities of the transport infrasture continue to evolve.

> Yes, I hear this concern. I'm saying that it's to be weighed against the
> benefits of making the JMAP submission protocol primary, rather than nailing it
> to SMTP submission.

This is a entirely false dichotomy of choices you have going here. Nobody is
proposing "nailing it to SUBMIT". All anyone is saying is that you need to
have a means of specifying the envelope separate from the message and its
headers, and that the envelope needs to be extensible.

Aside from the fact that SUBMIT happens to be a protocol that implements these
semantics (actually with some limitations that probably should be removed in
JMAP), this has nothing to do with using SUBMIT.

If, given this framework or a superset of it, you want you implement mechanisms
that cannot be implemented in SUBMIT, that's an entirely separate discussion,
and I look forward to the specification describing such a mechanism.

The long and short of it is I really don't understand why you persist in
worrying about SUBMIT, but since neither of these fundamental concepts we're
concerned with having in JMAP originated in SUBMIT or even SMTP, maybe it would
help to name them after where they did (AFAIK) originate.

So if I say "IFIP style envelope/message separation" and "X.400-1988
style extensible envelope parameters", does it help?

> And as a practical matter, as Arnt said, if SMTP submission continues to be
> the place where innovation occurs, then this means implementations will have to
> follow that.

Indeed it does. And without having the right semantics they will do so slowly
and painfully.

> I don't think it's fair to assume that preserving the semantics of SMTP
> submission in JMAP submission is going to get you to a place of win.

Again with characterizing this as all about SUBMIT. It isn't.

> Any JMAP implementation that doesn't use SMTP submission as a backend  is
> still going to have to track SMTP submission RFCs, or else there will be
> interop problems.

Actually, no, it won't. We've been down this path before with nonextensible
submission APIs of various sorts. It has not gone well.

> For such implementations, the need for a JMAP RFC to track relevant new
> functionality added to SMTP submit is good, not bad.

So rather than having a clean extensible architecture with minimal costs to
use, you're arguing that we should start with a much more limited architecture 
that requires unnnecessary specifications to extend?

This strikes me as fundamentally wrongminded.

> For the use case you are concerned about, I think it doesn't matter; the
> point I am making here is just that that is not the only use case we ought to
> consider.

If you can name a possible use case that is hindered by having an extensible
separate envelope, I'd love to hear what it is and why this is the case.

				Ned