Subject: [netmod] yang-module-versioning: revision-label scheme

From: "Reshad Rahman (rrahman)" <[email-masked]>
Date: Mon, 27 Apr 2020 15:42:04 +0000

Hi,

There was a discussion<https://mailarchive.ietf.org/arch/browse/netmod/?q=%22Interpreting%20revision%20labels%20as%20YANG%20semantic%20version%20numbers%22> on the need to have an extension which specifies which versioning scheme a module is using.

The authors have identified 2 options:

  1.  One extension statement with a parameter which specifies the scheme being used. E.g. revision-label-schema(ietf-yang-semver), revision-label-schema(sdoX-yang). We’d need the parameter to be registered with IANA.
  2.  One extension statement per revision-scheme. E.g. revision-label-scheme-ietf-yang-semver, revision-label-scheme-sdoX-yang.

The authors have  a preference for option 1, we believe it makes things simpler. We would like to hear from the WG if there’s any concerns, suggestions etc.

Regards,
Reshad.

---

From: Martin Björklund <[email-masked]>
Date: Tue, 28 Apr 2020 17:25:25 +0200 (CEST)

Hi,

"Reshad Rahman \(rrahman\)" <rrahman=[email-masked]> wrote:
> Hi,
> 
> There was a
> discussion<https://mailarchive.ietf.org/arch/browse/netmod/?q=%22Interpreting%20revision%20labels%20as%20YANG%20semantic%20version%20numbers%22>
> on the need to have an extension which specifies which versioning
> scheme a module is using.
> 
>   1.  One extension statement with a parameter which specifies the
>   scheme being used.

Ok, I understand what this means...

>   E.g. revision-label-schema(ietf-yang-semver),
>   revision-label-schema(sdoX-yang).

... but I don't understand these examples.   I expected something
like:

    rev:revision-label-schema yang-semver;

    rev:revision-label-schema semver-2.0;

>   We’d need the parameter to be
>   registered with IANA.

An alternative could be to use identities:

    rev:revision-label-schema ysmever:yang-semver;

    rev:revision-label-schema ex:semver-2.0;

>   2.  One extension statement per
>   revision-scheme. E.g. revision-label-scheme-ietf-yang-semver,
>   revision-label-scheme-sdoX-yang.

I prefer a single statement.

> The authors have a preference for option 1, we believe it makes things
> simpler. We would like to hear from the WG if there’s any concerns,
> suggestions etc.

/martin

---

From: "Reshad Rahman (rrahman)" <[email-masked]>
Date: Tue, 28 Apr 2020 15:53:47 +0000

Hi,

On 2020-04-28, 11:25 AM, "netmod on behalf of Martin Björklund" <[email-masked] on behalf of [email-masked]> wrote:

    Hi,

    

    
        rev:revision-label-schema semver-2.0;
You are correct. I was just using free-form, not the correct syntax.

    
    
        rev:revision-label-schema ex:semver-2.0;
Ack, identities also came up during our discussions also. I can't think of any reason not to use identities in this case.

Good.

Regards,
Reshad.    
    
    > simpler. We would like to hear from the WG if there’s any concerns,

    /martin
    _______________________________________________
    netmod mailing list
    [email-masked]
    https://www.ietf.org/mailman/listinfo/netmod

---

From: Juergen Schoenwaelder <[email-masked]>
Date: Tue, 28 Apr 2020 18:01:40 +0200

I may be naive and not understand things correctly but an open ended
set of versioning schemes scares me. I do not see how this leads to
interoperability.

Perhaps all the versioning work should be experimental until we know
what the winning solution is?

First semver was the solution, then we got semver plus extensions,
and now we move full speed ahead to support an open ended number of
versioning schemes?

/js (who probably should have kept silent)

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <https://www.jacobs-university.de/>

---

From: "Reshad Rahman (rrahman)" <[email-masked]>
Date: Tue, 28 Apr 2020 16:19:40 +0000

The reason we're allowing for different versioning schemes is that no single versioning scheme has been unanimous.  The proposal is for IETF to use yang-semver. Some vendors and other publishers of YANG artifacts may use yang-semver, while some may define their own scheme.

While this in theory allows for an open ended number of versioning schemes, I don't believe this will be the case. No, I'm not taking over-under bets (

Regards,
Reshad.

On 2020-04-28, 12:02 PM, "Juergen Schoenwaelder" <[email-masked]> wrote: