Hi,

Thanks for the suggestion.

This was discussed, I think the reason we didn’t go with that solution is that 
(as you mentioned) you need the module contents with all the previous version 
labels. Does anyone from the design team recall any other details?

Regards,
Reshad.

From: "Ivory, William" <william.iv...@intl.att.com>
Date: Tuesday, March 31, 2020 at 3:40 AM
To: "mbj+i...@4668.se" <mbj+i...@4668.se>, "jason.ste...@nokia.com" 
<jason.ste...@nokia.com>, "Reshad Rahman (rrahman)" <rrah...@cisco.com>
Cc: "netmod@ietf.org" <netmod@ietf.org>
Subject: Re: [netmod] All IETF YANG modules MUST include revision-label 
statements

Apologies if this has already been suggested and deemed unworkable, but if you 
have access to all previous version labels for a branch then you can add 'M' 
only to the versions that are NBC with the previous version, and subsequent 
versions could drop the M until the next NBC change, ie:

1.0.0 -> 1.0.1 -> 1.0.2 > 1.0.3M -> 1.0.4 -> 1.0.5M ...

Here 1.04 is BC with 1.03 but not 1.0.0 - 1.0.2; 1.0.5 is NBC with 1.0.4 and 
previous versions etc.

The revision statements contain the revision-labels so you should have all the 
previous revision-labels present in the file, and you have all the data you 
need. Now you don't have the problem of the branch being poisoned as soon as 
the first M is added.

William

On Mon, 2020-03-30 at 22:11 +0000, Reshad Rahman (rrahman) wrote:

On 2020-03-30, 5:51 PM, "Martin Björklund" 
<mbj+i...@4668.se<mailto:mbj+i...@4668.se>> wrote:



    "Sterne, Jason (Nokia - CA/Ottawa)" 
<jason.ste...@nokia.com<mailto:jason.ste...@nokia.com>> wrote:

    > > But it is not true.  What happened between 1.0.2M and 1.0.3M?

    >

    > It tells you there is an NBC change between 1.0.2M and 1.0.3M.



    No.  As you note below it says that all bets are off.  The change

    between these two could be a spelling error fix.  Hence, Reshad's

    statement that "The revision label allows a user to easily figure out

    whether 2 revisions are (N)BC." is not correct.

You are correct that once a branch is poisoned with an 'M', the information 
provided is not as rich.

Even though you don't know whether 1.0.3M is BC/NBC with 1.0.2M, you still know 
that

- 1.0.2M is NBC with 1.0.1 and 1.0.0

- 1.0.3M is NBC with 1.0.1 and 1.0.0

- 1.0.1 is BC with 1.0.0



Still useful IMO.



Regards,

Reshad.



    > The M gives an indication that a branch has been "poisoned" by an

    > NBC change and that all bets are off from that point onwards in that

    > branch.





    /martin





    >

    > > -----Original Message-----

    > > From: netmod <netmod-boun...@ietf.org<mailto:netmod-boun...@ietf.org>> 
On Behalf Of Martin Björklund

    > > Sent: Monday, March 30, 2020 4:40 PM

    > > To: rrah...@cisco.com<mailto:rrah...@cisco.com>

    > > Cc: netmod@ietf.org<mailto:netmod@ietf.org>

    > > Subject: Re: [netmod] All IETF YANG modules MUST include revision-label

    > > statements

    > >

    > > "Reshad Rahman (rrahman)" <rrah...@cisco.com<mailto:rrah...@cisco.com>> 
wrote:

    > > >

    > > > On 2020-03-30, 2:20 PM, "Martin Björklund" 
<mbj+i...@4668.se<mailto:mbj+i...@4668.se>> wrote:

    > > >

    > > >     "Reshad Rahman (rrahman)" 
<rrah...@cisco.com<mailto:rrah...@cisco.com>> wrote:

    > > >     > On 2020-03-28, 4:41 AM, "Martin Björklund" 
