Changes in v1.4.1
No content changes; tag was incremented only.
Changes in v1.4.0
-
Actions
- Fix invalid
action_profile_id
in the One Shot Action Selector Programming
example. - Specify that
max_group_size
must be less than or equal tosize
for
Action Selectors. - Add a
selector_size_semantics
field to theActionProfile
message
in P4Info.
- Fix invalid
-
Controller Sessions, Roles, Arbitration:
- Clarify controller session establishment, maintenance, role and arbitration
- Simplify specification for arbitration updates for which there is no change
to the controller'selection_id
; in particular, a "no-op" arbitration
update from a primary controller (the controller already was, and remains,
the primary controller) is essentially treated the same way as an
arbitration update which leads to the election of a new primary controller. - Add support for string role identifiers and deprecate integer role
identifiers. - Add support for specifying a role in
ReadRequest
messages: if present,
only entities belonging to this specific role are returned. - Clarify that the (
device_id
,role
,election_id
) 3-tuples are only
unique for live controllers.
-
Generated code
- Enable C++ Arena Allocation [@ArenaAllocation] by default in
p4runtime.proto. - Added Rust code generation
- Enable C++ Arena Allocation [@ArenaAllocation] by default in
-
Meters
- Add a
Type
field to theMeterSpec
message allowing users to restrict
the type of meters that can be used for a table and a neweburst
field to
theMeterConfig
message for use with one of the newMeterSpec
types.
See section on Meter & DirectMeter. - Defined new meter annotations
@two_rate_three_color
,
@single_rate_two_color
,@single_rate_three_color
- Enable P4Runtime servers to provide per-color counter values when direct or
indirect meter entries are read.
- Add a
-
Miscellaneous
- Add a
PlatformProperties
message specifying desired underlying platform
properties to thePkgInfo
message. - Specify Read behavior in the absence of a P4Info
(ForwardingPipelineConfig
not set yet). - Clarify that for updates of type
INSERT
, error codes other than
INVALID_ARGUMENT
can be returned when applicable. - Clarified the meaning of set and unset scalar and message fields, see
section on default-valued fields. - Described Dataplane Volatile Objects, see section on
Dataplane Volatile Objects. - Clarified use of bytestrings in messages, see section on
Bytestrings
- Add a
-
Replication
- Add a
metadata
field to theMulticastGroupEntry
message. - In message
Replica
, replaced primitive fielduint32 egress_port
in a compatible manner with newoneof port_kind
containing preferred
new fieldbytes port
.
- Add a
-
Tables
- Clarify that the limitation on supported types for
FieldMatch
, action
Param
, and Packet IO metadata fields (no support for signed integers,
with typeint<W>
) apply to all minor revisions of P4Runtime v1, not just
to P4Runtime v1.0. - Add
has_initial_entries
andis_const
field fields toTable
message to
distinguish mutable and immutable initial table entries,
see section on Constant Tables.
- Clarify that the limitation on supported types for