Re: [calsify] Working Group Last Call: draft-ietf-calext-subscription-upgrade-07

Michael Douglass <mikeadouglass@gmail.com> Mon, 20 February 2023 05:22 UTC

Return-Path: <mikeadouglass@gmail.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 CFC62C14CE2B for <calsify@ietfa.amsl.com>; Sun, 19 Feb 2023 21:22:04 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.095
X-Spam-Level:
X-Spam-Status: No, score=-2.095 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, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, NICE_REPLY_A=-0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id YR6fwbsrWCT7 for <calsify@ietfa.amsl.com>; Sun, 19 Feb 2023 21:22:03 -0800 (PST)
Received: from mail-qt1-x830.google.com (mail-qt1-x830.google.com [IPv6:2607:f8b0:4864:20::830]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id EB27FC14CEFF for <calsify@ietf.org>; Sun, 19 Feb 2023 21:21:49 -0800 (PST)
Received: by mail-qt1-x830.google.com with SMTP id w23so124415qtn.6 for <calsify@ietf.org>; Sun, 19 Feb 2023 21:21:49 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=in-reply-to:from:references:to:content-language:subject:user-agent :mime-version:date:message-id:from:to:cc:subject:date:message-id :reply-to; bh=2yBNAtY8MmO9jfbesl8JtiKE6WxJyz9HiuETv0kF/HE=; b=WdKp+vVuxT+WQ36XIxjoUk/OZmwTu2vgaL31eHUMJu1/xVrBOgyt8qJYBPkzmH6Zrq aBsI3+WeR3dPddBv1DuhOK566kS06ry5S6CTivAzoMWSj7M3V/WQrnY79gIdphd0Bvbp 7GWXnrRne9W+fhfv7gvBbnOw337pfHvjyTLgwRgDOMC8aHDODQLlAa9k/znIbTStJ/CB GJlFdSgPEc2qLzS07jmRbAI52/H2VKeCgjzFb4+OejkdqE9w6XPAcaVyyiHczbVDbvcK FHrgZNpzfiLj2W3pcmPsZebVZockv6NiMV53q83K0AZ04T7i65n0Stnl0m0jzleI4pQl tqnA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:from:references:to:content-language:subject:user-agent :mime-version:date:message-id:x-gm-message-state:from:to:cc:subject :date:message-id:reply-to; bh=2yBNAtY8MmO9jfbesl8JtiKE6WxJyz9HiuETv0kF/HE=; b=C/s4S1RRi7wsXpFMt5U9fMKGuAvRZ/N2VlXP6XbO8UiKS2zzlUgUzF6ts8Owz2uRBo BSKegyLCZK+e627A7ACcp5vgs6DI+51sYT0shQyWEQXUCdrQhgVZ4Ga143naUW2NuH4o qCuSJA/8hBIf8eC/XXIZCc73dJfM4OP8WkH36F08syOk5ff2o84NJlPWo6Lhur5Bl+ww vbZ1Z3iYzyovXzhMHCtrgaUecOjq3GEHx3jzamL/cZZEdJFWU9exaVM6ZkkvtQb1CROf OcumFErv1rVjH/K6GTdfL0ZOzkkfI8THIo0Q8wFAC7elGl8WgZigTVjjSssgGAvl2hx/ AcLw==
X-Gm-Message-State: AO0yUKVgqU/MZJLrWslbLdf8Vx8P/W83QG9EGzE+WuRY0CEUDWDPuxTm 3JkNsR6h3lOG1wpSsT04/oM=
X-Google-Smtp-Source: AK7set9z9Ymqz8NxI60Cm3sfoxqcCwdTpj9dH0YNRx+dIj4tTVLhzwxsmxplx2JtzYFu7ER75pan5A==
X-Received: by 2002:ac8:5f4f:0:b0:3b8:6bab:1e4d with SMTP id y15-20020ac85f4f000000b003b86bab1e4dmr14152081qta.51.1676870508651; Sun, 19 Feb 2023 21:21:48 -0800 (PST)
Received: from [192.168.1.150] (cpe-74-70-70-237.nycap.res.rr.com. [74.70.70.237]) by smtp.googlemail.com with ESMTPSA id g1-20020ac80701000000b003b6325dfc4esm8221760qth.67.2023.02.19.21.21.47 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 19 Feb 2023 21:21:48 -0800 (PST)
Content-Type: multipart/alternative; boundary="------------3hltrak9rZbemyQyw7ON8G4l"
Message-ID: <5322b9ab-e7b3-35d7-3e26-b84fddcabdd3@gmail.com>
Date: Mon, 20 Feb 2023 00:21:47 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.7.2
Content-Language: en-US
To: Bron Gondwana <brong@fastmailteam.com>, calsify@ietf.org
References: <ea719614-4c86-4db7-9a3c-d933a813d979@app.fastmail.com> <62cd4cba-1797-42ba-997f-edf7182b0c24@app.fastmail.com>
From: Michael Douglass <mikeadouglass@gmail.com>
In-Reply-To: <62cd4cba-1797-42ba-997f-edf7182b0c24@app.fastmail.com>
Archived-At: <https://mailarchive.ietf.org/arch/msg/calsify/h9USV6oLNOgob12UFkw8GFrFa-g>
Subject: Re: [calsify] Working Group Last Call: draft-ietf-calext-subscription-upgrade-07
X-BeenThere: calsify@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: Calendaring and Scheduling Standards Simplification <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: Mon, 20 Feb 2023 05:22:05 -0000

And here's my very belated response...

Just published 08 with these changes

On 11/10/22 12:41, Bron Gondwana wrote:
> Here's my shepherd review as promised!
>
> *Substantive comments:*
>
> The first "SHOULD" here should be a "MUST".  There's no reasonable 
> world in which anything else is legitimate there other than an error 
> if the server isn't working properly, and "SHOULD" isn't for hedging 
> against server failures.
>
> The second "SHOULD" is legit because a server could be reverted to an 
> old version which doesn't support this and just returns the resource 
> without understanding the headers.
>
>     If no Sync-Token header field is supplied the server SHOULD respond
>     with a full set of data.  Otherwise, if the token is valid, it SHOULD
>     return with a set of changed entities.
>
> ---
>
> This is fuzzy.  Is it SHOULD?  Is it MUST?  I'd probably say MUST for 
> the second case and SHOULD for the first, following the logic from 
> above.  If you're sending a partial then you MUST put the 
> Preference-Applied, and you SHOULD if sending the whole resource.
>
>     In both cases the server should set the Preference-Applied header
>     field and a new Sync-Token header field value.
>
Replaced this section with these paras

    If no Sync-Token header field is supplied or the token is invalid the
    server MUST respond with a full set of data and SHOULD set the
    Preference-Applied header field and a new Sync-Token header field
    value.

    Otherwise, (the token is valid), it SHOULD return with a set of
    changed entities and MUST set the Preference-Applied header field and
    a new Sync-Token header field value.

> ---
>
> Again, this should be a MUST.  The client MUST respond to a 409 error 
> by starting from scratch. Anything else doesn't make progress.
>
>     The client SHOULD respond to this error by restarting the interaction
>     from scratch, i.e. retrieve the full set of data then poll for
>     updates.
>
Changed to MUST
> ---
>
> This seems like an interop pain - given that the alternative is just 
> fetching the whole thing.  I would at least gate this with "If the 
> prefer header was set" as above, and then say that if the server 
> limits the response then the behaviour MUST be as if the client had 
> provided a preference for that size.
>
>     A server MAY choose to limit the response size.  The behavior SHOULD
>     be as if the client had provided a preference for that size -
>     allowing the client to retrieve the full set of data in batches.
>
Changed to MUST
> ---
>
> Do you mean |sync-token = DQUOTE URI DQUOTE| here?  And maybe |accept 
> /= sync-token| if there's an ABNF being extended
>
> 6.  Header Field: Sync-Token
>
>     This specification defines a new header field Sync-Token for use by
>     the enhanced GET method.
>
>         Accept = DQUOTE URI DQUOTE
It should have been sync-token not accept. Changed
>
> ---
>
> *Open Issues**:
> *
>
> Confirm correct use of Vary header and remove the open issues section.
>
> ---
>
> *Nits:**
> *
>
> There's probably a missing comma after mechanism here...
>
>     The use of subscription upgrade may help reduce load on servers, but
>     perhaps more importantly it allows mobile devices to use a more
>     efficient update mechanism reducing data transferred and presumably
>     improving battery life.
Done
>
> ---
>
> Should VARY be all caps?
>
>     To enable proper caching of responses the server SHOULD provide a
>     VARY header field in responses that names the Prefer and Sync-Token
>     header fields along with any other that are appropriate.
>
Probably not
> ...
>
> I think that's it :)
>
> Thanks,
>
> Bron.
>
> On Mon, Oct 24, 2022, at 20:33, Bron Gondwana wrote:
>> Hi all,
>>
>> This email starts a 2 week working group last call for 
>> https://datatracker.ietf.org/doc/draft-ietf-calext-subscription-upgrade/ 
>> - my fault that this wasn't done ages ago but I can't see emails to 
>> the effect and if they were, it's been a while!
>>
>> Please post any comments / queries / objections to this thread.  If 
>> nothing, I'll push the buttons at IETF115 in a couple of weeks and 
>> finally ship this thing to the IESG (as our milestones suggest was 
>> going to have happened in August)
>>
>> Thanks,
>>
>> Bron.
>>
>> --
>>   Bron Gondwana, CEO, Fastmail Pty Ltd
>> brong@fastmailteam.com
>>
>>
>
> --
>   Bron Gondwana, CEO, Fastmail Pty Ltd
> brong@fastmailteam.com
>
>