<mbj+i...@4668.se<mailto:mbj+i...@4668.se>> wrote:

    > > >     >

    > > >     >     "Reshad Rahman (rrahman)" 
<rrah...@cisco.com<mailto:rrah...@cisco.com>> wrote:

    > > >     >     > Hi,

    > > >     >     >

    > > >     >     > 
https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_netmod-2Dwg_yang-2Dver-2Ddt_issues_45&d=DwIGaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=p8kyeK3u4ZYiaQ2ZPGqwkyXmQgBH6r5jpYiYWzhqJ48&m=ffH268c0xOd0DSFLQzZ2JHAmCHjVzPJVJtGPNxiiJcs&s=nyxzbv7ZWMgcXuMEW8MqjeT3oVxla6qFiF96M8SaMUY&e=

    > > >     >     >

    > > >     >     >         o  7.1

    > > >     >     >

    > > >     >     >           The text says:

    > > >     >     >

    > > >     >     >             All IETF YANG modules MUST include 
revision-label statements

    > > for

    > > >     >     >             all

    > > >     >     >             newly published YANG modules, and all newly 
published

    > > revisions of

    > > >     >     >             existing YANG modules.  The revision-label 
MUST take the form

    > > of a

    > > >     >     >             YANG semantic version number 
[I-D.verdt-netmod-yang-

    > > semver].

    > > >     >     >

    > > >     >     >           I strongly disagree with this new rule.  IETF 
modules use a linear

    > > >     >     >           history, so there are no reasons to use 
"modified semver".

    > > >     >     >

    > > >     >     >           It is ok to use rev:nbc-changes if needed, 
though.

    > > >     >     >

    > > >     >     > We believe some IETF models may not follow linear 
history, this was

    > > >     >     > brought up (I think) for IDR. Modified semver allows for 
non-linear

    > > >     >     > history and also doesn't preclude linear history. So even 
if we end up

    > > >     >     > having no IETF modules using branching, modified semver 
still works.

    > > >     >

    > > >     >     With the clarifiactions and updates in

    > > >     >     draft-verdt-netmod-yang-module-versioning, non-linear 
versioning

    > > >     >     works without modified semver.  So there is no technical 
reason to use

    > > >     >     modified semver in IETF modules.

    > > >     >

    > > >     > So are you proposing we use some other revision-label scheme 
(e.g.

    > > semver 2.0.0) for IETF modules?

    > > >     >

    > > >     > Or that IETF modules shouldn't use revision-labels?

    > > >

    > > >     That IETF shouldn't use revision labels.

    > > >

    > > > The revision label allows a user to easily figure out whether 2

    > > > revisions are (N)BC.

    > >

    > > I think you meant "modified semver as revision label allows ..."

    > >

    > > But it is not true.  What happened between 1.0.2M and 1.0.3M?

    > >

    > >

    > > /martin

    > >

    > >

    > > > Without the label, you always have to use tooling.

    > > >

    > > > Regards,

    > > > Reshad.

    > > >

    > > >     I am all for using rev:nbc-changes or rev:editorial-changes 
(which I

    > > >     think should be added) in IETF modules.

    > > >

    > > >

    > > >     /martin

    > > >

    > > >

    > > >     >

    > > >     > Or do you have something else in mind?

    > > >     >

    > > >     > Regards,

    > > >     > Reshad.

    > > >     >

    > > >     >     I can reluctantly accept that modified smever is published 
as

    > > >     >     Experimental.  But that doesn't mean that IETF modules 
should use it.

    > > >     >

    > > >     >

    > > >     >     /martin

    > > >     >

    > > >     >

    > > >     >     >

    > > >     >     > Regards,

    > > >     >     > Reshad.

    > > >     >     >

    > > >     >     >

    > > >     >     > On 2020-03-20, 5:08 PM, "netmod on behalf of Reshad Rahman

    > > (rrahman)"

    > > >     >     > <netmod-boun...@ietf.org<mailto:netmod-boun...@ietf.org> 
on behalf of

    > > >     >     > 
