"Reshad Rahman (rrahman)" <[email protected]> wrote: > Hi, > > On 2020-05-08, 5:12 PM, "Martin Björklund" <[email protected]> wrote: > > Hi, > > "Reshad Rahman (rrahman)" <[email protected]> wrote: > > Hi, > > > > This came up during this week's meeting. We briefly discussed whether > > there's a need to version sub-modules or can we restrict versioning to > > modules only. We would like to hear from the WG on this, especially > > those with experience managing sub-modules. > > Yes I think this is needed. At tail-f, there are several modules with > many submodules. These modules always use include by revision, and > always the main module is always uddated when any submodule is > updated. It doens't make much sense IMO to not use include by > revision. > > > For completeness, below is an update from Jason in github: > > My initial reaction is that we should not preclude the use of revision > > label with a submodule. Submodules have their own version today. The > > trick is to define (or explicitly say it is out of scope) whether a > > module version must change if any underlying submodule versions > > change. That gets difficult if you consider simply moving a leaf from > > one sub-module to another (without changing anything else about it - > > its context, etc). > > Why would this be difficult? The revision date is updated on any > editorial change (see 7.1.9 of RFC 7950). So if a leaf gets moved > from submodule A to submodule B, then their revisions are udpated, and > hence the module's include-by revision is udpated, and hence the > module's revision ois updated. > > I think what Jason meant is that by moving a leaf between submodules, > it's possible the module's schema didn't change. > So yes revision date is updated, but you can't blindly update the > revision-label.
Why not? /martin > > Regards, > Reshad. > > /martin > > > > > > > Regards, > > Reshad. > > > > On 2020-03-27, 5:44 PM, "netmod on behalf of Reshad Rahman (rrahman)" > > <[email protected] on behalf of > > [email protected]> wrote: > > > > Hi, > > > > https://github.com/netmod-wg/yang-ver-dt/issues/49 > > > > 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? > > > > Good point. What was meant by that the label space for modules and > > sub-modules are orthogonal. e.g. the sub-module and module both > have > > the same label, it shouldn't be inferred that the 2 are related. > > We'll change/clarify the text. > > > > Regards, > > Reshad. > > > > On 2020-03-20, 5:08 PM, "netmod on behalf of Reshad Rahman > (rrahman)" > > <[email protected] on behalf of > > [email protected]> wrote: > > > > Hi Martin, > > > > We've opened issues to track your review comments (see > > below). Will > > kick off separate therads for each issue. > > > > > https://github.com/netmod-wg/yang-ver-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" > > <[email protected] on behalf of [email protected]> 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 > > [email protected] > > https://www.ietf.org/mailman/listinfo/netmod > > > > > > _______________________________________________ > > netmod mailing list > > [email protected] > > https://www.ietf.org/mailman/listinfo/netmod > > > > > > _______________________________________________ > > netmod mailing list > > [email protected] > > https://www.ietf.org/mailman/listinfo/netmod > > > > > > _______________________________________________ netmod mailing list [email protected] https://www.ietf.org/mailman/listinfo/netmod
