Re: [netmod] Adoption of versioning design team docs

"Sterne, Jason (Nokia - CA/Ottawa)" <jason.sterne@nokia.com> Fri, 13 March 2020 16:54 UTC

Return-Path: <jason.sterne@nokia.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 EE5DE3A0DEC; Fri, 13 Mar 2020 09:54:00 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.364
X-Spam-Level:
X-Spam-Status: No, score=-3.364 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_MSPIKE_H2=-1.463, 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=nokia.onmicrosoft.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 rPw00Ka5bfaC; Fri, 13 Mar 2020 09:53:59 -0700 (PDT)
Received: from NAM10-BN7-obe.outbound.protection.outlook.com (mail-bn7nam10on2118.outbound.protection.outlook.com [40.107.92.118]) (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 1133B3A0E79; Fri, 13 Mar 2020 09:53:58 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=GUUWK++uRMZjmLfyJQotrRwCOed5q8Tf9OqIbLgFBdiQpmAoSjebInvWKENZZ1O70IldPbQsqBvNMxbu3TAtMmr4BZIYdP0zr0J9R6jsJ4lk4DPeOb4tvIBtl5UZpv9k3bO7xuS3B1czoFPmW/ZYAJScAOqR945e/44r3afs5vhSVNOjwAfosL3U8bGfuibjKIsAhBY2DwOPbSOEzA5dkB/9m1tB9Mr2CW0URL+LMrXB0IMw8B4JYezYi55XGWdqHkwI7FfbSfRnhebJ38qPdtKwwDQKRYbYRP9b4jXoj2JiZoQjdCFrcGcU6qzzsTF0eJc0TYVKUtStoOv2zXkenA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;bh=VKXuryrZxBLK75YNmrRwE3bJdCVZTadYM4huUpt2RgE=; b=QMzPD+zOQpkGNNhAt2nPaxD/ZTBzoDcZN4rlA4AP4MyBT9CESRK7j3ijGBV5J4V/SelU5yZ/+LSApejMbXWG6uIS5xfGf/iivVcQJbKTvG58g6cnWESD47O0Rb5wGOCljI6175B77y0BNEPfuq4Nx6jmVBnOiIpq2HhVuVJPzKsIyQbiAE5fJz7Gq0IdP8gFzROxpWI1eOaHl9JDfpybzc7UMprpgG23o+VN8vVhxlj8TPln6h7XyxQdK3w9C4AUUp1WAnn+bGFhfpyMI/tQoXWKic2X8Lv/NTqiPPescblb4d4c1fepsmrrDp1Y0K4FqFkeRwYg8RFsl6nC00RdIw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nokia.com; dmarc=pass action=none header.from=nokia.com; dkim=pass header.d=nokia.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nokia.onmicrosoft.com; s=selector1-nokia-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=VKXuryrZxBLK75YNmrRwE3bJdCVZTadYM4huUpt2RgE=; b=WqjESMawYYHiErTecRV/RRpspO9zKJY3q+AMOVM2NAouh1uTPzDyQGJIpGaDZHkEDjmrG6CqR4F2smf1MTcNGN71FL14nzvfmE00wlSYzahc17OKt70BVgskcSOGOhJBGZBm+zWpu+CBDIJQSlRmTzM05aVQ+SQyC1VORecptk0=
Received: from DM5PR08MB2633.namprd08.prod.outlook.com (2603:10b6:3:ca::21) by DM5PR08MB3548.namprd08.prod.outlook.com (2603:10b6:4:66::31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2793.16; Fri, 13 Mar 2020 16:53:56 +0000
Received: from DM5PR08MB2633.namprd08.prod.outlook.com ([fe80::455:66cb:efa2:fabb]) by DM5PR08MB2633.namprd08.prod.outlook.com ([fe80::455:66cb:efa2:fabb%9]) with mapi id 15.20.2793.018; Fri, 13 Mar 2020 16:53:56 +0000
From: "Sterne, Jason (Nokia - CA/Ottawa)" <jason.sterne@nokia.com>
To: Martin Björklund <mbj+ietf@4668.se>, "lberger@labn.net" <lberger@labn.net>
CC: "netmod-chairs@ietf.org" <netmod-chairs@ietf.org>, "netmod@ietf.org" <netmod@ietf.org>
Thread-Topic: [netmod] Adoption of versioning design team docs
Thread-Index: AQHV9xITP/ptr1VQekiPG+Tq27abCahGv5gw
Date: Fri, 13 Mar 2020 16:53:56 +0000
Message-ID: <DM5PR08MB26338C078B13DFAAC89E10E89BFA0@DM5PR08MB2633.namprd08.prod.outlook.com>
References: <0bea8c03-9e1c-f032-7dac-115f4813eba1@labn.net> <20200310.202829.875177434643366833.id@4668.se>
In-Reply-To: <20200310.202829.875177434643366833.id@4668.se>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: spf=none (sender IP is ) smtp.mailfrom=jason.sterne@nokia.com;
x-originating-ip: [65.110.221.79]
x-ms-publictraffictype: Email
x-ms-office365-filtering-ht: Tenant
x-ms-office365-filtering-correlation-id: e9d7e265-8727-4c73-ba9c-08d7c76f1ea8
x-ms-traffictypediagnostic: DM5PR08MB3548:
x-microsoft-antispam-prvs: <DM5PR08MB3548889E09DF5E762940E9879BFA0@DM5PR08MB3548.namprd08.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:9508;
x-forefront-prvs: 034119E4F6
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(4636009)(346002)(366004)(376002)(136003)(39860400002)(396003)(199004)(33656002)(66574012)(5660300002)(81156014)(8676002)(86362001)(2906002)(71200400001)(316002)(55016002)(76116006)(110136005)(6506007)(4326008)(53546011)(8936002)(66946007)(54906003)(66476007)(26005)(966005)(81166006)(186003)(9686003)(478600001)(7696005)(66556008)(66446008)(52536014)(64756008); DIR:OUT; SFP:1102; SCL:1; SRVR:DM5PR08MB3548; H:DM5PR08MB2633.namprd08.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1;
received-spf: None (protection.outlook.com: nokia.com does not designate permitted sender hosts)
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: JNAHx5sgP+4tAZpc5zo4RGsBHu4I9oDkyYf2VVCu71QUR9+B4ecNlcubwivSGgmLSokM+qSd//gMsVPrlPYzLUZa2QX4DonrNh0E58kcrrYARKovItQHlolR1yweN9HFDIFaLKc+JxUUfodrR85tTIkdoRI767wDyjLn2um3qIlYI4OWVunc+lIYCdL7mWKn0/epG+AL9RVqYVPnps0JxHUi2dveMV+HKhr7sjcI04QcGsFAMEjEXsRPepWthRpYH6MMtDwGiku34P5q2ExmcNBR4VoxGGuKbrddn1+wGwleWO+82mPihZWgG3vlDQ6nm69Y49ymj1Oxvwegry6JvfcmAIYGerAAD/nIyrK755/thA5iDTIFYzNKnLBgdMQN6aUH2hbbAPf0UzZ2kltN/B/+eXuflo8qjVgyphvXzyumHjk19/bQz8JDRRVMOHTBDFNIar7CX9q6LAaenulbly9GsjT2UcuWJFuZSb08uJ0+fu3WRV2HcgOXE87PNFviAo9pzlbLYhw/YOJmys/rwA==
x-ms-exchange-antispam-messagedata: tj/tgwKlrgo9dmimZYfIHwP9gJJOCpWDXi1DuacG7CfamlgH0GAVRYGrBP6LNnIPxili8TWYlmkLctf9/O9RO4DF9lRWl7TRNa/h4wN4PX/aRhIWl+J/LMAJv1CSp84B/8qYNrJckf8iPwBwH4BBFQ==
x-ms-exchange-transport-forked: True
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginatorOrg: nokia.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e9d7e265-8727-4c73-ba9c-08d7c76f1ea8
X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Mar 2020 16:53:56.5306 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 5d471751-9675-428d-917b-70f44f9630b0
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: YSPCFh6vKUnt3KViPsDPstATxxJqPUfKcS5ir2Sq5Y/Xse0FmNG8Pl0vRsd1u+f9kjQBNapm9w0y2ln5c4UrDQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR08MB3548
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/4QLKxyCJRRQiyLjlIVdGvC5H1Qs>
Subject: Re: [netmod] Adoption of versioning design team docs
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, 13 Mar 2020 16:54:01 -0000

Hi Martin,

Thanks for taking a look at the drafts and for your support of the DT's work. Please see inline.

Regards,
Jason

> -----Original Message-----
> From: netmod <netmod-bounces@ietf.org> On Behalf Of Martin Björklund
> Sent: Tuesday, March 10, 2020 3:28 PM
> To: lberger@labn.net
> Cc: netmod-chairs@ietf.org; netmod@ietf.org
> Subject: Re: [netmod] Adoption of versioning design team docs
> 
> [second attempt, sorry for duplicates]
> 
> Hi,
> 
> By document:
> 
> draft-verdt-netmod-yang-module-versioning-01
> 
>   This is a great contribution to the YANG ecosystem.  It is very well
>   written, and I would like to see this document proceed quickly.  The
>   solutions it proposed are really needed.  I have one objection
>   though; in 7.1 the text says:
> 
>     All IETF YANG modules MUST include revision-label statements for all
>     newly published YANG modules, and all newly published revisions of
>     existing YANG modules.  The revision-label MUST take the form of a
>     YANG semantic version number [I-D.verdt-netmod-yang-semver].
> 
>   I strongly disagree with this new rule.  IETF modules use a linear
>   history, so there are no reasons to use "modified semver".

[>>JTS: ] This point will obviously require further discussion, so we have raised an issue in our GitHub DT tracker for it: 
https://github.com/netmod-wg/yang-ver-dt/issues/45

Would you be okay to defer discussion on this until after the adoption call, so that we can focus discussion on the two drafts that you oppose adopting?

> 
>   I support the adoption of this document.
> 
>   (I will send a review of this document in a separate mail)
> 
> 
> draft-verdt-netmod-yang-semver-01
> 
>   This draft proposes a way to express how a given revision is
>   backwards compatible in a very short format.  With the new extension
>   statements in draft-verdt-netmod-yang-module-versioning, this
>   information is already present in the revision history of a module.
>   (One possible exception is editorial changes, but that can easily be
>   fixed by adding an "editorial" extension to "ietf-yang-revisions").
> 
>   I don't think this document should be adopted.

[>>JTS: ] History suggests that YANG modules, even those produced by IETF will not always be flawless. Most IETF documents may end up having a linear history (in which case semver and the modified semver look the same).  But some may not. 

Vendors, however, definitely need to be able to support/fix issues in shipped releases without forcing clients to move to the latest code. That means some ability to describe changes in branched modules is required. Branching is optional (and NBC changes in previous versions is not recommended) but when it does need to happen, we should at least have a standardized and well described mechanism available.

Semver provides a lot more intuitive high level information about the scope of changes in a module vs a vanilla revision date. It presents a human friendly approximation/summary for a complex lineage system when needed. 

Having a common modified yang semver scheme for standard and vendor models would be very useful for consumers of YANG models. 

Ultimately a diff of modules is needed to know every change, but it does give a quick 1 line indication of the impact of changing between two module versions, and can handle branched model development.

> 
> 
> draft-rwilton-netmod-yang-packages-03
> 
>   I support the adoption of this document.
> 
> 
> draft-wilton-netmod-yang-ver-selection-02
> 
>   I think the solutions proposed in this draft are overly complex and
>   some of them are probably impossible to implement correctly in real
>   world use cases.
> 
>   I don't think this document should be adopted.


[>>JTS: ] It would be good to discuss the scenarios that version selection may not work for. 

We do believe there are some cases where version selection is very helpful. 

One example is when an NBC change needs to occur (e.g. bug fix, or extending functionality) that causes a leaf to change type but there is a strong desire to keep the same name (e.g. something basic like "interface" or "address"). We can't use a "status deprecated" approach to support the old functionality in this case.

Another example is the ability for a client to specify (and a server to advertise & limit) which data models (3rd party vs proprietary) it wants to use for interactions with the server.

This is an important part of a complete solution to versioning and backwards compatibility, and after discussions of various alternatives we think this is the most viable approach.

Note that this draft is optional for clients and servers to support. It provides a scheme when it is desired/needed but servers aren't required to support this if it is too complex for them or not useful in their applications. There is also a fair bit of flexibility in the draft for different server capabilities.

> 
> 
> draft-verdt-netmod-yang-schema-comparison-00
> 
>   I support the adoption of this document.
> 
> 
> 
> /martin
> 
> 
> Lou Berger <lberger@labn.net> wrote:
> > Hi,
> > We'd like to start a two week adoption call for the set of documents
> > described below by Rob.  To be specific, this includes
> > 1) draft-verdt-netmod-yang-solutions-03
> > 2) draft-verdt-netmod-yang-module-versioning-01
> > 3) draft-verdt-netmod-yang-semver-01
> > 4) draft-rwilton-netmod-yang-packages-03
> > 5) draft-wilton-netmod-yang-ver-selection-02
> > 6) draft-verdt-netmod-yang-schema-comparison-00
> >
> > The adoption call ends in two weeks, on March 16.
> >
> > Please voice your support or objections on list.  While we prefer to
> > adopt as a set, objections on specific documents are acceptable.
> >
> > Netmod Chairs
> >
> > On 2/29/2020 2:21 AM, Rob Wilton (rwilton) wrote:
> >
> > > Netmod chairs,
> > >
> > > The version selection draft draft-wilton-netmod-yang-ver-selection-02
> > > is now posted.  With that, the YANG versioning design team would like
> > > to please request you make an WG adoption call for these documents.
> > >
> > > The updated full list is:
> > >
> > > 1) draft-verdt-netmod-yang-solutions-03
> > >    - Solution overview, updated since 106 to cover updates to version
> > >    - selection and schema comparison drafts.
> > >
> > > 2) draft-verdt-netmod-yang-module-versioning-01
> > >    - Base module versioning solution, unchanged from the version presented
> > >    - at 106.
> > >
> > > 3) draft-verdt-netmod-yang-semver-01
> > >    - YANG Semantic version numbers, unchanged from the version
> presented at
> > >    - 106.
> > >
> > > 4) draft-rwilton-netmod-yang-packages-03
> > >    - YANG packages draft, updated since 106
> > >    5) draft-wilton-netmod-yang-ver-selection-02
> > >    - Version selection, updated since 106, as per notes below
> > >
> > > 6) draft-verdt-netmod-yang-schema-comparison-00
> > >    - Schema comparison tooling, unchanged from the version presented at
> > >    - 106.
> > >
> > > The main changes to the version selection draft are:
> > >    - We have tried to simplify the model, but at the same time give servers
> > >    - more flexibility about how they implement version selection and what
> > >    - it can be used for.  E.g. if the server wants to allow a client to
> > >    - choose between different schema versions, but require that all clients
> > >    - use the same schema version, that is now possible
> > >    - The draft explicitly disallows schema-selection happening mid-session
> > >    - The solution allows the server to require clients to configure
> > >    - schema-sets before they are used
> > >    - The solution provides more information about which schema-sets are
> > >    - compatible with each other
> > >
> > > Regards,
> > > Rob
> > >
> > >
> 
> _______________________________________________
> netmod mailing list
> netmod@ietf.org
> https://www.ietf.org/mailman/listinfo/netmod