Subject: [netmod] Follow-up: impact of changing an import statement

From: "Reshad Rahman (rrahman)" <[email-masked]>
Date: Sat, 1 Aug 2020 02:51:54 +0000

WG,

Following up from the discussions during NETMOD meeting on Thursday. One of the main open topics is what to do when an import stmt is changed, for example

  1.  Module A (1.0.0) imports module B using “2.0.0 or derived”. There is no version 3+ for module B so module A uses 2.Y.Z
  2.  A new revision 3.0.0 of module B is created AND there is a change in module A to import module B using “3.0.0 or derived”.

Authors/contributors have discussed 2 options and right now we don’t have unanimity:

  1.  Option A: depending on the impact on the importing module A, the import-stmt is deemed BC or NBC. E.g. if the only NBC change in the  imported module is  to a type which the importing module does NOT use, that’s a BC change for the importing module.
  2.  Option B: consider the import-stmt change as a BC change and resolve this elsewhere e.g. YANG-Packages or YANG-Library.

This was in slides 13-14 of the presentation.

Fire away….

Regards,
Reshad.

---

From: Juergen Schoenwaelder <[email-masked]>
Date: Sat, 1 Aug 2020 07:39:06 +0200

>   2.  A new revision 3.0.0 of module B is created AND there is a change in module A to import module B using “3.0.0 or derived”.

What does "2.0.0 or derived" mean? Does it mean (i) any module >=
2.0.0 or does it mean (ii) any (module >= 2.0.0 && < 3.0.0)?
 
>   2.  Option B: consider the import-stmt change as a BC change and resolve this elsewhere e.g. YANG-Packages or YANG-Library.

Whether a change is BC or not always depends on which definitions have
changed, how they have changed, and how these definitions are used. So
the answer very likely must be option 1. Option 2 also seems to push
the problem elsewhere (packages, library) without providing the
details.

/js

-- 
Juergen Schoenwaelder           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/>