Hi,
On 2020-05-09, 11:57 AM, "Martin Björklund" <[email protected]> wrote:
Martin Björklund <[email protected]> wrote:
> "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?
Aha, I think I understand what you mean. And in light of Tom's
comment in the other thread, I think that using 'revision-label' in
the module and not in sub-modules makes sense. sub-modules can still
use the date, and be included by revision (date).
That works and simplifies things.
Regards,
Reshad.
/martin
>
>
> /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
_______________________________________________
netmod mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/netmod