Hi,

I agree that a revision-label could be useful in an I-D but not to indicate
NBC changes (because it doesn't).
The rules need to be clear and simple with no exceptions.

 1) Special version 0.x.y contains NO NBC information
     Major version = 0 means the module has no published version

 2) First published version is 1.0.0

 3) The revision-label in an unpublished module has a special form which
simply identifies
      the source of the development and the iteration of the
work-in-progress.
      You can't really pick the next published label until the module is
ready.

>From my example:

draft-00:   0.1.0

draft-01:   0.2.0

draft-02:   0.3.0

RFC-1:    1.0.0

bis-draft-00:   1.0.0+1

bis-draft-01:   1.0.0+2

bis-draft-02:   1.0.0+3

[repeat NBC step bis-draft-02 10 times]  1.0.0+4 .. 1.0.0+13

RFC-2:  2.0.0   (in general: 1.0.1 or 1.1.0 or 2.0.0)

The BC vs. NBC distinction is not relevant for a work-in-progress.
We have seen many times in this WG where a NBC change was made
and then later undone.  There is no value in tracking the module during
development.


Andy


On Thu, Apr 2, 2020 at 7:46 AM Reshad Rahman (rrahman) <[email protected]>
wrote:

>
>
>
>
> *From: *'Andy Bierman' <[email protected]>
> *Date: *Thursday, April 2, 2020 at 10:26 AM
> *To: *"Reshad Rahman (rrahman)" <[email protected]>
> *Cc: *Italo Busi <[email protected]>, "Joe Clarke (jclarke)" <
> [email protected]>, NetMod WG <[email protected]>
> *Subject: *Re: [netmod] versioning procedures (RFC vs. I-D)
>
>
>
>
>
>
>
> On Thu, Apr 2, 2020 at 4:11 AM Reshad Rahman (rrahman) <[email protected]>
> wrote:
>
> Hi,
>
>
>
> *From: *Italo Busi <[email protected]>
> *Date: *Thursday, April 2, 2020 at 5:06 AM
> *To: *"Reshad Rahman (rrahman)" <[email protected]>, 'Andy Bierman' <
> [email protected]>, "Joe Clarke (jclarke)" <[email protected]>
> *Cc: *NetMod WG <[email protected]>
> *Subject: *RE: [netmod] versioning procedures (RFC vs. I-D)
>
>
>
> Reshad,
>
>
>
> My doubt and, if I understand well also Andy’s question, is about the fact
> that before publishing an RFC-bis with e.g., 1.1.0, we will have a set of
> Internet-Drafts updating the RFC with 1.0.0
>
>
>
> What versions should be used in the YANG modules published in these
> Internet-Drafts?
>
>
>
> Think about the following scenario: -00 version provide BC changes to the
> RFC module but the -01 version provide NBC changes to what has been added
> in the -00 module (thus the -01 version is BC with the RFC 1.0.0 module but
> NBC with the -00 version module)
>
> <RR> So bis 00 would be 1.1.0 (BC with RFC module).
>
> Bis 01 should be updated according to its relationship to the RFC module
> (bis 00 doesn’t matter anymore), when RFC bis is published it won’t have
> the full history.
>
>
>
> Hope I correctly understood your question.
>
>
>
>
>
> This semver plan is not very intuitive and not sure it works.
>
>
>
> draft-00
>
>
>
>    container the-container;             version 0.1.0      OK
>
>
>
> draft-01:
>
>    container my-container;             version 0.2.0;   rules violated;
> NBC should force 1.0.0
>
>
>
> draft-02:
>
>
>
>     container my-container {           version 0.3.0; should be 1.1.0
>
>         leaf my-leaf { type int32; }
>
>     }
>
>
>
> RFC-1:
>
>
>
>     container my-container {           version 1.0.0;  should be 2.0.0
> according to NBC rules
>
>         leaf my-leaf { type uint32; }
>
>     }
>
>
>
> bis-draft-00:
>
>
>
>    container my-container {           version 1.1.0; OK
>
>         leaf my-leaf { type uint32; }
>
>         leaf another-leaf { type int32; }
>
>     }
>
>
>
> bis-draft-01:
>
>
>
>   container my-container {                  diff against RFC-1:  version
> 1.1.0 but already used; use 1.2.0?
>
>         leaf my-leaf { type uint32; }
>
>         leaf another-leaf { type uint32; }
>
>     }
>
>
>
> bis-draft-02:
>
>
>
>   container example-my-container {                  diff against RFC-1:
> version 2.0.0 but use 1.3.0 instead?
>
>         leaf my-leaf { type uint32; }
>
>         leaf another-leaf { type uint32; }
>
>     }
>
>
>
> [repeat NBC step bis-draft-02 10 times.... now up to version 12.0.0 or is
> it 1.13.0? something else?
>
>
>
> RFC-2:   publish draft-12 as RFC-2: now change the label from 1.13.0 to
> 2.0.0? or leave it 12.0.0?
>
>
>
> IMO it is very confusing that the stated rules are so inconsistent and
> are violated so many ways.
>
> There should be no revision-label at all in Internet Drafts because these
> documents are unpublished.
>
> They should only be added to the RFC version.
>
>
>
> The semver procedures are not intended to work for unpublished modules
> that are only
>
> meant for review, not for implementation. The revision-label provides only
> noise in Internet Drafts.
>
> <RR2> I think it’s useful to have a revision label in a draft because it
> indicates nature of changes (BC v/s NBC) compared to the previous published
> revision (RFC).
>
> But you are absolutely right that setting the version based on changes
> with the previous draft revision is useless and confusing.
>
>
>
> Regards,
>
> Reshad.
>
>
>
>
>
> Regards,
>
> Reshad.
>
>
>
> Thanks, Italo
>
>
>
>
>
> Andy
>
>
>
>
>
> *Italo Busi*
>
> Principal Optical Transport Network Research Engineer
>
> Huawei Technologies Co., Ltd.
>
> Tel : +39 345 4721946
>
> Email : [email protected]
>
>
>
> This e-mail and its attachments contain confidential information from
> HUAWEI, which is intended only for the person or entity whose address is
> listed above. Any use of the information contained herein in any way
> (including, but not limited to, total or partial disclosure, reproduction,
> or dissemination) by persons other than the intended recipient(s) is
> prohibited. If you receive this e-mail in error, please notify the sender
> by phone or email immediately and delete it!
>
>
>
> *From:* Reshad Rahman (rrahman) [mailto:[email protected]]
> *Sent:* mercoledì 1 aprile 2020 20:13
> *To:* Andy Bierman <[email protected]>; Joe Clarke (jclarke) <
> [email protected]>
> *Cc:* NetMod WG <[email protected]>
> *Subject:* Re: [netmod] versioning procedures (RFC vs. I-D)
>
>
>
>
>
> *From: *netmod <[email protected]> on behalf of 'Andy Bierman' <
> [email protected]>
> *Date: *Wednesday, April 1, 2020 at 2:07 PM
> *To: *"Joe Clarke (jclarke)" <[email protected]>
> *Cc: *NetMod WG <[email protected]>
> *Subject: *Re: [netmod] versioning procedures (RFC vs. I-D)
>
>
>
>
>
>
>
> On Wed, Apr 1, 2020 at 10:39 AM Joe Clarke (jclarke) <[email protected]>
> wrote:
>
>
>
> > On Apr 1, 2020, at 13:28, Andy Bierman <[email protected]> wrote:
> >
> > Hi,
> >
> > I just want to confirm that all the proposed documentation procedures
> > using new extensions are limited in scope to published modules only,
> > and not applied to unpublished modules (terms defined in RFC 8407).
> >
> > IMO it would be harmful to module usability to assign revision-labels or
> > include revision-related extensions in unpublished modules (e.g.,
> Internet Drafts).
> > Consider how cluttered and confusing the client-server modules would be
> > if the 50+ NBC changes and versions were tracked through all the I-Ds.
> >
> > For IETF modules, the first usage of the revision-label
> > should be in the initial RFC, and be set to 1.0.0.
> >
> > If the RFC is ever republished then one can expect to find an updated
> > revision-label and possibly extensions tracking NBC changes.
>
> The semver scheme allocates a major version of 0 for pre-releases where
> the BC/NBC rules do not apply.  I agree that a first official RFC release
> should be 1.0.0 (from a semver revision-label standpoint).  From a design
> team standpoint, I know we mentioned the 0 versioning early on, but I don’t
> think we spent much time talking about modules under development overall.
>
>
>
>
>
> IMO it is confusing to ignore the semver rules for the special 0.x.y
> releases.
>
> There are many NBC changes made at this point which are treated as minor
> or patch changes.
>
> The procedure is really broken once you consider a WG developing any
> RFC-bis module.
>
> Now the major version is not 0 and all updates look like real releases.
>
> <RR> I don’t think that’s needed. Initial module in RFC has 1.0.0, module
> in (released) RFC-bis can go to 1.0.1, 1.1.0 or 2.0.0 depending on the
> change.
>
>
>
> Regards,
>
> Reshad.
>
>
>
> My take would align to yours that we wouldn’t clutter a module with
> development NBC tracking.
>
> Joe
>
>
>
> Andy
>
>
>
>
_______________________________________________
netmod mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/netmod

Reply via email to