p4-spec
p4-spec copied to clipboard
Change semantics for setInvalid for Issue 995
- We changed the definition of
setInvalidfor header union members. - We added the definition of
setInvalidfor header unions.
Fixes #995
Hi @MollyDream, this is the ONF bot 🤖 I'm glad you want to contribute to our projects! However, before accepting your contribution, we need to ask you to sign a Contributor License Agreement (CLA). You can do it online, it will take only a few minutes:
✒️ 👉 https://cla.opennetworking.org
After signing, make sure to add your Github user ID MollyDream to the agreement.
For more information or help:" https://wiki.opennetworking.org/x/BgCUI
Sorry to be so noisy on this issue, but a couple of comments:
(a) I agree that header stacks are not a frequently used feature of the language today, and have no fundamental objections to this change. (b) IF we make this change, are we willing to actually follow semantic versioning and call the next version of the P4_16 language spec version 2.0.0? If not, why not?
If we do make this change, and if this comment: https://github.com/p4lang/p4-spec/issues/995#issuecomment-996201592
applies after this change, but not before this change, then I think it would be good to add some kind of note about that requirement of how implementations must behave, similar to the example in the comment linked above.
Can we close this PR? It is a significant change in the language semantics.
This semantics seems more natural, so let's leave this open for now...
In the interest of tidying up the set of active issues on the P4 specification repository, I'm marking this as "stalled" and closing it. Of course, we can always re-open it in the future if there is interest in resurrecting it.