rrahman=40cisco....@dmarc.ietf.org<mailto:rrahman=40cisco....@dmarc.ietf.org>> 
wrote:

    > > >     >     >

    > > >     >     >     Hi Martin,

    > > >     >     >

    > > >     >     >     We've opened issues to track your review comments 
(see below).

    > > Will

    > > >     >     >     kick off separate therads for each issue.

    > > >     >     >

    > > >     >     >     
https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_netmod-2Dwg_yang-2Dver-2D&d=DwIGaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=p8kyeK3u4ZYiaQ2ZPGqwkyXmQgBH6r5jpYiYWzhqJ48&m=ffH268c0xOd0DSFLQzZ2JHAmCHjVzPJVJtGPNxiiJcs&s=HjVuj69fVsCLulvyNUajxCbtSKPAVkUZVJNK8s-f-Ho&e=

    > > dt/issues?q=is%3Aissue+is%3Aopen+label%3Aupdated-mod-rev-handling

    > > >     >     >

    > > >     >     >     Regards,

    > > >     >     >     Reshad.

    > > >     >     >

    > > >     >     >     On 2020-03-10, 3:31 PM, "netmod on behalf of Martin 
Björklund"

    > > >     >     >     
<netmod-boun...@ietf.org<mailto:netmod-boun...@ietf.org> on behalf of 
mbj+i...@4668.se<mailto:mbj+i...@4668.se>> wrote:

    > > >     >     >

    > > >     >     >         Hi,

    > > >     >     >

    > > >     >     >         Here are my review comments of

    > > >     >     >         draft-verdt-netmod-yang-module-versioning-01.

    > > >     >     >

    > > >     >     >

    > > >     >     >

    > > >     >     >         o  3.1.1

    > > >     >     >

    > > >     >     >             o  In statements that have any data 
definition statements as

    > > >     >     >                substatements, those data definition 
substatements MAY be

    > > >     >     >                reordered, as long as they do not change 
the ordering or any

    > > >     >     >                "rpc"

    > > >     >     >                "input" substatements.

    > > >     >     >

    > > >     >     >           I think this needs to capture that no 
descendant statements to

    > > >     >     >           "input" can be reordered.  Same for "output" 
(note, "input" and

    > > >     >     >           "output" in both "rpc" and "action").

    > > >     >     >

    > > >     >     >

    > > >     >     >         o  3.3

    > > >     >     >

    > > >     >     >             All revision labels that match the pattern 
for the "version"

    > > >     >     >             typedef in the ietf-yang-semver YANG module 
MUST be

    > > interpreted as

    > > >     >     >             YANG semantic version numbers.

    > > >     >     >

    > > >     >     >           I don't think this is a good idea.  Seems like 
a layer violation.

    > > >     >     >           What if my project use another dialect of 
semver, that wouldn't

    > > be

    > > >     >     >           possible with this rule.  I think this needs to 
be removed.

    > > >     >     >

    > > >     >     >

    > > >     >     >         o  3.3

    > > >     >     >

    > > >     >     >             Submodules MUST NOT use revision label 
schemes that could

    > > be

    > > >     >     >             confused

    > > >     >     >             with the including module's revision label 
scheme.

    > > >     >     >

    > > >     >     >           Hmm, how do I ensure that this MUST NOT is 
handled correctly?

    > > What

    > > >     >     >           exactly does "could be confused with" mean?

    > > >     >     >

    > > >     >     >

    > > >     >     >         o  3.3

    > > >     >     >

    > > >     >     >               In the filename of a YANG module, where it 
takes the form:

    > > >     >     >               module-

    > > >     >     >               or-submodule-name ['@' revision-label] ( 
'.yang' / '.yin' )

    > > >     >     >

    > > >     >     >           Should this section update 5.2 of RFC 7950?  I 
know that 5.2 just

    > > >     >     >           says "SHOULD".  But existing tools implement 
this SHOULD, and

    > > they

    > > >     >     >           need to be updated to handle this new 
convention.

    > > >     >     >

    > > >     >     >           But I wonder if this a good idea.  It means 
