[netmod] yang versioning solution complexity and alternative approaches
Jürgen Schönwälder <j.schoenwaelder@jacobs-university.de> Wed, 09 March 2022 10:16 UTC
Return-Path: <J.Schoenwaelder@jacobs-university.de>
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 F20013A0A4E
for <netmod@ietfa.amsl.com>; Wed, 9 Mar 2022 02:16:20 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.909
X-Spam-Level:
X-Spam-Status: No, score=-1.909 tagged_above=-999 required=5
tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1,
RCVD_IN_DNSWL_BLOCKED=0.001, SPF_PASS=-0.001,
T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001]
autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key)
header.d=jacobsuniversity.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 exPNZwtqvFdE for <netmod@ietfa.amsl.com>;
Wed, 9 Mar 2022 02:16:16 -0800 (PST)
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
(mail-vi1eur05on2060a.outbound.protection.outlook.com
[IPv6:2a01:111:f400:7d00::60a])
(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 18C043A0A25
for <netmod@ietf.org>; Wed, 9 Mar 2022 02:16:16 -0800 (PST)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
b=UXjxKB35ltUkV8rHNfunnbLjqIWOFsy/uhsiUxeR9m/+lH+5CjaCiGT0+C1eECPkfX9GEeBv/8iSnWpXfrRpWNnTYhqCa5K5/316Mzg7vDqEdBJ5VkTe8kv33V2EeytJyKRfcDqQVF5O0e4xO6rilJo/22hJSAMAX5QarCvMel72h4eIQkKVs69F/100evI2kztYVDt9bzDx3Cs/3tK03NhX3FGEtozdilZ1LoNxR61Ron79IRoowo1LMdEQVhQvCoWLpXDcG9krRICQhspduDs+D+hYtB5pOS9wIfhKtgIgCa9je5c5s6Dp9JkCG+f+B84UOPL6MGpzugIFKixqIw==
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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
bh=65lSG9c4GwW84ei5EjJ8fYUedYQT5laVE6sNnsDZGdo=;
b=RP6gHIDNSTbH5XfeWgV9VR35/m17XHczxGVb/b9zCI5nirTbQ6yRcvaK3z5S7P7n3KS75evk1+ifYVtztFw82gL6C6cvu7JZyb/7a09+1VTQnE+TojBMK+lEu4jWRRnXeQH9m/P25BkyWdyBA2q5nZZK0EnfOYl4YuI+X4NM46j5UgMRcNSvgNKV9UodO7L3b4/DSG9hh2/RXJXN3MlGNk267Z8arK7TWQ10f42LGyRHXHDJH3oX6+QOM/VNgkKEc+LaP9Ys1bhVpTcZB73nZcS/UefVi9SKTj6aSBWIgAEURc/a12+qrVPQEosOYfQcw5ZJXm1foptEoN5s64GovA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
smtp.mailfrom=jacobs-university.de; dmarc=pass action=none
header.from=jacobs-university.de; dkim=pass header.d=jacobs-university.de;
arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=jacobsuniversity.onmicrosoft.com;
s=selector2-jacobsuniversity-onmicrosoft-com;
h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
bh=65lSG9c4GwW84ei5EjJ8fYUedYQT5laVE6sNnsDZGdo=;
b=nnAgEn1+oU4KoP+n8HBOTOZhkrwq4DqA4hTtOAgc6kwwKSXZREMWBIRK9T89L+xw7D2QeJ5HLgCg2l57euy8tOT2r11L2b5jzEGu2p5IJXpdu3oTVs2CC6Ahao40q0Ucoilvz8UHO1gPau3+yrLQRnLubtqgJDQw+7sgmnfsYc0=
Authentication-Results: dkim=none (message not signed)
header.d=none;dmarc=none action=none header.from=jacobs-university.de;
Received: from VI1P190MB0656.EURP190.PROD.OUTLOOK.COM (2603:10a6:800:12b::14)
by HE1P190MB0153.EURP190.PROD.OUTLOOK.COM (2603:10a6:3:cb::20) with
Microsoft
SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
15.20.5038.15; Wed, 9 Mar 2022 10:16:11 +0000
Received: from VI1P190MB0656.EURP190.PROD.OUTLOOK.COM
([fe80::1040:f016:2d60:5c9a]) by VI1P190MB0656.EURP190.PROD.OUTLOOK.COM
([fe80::1040:f016:2d60:5c9a%6]) with mapi id 15.20.5038.027; Wed, 9 Mar 2022
10:16:11 +0000
Date: Wed, 9 Mar 2022 11:16:09 +0100
From: =?utf-8?B?SsO8cmdlbiBTY2jDtm53w6RsZGVy?=
<j.schoenwaelder@jacobs-university.de>
To: netmod@ietf.org
Message-ID: <20220309101609.d33knxlhyq62wejq@anna>
Reply-To: =?utf-8?B?SsO8cmdlbiBTY2jDtm53w6RsZGVy?=
<j.schoenwaelder@jacobs-university.de>
Mail-Followup-To: netmod@ietf.org
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: AM0PR10CA0041.EURPRD10.PROD.OUTLOOK.COM
(2603:10a6:20b:150::21) To VI1P190MB0656.EURP190.PROD.OUTLOOK.COM
(2603:10a6:800:12b::14)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: fda94f7c-7210-4763-a317-08da01b5d582
X-MS-TrafficTypeDiagnostic: HE1P190MB0153:EE_
X-Microsoft-Antispam-PRVS: <HE1P190MB0153E343AEE47FCE88107AABDE0A9@HE1P190MB0153.EURP190.PROD.OUTLOOK.COM>
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: /OdI8YVHH8XkfyykGuGqUveqTNbKKBCacebUQWTcJXyMHalTebRmUbmLOfVhZ1GLX1Qa+VZXBzCIqB4xHia5Y80+90YsUthfWdUvX77lk37+FUoijZuiYGm9UPFszbijfbgXHjumNHQ8lmx2r9ZpfHIIfV24DymnLym7qP+fJ2Qf7CiX74z3ZAcuQiYcqFcOpWCAGwYo1yY0Jas2P1WG/IdwtVRAmxpAHU3frHphYouIKi19LPIDSKUJZ/JVYzf2+FY8NbGinyv77zqw0/Bp0481eeHe9wEVIU81b/Q5+7GjcrTQLf61HOMJIVdkDLkOn/4x4v71p/7NTUd0yUWm88GbytIZ6EeUJy/KeREIUIKTYe1aZub8JV2W1vpkjadqCch062PSvzAAGL0nNesxCJ8HBqq8IDbvuEu7aICHEPN2AKkh76ZaCNO7z5AbRWQFUL5fmEOh3ubwhElqCvw+a3YgxkVQw/+fDCcR5B3T3tZefcCij5uNgBRmB20E+FWqr2QRnNagQplJgnOqgt7QmlIuYumV3SAnC+UojbuuzCNiMgqa0GIhk4JvkLslAd1QyDW+vTAeqcqWxuHyz4Oud9a74r0j19JvDYZRx5965I1eIJGemAhSlCzEMt7LvuzQ6qLx4kOXyMFsJqZJjHmCV4dHubw2rO90+76XJHRrY4P6IMSkSM4luSKXrMc07R7o5GcFLM2O3B41uOmvV5J0h0gQ9SQUAvz4LCa5B+il99S7GT3LO1GKiH1pUkc5ZFKgn4heKTR5GumN/YRFwyACtc+Xh+SkPND4ucF/5EkEka8=
X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
IPV:NLI; SFV:NSPM;
H:VI1P190MB0656.EURP190.PROD.OUTLOOK.COM; PTR:; CAT:NONE;
SFS:(13230001)(7916004)(366004)(66946007)(66556008)(8676002)(508600001)(86362001)(40140700001)(6486002)(6916009)(786003)(83380400001)(316002)(5660300002)(38350700002)(9686003)(6512007)(38100700002)(33716001)(6506007)(52116002)(186003)(26005)(1076003)(85182001)(8936002)(85202003)(3450700001)(2906002)(66476007);
DIR:OUT; SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?L2xuN015WFdIUW5qaU9lR2o0aWs2OE5Pai9kaWhPaXE2UjNaMkJ5OVNvNkhQ?=
=?utf-8?B?ZWNHRXp0L3BNR3VJL0tIWER3UWNSMWE4Q3BieHlIeXdQdExTSnBUQjIyMzZ5?=
=?utf-8?B?aS8rL0o5dk9RRnZua3VSeDVOUnRTazJRNTVGUllMZXl3UkxyeXorS2xWb3FU?=
=?utf-8?B?RVFwV3pTQ3g2TDJnWGRNUzNTdDMraHIwdTlzTGlSQTY5dnYycVdiWmFBNkdk?=
=?utf-8?B?NDdYUHBJZzQvRUtsbTF1Y3ZBMlEvVmU1WStSVjBkUUg4K3ZCTnRBbEhGa2Zz?=
=?utf-8?B?UjZiQzVCUnVsRXJrc2pQM2JzUW1iQ3Qyb1hYcXBLbldXZ2xEUzh0TEtHSDB1?=
=?utf-8?B?dFFJMU91NFBML1QrQ2p4RFAvTXJtUzFyRll1d2Y0cEpUZDdpbEszTEhQRHVR?=
=?utf-8?B?ZmFyZmh2WDRnRi9KQitBb0JjRUJTOFVwM1RnSWtCaXZSeWZHaXBMeHk4eVhD?=
=?utf-8?B?RGZHRUdtQUJRZXF5WEtCMXArWTFwUnFvV0d5U1E4VW1ONmZKWDJIRVpzaldo?=
=?utf-8?B?ZW1hdWd5WkJJOEV0ZEZWbDFxYkdHUk1MQU40cG5mUnVzK0tZTlJiVWdVYmIz?=
=?utf-8?B?OEtDdFBzRUVUWGtCSkRNcEZZWVBlWnNPeHd3UmlQeXVGQWxJWEFpTVMxZVV5?=
=?utf-8?B?aTVOUEEwaEtmYmxFb0ppTDlyUkdCU2o0MFRuWmRPaGZjRTRzbDBveURISHln?=
=?utf-8?B?NytqU1l0QmJkMHJ2YU9xckxudlBvMHIyMnBLazBJblBJbHlDSmRiRW53SzJz?=
=?utf-8?B?NVBTb1VIU2EzdFJnbURUK1NySXZtUE5SZG54WjF5Wnk3cTRDNjBpZjRYdjRt?=
=?utf-8?B?WjYzM2hlNmRRbWhieHVyRGpOS0pNV3QwNXQ3a2ovMTVnVE9wb21WaW8zbnRO?=
=?utf-8?B?Uk5NQ283MkRJSTQ5UkhuSHNka2R4K3dkd2VIN2pueHYwcVBjVGx0bUZDNHpG?=
=?utf-8?B?WmR4d09qYmZYMXRDZlk5cTdvY0V1OUdxb3F2alpLSTRJVGVNalR6d0ViNVAv?=
=?utf-8?B?cVJWRlZ2eTZaUzhPclRRZjdrQ1dISTlZaWdUWXpNQ0RtSUFFZTlrRnJxV3Z1?=
=?utf-8?B?ZlcyQ1N5cXlKYlorbFFibjY0RGpzQkdDNUtRNVNFOUt4Wjg2eDgrM1ZVelVV?=
=?utf-8?B?QVNtRGZacDVKZ3dGNEpYUXR2U2dJbzZmTXo4ZmlYd1dUYXhsTnVSS3Y1TjV6?=
=?utf-8?B?WVRmeldSTDFSdHVzVUxDcE55RGhmSlRScms2eUlPSGl5eEJyQzlUTkhZUnF2?=
=?utf-8?B?V0xaSGY4d255eVBkK1lCekU2aFlSUG8vbDI4NDZnY1RtUmd5V29NaWRGLzVm?=
=?utf-8?B?ZCtyeHhJcVRwUjdIRVE1ejlCUGpGQUlNbmhnUHpWMENHdlFISU9pV0I4ZFZU?=
=?utf-8?B?QU4wWE4rU2R5SDdjTkRMMkFDaFJsU1F5UnhkemlKaWNraHdoTWRYMlZ3WmVn?=
=?utf-8?B?azYxVVFoWFJkYWYvdkc0TTc5SVVEcUZWK1l1VTlwTzlQVzNUOXZqUXZPQVJu?=
=?utf-8?B?c3hKcnBmMDFHMGVwQnNNMnNsd2hYM21HR0dOeW1vSzl1K3dhRVZFUEROR0wx?=
=?utf-8?B?RVMyVkgvUTFGUTVvam1CMDFjUmFDZktiZWpYMlJ5cjkrcDkveHRleDM4bHJw?=
=?utf-8?B?alMzVFFOVXRDVVhRdEEzY1VFTVRFTDNFRHVXNG5KSi9uU3RxdWV5Sm92ekRJ?=
=?utf-8?B?aWQzbWRyT2hBR2xYdjVLMEdxKy9WSTlnUEpNYzYvQlNWeUE5eVJuUHVicUVa?=
=?utf-8?B?TTJoZzNIU0tPb2VVOG1SNTdyaHpiTzcvRlVWdkFoME51d29oOXlqSDhOeTlW?=
=?utf-8?B?TXpkK3NSdWtQSS93Y3dIR1o3dVk1QWZqOVZWV1ZLSUpPSDdoQnlIbzV0eXpi?=
=?utf-8?B?a0JUUHJHVk1nMnkxSERpclIrUkh3MEFLWitUbkVRaGNWTlo5cEU3Yng4WWtO?=
=?utf-8?B?WS9mbXhlMS9KTjhwTEl5enRWOGxzc0xSblJpdG9kOHNDYTExb0hNdXJMY0x3?=
=?utf-8?B?bGNqM3l4WS9ETFFiS1BEVlJ6UGx6QlJacHlHRjA1bWFJa1EySVJQcEMxYWRX?=
=?utf-8?B?VG4xck1pMnYrNU11bFFGdSs0bkw5blRsZ05UeUJ2UGpKdWxHVzRaV2lOMmFM?=
=?utf-8?B?Vk5PWW9hRkpvSDRhZ2o0TXdIbllwcnVmSWdSZHFuQ1VpNEQwZTU5MWViaVlJ?=
=?utf-8?B?alZJQzZJZ3k2WkozWjE4ZjJYMTZIUTZJdzZzRjJOcTBhd0tZdU96U1hUNExL?=
=?utf-8?B?NjM5cDk5KzVSN1cwSGVsa08yeHhnPT0=?=
X-OriginatorOrg: jacobs-university.de
X-MS-Exchange-CrossTenant-Network-Message-Id: fda94f7c-7210-4763-a317-08da01b5d582
X-MS-Exchange-CrossTenant-AuthSource: VI1P190MB0656.EURP190.PROD.OUTLOOK.COM
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Mar 2022 10:16:11.0725 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f78e973e-5c0b-4ab8-bbd7-9887c95a8ebd
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: xrjj8dGJjudVy9D5J0o9B/qqJNQvkFtlSZZmKIf8LeXKGPxcyYjwbdnwxfoINott6X48LlcAXVpOAhsTw0UzEqLAi9ryo12ctxaaWsXIiFc=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1P190MB0153
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/9T0f3rvtT2Q0LXDrHFT8EfrIsWU>
Subject: [netmod] yang versioning solution complexity and alternative
approaches
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: Wed, 09 Mar 2022 10:16:21 -0000
Hi,
the YANG versioning solution appears to be complex.
- We introduce version numbers that smell a bit like SemVers but then
are not really SemVer.
- We have no solution to do meaningful things with these version
numbers, it does not even seem to be possible to decide whether
X.Y.Z derives from x.y.z or not. We still seem to believe that
having compatibility constraints embedded in module imports are a
workable solution even though we acknowledge future breaking
changes.
- We push for a reasonably complex algorithm to calculate deltas of
YANG module revisions to let users of modules to determine the real
impact of module updates on their work.
I wonder why we not consider the opposite approach, namely to have
author making NBC changes to document them right where the changes
are. If authors would write something like
leaf foo {
nbc-change "2022-03-01" {
description "changed type from int32 to string";
};
// ...
}
then tool and humans can easily figure out in which revision NBC
changes occured and if they affect a certain usage of the module.
Instead of simply properly documenting the changes, we invent fuzzy
version numbers and complex algorithms to reverse engineer the facts
that could have easily been documented by whoever makes the change.
If the reason is that developers do not document their changes, then
go and develop tools to force them to document their changes. I do not
think it is fair to simply push the pain to the users of YANG modules.
/js
--
Jürgen Schönwälder 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] yang versioning solution complexity and … Jürgen Schönwälder
- Re: [netmod] yang versioning solution complexity … Andy Bierman
- Re: [netmod] yang versioning solution complexity … Jürgen Schönwälder