[netmod] optional char in yang-semver

"Sterne, Jason (Nokia - CA/Ottawa)" <jason.sterne@nokia.com> Mon, 08 June 2020 14:38 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 5951E3A0B3B for <netmod@ietfa.amsl.com>; Mon, 8 Jun 2020 07:38:24 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.902
X-Spam-Level:
X-Spam-Status: No, score=-1.902 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-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 JmzlwgfFq2Yt for <netmod@ietfa.amsl.com>; Mon, 8 Jun 2020 07:38:22 -0700 (PDT)
Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on2117.outbound.protection.outlook.com [40.107.243.117]) (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 9EBD63A0B3A for <netmod@ietf.org>; Mon, 8 Jun 2020 07:38:22 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cT2c6HFXYp+AMPSmz3rMEzk9KAmfjI0F0QvQUBu1edd+Hl7ESQp9ICBwTwSbxHKIYfhPyB0W2JOBCI/3KMcn4oPdTv6/nwy6L/JYFTPFZythkXRaJyddZ7B1XJIIHH+Ji5dySvFJmYSNhoRho4d6hpBobrfYWD3cKfpvAW1E2KdTSdZJFaN3Zu/HRe3WY621hi939TdCYwOsqiCkVu742XiLqaqXKSrhef8buixfdDNzPdigfEqtxX3NTzzwTD1qJysUNX2hYLBT0M709FOiXseJkEjLvQ7sjodU7oZ1ZTr1ctGZaG3YTIVNRMUe2gltA5/NIsWacZAHRbenQRIXYQ==
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=dYa/sdWwGHs8Vz8iIDFBkB+XG+DxjERxAfIqQDHO9bI=; b=Ctl50r867MPuJpNI/+dz9QAfrVxvKlAd9KTWzorHZwVNJ8tfiTexvZRCzx/+wZWSWUj+lz1YPBaUfC3Fbspf06fhbqcIh2P5K1JwTlHPhafLuMNOc7piPtaDqFEIQ9R0dBQPm3dikHtSULUw80cZL5Oon8vaRMyiqqXxymqVCFChLxwGP9KWTnzeIyGDtvFrDfGVy7KDXaduiqrbpBGqvim129y67qjlE16E9d5dyr4k6luor0R6lk3SQG/ig0IQC0FfoVeUmXc4/2ZsgCBWC4cUE2+XwLWbJznadL8gTEiGm5lQT9lbUq03LxH0A2RbqXgc8UJaYMvbz8T2rRT89A==
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=dYa/sdWwGHs8Vz8iIDFBkB+XG+DxjERxAfIqQDHO9bI=; b=SdkBm+R/qn+QN1OoxepnG/QBuW/Rr+NUclUrX6qeoPVd8h517/V6kKr9mzRYgGvJVdZvB2RCZlg1UGjnSKIQLbSEDvQqQIwDpk7N9kOSfG0YIcK0fUgH8KpF4X4GD7Tgx4Vz5eKEaBRohQSMAxK10ZfB9jcLeTI8sk2grlNFMF8=
Received: from DM5PR08MB2633.namprd08.prod.outlook.com (2603:10b6:3:ca::21) by DM5PR08MB2795.namprd08.prod.outlook.com (2603:10b6:3:143::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3066.18; Mon, 8 Jun 2020 14:38:19 +0000
Received: from DM5PR08MB2633.namprd08.prod.outlook.com ([fe80::b02f:de62:22d1:444f]) by DM5PR08MB2633.namprd08.prod.outlook.com ([fe80::b02f:de62:22d1:444f%8]) with mapi id 15.20.3066.023; Mon, 8 Jun 2020 14:38:19 +0000
From: "Sterne, Jason (Nokia - CA/Ottawa)" <jason.sterne@nokia.com>
To: "netmod@ietf.org" <netmod@ietf.org>
Thread-Topic: optional char in yang-semver
Thread-Index: AdY9n+Rs2WWdORvzS7OmQRMQtGa1mA==
Date: Mon, 08 Jun 2020 14:38:19 +0000
Message-ID: <DM5PR08MB26339E2FB657BA85EB499FFB9B850@DM5PR08MB2633.namprd08.prod.outlook.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: ietf.org; dkim=none (message not signed) header.d=none;ietf.org; dmarc=none action=none header.from=nokia.com;
x-originating-ip: [2607:fea8:e31f:da06:b8d6:91c3:ae2c:b024]
x-ms-publictraffictype: Email
x-ms-office365-filtering-ht: Tenant
x-ms-office365-filtering-correlation-id: 0de0c77c-9d68-467d-8cc3-08d80bb996a2
x-ms-traffictypediagnostic: DM5PR08MB2795:
x-microsoft-antispam-prvs: <DM5PR08MB279524A26541B85770ABC3209B850@DM5PR08MB2795.namprd08.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:9508;
x-forefront-prvs: 042857DBB5
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: WvznFN1/oId4kA99NkM8np9QUhrDMwD/r8uzoWplTgB3HtMlQxHJ3X3Aa4tnspTazyKxTql73xESP/Og3yCVOzF5qwdnU9CNfCaGxdk62XVwJ4lqJmrDGta8mAwn/TG+SJsG1IdqEKQrle8Z6pNTJLUy8UojSuUT/SoarIcGoMHgBUFAK72uklFamyR/ZtKbleBaWFG07AHand22mkEN5t2oShVPkGlRy1SqW+vHwNIS7RUzQ0kV0H9+55JHhXoatqWttaDaAedXF9CshtT6bemCOuQnq6nUgaZFfin3++HUAqUyRw+LUe3Exf+66fOZtE1SdJeH3qe8pQXYCczGqQ==
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM5PR08MB2633.namprd08.prod.outlook.com; PTR:; CAT:NONE; SFTY:; SFS:(4636009)(136003)(396003)(366004)(376002)(346002)(39860400002)(9686003)(55016002)(2906002)(7696005)(6506007)(186003)(8676002)(4743002)(83380400001)(478600001)(71200400001)(8936002)(5660300002)(66446008)(66556008)(66476007)(66946007)(6916009)(64756008)(52536014)(86362001)(76116006)(33656002)(316002); DIR:OUT; SFP:1102;
x-ms-exchange-antispam-messagedata: 8XMTaeJs810csjeyV7UmEWUrT4rzQ7G7n6SRZt5XaYXSiv+V29QTi74RcsHif8psZvpJghwSCu9lFKw6YF3Y6iV0dF1+sPwJhlZkhYYopuo2TOz5QWEMDmD9bMmKUKs2oItnzceO9s7IKBxG0Slnh2dXKxcaXtSlDVb8EOGp6e9GJV82xqn6ChPHfzCG+ZWxjYPisV8b9snS1gHyj7Pt3BDPqO4V5KodnStv+dU+AriIZvmAX3xVob8fz22N9H4cYTz6/HQnU8+ZyfaETBky4G7M5Zupzr855Rt4GDYDn2AbY0IyePG2hmz7FN3Mpu/2TSsXLl5UEZJ7pAIVdV8HdqRvYwjBMuQRt8ByODN0gWlPsxIHvkt97VwGVa1f5tSS207nN0P36H8O3hSH2zdybuTt76F+wKn+0lp8eJI19YtlYJmvn0KJMMVK71ueLUgXyzmoZQg56TthfVrWAf7t+IsI0xclEvqs90+Dxm+pN7QQUAmdxZogHr0DAVwYBbafuyhHB1+JPg8XE5yFHELd0F4FuWUqiJD8lDdOwDtH2NZQGEFLy8PM9YZnrTuKfkJq
x-ms-exchange-transport-forked: True
Content-Type: multipart/alternative; boundary="_000_DM5PR08MB26339E2FB657BA85EB499FFB9B850DM5PR08MB2633namp_"
MIME-Version: 1.0
X-OriginatorOrg: nokia.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 0de0c77c-9d68-467d-8cc3-08d80bb996a2
X-MS-Exchange-CrossTenant-originalarrivaltime: 08 Jun 2020 14:38:19.5426 (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: 12zwNHHkjwrK8Q1RuImoxws1ratNaDfHmeu3BbYewN9bjRKmOyZhAqJSN2NQES6m6lBL6IaicTcDMVncirVEIQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR08MB2795
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/FLSnXihgWFyiegBtobL9KR0HrMk>
Subject: [netmod] optional char in yang-semver
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: Mon, 08 Jun 2020 14:38:24 -0000

Hello all,

In our weekly YANG versioning calls we discussed the 'm' and 'M' modifiers in the yang-semver draft.

While we still believe that the extra char modifier is a useful addition, we are now leaning towards a different location for the letter and different characters as the indicator.

The current draft uses 'm' or 'M' at the end, e.g.   2.1.1m  or 3.3.3M.  Here are the latest thoughts from the weekly call.

As a high level summary -> we're basically down to options p1, p2 or p3 below. Looking for other opinions to debate amongst those.

We should avoid having any semantic meaning that depends on the case of the letter. Hence having 'm' and 'M' mean different things isn't a good idea. So in our latest proposal the case of the letter is not significant.

As before, two different letters/symbols should be used:
1) one to signify a major (NBC) change
2) one to signify a minor (BC) change

Our current 'favorites' are:
p = major (NBC)
c = minor (BC)

Other letters considered but rejected were:
X, Y, Z: have connotations of wildcard  (1.2.3x implies "any 1.2.3*")
N: has connotations of wildcard
A, B: alpha, beta
i, j, k: common iterators - better to avoid?
nc = non-compatible. Better to stick to 1 letter?

We also feel that it may actually be a useful property to "break" tools (i.e. have them error, halt, etc) when they don't know how to handle the letter - in particular for major changes (so they don't accidently assume 2 versions are compatible). So perhaps placing the "p" should be up adjacent to the major version:
p1.1.1 or 1p.1.1

We're undecided on where the "c" should go.  We're down to a few favorites.  Here are combinations of p & c that we're considering most strongly (examples below show a Major Change / Minor Change):
p1) p1.1.1 / 1.1.1c    nice bookends
p2) 1p.1.1 / 1.1c.1    letter goes with the part of the version it is associated with
p3) 1p.1.1 / 1.1.1c

We debated a number of other locations & formats. Pasting them here so you can get a quick visual of what they look like:

NBC Changes:
n1) 1.1.0 --- p1.1.1   not quite as likely to "break" tools as 1p.1.1?
n2) 1.1.0 --- 1.1.1M
n3) 1.1.0 --- 1p.1.1   more likely to "break" tools, more likely to trigger people to lookup what it means
n5) 1.1.0 --- 1nc.1.1
n6) 1.1.0 --- 1.1.1(p)
n7) 1.1.0 --- 1(p).1.1
n8) 1.1.0 --- X.1.1.1

BC Changes:
b1) 1.1.0 --- 1.1c.1
b2) 1.1.0 --- 1c.1.1
b3) 1.1.0 --- C1.1.1

Rgds,
Jason