that a tool that looks

    > > >     >     >           for a module with a certain revision date 
cannot simply check

    > > the

    > > >     >     >           filenames, but need to parse all available 
modules (wijust to

    > > find

    > > >     >     >           the

    > > >     >     >

    > > >     >     >

    > > >     >     >

    > > >     >     >         o  3.4

    > > >     >     >

    > > >     >     >              leaf imperial-temperature {

    > > >     >     >                type int64;

    > > >     >     >                units "degrees Fahrenheit";

    > > >     >     >                status deprecated {

    > > >     >     >                  rev:status-description

    > > >     >     >                    "Imperial measurements are being 
phased out in favor

    > > >     >     >                     of their metric equivalents.  Use 
metric-temperature

    > > >     >     >                     instead.";

    > > >     >     >                }

    > > >     >     >                description

    > > >     >     >                  "Temperature in degrees Fahrenheit.";

    > > >     >     >              }

    > > >     >     >

    > > >     >     >           I don't think rev:status-description is 
necessary / worth it.  This

    > > >     >     >           can easily be written with the normal 
description statement

    > > instead:

    > > >     >     >

    > > >     >     >              leaf imperial-temperature {

    > > >     >     >                type int64;

    > > >     >     >                units "degrees Fahrenheit";

    > > >     >     >                status deprecated;

    > > >     >     >                description

    > > >     >     >                    "Imperial measurements are being 
phased out in favor

    > > >     >     >                     of their metric equivalents.  Use 
metric-temperature

    > > >     >     >                     instead.

    > > >     >     >

    > > >     >     >                     Temperature in degrees Fahrenheit.";

    > > >     >     >              }

    > > >     >     >

    > > >     >     >

    > > >     >     >         o  3.5

    > > >     >     >

    > > >     >     >           The example modules should be legal YANG 
modules.  Use e.g.

    > > >     >     >           "urn:example:module" as namespace.

    > > >     >     >

    > > >     >     >           Also, the modules are missing the last "}", 
which confuses the

    > > >     >     >           "rfcstrip" tool.

    > > >     >     >

    > > >     >     >

    > > >     >     >         o 4.1.1

    > > >     >     >

    > > >     >     >             Alternatively, the first example could have 
used the revision

    > > >     >     >             label

    > > >     >     >             "1.0.0" instead, which selects the same set of

    > > revisions/versions.

    > > >     >     >

    > > >     >     >             import example-module {

    > > >     >     >               rev:revision-or-derived 1.0.0;

    > > >     >     >             }

    > > >     >     >

    > > >     >     >           Shouldn't this be s/1.0.0/2.0.0/g ?

    > > >     >     >

    > > >     >     >

    > > >     >     >         o  5

    > > >     >     >

    > > >     >     >           I think the module name "ietf-yl-revisions" 
should be changed

    > > to

    > > >     >     >           "ietf-yang-library-revisions".   "yl" is not a 
well-known acronym.

    > > >     >     >

    > > >     >     >

    > > >     >     >         o  5.2.2

    > > >     >     >

    > > >     >     >           Wouldn't it be better if the leaf 
"deprecated-nodes-

    > > implemented" and

    > > >     >     >           "obsolete-nodes-absent" were of type "boolean" 
rather than

    > > type

    > > >     >     >           "empty"?

    > > >     >     >

    > > >     >     >

    > > >     >     >         o  7.1

    > > >     >     >

    > > >     >     >           The text says:

    > > >     >     >

    > > >     >     >             All IETF YANG modules MUST include 
revision-label statements

    > > for

    > > >     >     >             all

    > > >     >     >             newly published YANG modules, and all newly 
published

    > > revisions of

    > > >     >     >             existing YANG modules.  The revision-label 
MUST take the form

    > > of a

    > > >     >     >             YANG semantic version number 
[I-D.verdt-netmod-yang-

    > > semver].

    > > >     >     >

    > > >     >     >           I strongly disagree with this new rule.  IETF 
modules use a linear

    > > >     >     >           history, so there are no reasons to use 
"modified semver".

    > > >     >     >

    > > >     >     >           It is ok to use rev:nbc-changes if needed, 
though.

    > > >     >     >

    > > >     >     >

    > > >     >     >         o 7.1.1

    > > >     >     >

    > > >     >     >           There is a missing " in:

    > > >     >     >

    > > >     >     >            4.  For status "obsolete", it is RECOMMENDED 
to keep the

    > > "status-

    > > >     >     >                description" information, from when the 
node had status

    > > >     >     >                "deprecated, which is still relevant.

    > > >     >     >          HERE  -----------^

    > > >     >     >

    > > >     >     >

    > > >     >     >         o  8

    > > >     >     >

    > > >     >     >           s/CODE ENDS>/<CODE ENDS>/

    > > >     >     >

    > > >     >     >

    > > >     >     >         o Both YANG modules

    > > >     >     >

    > > >     >     >           All extensions should specify the grammar; 
i.e., in which

    > > statements

    > > >     >     >           they can be present and which substatements 
they can have.

    > > >     >     >

    > > >     >     >

    > > >     >     >

    > > >     >     >         /martin

    > > >     >     >

    > > >     >     >         _______________________________________________

    > > >     >     >         netmod mailing list

    > > >     >     >         netmod@ietf.org<mailto:netmod@ietf.org>

    > > >     >     >         
https://urldefense.proofpoint.com/v2/url?u=https-3A__www.ietf.org_mailman_listinfo_netmod&d=DwIGaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=p8kyeK3u4ZYiaQ2ZPGqwkyXmQgBH6r5jpYiYWzhqJ48&m=ffH268c0xOd0DSFLQzZ2JHAmCHjVzPJVJtGPNxiiJcs&s=z5LiDOlko48vuqlIgA0Gm7dcsxmHOtwfod6wC46lRU0&e=

    > > >     >     >

    > > >     >     >

    > > >     >     >     _______________________________________________

    > > >     >     >     netmod mailing list

    > > >     >     >     netmod@ietf.org<mailto:netmod@ietf.org>

    > > >     >     >     
https://urldefense.proofpoint.com/v2/url?u=https-3A__www.ietf.org_mailman_listinfo_netmod&d=DwIGaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=p8kyeK3u4ZYiaQ2ZPGqwkyXmQgBH6r5jpYiYWzhqJ48&m=ffH268c0xOd0DSFLQzZ2JHAmCHjVzPJVJtGPNxiiJcs&s=z5LiDOlko48vuqlIgA0Gm7dcsxmHOtwfod6wC46lRU0&e=

    > > >     >     >

    > > >     >     >

    > > >     >

    > > >     >

    > > >

    > > >

    > > _______________________________________________

    > > netmod mailing list

    > > netmod@ietf.org<mailto:netmod@ietf.org>

    > > 
https://urldefense.proofpoint.com/v2/url?u=https-3A__www.ietf.org_mailman_listinfo_netmod&d=DwIGaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=p8kyeK3u4ZYiaQ2ZPGqwkyXmQgBH6r5jpYiYWzhqJ48&m=ffH268c0xOd0DSFLQzZ2JHAmCHjVzPJVJtGPNxiiJcs&s=z5LiDOlko48vuqlIgA0Gm7dcsxmHOtwfod6wC46lRU0&e=





_______________________________________________

netmod mailing list

netmod@ietf.org<mailto:netmod@ietf.org>

https://urldefense.proofpoint.com/v2/url?u=https-3A__www.ietf.org_mailman_listinfo_netmod&d=DwIGaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=p8kyeK3u4ZYiaQ2ZPGqwkyXmQgBH6r5jpYiYWzhqJ48&m=ffH268c0xOd0DSFLQzZ2JHAmCHjVzPJVJtGPNxiiJcs&s=z5LiDOlko48vuqlIgA0Gm7dcsxmHOtwfod6wC46lRU0&e=


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

Reply via email to