Re: [netmod] comments on YANG versioning

Mahesh Jethanandani <mjethanandani@gmail.com> Fri, 09 November 2018 02:37 UTC

Return-Path: <mjethanandani@gmail.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 227B7128D0C for <netmod@ietfa.amsl.com>; Thu, 8 Nov 2018 18:37:46 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2
X-Spam-Level:
X-Spam-Status: No, score=-2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.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 y5q-Cn41Z0IZ for <netmod@ietfa.amsl.com>; Thu, 8 Nov 2018 18:37:43 -0800 (PST)
Received: from mail-it1-x143.google.com (mail-it1-x143.google.com [IPv6:2607:f8b0:4864:20::143]) (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 A61341288BD for <netmod@ietf.org>; Thu, 8 Nov 2018 18:37:43 -0800 (PST)
Received: by mail-it1-x143.google.com with SMTP id j79-v6so1212002itb.2 for <netmod@ietf.org>; Thu, 08 Nov 2018 18:37:43 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=references:mime-version:in-reply-to:content-transfer-encoding :message-id:cc:from:subject:date:to; bh=Yf34feX2ZIDM9qq/Khpx808F7OKr8WUr7mXlqV31Ak8=; b=CdTOI0NkCJ3Cy+6kIxv9TI1cWm385WecZDmM/DHRFTjbm04xdnu447PprsUMUM4Q56 fVaNXj37km2RziyO26tVgNqn5tnCMr+wQlfu9o/WBQqXZAnVCgEqOj6w/73zSV0J4FVx IVYOTdRZc6SmurVZVye1zii18FZ/6j+cIlQ8SIhD2MeM9K84F3ZtKx+yEtR7W/ZpKH0U +rfUP70BFiUlgL5b7PU94gVNRK0Iv+F1hwKvi2iVTWxzNpvu4bCqikvgOfmQtGpuv7ba PPZBzmz+blfrRqfBG16sxg/S5I3n9np156GxoHiOu8B8oUuZpylVfUHFb6L0ZTko8f23 taeQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:references:mime-version:in-reply-to :content-transfer-encoding:message-id:cc:from:subject:date:to; bh=Yf34feX2ZIDM9qq/Khpx808F7OKr8WUr7mXlqV31Ak8=; b=lQ1lHVEfH1UFvyLPs/ZJPT6S1b2fRRLsXdBptpIxttvGxhnXA/UXx52TcHVM/Erzkl bdZs870C0ERqkLnABRMRK0L3qE3dj+1gIIrL3+HpWmo6qSPekWI64DASzbhBu+xkN8TD zLtKg+JHkKzynsKqwTfCqgc7SDBPtDZZWiH4lTBP2PwxwQWCvnTi7w/aai9a3QOR+DdC 9L3hh505aUthdek2dZOPHPuueWgtZRgPOVu4MlqeihQRrBb1huXw5/UM4VWYdEkDJfk5 BqVWssZDLU5XO8u9cpnVJUYdWuURA1YL+cmqYamdAfhmxwECyIpq9exI2G+cH5CTca72 fodA==
X-Gm-Message-State: AGRZ1gLBdDnRG8JGzF3Beu7yBaPN0/GNTQS0vyl7lV4/Vo/rxR/HlUI1 mcD0ndQuSJttoEp06p5AONVSqjC60KE=
X-Google-Smtp-Source: AJdET5eTBpsqBMJUS0x1ANUipOIpmhUUtYArendjvEmxFobpdmTvywzsYgQTmAwVsBDzbstBz5z70g==
X-Received: by 2002:a02:39b:: with SMTP id e27-v6mr6492546jae.3.1541731062596; Thu, 08 Nov 2018 18:37:42 -0800 (PST)
Received: from [172.20.10.2] ([172.56.12.126]) by smtp.gmail.com with ESMTPSA id u132-v6sm107166itb.21.2018.11.08.18.37.41 (version=TLS1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Thu, 08 Nov 2018 18:37:42 -0800 (PST)
References: <CABCOCHTr92=wFcXg0NnPouft3Zkk-XnUzp-FZbRykumvZfMHUg@mail.gmail.com>
Mime-Version: 1.0 (1.0)
In-Reply-To: <CABCOCHTr92=wFcXg0NnPouft3Zkk-XnUzp-FZbRykumvZfMHUg@mail.gmail.com>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
Message-Id: <E2D26B1B-4ADD-4392-A8B0-09112B8A5E3E@gmail.com>
Cc: NetMod WG <netmod@ietf.org>
X-Mailer: iPad Mail (13G36)
From: Mahesh Jethanandani <mjethanandani@gmail.com>
Date: Fri, 09 Nov 2018 09:37:35 +0700
To: Andy Bierman <andy@yumaworks.com>
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/rhRkO3rJxX-k9b97c1_jisjCIDI>
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 02:37:46 -0000

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.

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