Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Does module versioning still allow two artifacts on the same branch to have different backwards compat? #222

Open
xorrkaz opened this issue Jan 22, 2024 · 6 comments
Labels
updated-mod-rev-handling Issues related to yang-module-versioning (updated module revision handling draft)

Comments

@xorrkaz
Copy link
Collaborator

xorrkaz commented Jan 22, 2024

In yang-semver, we have this text:

<artwork name="" type="" align="left" alt=""><![CDATA[
      3.5.0 -- 3.6.0 (add leaf foo)
        |
        |
      3.20.0 (added leaf bar)
  ]]></artwork>
<t> In this case, given only the YANG Semver identifiers 3.6.0 and 3.20.0, 
    one would assume that 3.20.0 is backwards compatible with 3.6.0. But in the illegal example above, 3.20.0 is not 
    backwards compatible with 3.6.0 since 3.20.0 does not contain the leaf foo.</t>
<t>Note that this type of branching, where two versions on the same branch have different backwards compatible 
    changes is allowed in <xref target="I-D.ietf-netmod-yang-module-versioning" format="default"/>
    ```

Is this still the case?  That is, would this still be legal -- given our changes -- with module versioning?
@xorrkaz xorrkaz added the updated-mod-rev-handling Issues related to yang-module-versioning (updated module revision handling draft) label Jan 22, 2024
@jsterne
Copy link
Collaborator

jsterne commented Jan 22, 2024

I don't see how Module Versioning makes that type of branching illegal (two revisions based on the same parent, each with different BC changes). I think the comment above was specific to YANG Semver where we don't want 3.20.0 to be NBC vs 3.6.0.
Others may feel that branching isn't really well supported with just Module Versioning but I think we probably want (need) to allow it (even without YANG Semver).

@xorrkaz
Copy link
Collaborator Author

xorrkaz commented Jan 22, 2024

Yeah, I didn't think so, either. But this text has been in yang-semver for a while. And I'm going line-by-line, so calling out what I see. If we think this is allowed, I'll pull out these paragraphs.

@jsterne
Copy link
Collaborator

jsterne commented Jan 22, 2024

I think we should actually keep that in YANG semver though. It isn't allowed for YANG semver.

@xorrkaz
Copy link
Collaborator Author

xorrkaz commented Jan 22, 2024

Yes. I meant just drop the last paragraph.

@jsterne
Copy link
Collaborator

jsterne commented Jan 22, 2024

Maybe but I'm not sure. It is still correct right?

@xorrkaz
Copy link
Collaborator Author

xorrkaz commented Jan 22, 2024

I wasn't sure now that we're taking out the version history bit. Maybe it is simply because there isn't a concept of branching like with versioning. It just sounded odd to leave in given where things have landed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
updated-mod-rev-handling Issues related to yang-module-versioning (updated module revision handling draft)
Projects
None yet
Development

No branches or pull requests

2 participants