P4Runtime Release v1.2.0
Second minor release for P4Runtime v1.
Changelog:
- API
- Add new
OPTIONALmatch kind. At the moment,OPTIONALis only supported by the v1model architecture, and not by PSA. It will eventually be included in the core P4 language. - Add support in P4Info for structured annotations, which are used to annotate objects with key-value lists or expression lists.
- Add a new
metadatafield of typebytestoTableEntry. This is more flexible than the now deprecatedcontroller_metadatafield. - Add the ability to change the ID of table match fields, action parameters, Packet IO metadata fields, and Value Set match fields in P4Info by using the
@idannotation. - Support using
stringas the controller type in the@p4runtime_translationannotation. Update syntax when using a fixed-width unsigned bitstring as the controller type. - Add optional P4 source locations to both structured and unstructured annotations.
- Add new
- specification
- Clarify the behavior of some corner cases involving action profiles and selectors, including the watch port feature.
- build
- Overhaul of the Bazel build system
- Fix rules: remove dependency on
stackb/rules_proto, usebazelbuild/rules_protoinstead, - Improve documentation.
- Add an example Bazel project depending on the P4Runtime rules.
- Fix rules: remove dependency on
- Overhaul of the Bazel build system