[apps-discuss] Pete Resnick's Yes on draft-ietf-appsawg-json-merge-patch-06: (with COMMENT)

"Pete Resnick" <presnick@qti.qualcomm.com> Thu, 21 August 2014 14:33 UTC

Return-Path: <presnick@qti.qualcomm.com>
X-Original-To: apps-discuss@ietfa.amsl.com
Delivered-To: apps-discuss@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 2F3E81A87CA; Thu, 21 Aug 2014 07:33:30 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level:
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9] autolearn=ham
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 8dQVru4W29ZO; Thu, 21 Aug 2014 07:33:28 -0700 (PDT)
Received: from ietfa.amsl.com (localhost [IPv6:::1]) by ietfa.amsl.com (Postfix) with ESMTP id 042CC1A031A; Thu, 21 Aug 2014 07:33:21 -0700 (PDT)
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
From: Pete Resnick <presnick@qti.qualcomm.com>
To: The IESG <iesg@ietf.org>
X-Test-IDTracker: no
X-IETF-IDTracker: 5.6.2.p5
Auto-Submitted: auto-generated
Precedence: bulk
Message-ID: <20140821143321.30781.95418.idtracker@ietfa.amsl.com>
Date: Thu, 21 Aug 2014 07:33:21 -0700
Archived-At: http://mailarchive.ietf.org/arch/msg/apps-discuss/9dwze0Ee39jyvRW2ztBzDq2N-ak
Cc: appsawg-chairs@tools.ietf.org, draft-ietf-appsawg-json-merge-patch@tools.ietf.org, apps-discuss@ietf.org
Subject: [apps-discuss] Pete Resnick's Yes on draft-ietf-appsawg-json-merge-patch-06: (with COMMENT)
X-BeenThere: apps-discuss@ietf.org
X-Mailman-Version: 2.1.15
List-Id: General discussion of application-layer protocols <apps-discuss.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/apps-discuss>, <mailto:apps-discuss-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/apps-discuss/>
List-Post: <mailto:apps-discuss@ietf.org>
List-Help: <mailto:apps-discuss-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/apps-discuss>, <mailto:apps-discuss-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 21 Aug 2014 14:33:30 -0000

Pete Resnick has entered the following ballot position for
draft-ietf-appsawg-json-merge-patch-06: Yes

When responding, please keep the subject line intact and reply to all
email addresses included in the To and CC lines. (Feel free to cut this
introductory paragraph, however.)


Please refer to http://www.ietf.org/iesg/statement/discuss-criteria.html
for more information about IESG DISCUSS and COMMENT positions.


The document, along with other ballot positions, can be found here:
http://datatracker.ietf.org/doc/draft-ietf-appsawg-json-merge-patch/



----------------------------------------------------------------------
COMMENT:
----------------------------------------------------------------------

My previous DISCUSS asked for some textual description of the pseudocode.
It turns out that the WG attempted that and was unable to come up with
something clear enough to produce interoperable implementations. That's a
bummer, but I am willing to take the WG's word that they tried.

I will only suggest adding some text after the pseudocode to assist folks
in noticing some of the "interesting" aspects of the patch procedure:

   Note: This algorithm has some results that might not be immediately
   obvious to the implementer:

   - If the Patch is not itself an object, the Patch replaces the entire
     contents of the Target.

   - The Patch can only affect the entire value of a member of a Target
     object. In particular, a Patch cannot change members of an array;
     it can only replace or delete the entire array.

If the WG thinks there are other things worth mentioning, it might help
the implementer. As I said previously, it did take me re-reading the
pseudocode several times to truly understand the semantics, and if an
implementer needs to structure their code differently than the
pseudocode, it would be nice to point out some possibly tricky bits.