Releases: byllyfish/finsy
Releases · byllyfish/finsy
Release 0.17.0
- The
Switch.delete_all
method no longer takes any arguments; use the newSwitch.delete_many
method for wildcard deletes instead. - The
Switch.delete_all
method now deletes all action profiles. - Add support for signed/varbit values.
- Add a P4TypeFactory class for use in testing.
- Update example docs to say that both docker and podman are supported.
- Update project dependencies.
Release 0.16.0
- Add
GRPCCredentialsTLS
class for improved TLS support. - Add support for structured annotations in P4Schema.
- Add support for caching and reusing P4Defs as part of P4Schema.
- Add a py.typed file and improve type annotations.
- Add a
devcontainer.json
file for Github Codespace. - Fix P4TableAction to allow an action that expects some arguments to be encoded with 0 arguments. Used for wildcard reads. (#193)
- The Demonet sub-module now automatically tries docker if podman is not available.
- Replace flake8 with ruff, fix lint issues, and improve testing.
Release 0.15.0
- Rename
current_controller()
function toController.current()
. - Fix
P4Member
API used byP4ActionProfileGroup
class. - Add a version of the ngsdn example that uses action profiles instead of "one-shots".
- Many pyright and pylint fixes.
Release 0.14.0
- Add the
fail_fast
option to SwitchOptions. - Add the
finsy.run
helper function to replace common boilerplate. - Fix a bug during P4Runtime handshake where a non-arbitration response from the switch caused an exception.
- Fix a bug during PacketIn messages when there is no expected metadata in the P4Info schema.
- Changed
delete_all
so it skips over entries in const tables. - Initial work on the inband network telemetry example.
- The demonet test module now supports drawing an image of the network.
- Update dependency versions.
Release 0.13.0
- Initial work on demonet test module which runs Mininet in a podman container (replacing bash script).
- Update p4runtime protobuf definition to latest
Replica.{egress_port => port}
changes. - Update gNMI protobuf definitions from
0.8.0
to0.9.0
.
Release 0.12.0
- Add convenience accessors to P4CounterEntry and P4DirectCounterEntry.
- Add the tunnel example.
- Make podman scripts compatible with podman 3.4 on ubuntu.
- Update protobuf support for p4testgen.
- Update dependency versions.
Release 0.11.0
- Added some typing overloads for
Switch.read()
to improve IDE experience. - Annotate the details in a
P4ClientError
exception from a failed WriteRequest. - Improve support for displaying match/action information as plain text.
- Added
read_tables
support to example tests. - Added
P4Entity
marker superclass for P4Entity subclasses. - Add protobuf support for p4testgen.
- Update dependency versions.
Release 0.10.0
Release 0.9.0
- Rename gNMI classes to start with "GNMI" instead of "gNMI".
- Rename
is_no_pipeline_configured
property tois_pipeline_missing
. - Rename
P4Status
toP4RpcStatus
. - Rename
P4SubError
toP4Error
. - Rename
Port
toSwitchPort
andPortList
toSwitchPortList
. - GNMIClient.set(): argument is now a sequence of 2-tuples.
- Add GNMI example programs.
- Minor test changes to improve code coverage.
- Minor pyright fixes.
- Update dependency versions.
- Build API docs.
Release 0.8.0
- Update
gnmi.proto
,p4info.proto
protobuf files. Re-compile using latest mypy-protobuf compiler. - Rename
SwitchOptions.config
toconfiguration
. - Rename
Switch.attachment
tomanager
. - Add support for P4Runtime roles using
p4_role_config.proto
from Stratum project. - Add support for
@format
address annotations in P4 source code. - Remove
TRACE
decorator scaffolding. - Add support for Python 3.11 in tests.
- Add tests for example programs.