Re: [netmod] yang-data-ext issues

Robert Varga <nite@hq.sk> Mon, 23 April 2018 16:48 UTC

Return-Path: <nite@hq.sk>
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 6EDA212D881 for <netmod@ietfa.amsl.com>; Mon, 23 Apr 2018 09:48:48 -0700 (PDT)
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, RCVD_IN_DNSWL_NONE=-0.0001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=hq.sk
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 4YirbyhXPNmS for <netmod@ietfa.amsl.com>; Mon, 23 Apr 2018 09:48:43 -0700 (PDT)
Received: from mail.hq.sk (hq.sk [81.89.59.181]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B68FB12E887 for <netmod@ietf.org>; Mon, 23 Apr 2018 09:48:37 -0700 (PDT)
Received: from nitebug.localdomain (46.229.239.158.host.vnet.sk [46.229.239.158]) by mail.hq.sk (Postfix) with ESMTPSA id E9EC9242EC0; Mon, 23 Apr 2018 18:48:34 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=hq.sk; s=mail; t=1524502115; bh=xjbIaDmUumd7CW3WA6KWPDN9Jzje5+LyuuqBT9cwjWs=; h=Subject:To:References:From:Date:In-Reply-To; b=J5vGlgwGhzoEP66hhKcVwJSjrJVQiX43HWX+EVOS46fEP7BLy3gDsDMGukLIw0x9W VsB7WKNjtqCz+J0nzcRDd4E/nlNcS1TmWOwwVz8aANZSfcOtSvbm4tezQY319U9DUL Xz5Jb3WpnaBFncsMOjFMgML2TO7AxFCaTScbjI7U=
To: Ladislav Lhotka <lhotka@nic.cz>, netmod@ietf.org
References: <20180416.145617.1262098657698751846.mbj@tail-f.com> <87h8oal7iu.fsf@nic.cz> <a7d3702d-1406-7bd2-caf6-7c07812c86aa@hq.sk> <6d5cd4e4257822e4a5c478dc934c5433428aff38.camel@nic.cz>
From: Robert Varga <nite@hq.sk>
Message-ID: <9e9c4b0e-f7f0-b730-de13-52886d9b3399@hq.sk>
Date: Mon, 23 Apr 2018 18:48:27 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <6d5cd4e4257822e4a5c478dc934c5433428aff38.camel@nic.cz>
Content-Type: multipart/signed; micalg="pgp-sha512"; protocol="application/pgp-signature"; boundary="TEtu9BWMHa5gnQmBQ64bQV43a2x8P7D8R"
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/ZYVsSn-1xxaiIISLY7nvAaE_jMA>
Subject: Re: [netmod] yang-data-ext issues
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.22
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, 23 Apr 2018 16:48:48 -0000

On 22/04/18 14:56, Ladislav Lhotka wrote:
>> One example: YANG 1.1 was supposed to be a backwards-compatible, yet it
>> introduced multiple-inheritence to a language which was previously
>> strictly single-inheritence. That sort of change is a major revision of
>> the metamodel and certainly does not qualify as backwards-compatible at
>> that level of abstraction.
> I'd defend YANG 1.1 here, I think it was a well managed and conservative update.
> The meaning of backward compatibility was defined in the charter: YANG 1.0
> modules should continue to work in 1.1. Apart from fixing evident bugs, I
> believe this goal was achieved.

I agree and the upgrade process was very smooth, all things considered.

> I am much more concerned with some of the post-1.1 features, also because YANG
> is now being updated in several directions without a clear vision. And another
> big problem is that YANG extensions are used for these changes, so we will
> probably end up with several different versions of YANG, although formally
> everything will be 1.1.  

Agree, and it's especially the interactions between extensions which are
critical to manage the outcome.

> Regarding your example: from my own experience, implementing validation of
> identityref values with multiple inheritance is not terribly complicated in
> comparison to single inheritance. I have other favorites for the most peculiar
> feature in YANG.

It's not, but it forced us to incompatibly change our Java binding
specifications -- where we used to use abstract classes we have to use
interfaces. Luckily there is no state involved :)

Regards,
Robert