Re: [netmod] Client validation text [was RE: YANG Versioning Weekly Call Minutes - 2021-04-06]

Andy Bierman <andy@yumaworks.com> Fri, 09 April 2021 17:00 UTC

Return-Path: <andy@yumaworks.com>
X-Original-To: netmod@ietfa.amsl.com
Delivered-To: netmod@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 874133A27AA for <netmod@ietfa.amsl.com>; Fri, 9 Apr 2021 10:00:35 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.887
X-Spam-Level:
X-Spam-Status: No, score=-1.887 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, SPF_HELO_NONE=0.001, T_SPF_PERMERROR=0.01, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20150623.gappssmtp.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 NbZzXB0jUMhX for <netmod@ietfa.amsl.com>; Fri, 9 Apr 2021 10:00:30 -0700 (PDT)
Received: from mail-lf1-x12f.google.com (mail-lf1-x12f.google.com [IPv6:2a00:1450:4864:20::12f]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 285FE3A27AF for <netmod@ietf.org>; Fri, 9 Apr 2021 10:00:29 -0700 (PDT)
Received: by mail-lf1-x12f.google.com with SMTP id v140so10794131lfa.4 for <netmod@ietf.org>; Fri, 09 Apr 2021 10:00:29 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to; bh=yUwBvONhM2SrHwMasxgS3JD4rno35nDNjTb3i8JGwQk=; b=VoqZbvPg4rGfUxg4a7utRZYwGPs6QW/akJAlSFWq5q45RVzEeyVoL7nK3LtUtiwF0h DFYHixeUZGaVz72RQkYG4TM0JGgJmv/pRg8ZX/fGQlA9h1iqQM8LReCI8CLCkc6yxhKN i1RcDCOjFZj5srVNUShJZgmopErgL4aAEFPFLe1R5Q0XSDksA+Y4kKbtiapx7DLqh7R2 1LSVxX9hQ32kklk7a4EbbV9ZjPEL4WW4ExJQBsHuMANhnHepr9Bbqu0dB3wgJ0DO9DtM jLeB6QIXE81ojdQxZzgl2GP28wTRZzEW2i0tPYbbxt/wMDBrd+1QOBmsBePft8TiycEh yfNg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=yUwBvONhM2SrHwMasxgS3JD4rno35nDNjTb3i8JGwQk=; b=BmjnLALGGxD2Lj2p9rq9DsMHQYAfWpDn5iWZx4pfrJk/24X/bDZsPVX4nn7f81jnNo 3bo8ZOFnUdUjG00wD7xFuFy7Zzd3bd9bajP6q+lt5+W6ToYjK3r8J+9A4yiWe07WTvBT 4jIva5/v4o3df7eu/1V/RyV8+oin80HHHLr0ScezQovfzzYfXTohmBo78THjr9LmvgYK o9nZvdiYO4hBIoHl902Tv5rVXbFGBr4hH6j3S//i4i6I/AYScfyH3OSAdn3K9KUtCn2b wLa7X5VXHqH0BPhf7jSuTQaQeb+wiUILoIqrptpo0nuyg71YAe2MfRAcI75WrbBF2nDy VJ7w==
X-Gm-Message-State: AOAM532fWFQ/WnCyN/UkKNJxWSKuF8N9LPJOSkHBfHnKHOfzVjECMdwa AVPshOZZsdGsl9lXoJj2I4b8XGvF+bGSYBToOqUBuA==
X-Google-Smtp-Source: ABdhPJxL3GzKtMLerntKBMQoNrC4soUXinv8LjbtJ5aRE/y+hlJ3UUOCUBjR283fZXrF5fudrLCaG62VS76RL06E1SU=
X-Received: by 2002:a05:6512:3e27:: with SMTP id i39mr4879275lfv.38.1617987626725; Fri, 09 Apr 2021 10:00:26 -0700 (PDT)
MIME-Version: 1.0
References: <MN2PR11MB4366255A77C76D9004360169B5759@MN2PR11MB4366.namprd11.prod.outlook.com> <DM6PR08MB5084935EDB6AB7718B695BAA9B749@DM6PR08MB5084.namprd08.prod.outlook.com> <20210408185127.l7cafoeq6svs4ns4@anna.jacobs.jacobs-university.de> <DM6PR08MB5084D71FD6FF7F029318AFD69B739@DM6PR08MB5084.namprd08.prod.outlook.com> <20210409133901.ifffu3jg4cghyji6@anna.jacobs.jacobs-university.de> <DM6PR08MB50845720309BE411A3FECBEF9B739@DM6PR08MB5084.namprd08.prod.outlook.com> <20210409135308.4nrlvndnj3phjih4@anna.jacobs.jacobs-university.de> <DM6PR08MB508470734D8E5AE99FDE2C859B739@DM6PR08MB5084.namprd08.prod.outlook.com> <20210409141935.xsjj5c272rq453u5@anna.jacobs.jacobs-university.de>
In-Reply-To: <20210409141935.xsjj5c272rq453u5@anna.jacobs.jacobs-university.de>
From: Andy Bierman <andy@yumaworks.com>
Date: Fri, 09 Apr 2021 10:00:15 -0700
Message-ID: <CABCOCHQQuxd=X3BDSu3mFVa7ZbFH=3McA=pQqsoz+n002y=74Q@mail.gmail.com>
To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>, "Sterne, Jason (Nokia - CA/Ottawa)" <jason.sterne@nokia.com>, "Rob Wilton (rwilton)" <rwilton@cisco.com>, "netmod@ietf.org" <netmod@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000be0cca05bf8d1985"
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/r3uSD2Stnky4rbKWncaOmJR1BO0>
Subject: Re: [netmod] Client validation text [was RE: YANG Versioning Weekly Call Minutes - 2021-04-06]
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: NETMOD WG list <netmod.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/netmod>, <mailto:netmod-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/netmod/>
List-Post: <mailto:netmod@ietf.org>
List-Help: <mailto:netmod-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/netmod>, <mailto:netmod-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 09 Apr 2021 17:00:36 -0000

On Fri, Apr 9, 2021 at 7:19 AM Juergen Schoenwaelder <
j.schoenwaelder@jacobs-university.de> wrote:

> Creating lots of special rules makes me feel uncomfortable. Is there
> evidence that people reduce state value spaces a lot and in isolation,
> i.e., they just rev a module to reduce some state value spaces?
>
>
The IETF does not typically focus this much on implementation details.
(Like I need the IETF to write "MUST NOT crash" in an RFC to get better
code. ;-)

Do we need 20 pages of rules on how to increment a SEMVER?
I sure hope not. The client app still needs to access specific objects and
it depends on
the implementation details how to handle NBC changes.  The SEMVER value is
not
very useful at the YANG object level, where the code needs to focus.



/js
>

Andy


>
> On Fri, Apr 09, 2021 at 02:00:42PM +0000, Sterne, Jason (Nokia -
> CA/Ottawa) wrote:
> > The key focus here is *if* the author does remove the enum, then how
> should we label the revision -> BC or NBC ?
> >
> > RFC7950 does indeed say that is NBC.  But do we actually want that for
> state for:
> > - removing an enum
> > - shrinking a range
> > - changing a pattern in a manner that reduces the value space
> >
> > We're worried that will create too much "NBC noise" when it really in
> practice won't be an issue at all for clients.  Client just won't receive
> the old values from the larger value space anymore.  So why flag this as
> NBC and make people do work to analyze it ?
> >
> > Jason
> >
> > > -----Original Message-----
> > > From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
> > > Sent: Friday, April 9, 2021 9:53 AM
> > > To: Sterne, Jason (Nokia - CA/Ottawa) <jason.sterne@nokia.com>
> > > Cc: Rob Wilton (rwilton) <rwilton@cisco.com>; netmod@ietf.org
> > > Subject: Re: [netmod] Client validation text [was RE: YANG Versioning
> > > Weekly Call Minutes - 2021-04-06]
> > >
> > > I do not recall that removing an enum was ever an issue in
> > > practice. If an enum value is not used anymore, you leave the old enum
> > > value and it will slowly but surely not be used anymore. (An enum
> > > statement even has a status statement, so you can deprecate or
> > > obsolete enum values.) That said, if the module owner decides to
> > > remove the value, then this is indeed non-backwards compatible. (And
> > > removing an enum paves the way to reallocate the associated number,
> > > and be it by accident later again. I suggest people think twice
> > > before removing enums.)
> > >
> > > /js
> > >
> > > On Fri, Apr 09, 2021 at 01:43:09PM +0000, Sterne, Jason (Nokia -
> CA/Ottawa)
> > > wrote:
> > > > Urghh.  I reversed my example.  I should have said removing an
> enum.  Let
> > > me reword:
> > > >
> > > > One key example is this:  7950 says that removing an enum from an
> > > enumeration leaf is NBC (and that applies to state). But that may not
> really
> > > be how most implementations would want to treat state. Would we really
> > > want to flag a module as non backwards compatible when a state leaf
> has an
> > > enum removed?  Wouldn't that create a lot of unnecessary noise?
> > > >
> > > > > -----Original Message-----
> > > > > From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
> > > > > Sent: Friday, April 9, 2021 9:39 AM
> > > > > To: Sterne, Jason (Nokia - CA/Ottawa) <jason.sterne@nokia.com>
> > > > > Cc: Rob Wilton (rwilton) <rwilton@cisco.com>; netmod@ietf.org
> > > > > Subject: Re: [netmod] Client validation text [was RE: YANG
> Versioning
> > > > > Weekly Call Minutes - 2021-04-06]
> > > > >
> > > > > On Fri, Apr 09, 2021 at 01:32:15PM +0000, Sterne, Jason (Nokia -
> > > CA/Ottawa)
> > > > > wrote:
> > > > >
> > > > > > One key example is this:  7950 says that adding another enum to
> an
> > > > > enumeration leaf is NBC (and that applies to state). But that may
> not
> > > really
> > > > > be how most implementations would want to treat state. Would we
> > > really
> > > > > want to flag a module as non backwards compatible when a state leaf
> > > gets an
> > > > > additional enum?  Wouldn't that create a lot of unnecessary noise?
> > > > >
> > > > > I read this in RFC 7950:
> > > > >
> > > > >    o  An "enumeration" type may have new enums added, provided the
> > > old
> > > > >       enums's values do not change.  Note that inserting a new enum
> > > > >       before an existing enum or reordering existing enums will
> result
> > > > >       in new values for the existing enums, unless they have
> explicit
> > > > >       values assigned to them.
> > > > >
> > > > > What do you want this to change to?
> > > > >
> > > > > /js
> > > > >
> > > > > --
> > > > > Juergen Schoenwaelder           Jacobs University Bremen gGmbH
> > > > > Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen |
> Germany
> > > > > Fax:   +49 421 200 3103         <https://www.jacobs-university.de/
> >
> > >
> > > --
> > > Juergen Schoenwaelder           Jacobs University Bremen gGmbH
> > > Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
> > > Fax:   +49 421 200 3103         <https://www.jacobs-university.de/>
>
> --
> Juergen Schoenwaelder           Jacobs University Bremen gGmbH
> Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
> Fax:   +49 421 200 3103         <https://www.jacobs-university.de/>
>
> _______________________________________________
> netmod mailing list
> netmod@ietf.org
> https://www.ietf.org/mailman/listinfo/netmod
>