Thanks for the review and apologies for the delay in responding for 
module-versioning (Per and Joe have responded for the 2 other documents)... 
Please see inline.
    On Friday, November 1, 2024 at 12:07:22 PM EDT, Jürgen Schönwälder 
<jschoenwaelder@constructor.university> wrote:  
 
 On Tue, Oct 08, 2024 at 06:08:11PM -0400, Lou Berger wrote:
> All,
> 
> This starts working group last call on our core versioning documents:

[...]
 
> The working group last call ends on Friday October 25th - slightly extended
> since LC for 3 documents.
> 
> Please send your comments to the working group mailing list.

* Updated YANG Module Revision Handling
  <draft-ietf-netmod-yang-module-versioning-12>

  - The flagging of NBC changes still is at the module level and not
    at the level of definitions. Why not? (Other real world languages
    do have annotations such @since etc.) It always matters _which_
    definition has actually an NBC change, not whether something in a
    module has an NBC change. Why do we not mark the definitions that
    have non-backwards-compatible changes and then the rest follows
    from this? Instead, we give readers and compilers the puzzle to
    find out what has actually changed. This feels backwards. If there
    is an NBC change in YANG module, you want to quickly find out
    whether your module is affected or not. Why do we make this
    complicated? If we were to make an NBC change to
    yang:date-and-time, why would I not mark this typedef and instead
    mark ietf-yang as NBC? If an importing module does not use
    yang:date-and-time, it is not affected. Why do we make it hard to
    determine whether an importing module is affected?<RR> The 
authors/contributors considered this and actually started doing some work on 
per-node indicators. Eventually we decided to stick with only per-module NBC 
indicator in this document, the decision and the reasons behind it were 
communicated on the list here: 
https://mailarchive.ietf.org/arch/msg/netmod/eXYt-SKJ3necZ_T_jUPVKhFPUac/
If not already done, this should be added to the yang-next issues.

  - If a module import a definition from some other module that has an
    NBC change of say a typedef used by the importing module, does
    this module have to declare an NBC change as well? And if so, what
    if the presence of an NBC change depends on how the import is
    resolved, i.e., it may not be in the hands of the module author?<RR> No, 
the importing module does not have to declare an NBC change as well. We added 
text in 3.1.1 of rev-13 to clarify this.

  - I wonder whether extension statements were ever allowed "to change
    the semantic of a module". It should always be possible to ignore
    extensions. See RFC 7950: "An extension attaches non-YANG
    semantics to statements." And then later:

      Care must be taken when defining extensions so that modules that use
      the extensions are meaningful also for applications that do not
      support the extensions.

    Hence, I do not understand bullet #3 in section 3.1.1.<RR> That 3rd bullet 
has been reworded. We have removed "semantics of a module".

  - Section 6.2 is a bit confusing because it talks about clients but
    the guidance seems to apply to developers of clients, or do you
    really expect that client code itself can "plan to make changes to
    match published status changes". To me, this section seems to
    provide guidance for client developers not clients.
<RR> I think it's a given that developers have to make the changes to clients, 
but rev-13 now mentions developers of clients. No we are not alluding to 
clients with "AI" yet :-)

  - The definition of revision date could be as well:

    typedef revision-date {
      type yang:date-no-zone;
      description
        "A date associated with a YANG revision.

          Matches dates formatted as YYYY-MM-DD.";
      reference
        "RFC XXXX: Common YANG Data Types";
    }

    But perhaps the idea is to avoid dependencies. I do not care much
    but I thought I at least mention that we now (or soon) have a
    suitable type in place.<RR> Avoiding dependencies was the initial reason 
why we didn't use the definition from 6991-bis. But that was a few years ago 
and 6991-bis is close to the finish line now. Made the change you suggested 
above.

  - Is ietf-yang-status-conformance is a good module name given that
    this module is essentially an extension of ietf-yang-library?  Did
    you consider to name the module say ietf-yang-library-status and
    to also use a prefix like yanglib-status (or yl-status - see
    below)?
<RR> Changed the module name to ietf-yang-library-status and the prefix to 
"yls".
  - Appendix A: Changing a type is NBC only if the new type is having
    different syntax or semantics. See section 11 of RFC 7950, there
    is an explicit bullet for this.<RR> Modified bullet 2 and added bullet 3 
with a reference to RFC7950.
Regards,Reshad.


  
_______________________________________________
netmod mailing list -- netmod@ietf.org
To unsubscribe send an email to netmod-le...@ietf.org

Reply via email to