Re: [netmod] comments on YANG versioning

Joe Clarke <jclarke@cisco.com> Fri, 09 November 2018 03:46 UTC

Return-Path: <jclarke@cisco.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 26654130EB7 for <netmod@ietfa.amsl.com>; Thu, 8 Nov 2018 19:46:56 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.502
X-Spam-Level:
X-Spam-Status: No, score=-14.502 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.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 FeD3UKY5el_0 for <netmod@ietfa.amsl.com>; Thu, 8 Nov 2018 19:46:54 -0800 (PST)
Received: from alln-iport-6.cisco.com (alln-iport-6.cisco.com [173.37.142.93]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 02B6B130EF1 for <netmod@ietf.org>; Thu, 8 Nov 2018 19:46:53 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=3550; q=dns/txt; s=iport; t=1541735214; x=1542944814; h=subject:to:cc:references:from:message-id:date: mime-version:in-reply-to:content-transfer-encoding; bh=ExUnrbeaMU+/ZYdfx7r1jUNl6025flvXShCzMfdWS6w=; b=QlKflV+Ngt5Fwdkh9ZljxQISvl8TL2A3ur4+5/CANnNG1mw6++ly5GhU LvoOQc8mIcm9bICD4LxQS43g/Ygo4VsHpEPHtHJc+MBOFoSbRfaSIZ795 21ETBv7sa828dGtXCO8I8NgfNNyk86f8xgXzTyDTgtCZ3hVH7SBCPKi5h Y=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0CzAAC0AuVb/5RdJa1kGQEBAQEBAQEBAQEBAQcBAQEBAQGBZYIEZgNMMyeDeJQTgWAIJYkEkCgNGAuEA0YCgxgiOBYBAwEBAgEBAm0cDIU6AQEBAQIBAQEhSwsQCw4KAgImAgIhBjAGAQwGAgEBF4MGAYFpAw0ID6gWgS6IAg2CFAWBC4puF4FBP4ERJwyCX4JWRQEBhGWCVwKPRTOOeycuCY1rgyUGGIlUhxiOJIlMgVohgVVNIxU7gmyLHIVcIQMwjVABAQ
X-IronPort-AV: E=Sophos;i="5.54,481,1534809600"; d="scan'208";a="198132814"
Received: from rcdn-core-12.cisco.com ([173.37.93.148]) by alln-iport-6.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 09 Nov 2018 03:46:52 +0000
Received: from [192.168.10.113] (rtp-jclarke-nitro4.cisco.com [10.118.87.85]) by rcdn-core-12.cisco.com (8.15.2/8.15.2) with ESMTP id wA93kmmj031773; Fri, 9 Nov 2018 03:46:50 GMT
To: Mahesh Jethanandani <mjethanandani@gmail.com>, Andy Bierman <andy@yumaworks.com>
Cc: NetMod WG <netmod@ietf.org>
References: <CABCOCHTr92=wFcXg0NnPouft3Zkk-XnUzp-FZbRykumvZfMHUg@mail.gmail.com> <E2D26B1B-4ADD-4392-A8B0-09112B8A5E3E@gmail.com>
From: Joe Clarke <jclarke@cisco.com>
Openpgp: preference=signencrypt
Autocrypt: addr=jclarke@cisco.com; prefer-encrypt=mutual; keydata= xsDiBDo1cJ0RBADSZSmbmzdRr1CoRWWKmAyu0eaQimaLV1TsZEML/ksLyg6faXrKIA/MWc7M w4FmKkDjaZdFzobzabnKp2QwVadLqi1gYY2WsApKC0rSoqsPx5E847AmwNWXgjXiXORXmnZL mf5PZ2ECOEJC27sji5Nrh9GSw7OPp6c+EE20gMNVrwCgu3iK5vyGQfy0/wX/jcIvP0nHznUD /RvijiKomyaf6F5pibmouFNeuCDHc8lwx2giA/MCZl/nSkI2/UX27sULGNgvKNkVPu/AukXu zW3fIthsJgjQZUoi/BTe9kUP+RL3+RALXXuLv7b3xGRHJ8A1Rpy9H43fkjHZ945YNPrUvJlG LP5PNGBD1xC21X3EGAyywVynDskcA/4qgbJFkVzmPjFJUjq+RW1zw3UIb3bbkskl/wk5qd+M w2EhiSPTbEhJQAQUvqSGFWEGp2ANic7iYLdPXV/O6I1/guRRaY0eK77YkkCjz1snaKYnGSeI GHGwmHb6D+ZHzTqZqr6IssgEIUHjXfgOUTARQbL15nJTVRzDGUiT/65R3c0eSm9lIENsYXJr ZSA8amNsYXJrZUBjaXNjby5jb20+wl8EExECABcFAjyDqGQFCwcKAwQDFQMCAxYCAQIXgAAS CRDN7TXCWm4C3wdlR1BHAAEB5KkAn0kBda/9+uF6RfnDSFS7RExUU9DqAJ4knRckYiSASteC K03QVtEiXblL287ATQQ6NXCeEAQAhIURlK17jmIMdMIuScFU6xK+jkKgVVFrjlRH5vLV2spp jH/uQ57MMGuOcs7PckXCnPjBV8Tm32Tuw+fCyrbc2gt0ouiT/5WWj0EMeAfWew1zBXX2okGf LqS6gucVDS6tcEFN6PmJEmX+tWDcmiqx/xXiSfMVYiLMdlK+YDkMDDsAAwUD/3BWOyfdnBGH Kv28zx+5wq/2vhYnUYCAdVD2ZWCJizQTMbkcxEIKAwtAj6yqKq9ah82nt4VHl5ZejVe47jvR 2nXwJ5VQ9eITuTjTLDw+3qr9lN077VZ32hyb5ULJcW756j9Z3YB2FTANw6KHgChaSVVx9kYJ FlAggraU7mi39/wvwk4EGBECAAYFAjo1cJ4AEgkQze01wlpuAt8HZUdQRwABAQbdAJ9R8SzU Mluu9r93BMv6fAW9j6qTZgCfYcEAqOMJv+3Z+YxLiDtWcCY4Sfo=
Organization: Cisco
Message-ID: <18c119c0-b90b-ed49-0671-df5b6b2a7066@cisco.com>
Date: Thu, 08 Nov 2018 22:46:47 -0500
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:60.0) Gecko/20100101 Thunderbird/60.3.0
MIME-Version: 1.0
In-Reply-To: <E2D26B1B-4ADD-4392-A8B0-09112B8A5E3E@gmail.com>
Content-Type: text/plain; charset="utf-8"
Content-Language: en-US
Content-Transfer-Encoding: 7bit
X-Outbound-SMTP-Client: 10.118.87.85, rtp-jclarke-nitro4.cisco.com
X-Outbound-Node: rcdn-core-12.cisco.com
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/zKE-zXQPnY3-wITRLxgs3ZMDiA4>
Subject: Re: [netmod] comments on YANG versioning
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 Nov 2018 03:46:57 -0000

