Re: [netmod] Deprecated/obsolete nodes and validation

"Sterne, Jason (Nokia - CA/Ottawa)" <jason.sterne@nokia.com> Wed, 12 October 2022 20:04 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 6C6E7C14CE23 for <netmod@ietfa.amsl.com>; Wed, 12 Oct 2022 13:04:02 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.475
X-Spam-Level:
X-Spam-Status: No, score=-2.475 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.571, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_BLOCKED=0.001, RCVD_IN_MSPIKE_H2=-0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_NONE=0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=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 ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 2-axi1P41SMO for <netmod@ietfa.amsl.com>; Wed, 12 Oct 2022 13:03:58 -0700 (PDT)
Received: from NAM02-BN1-obe.outbound.protection.outlook.com (mail-bn1nam07on2090.outbound.protection.outlook.com [40.107.212.90]) (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 5B261C14CE2F for <netmod@ietf.org>; Wed, 12 Oct 2022 13:03:58 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kjLyeoGnIdYiLLCPoCqTShUl9d/21ghESBJ18DR0TU+m7TOatNHnzU8rOg54ioYzxUw3lYvk2VnjlGK6NteOZuPirECqIV1fXh+y20C/DDp8JelXbfh1o6zk/01QThcNxLIRIzsd0xSzzSLk/ghvgiOZgFUmM1QY3Y0o9Xw4EZGe+6cf4sQ32SbauZxAY2lUcALTZWrg4bjMtTAZhsQe69laytImWiNV/6+Dhqm2udLQiqEKP8TcjTirlw1SqhACTPai/pj4wiXaOrEJ/HIHMN0tVP/j1l9Ljw0CIjy3cY0t2ut1Lx7S81bA7XIG7+a00HYQP1xLsMQIGy4PSWLYEA==
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=ElZ13cOGOrJJwiYhOsXrtdX811EAKsCpco4VINu7JRw=; b=ftJQX//LolQU1RsA8PengiW3QVlIj0lkzvrhns8qUUcpUgT4fmS2s431MhyWSw0+/vu+R/iXw08Q9e3RbD2rhqEMFLWEb076SOzno29vrn6ldfkd/qHBl7OxPjWRKGiOE/b2a5sNwJXh6qeEsPq+9wgOhnAmOGxuseU8iiJs7+hEnHJUFo1hWXxMJ1/PzKbSFw14WA1ifpC1Zl5byI7PrS+uC7u7pnqG883bKg7BI8vm1x9EMi/GsftVchtOaUMgKzB6pp97L67wPYxE9qLIRtTbAC7QyeGFHvhAHkqaUjZiP1otH/iTMXg9rNR5ZR//E6HIjJXs1Qw4VkhZxd7YfA==
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=ElZ13cOGOrJJwiYhOsXrtdX811EAKsCpco4VINu7JRw=; b=GvvLrZ5vqsICVS9I8aBggA8ltaawAOcEeg7vgCEPgoQIcTfFY/Sf5Hf/N5g0VvuBMhDkR2XV/zDplfn+k7uxBjwIUVtFvleJ4wfeOO/hmAsyDSXj9B3YKZCa6B1oGOy5pOP2FJ3xqKiR+KHfH1lrwBdaw++V758+7BOwrPbknxQ=
Received: from DM6PR08MB5084.namprd08.prod.outlook.com (2603:10b6:5:41::29) by DM6PR08MB5564.namprd08.prod.outlook.com (2603:10b6:5:10a::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5676.36; Wed, 12 Oct 2022 20:03:51 +0000
Received: from DM6PR08MB5084.namprd08.prod.outlook.com ([fe80::4044:9a81:c96e:a440]) by DM6PR08MB5084.namprd08.prod.outlook.com ([fe80::4044:9a81:c96e:a440%7]) with mapi id 15.20.5709.015; Wed, 12 Oct 2022 20:03:51 +0000
From: "Sterne, Jason (Nokia - CA/Ottawa)" <jason.sterne@nokia.com>
To: Andy Bierman <andy@yumaworks.com>
CC: Jan Lindblad <janl@tail-f.com>, Michal Vasko <mvasko@cesnet.cz>, netmod <netmod@ietf.org>
Thread-Topic: [netmod] Deprecated/obsolete nodes and validation
Thread-Index: AQHY1+TyFomqWSC9NUqT/Iv7LdU9x64LF8WAgAAZxoCAAAlOUA==
Date: Wed, 12 Oct 2022 20:03:51 +0000
Message-ID: <DM6PR08MB50843DD31448342F629C5B929B229@DM6PR08MB5084.namprd08.prod.outlook.com>
References: <c064991d-923c-44bf-c1f9-dc0cca5e5174@cesnet.cz> <11698042-6FCE-4444-BDFC-5308A59FF5E5@tail-f.com> <DM6PR08MB5084D5BEB9CE42F0A85997029B229@DM6PR08MB5084.namprd08.prod.outlook.com> <CABCOCHSu36jbXN4uuLtYkWzHknDeCsGTD4ztmiB9HBoazMo+7Q@mail.gmail.com>
In-Reply-To: <CABCOCHSu36jbXN4uuLtYkWzHknDeCsGTD4ztmiB9HBoazMo+7Q@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nokia.com;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: DM6PR08MB5084:EE_|DM6PR08MB5564:EE_
x-ms-office365-filtering-correlation-id: 98c0284a-7735-4218-ff45-08daac8ce1f2
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: /od5CKStxP4RvsT8IwxEkB49H0R4zELj428/QF0xUkSUBVzTriR4nEJiZ8V+Ff3jfM6++L6n3M5eCQCWNLf6lgnYV3Op1FyMWP1K0fZFTs0n6uKneXXKMqI/HEmKS2nmL9W3ZxKq/wefn4jNsNB9tOgRJirPhgXJ8dowlT/oCi03evndVY4iG2Us4CbEtFYOwSqEBAvS1Op/k/P8/uFlv0t5lDHnIFtQGdVhOcSe5K8ear1GlV5f+TvLXXuC0wFW/n6zU+fzgNZyvv7utJeMLM3GBhUX+BzcWPPcDOkeKXFGRhkaZqAxm6usjPcCogrF6H0OdAm4I4NUwnKDZzWZF4jllGwhPHS7UVtP6abjW32IWe5yE2kvjRY35T/s5ogVpOuDQBNmdRwRf6foQYRVHbVJeN8gn7Np/RG0YKDF2frSgcjW4JhwXrxKZJdJSXAnWC0qfVB8emf86UmWbMUAnxDJ6u/5ieTfxm2XA/rYsJWBwmrpRNla/gikrmKF5cTxV9XjRH+v2NjgAuQdupxFWKxVyyKmiOl727KNUaXb0nBP3w7R+Um74FdHppw3dV2PdveT3eUd8BmCbcJYPqE80IyEpp7QoqGiGlobMFBBvwBVF+bOqoO6lbJWMMtWG6uqV+v2SBcF9trDMYDqQxiuiTrW4BIa+TgoH+8l+6NTKsERav2j8Ehw3MKBA6a6q/q91R3vn2OKs36ftgfoGrgvHGzOtq1hV2wHjDVqYRJcwZR4/MFQQeEEOeo5qU+yBswdwFnbuyOrmVwwIAqLJ1o38hrIuAH6HSeHoRLIg423cTI=
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM6PR08MB5084.namprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230022)(4636009)(376002)(396003)(346002)(136003)(39860400002)(366004)(451199015)(66556008)(4326008)(86362001)(8676002)(66946007)(66476007)(966005)(6916009)(76116006)(64756008)(8936002)(66446008)(316002)(41300700001)(54906003)(52536014)(2906002)(33656002)(5660300002)(38100700002)(122000001)(82960400001)(166002)(38070700005)(53546011)(6506007)(7696005)(478600001)(9686003)(26005)(71200400001)(83380400001)(55016003)(186003); DIR:OUT; SFP:1102;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: KXP6kvuRDWlnArJLajvPd/a1bDmLEjBWpQv4YHqF4HRRd0upEse3S1t153lusTEsAI06bIbmfJYF2uVAJFqHcUUS4Sje3Lg2asIM/LEUL+5fa3IrWdWvSUatKsB+GwuuXLXd6+Hudf1a9URt9PXr+ITqWA5BFHDVv3QkNt4WcCf2RuFywk4GBzPAmZWMsaLdasSqxNQOAieKfqJ+0vCNDhn+YBVtTiSoM+lLjzcQpnnOdhHUcFyT8Ttm5REM8V8aPjMH8UUX6kdqsYVOYynWmzDpnb6EiX7c2cQjBlCBto1Ah5N5qkxcBMpB9VymDePIAW4N015PxIcWCKlXujrTCY7nTWrw2bPubNU3zA+nVBYsRg1kd+2yiIHOyQdbvdXwy+/CVkJ9LRhLLDEeP/nUyU7rpeivj3i44y6wE4ghHVBBioBhbva7UlTNFlumSeX2N1hcoq/5EunHmzxgAhXQyHucZZ3dm03q7dlIsOrv3l7yAmeyFWEr6Ti6ElonHtFiKwcGTJ0G1dJixrc3/cKKaTqcfC3apairkqNTkHvvIpMrCK5bqwZElLZVgeGRIwrS+136Gln/CNvDQzEDfcY+CZeikz5Tld1w6/hgb3v5t+JQuXgYpb+qt/bxA6782Nd1at1FExxMEFG8Xrmvr1Bck9FDW6iLBIGlcDB5S3tpyFtvf4OCVDe7M6UxGO0K5bY5e3WHufR2NHcH3nKultyfQehWEyEpmlJccBFBbKgitzz3j35DyPTsXBs47zri/RrCYUSQ0wS6L1+segwIRNqeQwyIK5fyGVV/r8/OnNw5ehk87absrVLanGl+XiDw2342fx9Nt0KUU55eyoONXO46iyod7i5err3fMZdgg9ZiDtGNR/b5sXaBWHBffQnipMbpRdH3QUBQ71he5TZ6GT+nsEk6M87mRwh4mPgOljovzitLmLfDApWSNDtniKf/kIVu96mjqaAmiD/JC2/MsN/KkE647CI+a4bfX08EAg8IE/PSYsOyUBl7ObLzLTpvV3rLugNjdeUdOxhoYs6ziEBxu5JqixqvoJ2JMnoT4f73HdrxsFV2ShpXXyFDOcNZde30E+LnQ2Z8HvKTbbZ/q/KeYmLmlRiSLeOYJNMlqLRbgH/LEaZEJpcGkDKWJEqzrMSMOW25pqLFJoJxeCmh6T6fwhvbe13/t320jaWd/gIyrDlk/37YPgV7q+21H9bdSR6jYfOokuna4j48BNpZeTB7QDLVHXYNV3/Az7F3saytbCexgyx/8tKTJiKlm65GcM4UIKYkumq1qdFwrRluCDsHR6GFVf4gL+zb8KgDcMar0J5+lF5crdb+cEozzpPlvUdyWLA2YJgqhIWfSMtY18XddVUwHszUXGCD5H/H5gpn8LA2g//14VGC1WRf4r+H472eavx/ZCZB07tWLpmPQtZsJq6FHnuh0ZOKymkQgREjEaavI2gwtWKPKb4ShGpifDeCZOP7hcFLm/iLn30C2JubPtDZGWhOSZGHiQaZyMR1zrRxBXPAAwJDDs5CYiHsn+/PktSxxjHmp/opbZhja90jEwgT7kEPLYiFBkB8OHdP3cPzDTpXFTax1PFmdGkxB/dm
Content-Type: multipart/alternative; boundary="_000_DM6PR08MB50843DD31448342F629C5B929B229DM6PR08MB5084namp_"
MIME-Version: 1.0
X-OriginatorOrg: nokia.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: DM6PR08MB5084.namprd08.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 98c0284a-7735-4218-ff45-08daac8ce1f2
X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Oct 2022 20:03:51.2387 (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: 6pfx0HWqljIELSyMlb8ehamICFIHtWnJF3QKTBgy46eJWSGJcIbHkxAROAdgw4iAEa6VDU7zZnq79QvKoZLTPw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR08MB5564
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/KzDHrKHwvABUyzP1xsdbo9RWsDk>
Subject: Re: [netmod] Deprecated/obsolete nodes and validation
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.39
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, 12 Oct 2022 20:04:02 -0000

Agree.  In the Module Versioning draft we have the following:
----------------------------

   The ietf-yang-library-revisions YANG module augments YANG library
   with two boolean leafs to allow a server to report how it implements
   status "deprecated" and status "obsolete" schema nodes.  The leafs
   are:

   deprecated-nodes-implemented:  If set to "true", this leaf indicates
      that all schema nodes with a status "deprecated" are implemented
      equivalently as if they had status "current"; otherwise deviations
      MUST be used to explicitly remove "deprecated" nodes from the
      schema.  If this leaf is set to "false" or absent, then the
      behavior is unspecified.

   obsolete-nodes-absent:  If set to "true", this leaf indicates that
      the server does not implement any status "obsolete" schema nodes.
      If this leaf is set to "false" or absent, then the behaviour is
      unspecified.

   Servers SHOULD set both the "deprecated-nodes-implemented" and
   "obsolete-nodes-absent" leafs to "true".

------------------------------------

From: Andy Bierman <andy@yumaworks.com>
Sent: Wednesday, October 12, 2022 3:27 PM
To: Sterne, Jason (Nokia - CA/Ottawa) <jason.sterne@nokia.com>
Cc: Jan Lindblad <janl@tail-f.com>; Michal Vasko <mvasko@cesnet.cz>; netmod <netmod@ietf.org>
Subject: Re: [netmod] Deprecated/obsolete nodes and validation



On Wed, Oct 12, 2022 at 11:00 AM Sterne, Jason (Nokia - CA/Ottawa) <jason.sterne@nokia.com<mailto:jason.sterne@nokia.com>> wrote:
Hi all,

IMO an obsolete node is not in the schema:
- any mandatory statement should be ignored (i.e. it is fine for a datastore to *not* have data for mandatory obsolete nodes)
- trying to write data to that element should be an error (no such node)

I generally agree with Jan about the deprecated item, although 7950 allows a deprecated node to not be supported:

   o  "deprecated" indicates an obsolete definition, but it permits
      new/continued implementation in order to foster interoperability
      with older/existing implementations.

IMO this definition has always been incorrect.
Balazs has brought up this issue many times.

We implement what is useful:

  deprecated:  same as active except may change to obsolete someday.
  This is what most opensource implements.  Using a deprecated item
   is a warning, not an error.

   obsolete: must be removed and not implemented. Usage results in an error.


Jason

Andy

> -----Original Message-----
> From: netmod <netmod-bounces@ietf.org<mailto:netmod-bounces@ietf.org>> On Behalf Of Jan Lindblad
> Sent: Tuesday, October 4, 2022 7:32 AM
> To: Michal Vasko <mvasko@cesnet.cz<mailto:mvasko@cesnet.cz>>
> Cc: netmod <netmod@ietf.org<mailto:netmod@ietf.org>>
> Subject: Re: [netmod] Deprecated/obsolete nodes and validation
>
> Michal,
>
> > we have come across a situation that does not seem to be mentioned in the
> specs. What exactly should happen if deprecated/obsolete data are invalid?
> Specifically:
> >
> > Should the whole data be considered invalid?
> >
> > Are there differences between deprecated and obsolete data?
> >
> > If there are mandatory obsolete data missing, is that considered an error?
> This is the actual problem we are not sure what to do about.
>
> While 7950 and 8407 may not be totally crisp on the subject, the IMHO "usual
> definition" is that deprecated APIs are still fully functional. The deprecation is a
> warning to developers not to use it in new designs, and to maintainers of
> existing solutions that depend on it to migrate to a newer API within a grace
> period (at least a year suggested in 8407). Obsolete APIs, OTOH, may not be
> (fully) functional.
>
> Every server that declares an API should of course adhere to that API in order
> to be taken seriously. Breaking that API might even be construed as a legal
> breach of contract in certain situations. I think that definitely applies to
> deprecated data as much as current. I would say that obsolete data would still
> have to stick to the schema, but if some optional obsolete data is missing, I
> think that is generally acceptable. Obsolete APIs do not need to be usable, they
> just need to not break other things. But if that obsolete data is marked
> mandatory, the server must provide some valid value in order not to break the
> schema.
>
> Careful readers will find a lot of personal opinions and few references to RFCs in
> the above. In my mind, if we don't respect the schema, what is the schema for?
> If schemas can't be trusted, how do we build the next level of automation?
>
> Best Regards,
> /jan
> _______________________________________________
> netmod mailing list
> netmod@ietf.org<mailto:netmod@ietf.org>
> https://www.ietf.org/mailman/listinfo/netmod

_______________________________________________
netmod mailing list
netmod@ietf.org<mailto:netmod@ietf.org>
https://www.ietf.org/mailman/listinfo/netmod