netmod-wg / yang-next

Feature requests for future versions of YANG
6 stars 0 forks source link

Revise Module Update Rules #136

Open abierman opened 2 months ago

abierman commented 2 months ago

module update rules

Dreaded "Section 11" had caused more trouble than any other section.

NBC Change

New Identifier Not Mandatory

WG list discussion has resulted in the following change text change in this section

OLD

   Otherwise, if the semantics of any previous definition are changed
   (i.e., if a non-editorial change is made to any definition other than
   those specifically allowed above), then this MUST be achieved by a
   new definition with a new identifier.

   In statements that have any data definition statements as
   substatements, those data definition substatements MUST NOT be
   reordered.  If new data definition statements are added, they can be
   added anywhere in the sequence of existing substatements.

NEW

   Otherwise, if the semantics of any previous definition are changed
   (i.e., if a non-editorial change is made to any definition other than
   those specifically allowed above), then this SHOULD be achieved by a
   new definition with a new identifier.

   In statements that have any data definition statements as
   substatements, those data definition substatements SHOULD NOT be
   reordered.  If new data definition statements are added, they can be
   added anywhere in the sequence of existing substatements.

Other refinements may be identified during development

Must Do: complexity: medium, bc: low, importance: high

BalazsLengyel commented 1 month ago

Top one seems like a free card to do big NBC changes. I see the changing of the semantics no different than removing a data node: If you write to it something unexpected may happen, you may get an error. The lower one seems OK.

Since during the versioning work we agreed that NBC changes are sometimes needed, I would like to see a general statement that this chapter is not a list of allowed and not-allowed changes, rather a list of compatible and non-compatible changes.

kwatsen commented 1 month ago

I like Balazs's proposal: allowed --> compatible

kwatsen commented 1 month ago

Andy: agree with Balazs proposal Andy: update rules really not part of the language Kent: should we remove it Andy: no, just update Section 11 to s/MUST/SHOULD/ Rob: need to align with versioning work