On 11/8/18 21:37, Mahesh Jethanandani wrote:
> I am wondering if we are looking at two sets of rules for the versioning system we come up with. One that vendors do with their "native" models to satisfy their customers, and the other what standard bodies follow for the models published by them.
> 
> For example, vendors can make feature and NBC fixes to models in releases that are not the latest, while standard bodies like IETF make changes in models that are always the latest, even as they use the same versioning system. Again, vendors use all the three numbers, but standard bodies use the first (major) and the last (patch) number.

That's what we initially discussed on the DT call.  It was then raised
that there may be standards bodies (even groups in the IETF) that would
want to fork a model and make changes to both branches.

Joe

> 
> Mahesh Jethanandani
> mjethanandani@gmail.com
> 
>> On Nov 9, 2018, at 5:52 AM, Andy Bierman <andy@yumaworks.com> wrote:
>>
>> Hi,
>>
>> A few comments on the netmod meeting yesterday
>>
>> 1) what is a bugfix?
>> It is not encouraging that the DT cannot agree on the scope of a bugfix.
>> But not sure it matters if NBC updates can occur for any reason.
>> IMO it is easy to define a bugfix in the IETF -- it is called an Errata.
>> If an Errata is approved for a YANG module in an RFC then it is a bugfix.
>>
>>
>> 2) SEMVER to the rescue?
>> If every module release can be its own feature release train then the value of
>> ascending numeric identifiers is greatly diminished. The (m) and (M) tags
>> do not really help.  I strongly agree with the comment that cherry-picking new
>> features can (and should) be done with deviations.  Updates of old
>> revisions needs to be for bugfixes only.
>>
>> I prefer the OpenConfig "SEMVER Classic" rather than introducing a new
>> incompatible complex numbering scheme to support something that
>> should not be done anyway.
>>
>> 3) Bundles and compatibility modules
>> I strongly agree this solution approach is far better than treating every revision
>> as a separate feature release train.  I don't see how I am going to
>> track the major.minor.patch for 100 different modules.  SEMVER is not
>> very useful for telling if module A works with B, C, and D. Import by SEMVER
>> will probably be OK at first, but become too error-prone after awhile.
>>
>> 4) Automation tools
>> Ad-hoc WEB pages from IANA do not cut it anymore.
>> We need a way to get patch versions of modules published and usable
>> by automation tools (without an RFC) with just the Errata report as a patch.
>> SEMVER requires that a module be released with the change but this is not that practical.
>> Think how yocto works, using a base source version of a package + patches.
>> (IMO we need YANG Packages, which would serve as recipes
>> for a set of modules, features, annotations, patches and deviations, that have been
>> tested to work together.)
>>
>> 5) YANG 1.2 vs Extensions
>> IMO a new YANG version would be better than extensions, especially to
>> fix status-stmt, import-by-revision, deviations, and add annotation,
>> patch, and many other new mechanisms to help backward compatibility.
>>
>>
>> Andy
>>
>> _______________________________________________
>> netmod mailing list
>> netmod@ietf.org
>> https://www.ietf.org/mailman/listinfo/netmod
> 
> _______________________________________________
> netmod mailing list
> netmod@ietf.org
> https://www.ietf.org/mailman/listinfo/netmod
>