flwr-nightly 1.20.0.dev20250712__py3-none-any.whl → 1.20.0.dev20250715__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. flwr/client/grpc_rere_client/connection.py +3 -1
  2. flwr/client/rest_client/connection.py +3 -1
  3. flwr/common/grpc.py +12 -1
  4. flwr/common/inflatable_utils.py +14 -7
  5. flwr/proto/appio_pb2.py +51 -0
  6. flwr/proto/appio_pb2.pyi +167 -0
  7. flwr/proto/appio_pb2_grpc.py +4 -0
  8. flwr/proto/appio_pb2_grpc.pyi +4 -0
  9. flwr/proto/clientappio_pb2.py +19 -11
  10. flwr/proto/clientappio_pb2.pyi +50 -12
  11. flwr/proto/clientappio_pb2_grpc.py +68 -0
  12. flwr/proto/clientappio_pb2_grpc.pyi +26 -0
  13. flwr/proto/fleet_pb2.py +14 -18
  14. flwr/proto/fleet_pb2.pyi +4 -19
  15. flwr/proto/serverappio_pb2.py +8 -31
  16. flwr/proto/serverappio_pb2.pyi +0 -152
  17. flwr/proto/serverappio_pb2_grpc.py +39 -38
  18. flwr/proto/serverappio_pb2_grpc.pyi +21 -20
  19. flwr/server/grid/grpc_grid.py +10 -8
  20. flwr/server/serverapp/app.py +9 -11
  21. flwr/server/superlink/fleet/message_handler/message_handler.py +8 -13
  22. flwr/server/superlink/serverappio/serverappio_servicer.py +31 -33
  23. flwr/server/superlink/utils.py +3 -11
  24. flwr/supercore/grpc_health/__init__.py +22 -0
  25. flwr/supercore/grpc_health/simple_health_servicer.py +38 -0
  26. flwr/supercore/object_store/in_memory_object_store.py +31 -31
  27. flwr/supercore/object_store/object_store.py +16 -40
  28. flwr/supernode/runtime/run_clientapp.py +14 -4
  29. flwr/supernode/servicer/clientappio/clientappio_servicer.py +48 -5
  30. flwr/supernode/start_client_internal.py +14 -0
  31. {flwr_nightly-1.20.0.dev20250712.dist-info → flwr_nightly-1.20.0.dev20250715.dist-info}/METADATA +2 -1
  32. {flwr_nightly-1.20.0.dev20250712.dist-info → flwr_nightly-1.20.0.dev20250715.dist-info}/RECORD +34 -28
  33. {flwr_nightly-1.20.0.dev20250712.dist-info → flwr_nightly-1.20.0.dev20250715.dist-info}/WHEEL +0 -0
  34. {flwr_nightly-1.20.0.dev20250712.dist-info → flwr_nightly-1.20.0.dev20250715.dist-info}/entry_points.txt +0 -0
flwr/proto/fleet_pb2.py CHANGED
@@ -19,15 +19,13 @@ from flwr.proto import fab_pb2 as flwr_dot_proto_dot_fab__pb2
19
19
  from flwr.proto import message_pb2 as flwr_dot_proto_dot_message__pb2
20
20
 
21
21
 
22
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x16\x66lwr/proto/fleet.proto\x12\nflwr.proto\x1a\x1a\x66lwr/proto/heartbeat.proto\x1a\x15\x66lwr/proto/node.proto\x1a\x14\x66lwr/proto/run.proto\x1a\x14\x66lwr/proto/fab.proto\x1a\x18\x66lwr/proto/message.proto\"/\n\x11\x43reateNodeRequest\x12\x1a\n\x12heartbeat_interval\x18\x01 \x01(\x01\"4\n\x12\x43reateNodeResponse\x12\x1e\n\x04node\x18\x01 \x01(\x0b\x32\x10.flwr.proto.Node\"3\n\x11\x44\x65leteNodeRequest\x12\x1e\n\x04node\x18\x01 \x01(\x0b\x32\x10.flwr.proto.Node\"\x14\n\x12\x44\x65leteNodeResponse\"J\n\x13PullMessagesRequest\x12\x1e\n\x04node\x18\x01 \x01(\x0b\x32\x10.flwr.proto.Node\x12\x13\n\x0bmessage_ids\x18\x02 \x03(\t\"\x87\x02\n\x14PullMessagesResponse\x12(\n\treconnect\x18\x01 \x01(\x0b\x32\x15.flwr.proto.Reconnect\x12*\n\rmessages_list\x18\x02 \x03(\x0b\x32\x13.flwr.proto.Message\x12L\n\x0fobjects_to_pull\x18\x03 \x03(\x0b\x32\x33.flwr.proto.PullMessagesResponse.ObjectsToPullEntry\x1aK\n\x12ObjectsToPullEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12$\n\x05value\x18\x02 \x01(\x0b\x32\x15.flwr.proto.ObjectIDs:\x02\x38\x01\"\x97\x01\n\x13PushMessagesRequest\x12\x1e\n\x04node\x18\x01 \x01(\x0b\x32\x10.flwr.proto.Node\x12*\n\rmessages_list\x18\x02 \x03(\x0b\x32\x13.flwr.proto.Message\x12\x34\n\x14message_object_trees\x18\x03 \x03(\x0b\x32\x16.flwr.proto.ObjectTree\"\xcb\x02\n\x14PushMessagesResponse\x12(\n\treconnect\x18\x01 \x01(\x0b\x32\x15.flwr.proto.Reconnect\x12>\n\x07results\x18\x02 \x03(\x0b\x32-.flwr.proto.PushMessagesResponse.ResultsEntry\x12L\n\x0fobjects_to_push\x18\x03 \x03(\x0b\x32\x33.flwr.proto.PushMessagesResponse.ObjectsToPushEntry\x1a.\n\x0cResultsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\r:\x02\x38\x01\x1aK\n\x12ObjectsToPushEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12$\n\x05value\x18\x02 \x01(\x0b\x32\x15.flwr.proto.ObjectIDs:\x02\x38\x01\"\x1e\n\tReconnect\x12\x11\n\treconnect\x18\x01 \x01(\x04\x32\xca\x06\n\x05\x46leet\x12M\n\nCreateNode\x12\x1d.flwr.proto.CreateNodeRequest\x1a\x1e.flwr.proto.CreateNodeResponse\"\x00\x12M\n\nDeleteNode\x12\x1d.flwr.proto.DeleteNodeRequest\x1a\x1e.flwr.proto.DeleteNodeResponse\"\x00\x12\x62\n\x11SendNodeHeartbeat\x12$.flwr.proto.SendNodeHeartbeatRequest\x1a%.flwr.proto.SendNodeHeartbeatResponse\"\x00\x12S\n\x0cPullMessages\x12\x1f.flwr.proto.PullMessagesRequest\x1a .flwr.proto.PullMessagesResponse\"\x00\x12S\n\x0cPushMessages\x12\x1f.flwr.proto.PushMessagesRequest\x1a .flwr.proto.PushMessagesResponse\"\x00\x12\x41\n\x06GetRun\x12\x19.flwr.proto.GetRunRequest\x1a\x1a.flwr.proto.GetRunResponse\"\x00\x12\x41\n\x06GetFab\x12\x19.flwr.proto.GetFabRequest\x1a\x1a.flwr.proto.GetFabResponse\"\x00\x12M\n\nPushObject\x12\x1d.flwr.proto.PushObjectRequest\x1a\x1e.flwr.proto.PushObjectResponse\"\x00\x12M\n\nPullObject\x12\x1d.flwr.proto.PullObjectRequest\x1a\x1e.flwr.proto.PullObjectResponse\"\x00\x12q\n\x16\x43onfirmMessageReceived\x12).flwr.proto.ConfirmMessageReceivedRequest\x1a*.flwr.proto.ConfirmMessageReceivedResponse\"\x00\x62\x06proto3')
22
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x16\x66lwr/proto/fleet.proto\x12\nflwr.proto\x1a\x1a\x66lwr/proto/heartbeat.proto\x1a\x15\x66lwr/proto/node.proto\x1a\x14\x66lwr/proto/run.proto\x1a\x14\x66lwr/proto/fab.proto\x1a\x18\x66lwr/proto/message.proto\"/\n\x11\x43reateNodeRequest\x12\x1a\n\x12heartbeat_interval\x18\x01 \x01(\x01\"4\n\x12\x43reateNodeResponse\x12\x1e\n\x04node\x18\x01 \x01(\x0b\x32\x10.flwr.proto.Node\"3\n\x11\x44\x65leteNodeRequest\x12\x1e\n\x04node\x18\x01 \x01(\x0b\x32\x10.flwr.proto.Node\"\x14\n\x12\x44\x65leteNodeResponse\"J\n\x13PullMessagesRequest\x12\x1e\n\x04node\x18\x01 \x01(\x0b\x32\x10.flwr.proto.Node\x12\x13\n\x0bmessage_ids\x18\x02 \x03(\t\"\xa2\x01\n\x14PullMessagesResponse\x12(\n\treconnect\x18\x01 \x01(\x0b\x32\x15.flwr.proto.Reconnect\x12*\n\rmessages_list\x18\x02 \x03(\x0b\x32\x13.flwr.proto.Message\x12\x34\n\x14message_object_trees\x18\x03 \x03(\x0b\x32\x16.flwr.proto.ObjectTree\"\x97\x01\n\x13PushMessagesRequest\x12\x1e\n\x04node\x18\x01 \x01(\x0b\x32\x10.flwr.proto.Node\x12*\n\rmessages_list\x18\x02 \x03(\x0b\x32\x13.flwr.proto.Message\x12\x34\n\x14message_object_trees\x18\x03 \x03(\x0b\x32\x16.flwr.proto.ObjectTree\"\xcb\x02\n\x14PushMessagesResponse\x12(\n\treconnect\x18\x01 \x01(\x0b\x32\x15.flwr.proto.Reconnect\x12>\n\x07results\x18\x02 \x03(\x0b\x32-.flwr.proto.PushMessagesResponse.ResultsEntry\x12L\n\x0fobjects_to_push\x18\x03 \x03(\x0b\x32\x33.flwr.proto.PushMessagesResponse.ObjectsToPushEntry\x1a.\n\x0cResultsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\r:\x02\x38\x01\x1aK\n\x12ObjectsToPushEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12$\n\x05value\x18\x02 \x01(\x0b\x32\x15.flwr.proto.ObjectIDs:\x02\x38\x01\"\x1e\n\tReconnect\x12\x11\n\treconnect\x18\x01 \x01(\x04\x32\xca\x06\n\x05\x46leet\x12M\n\nCreateNode\x12\x1d.flwr.proto.CreateNodeRequest\x1a\x1e.flwr.proto.CreateNodeResponse\"\x00\x12M\n\nDeleteNode\x12\x1d.flwr.proto.DeleteNodeRequest\x1a\x1e.flwr.proto.DeleteNodeResponse\"\x00\x12\x62\n\x11SendNodeHeartbeat\x12$.flwr.proto.SendNodeHeartbeatRequest\x1a%.flwr.proto.SendNodeHeartbeatResponse\"\x00\x12S\n\x0cPullMessages\x12\x1f.flwr.proto.PullMessagesRequest\x1a .flwr.proto.PullMessagesResponse\"\x00\x12S\n\x0cPushMessages\x12\x1f.flwr.proto.PushMessagesRequest\x1a .flwr.proto.PushMessagesResponse\"\x00\x12\x41\n\x06GetRun\x12\x19.flwr.proto.GetRunRequest\x1a\x1a.flwr.proto.GetRunResponse\"\x00\x12\x41\n\x06GetFab\x12\x19.flwr.proto.GetFabRequest\x1a\x1a.flwr.proto.GetFabResponse\"\x00\x12M\n\nPushObject\x12\x1d.flwr.proto.PushObjectRequest\x1a\x1e.flwr.proto.PushObjectResponse\"\x00\x12M\n\nPullObject\x12\x1d.flwr.proto.PullObjectRequest\x1a\x1e.flwr.proto.PullObjectResponse\"\x00\x12q\n\x16\x43onfirmMessageReceived\x12).flwr.proto.ConfirmMessageReceivedRequest\x1a*.flwr.proto.ConfirmMessageReceivedResponse\"\x00\x62\x06proto3')
23
23
 
24
24
  _globals = globals()
25
25
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
26
26
  _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'flwr.proto.fleet_pb2', _globals)
27
27
  if _descriptor._USE_C_DESCRIPTORS == False:
28
28
  DESCRIPTOR._options = None
29
- _globals['_PULLMESSAGESRESPONSE_OBJECTSTOPULLENTRY']._options = None
30
- _globals['_PULLMESSAGESRESPONSE_OBJECTSTOPULLENTRY']._serialized_options = b'8\001'
31
29
  _globals['_PUSHMESSAGESRESPONSE_RESULTSENTRY']._options = None
32
30
  _globals['_PUSHMESSAGESRESPONSE_RESULTSENTRY']._serialized_options = b'8\001'
33
31
  _globals['_PUSHMESSAGESRESPONSE_OBJECTSTOPUSHENTRY']._options = None
@@ -43,19 +41,17 @@ if _descriptor._USE_C_DESCRIPTORS == False:
43
41
  _globals['_PULLMESSAGESREQUEST']._serialized_start=337
44
42
  _globals['_PULLMESSAGESREQUEST']._serialized_end=411
45
43
  _globals['_PULLMESSAGESRESPONSE']._serialized_start=414
46
- _globals['_PULLMESSAGESRESPONSE']._serialized_end=677
47
- _globals['_PULLMESSAGESRESPONSE_OBJECTSTOPULLENTRY']._serialized_start=602
48
- _globals['_PULLMESSAGESRESPONSE_OBJECTSTOPULLENTRY']._serialized_end=677
49
- _globals['_PUSHMESSAGESREQUEST']._serialized_start=680
50
- _globals['_PUSHMESSAGESREQUEST']._serialized_end=831
51
- _globals['_PUSHMESSAGESRESPONSE']._serialized_start=834
52
- _globals['_PUSHMESSAGESRESPONSE']._serialized_end=1165
53
- _globals['_PUSHMESSAGESRESPONSE_RESULTSENTRY']._serialized_start=1042
54
- _globals['_PUSHMESSAGESRESPONSE_RESULTSENTRY']._serialized_end=1088
55
- _globals['_PUSHMESSAGESRESPONSE_OBJECTSTOPUSHENTRY']._serialized_start=1090
56
- _globals['_PUSHMESSAGESRESPONSE_OBJECTSTOPUSHENTRY']._serialized_end=1165
57
- _globals['_RECONNECT']._serialized_start=1167
58
- _globals['_RECONNECT']._serialized_end=1197
59
- _globals['_FLEET']._serialized_start=1200
60
- _globals['_FLEET']._serialized_end=2042
44
+ _globals['_PULLMESSAGESRESPONSE']._serialized_end=576
45
+ _globals['_PUSHMESSAGESREQUEST']._serialized_start=579
46
+ _globals['_PUSHMESSAGESREQUEST']._serialized_end=730
47
+ _globals['_PUSHMESSAGESRESPONSE']._serialized_start=733
48
+ _globals['_PUSHMESSAGESRESPONSE']._serialized_end=1064
49
+ _globals['_PUSHMESSAGESRESPONSE_RESULTSENTRY']._serialized_start=941
50
+ _globals['_PUSHMESSAGESRESPONSE_RESULTSENTRY']._serialized_end=987
51
+ _globals['_PUSHMESSAGESRESPONSE_OBJECTSTOPUSHENTRY']._serialized_start=989
52
+ _globals['_PUSHMESSAGESRESPONSE_OBJECTSTOPUSHENTRY']._serialized_end=1064
53
+ _globals['_RECONNECT']._serialized_start=1066
54
+ _globals['_RECONNECT']._serialized_end=1096
55
+ _globals['_FLEET']._serialized_start=1099
56
+ _globals['_FLEET']._serialized_end=1941
61
57
  # @@protoc_insertion_point(module_scope)
flwr/proto/fleet_pb2.pyi CHANGED
@@ -78,38 +78,23 @@ global___PullMessagesRequest = PullMessagesRequest
78
78
 
79
79
  class PullMessagesResponse(google.protobuf.message.Message):
80
80
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
81
- class ObjectsToPullEntry(google.protobuf.message.Message):
82
- DESCRIPTOR: google.protobuf.descriptor.Descriptor
83
- KEY_FIELD_NUMBER: builtins.int
84
- VALUE_FIELD_NUMBER: builtins.int
85
- key: typing.Text
86
- @property
87
- def value(self) -> flwr.proto.message_pb2.ObjectIDs: ...
88
- def __init__(self,
89
- *,
90
- key: typing.Text = ...,
91
- value: typing.Optional[flwr.proto.message_pb2.ObjectIDs] = ...,
92
- ) -> None: ...
93
- def HasField(self, field_name: typing_extensions.Literal["value",b"value"]) -> builtins.bool: ...
94
- def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ...
95
-
96
81
  RECONNECT_FIELD_NUMBER: builtins.int
97
82
  MESSAGES_LIST_FIELD_NUMBER: builtins.int
98
- OBJECTS_TO_PULL_FIELD_NUMBER: builtins.int
83
+ MESSAGE_OBJECT_TREES_FIELD_NUMBER: builtins.int
99
84
  @property
100
85
  def reconnect(self) -> global___Reconnect: ...
101
86
  @property
102
87
  def messages_list(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[flwr.proto.message_pb2.Message]: ...
103
88
  @property
104
- def objects_to_pull(self) -> google.protobuf.internal.containers.MessageMap[typing.Text, flwr.proto.message_pb2.ObjectIDs]: ...
89
+ def message_object_trees(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[flwr.proto.message_pb2.ObjectTree]: ...
105
90
  def __init__(self,
106
91
  *,
107
92
  reconnect: typing.Optional[global___Reconnect] = ...,
108
93
  messages_list: typing.Optional[typing.Iterable[flwr.proto.message_pb2.Message]] = ...,
109
- objects_to_pull: typing.Optional[typing.Mapping[typing.Text, flwr.proto.message_pb2.ObjectIDs]] = ...,
94
+ message_object_trees: typing.Optional[typing.Iterable[flwr.proto.message_pb2.ObjectTree]] = ...,
110
95
  ) -> None: ...
111
96
  def HasField(self, field_name: typing_extensions.Literal["reconnect",b"reconnect"]) -> builtins.bool: ...
112
- def ClearField(self, field_name: typing_extensions.Literal["messages_list",b"messages_list","objects_to_pull",b"objects_to_pull","reconnect",b"reconnect"]) -> None: ...
97
+ def ClearField(self, field_name: typing_extensions.Literal["message_object_trees",b"message_object_trees","messages_list",b"messages_list","reconnect",b"reconnect"]) -> None: ...
113
98
  global___PullMessagesResponse = PullMessagesResponse
114
99
 
115
100
  class PushMessagesRequest(google.protobuf.message.Message):
@@ -18,43 +18,20 @@ from flwr.proto import node_pb2 as flwr_dot_proto_dot_node__pb2
18
18
  from flwr.proto import message_pb2 as flwr_dot_proto_dot_message__pb2
19
19
  from flwr.proto import run_pb2 as flwr_dot_proto_dot_run__pb2
20
20
  from flwr.proto import fab_pb2 as flwr_dot_proto_dot_fab__pb2
21
+ from flwr.proto import appio_pb2 as flwr_dot_proto_dot_appio__pb2
21
22
 
22
23
 
23
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1c\x66lwr/proto/serverappio.proto\x12\nflwr.proto\x1a\x1a\x66lwr/proto/heartbeat.proto\x1a\x14\x66lwr/proto/log.proto\x1a\x15\x66lwr/proto/node.proto\x1a\x18\x66lwr/proto/message.proto\x1a\x14\x66lwr/proto/run.proto\x1a\x14\x66lwr/proto/fab.proto\"!\n\x0fGetNodesRequest\x12\x0e\n\x06run_id\x18\x01 \x01(\x04\"3\n\x10GetNodesResponse\x12\x1f\n\x05nodes\x18\x01 \x03(\x0b\x32\x10.flwr.proto.Node\"\x8a\x01\n\x16PushInsMessagesRequest\x12*\n\rmessages_list\x18\x01 \x03(\x0b\x32\x13.flwr.proto.Message\x12\x0e\n\x06run_id\x18\x02 \x01(\x04\x12\x34\n\x14message_object_trees\x18\x03 \x03(\x0b\x32\x16.flwr.proto.ObjectTree\"\xcc\x01\n\x17PushInsMessagesResponse\x12\x13\n\x0bmessage_ids\x18\x01 \x03(\t\x12O\n\x0fobjects_to_push\x18\x02 \x03(\x0b\x32\x36.flwr.proto.PushInsMessagesResponse.ObjectsToPushEntry\x1aK\n\x12ObjectsToPushEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12$\n\x05value\x18\x02 \x01(\x0b\x32\x15.flwr.proto.ObjectIDs:\x02\x38\x01\"=\n\x16PullResMessagesRequest\x12\x13\n\x0bmessage_ids\x18\x01 \x03(\t\x12\x0e\n\x06run_id\x18\x02 \x01(\x04\"\xe3\x01\n\x17PullResMessagesResponse\x12*\n\rmessages_list\x18\x01 \x03(\x0b\x32\x13.flwr.proto.Message\x12O\n\x0fobjects_to_pull\x18\x02 \x03(\x0b\x32\x36.flwr.proto.PullResMessagesResponse.ObjectsToPullEntry\x1aK\n\x12ObjectsToPullEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12$\n\x05value\x18\x02 \x01(\x0b\x32\x15.flwr.proto.ObjectIDs:\x02\x38\x01\"\x1c\n\x1aPullServerAppInputsRequest\"\x7f\n\x1bPullServerAppInputsResponse\x12$\n\x07\x63ontext\x18\x01 \x01(\x0b\x32\x13.flwr.proto.Context\x12\x1c\n\x03run\x18\x02 \x01(\x0b\x32\x0f.flwr.proto.Run\x12\x1c\n\x03\x66\x61\x62\x18\x03 \x01(\x0b\x32\x0f.flwr.proto.Fab\"S\n\x1bPushServerAppOutputsRequest\x12\x0e\n\x06run_id\x18\x01 \x01(\x04\x12$\n\x07\x63ontext\x18\x02 \x01(\x0b\x32\x13.flwr.proto.Context\"\x1e\n\x1cPushServerAppOutputsResponse2\xd7\t\n\x0bServerAppIo\x12G\n\x08GetNodes\x12\x1b.flwr.proto.GetNodesRequest\x1a\x1c.flwr.proto.GetNodesResponse\"\x00\x12Y\n\x0cPushMessages\x12\".flwr.proto.PushInsMessagesRequest\x1a#.flwr.proto.PushInsMessagesResponse\"\x00\x12Y\n\x0cPullMessages\x12\".flwr.proto.PullResMessagesRequest\x1a#.flwr.proto.PullResMessagesResponse\"\x00\x12\x41\n\x06GetRun\x12\x19.flwr.proto.GetRunRequest\x1a\x1a.flwr.proto.GetRunResponse\"\x00\x12\x41\n\x06GetFab\x12\x19.flwr.proto.GetFabRequest\x1a\x1a.flwr.proto.GetFabResponse\"\x00\x12h\n\x13PullServerAppInputs\x12&.flwr.proto.PullServerAppInputsRequest\x1a\'.flwr.proto.PullServerAppInputsResponse\"\x00\x12k\n\x14PushServerAppOutputs\x12\'.flwr.proto.PushServerAppOutputsRequest\x1a(.flwr.proto.PushServerAppOutputsResponse\"\x00\x12\\\n\x0fUpdateRunStatus\x12\".flwr.proto.UpdateRunStatusRequest\x1a#.flwr.proto.UpdateRunStatusResponse\"\x00\x12S\n\x0cGetRunStatus\x12\x1f.flwr.proto.GetRunStatusRequest\x1a .flwr.proto.GetRunStatusResponse\"\x00\x12G\n\x08PushLogs\x12\x1b.flwr.proto.PushLogsRequest\x1a\x1c.flwr.proto.PushLogsResponse\"\x00\x12_\n\x10SendAppHeartbeat\x12#.flwr.proto.SendAppHeartbeatRequest\x1a$.flwr.proto.SendAppHeartbeatResponse\"\x00\x12M\n\nPushObject\x12\x1d.flwr.proto.PushObjectRequest\x1a\x1e.flwr.proto.PushObjectResponse\"\x00\x12M\n\nPullObject\x12\x1d.flwr.proto.PullObjectRequest\x1a\x1e.flwr.proto.PullObjectResponse\"\x00\x12q\n\x16\x43onfirmMessageReceived\x12).flwr.proto.ConfirmMessageReceivedRequest\x1a*.flwr.proto.ConfirmMessageReceivedResponse\"\x00\x62\x06proto3')
24
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1c\x66lwr/proto/serverappio.proto\x12\nflwr.proto\x1a\x1a\x66lwr/proto/heartbeat.proto\x1a\x14\x66lwr/proto/log.proto\x1a\x15\x66lwr/proto/node.proto\x1a\x18\x66lwr/proto/message.proto\x1a\x14\x66lwr/proto/run.proto\x1a\x14\x66lwr/proto/fab.proto\x1a\x16\x66lwr/proto/appio.proto\"!\n\x0fGetNodesRequest\x12\x0e\n\x06run_id\x18\x01 \x01(\x04\"3\n\x10GetNodesResponse\x12\x1f\n\x05nodes\x18\x01 \x03(\x0b\x32\x10.flwr.proto.Node2\xb3\t\n\x0bServerAppIo\x12G\n\x08GetNodes\x12\x1b.flwr.proto.GetNodesRequest\x1a\x1c.flwr.proto.GetNodesResponse\"\x00\x12Y\n\x0cPushMessages\x12\".flwr.proto.PushAppMessagesRequest\x1a#.flwr.proto.PushAppMessagesResponse\"\x00\x12Y\n\x0cPullMessages\x12\".flwr.proto.PullAppMessagesRequest\x1a#.flwr.proto.PullAppMessagesResponse\"\x00\x12\x41\n\x06GetRun\x12\x19.flwr.proto.GetRunRequest\x1a\x1a.flwr.proto.GetRunResponse\"\x00\x12\x41\n\x06GetFab\x12\x19.flwr.proto.GetFabRequest\x1a\x1a.flwr.proto.GetFabResponse\"\x00\x12V\n\rPullAppInputs\x12 .flwr.proto.PullAppInputsRequest\x1a!.flwr.proto.PullAppInputsResponse\"\x00\x12Y\n\x0ePushAppOutputs\x12!.flwr.proto.PushAppOutputsRequest\x1a\".flwr.proto.PushAppOutputsResponse\"\x00\x12\\\n\x0fUpdateRunStatus\x12\".flwr.proto.UpdateRunStatusRequest\x1a#.flwr.proto.UpdateRunStatusResponse\"\x00\x12S\n\x0cGetRunStatus\x12\x1f.flwr.proto.GetRunStatusRequest\x1a .flwr.proto.GetRunStatusResponse\"\x00\x12G\n\x08PushLogs\x12\x1b.flwr.proto.PushLogsRequest\x1a\x1c.flwr.proto.PushLogsResponse\"\x00\x12_\n\x10SendAppHeartbeat\x12#.flwr.proto.SendAppHeartbeatRequest\x1a$.flwr.proto.SendAppHeartbeatResponse\"\x00\x12M\n\nPushObject\x12\x1d.flwr.proto.PushObjectRequest\x1a\x1e.flwr.proto.PushObjectResponse\"\x00\x12M\n\nPullObject\x12\x1d.flwr.proto.PullObjectRequest\x1a\x1e.flwr.proto.PullObjectResponse\"\x00\x12q\n\x16\x43onfirmMessageReceived\x12).flwr.proto.ConfirmMessageReceivedRequest\x1a*.flwr.proto.ConfirmMessageReceivedResponse\"\x00\x62\x06proto3')
24
25
 
25
26
  _globals = globals()
26
27
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
27
28
  _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'flwr.proto.serverappio_pb2', _globals)
28
29
  if _descriptor._USE_C_DESCRIPTORS == False:
29
30
  DESCRIPTOR._options = None
30
- _globals['_PUSHINSMESSAGESRESPONSE_OBJECTSTOPUSHENTRY']._options = None
31
- _globals['_PUSHINSMESSAGESRESPONSE_OBJECTSTOPUSHENTRY']._serialized_options = b'8\001'
32
- _globals['_PULLRESMESSAGESRESPONSE_OBJECTSTOPULLENTRY']._options = None
33
- _globals['_PULLRESMESSAGESRESPONSE_OBJECTSTOPULLENTRY']._serialized_options = b'8\001'
34
- _globals['_GETNODESREQUEST']._serialized_start=187
35
- _globals['_GETNODESREQUEST']._serialized_end=220
36
- _globals['_GETNODESRESPONSE']._serialized_start=222
37
- _globals['_GETNODESRESPONSE']._serialized_end=273
38
- _globals['_PUSHINSMESSAGESREQUEST']._serialized_start=276
39
- _globals['_PUSHINSMESSAGESREQUEST']._serialized_end=414
40
- _globals['_PUSHINSMESSAGESRESPONSE']._serialized_start=417
41
- _globals['_PUSHINSMESSAGESRESPONSE']._serialized_end=621
42
- _globals['_PUSHINSMESSAGESRESPONSE_OBJECTSTOPUSHENTRY']._serialized_start=546
43
- _globals['_PUSHINSMESSAGESRESPONSE_OBJECTSTOPUSHENTRY']._serialized_end=621
44
- _globals['_PULLRESMESSAGESREQUEST']._serialized_start=623
45
- _globals['_PULLRESMESSAGESREQUEST']._serialized_end=684
46
- _globals['_PULLRESMESSAGESRESPONSE']._serialized_start=687
47
- _globals['_PULLRESMESSAGESRESPONSE']._serialized_end=914
48
- _globals['_PULLRESMESSAGESRESPONSE_OBJECTSTOPULLENTRY']._serialized_start=839
49
- _globals['_PULLRESMESSAGESRESPONSE_OBJECTSTOPULLENTRY']._serialized_end=914
50
- _globals['_PULLSERVERAPPINPUTSREQUEST']._serialized_start=916
51
- _globals['_PULLSERVERAPPINPUTSREQUEST']._serialized_end=944
52
- _globals['_PULLSERVERAPPINPUTSRESPONSE']._serialized_start=946
53
- _globals['_PULLSERVERAPPINPUTSRESPONSE']._serialized_end=1073
54
- _globals['_PUSHSERVERAPPOUTPUTSREQUEST']._serialized_start=1075
55
- _globals['_PUSHSERVERAPPOUTPUTSREQUEST']._serialized_end=1158
56
- _globals['_PUSHSERVERAPPOUTPUTSRESPONSE']._serialized_start=1160
57
- _globals['_PUSHSERVERAPPOUTPUTSRESPONSE']._serialized_end=1190
58
- _globals['_SERVERAPPIO']._serialized_start=1193
59
- _globals['_SERVERAPPIO']._serialized_end=2432
31
+ _globals['_GETNODESREQUEST']._serialized_start=211
32
+ _globals['_GETNODESREQUEST']._serialized_end=244
33
+ _globals['_GETNODESRESPONSE']._serialized_start=246
34
+ _globals['_GETNODESRESPONSE']._serialized_end=297
35
+ _globals['_SERVERAPPIO']._serialized_start=300
36
+ _globals['_SERVERAPPIO']._serialized_end=1503
60
37
  # @@protoc_insertion_point(module_scope)
@@ -3,10 +3,7 @@
3
3
  isort:skip_file
4
4
  """
5
5
  import builtins
6
- import flwr.proto.fab_pb2
7
- import flwr.proto.message_pb2
8
6
  import flwr.proto.node_pb2
9
- import flwr.proto.run_pb2
10
7
  import google.protobuf.descriptor
11
8
  import google.protobuf.internal.containers
12
9
  import google.protobuf.message
@@ -38,152 +35,3 @@ class GetNodesResponse(google.protobuf.message.Message):
38
35
  ) -> None: ...
39
36
  def ClearField(self, field_name: typing_extensions.Literal["nodes",b"nodes"]) -> None: ...
40
37
  global___GetNodesResponse = GetNodesResponse
41
-
42
- class PushInsMessagesRequest(google.protobuf.message.Message):
43
- """PushMessages messages"""
44
- DESCRIPTOR: google.protobuf.descriptor.Descriptor
45
- MESSAGES_LIST_FIELD_NUMBER: builtins.int
46
- RUN_ID_FIELD_NUMBER: builtins.int
47
- MESSAGE_OBJECT_TREES_FIELD_NUMBER: builtins.int
48
- @property
49
- def messages_list(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[flwr.proto.message_pb2.Message]: ...
50
- run_id: builtins.int
51
- @property
52
- def message_object_trees(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[flwr.proto.message_pb2.ObjectTree]: ...
53
- def __init__(self,
54
- *,
55
- messages_list: typing.Optional[typing.Iterable[flwr.proto.message_pb2.Message]] = ...,
56
- run_id: builtins.int = ...,
57
- message_object_trees: typing.Optional[typing.Iterable[flwr.proto.message_pb2.ObjectTree]] = ...,
58
- ) -> None: ...
59
- def ClearField(self, field_name: typing_extensions.Literal["message_object_trees",b"message_object_trees","messages_list",b"messages_list","run_id",b"run_id"]) -> None: ...
60
- global___PushInsMessagesRequest = PushInsMessagesRequest
61
-
62
- class PushInsMessagesResponse(google.protobuf.message.Message):
63
- DESCRIPTOR: google.protobuf.descriptor.Descriptor
64
- class ObjectsToPushEntry(google.protobuf.message.Message):
65
- DESCRIPTOR: google.protobuf.descriptor.Descriptor
66
- KEY_FIELD_NUMBER: builtins.int
67
- VALUE_FIELD_NUMBER: builtins.int
68
- key: typing.Text
69
- @property
70
- def value(self) -> flwr.proto.message_pb2.ObjectIDs: ...
71
- def __init__(self,
72
- *,
73
- key: typing.Text = ...,
74
- value: typing.Optional[flwr.proto.message_pb2.ObjectIDs] = ...,
75
- ) -> None: ...
76
- def HasField(self, field_name: typing_extensions.Literal["value",b"value"]) -> builtins.bool: ...
77
- def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ...
78
-
79
- MESSAGE_IDS_FIELD_NUMBER: builtins.int
80
- OBJECTS_TO_PUSH_FIELD_NUMBER: builtins.int
81
- @property
82
- def message_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: ...
83
- @property
84
- def objects_to_push(self) -> google.protobuf.internal.containers.MessageMap[typing.Text, flwr.proto.message_pb2.ObjectIDs]: ...
85
- def __init__(self,
86
- *,
87
- message_ids: typing.Optional[typing.Iterable[typing.Text]] = ...,
88
- objects_to_push: typing.Optional[typing.Mapping[typing.Text, flwr.proto.message_pb2.ObjectIDs]] = ...,
89
- ) -> None: ...
90
- def ClearField(self, field_name: typing_extensions.Literal["message_ids",b"message_ids","objects_to_push",b"objects_to_push"]) -> None: ...
91
- global___PushInsMessagesResponse = PushInsMessagesResponse
92
-
93
- class PullResMessagesRequest(google.protobuf.message.Message):
94
- """PullMessages messages"""
95
- DESCRIPTOR: google.protobuf.descriptor.Descriptor
96
- MESSAGE_IDS_FIELD_NUMBER: builtins.int
97
- RUN_ID_FIELD_NUMBER: builtins.int
98
- @property
99
- def message_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: ...
100
- run_id: builtins.int
101
- def __init__(self,
102
- *,
103
- message_ids: typing.Optional[typing.Iterable[typing.Text]] = ...,
104
- run_id: builtins.int = ...,
105
- ) -> None: ...
106
- def ClearField(self, field_name: typing_extensions.Literal["message_ids",b"message_ids","run_id",b"run_id"]) -> None: ...
107
- global___PullResMessagesRequest = PullResMessagesRequest
108
-
109
- class PullResMessagesResponse(google.protobuf.message.Message):
110
- DESCRIPTOR: google.protobuf.descriptor.Descriptor
111
- class ObjectsToPullEntry(google.protobuf.message.Message):
112
- DESCRIPTOR: google.protobuf.descriptor.Descriptor
113
- KEY_FIELD_NUMBER: builtins.int
114
- VALUE_FIELD_NUMBER: builtins.int
115
- key: typing.Text
116
- @property
117
- def value(self) -> flwr.proto.message_pb2.ObjectIDs: ...
118
- def __init__(self,
119
- *,
120
- key: typing.Text = ...,
121
- value: typing.Optional[flwr.proto.message_pb2.ObjectIDs] = ...,
122
- ) -> None: ...
123
- def HasField(self, field_name: typing_extensions.Literal["value",b"value"]) -> builtins.bool: ...
124
- def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ...
125
-
126
- MESSAGES_LIST_FIELD_NUMBER: builtins.int
127
- OBJECTS_TO_PULL_FIELD_NUMBER: builtins.int
128
- @property
129
- def messages_list(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[flwr.proto.message_pb2.Message]: ...
130
- @property
131
- def objects_to_pull(self) -> google.protobuf.internal.containers.MessageMap[typing.Text, flwr.proto.message_pb2.ObjectIDs]: ...
132
- def __init__(self,
133
- *,
134
- messages_list: typing.Optional[typing.Iterable[flwr.proto.message_pb2.Message]] = ...,
135
- objects_to_pull: typing.Optional[typing.Mapping[typing.Text, flwr.proto.message_pb2.ObjectIDs]] = ...,
136
- ) -> None: ...
137
- def ClearField(self, field_name: typing_extensions.Literal["messages_list",b"messages_list","objects_to_pull",b"objects_to_pull"]) -> None: ...
138
- global___PullResMessagesResponse = PullResMessagesResponse
139
-
140
- class PullServerAppInputsRequest(google.protobuf.message.Message):
141
- """PullServerAppInputs messages"""
142
- DESCRIPTOR: google.protobuf.descriptor.Descriptor
143
- def __init__(self,
144
- ) -> None: ...
145
- global___PullServerAppInputsRequest = PullServerAppInputsRequest
146
-
147
- class PullServerAppInputsResponse(google.protobuf.message.Message):
148
- DESCRIPTOR: google.protobuf.descriptor.Descriptor
149
- CONTEXT_FIELD_NUMBER: builtins.int
150
- RUN_FIELD_NUMBER: builtins.int
151
- FAB_FIELD_NUMBER: builtins.int
152
- @property
153
- def context(self) -> flwr.proto.message_pb2.Context: ...
154
- @property
155
- def run(self) -> flwr.proto.run_pb2.Run: ...
156
- @property
157
- def fab(self) -> flwr.proto.fab_pb2.Fab: ...
158
- def __init__(self,
159
- *,
160
- context: typing.Optional[flwr.proto.message_pb2.Context] = ...,
161
- run: typing.Optional[flwr.proto.run_pb2.Run] = ...,
162
- fab: typing.Optional[flwr.proto.fab_pb2.Fab] = ...,
163
- ) -> None: ...
164
- def HasField(self, field_name: typing_extensions.Literal["context",b"context","fab",b"fab","run",b"run"]) -> builtins.bool: ...
165
- def ClearField(self, field_name: typing_extensions.Literal["context",b"context","fab",b"fab","run",b"run"]) -> None: ...
166
- global___PullServerAppInputsResponse = PullServerAppInputsResponse
167
-
168
- class PushServerAppOutputsRequest(google.protobuf.message.Message):
169
- """PushServerAppOutputs messages"""
170
- DESCRIPTOR: google.protobuf.descriptor.Descriptor
171
- RUN_ID_FIELD_NUMBER: builtins.int
172
- CONTEXT_FIELD_NUMBER: builtins.int
173
- run_id: builtins.int
174
- @property
175
- def context(self) -> flwr.proto.message_pb2.Context: ...
176
- def __init__(self,
177
- *,
178
- run_id: builtins.int = ...,
179
- context: typing.Optional[flwr.proto.message_pb2.Context] = ...,
180
- ) -> None: ...
181
- def HasField(self, field_name: typing_extensions.Literal["context",b"context"]) -> builtins.bool: ...
182
- def ClearField(self, field_name: typing_extensions.Literal["context",b"context","run_id",b"run_id"]) -> None: ...
183
- global___PushServerAppOutputsRequest = PushServerAppOutputsRequest
184
-
185
- class PushServerAppOutputsResponse(google.protobuf.message.Message):
186
- DESCRIPTOR: google.protobuf.descriptor.Descriptor
187
- def __init__(self,
188
- ) -> None: ...
189
- global___PushServerAppOutputsResponse = PushServerAppOutputsResponse
@@ -2,6 +2,7 @@
2
2
  """Client and server classes corresponding to protobuf-defined services."""
3
3
  import grpc
4
4
 
5
+ from flwr.proto import appio_pb2 as flwr_dot_proto_dot_appio__pb2
5
6
  from flwr.proto import fab_pb2 as flwr_dot_proto_dot_fab__pb2
6
7
  from flwr.proto import heartbeat_pb2 as flwr_dot_proto_dot_heartbeat__pb2
7
8
  from flwr.proto import log_pb2 as flwr_dot_proto_dot_log__pb2
@@ -26,13 +27,13 @@ class ServerAppIoStub(object):
26
27
  )
27
28
  self.PushMessages = channel.unary_unary(
28
29
  '/flwr.proto.ServerAppIo/PushMessages',
29
- request_serializer=flwr_dot_proto_dot_serverappio__pb2.PushInsMessagesRequest.SerializeToString,
30
- response_deserializer=flwr_dot_proto_dot_serverappio__pb2.PushInsMessagesResponse.FromString,
30
+ request_serializer=flwr_dot_proto_dot_appio__pb2.PushAppMessagesRequest.SerializeToString,
31
+ response_deserializer=flwr_dot_proto_dot_appio__pb2.PushAppMessagesResponse.FromString,
31
32
  )
32
33
  self.PullMessages = channel.unary_unary(
33
34
  '/flwr.proto.ServerAppIo/PullMessages',
34
- request_serializer=flwr_dot_proto_dot_serverappio__pb2.PullResMessagesRequest.SerializeToString,
35
- response_deserializer=flwr_dot_proto_dot_serverappio__pb2.PullResMessagesResponse.FromString,
35
+ request_serializer=flwr_dot_proto_dot_appio__pb2.PullAppMessagesRequest.SerializeToString,
36
+ response_deserializer=flwr_dot_proto_dot_appio__pb2.PullAppMessagesResponse.FromString,
36
37
  )
37
38
  self.GetRun = channel.unary_unary(
38
39
  '/flwr.proto.ServerAppIo/GetRun',
@@ -44,15 +45,15 @@ class ServerAppIoStub(object):
44
45
  request_serializer=flwr_dot_proto_dot_fab__pb2.GetFabRequest.SerializeToString,
45
46
  response_deserializer=flwr_dot_proto_dot_fab__pb2.GetFabResponse.FromString,
46
47
  )
47
- self.PullServerAppInputs = channel.unary_unary(
48
- '/flwr.proto.ServerAppIo/PullServerAppInputs',
49
- request_serializer=flwr_dot_proto_dot_serverappio__pb2.PullServerAppInputsRequest.SerializeToString,
50
- response_deserializer=flwr_dot_proto_dot_serverappio__pb2.PullServerAppInputsResponse.FromString,
48
+ self.PullAppInputs = channel.unary_unary(
49
+ '/flwr.proto.ServerAppIo/PullAppInputs',
50
+ request_serializer=flwr_dot_proto_dot_appio__pb2.PullAppInputsRequest.SerializeToString,
51
+ response_deserializer=flwr_dot_proto_dot_appio__pb2.PullAppInputsResponse.FromString,
51
52
  )
52
- self.PushServerAppOutputs = channel.unary_unary(
53
- '/flwr.proto.ServerAppIo/PushServerAppOutputs',
54
- request_serializer=flwr_dot_proto_dot_serverappio__pb2.PushServerAppOutputsRequest.SerializeToString,
55
- response_deserializer=flwr_dot_proto_dot_serverappio__pb2.PushServerAppOutputsResponse.FromString,
53
+ self.PushAppOutputs = channel.unary_unary(
54
+ '/flwr.proto.ServerAppIo/PushAppOutputs',
55
+ request_serializer=flwr_dot_proto_dot_appio__pb2.PushAppOutputsRequest.SerializeToString,
56
+ response_deserializer=flwr_dot_proto_dot_appio__pb2.PushAppOutputsResponse.FromString,
56
57
  )
57
58
  self.UpdateRunStatus = channel.unary_unary(
58
59
  '/flwr.proto.ServerAppIo/UpdateRunStatus',
@@ -129,14 +130,14 @@ class ServerAppIoServicer(object):
129
130
  context.set_details('Method not implemented!')
130
131
  raise NotImplementedError('Method not implemented!')
131
132
 
132
- def PullServerAppInputs(self, request, context):
133
+ def PullAppInputs(self, request, context):
133
134
  """Pull ServerApp inputs
134
135
  """
135
136
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
136
137
  context.set_details('Method not implemented!')
137
138
  raise NotImplementedError('Method not implemented!')
138
139
 
139
- def PushServerAppOutputs(self, request, context):
140
+ def PushAppOutputs(self, request, context):
140
141
  """Push ServerApp outputs
141
142
  """
142
143
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
@@ -202,13 +203,13 @@ def add_ServerAppIoServicer_to_server(servicer, server):
202
203
  ),
203
204
  'PushMessages': grpc.unary_unary_rpc_method_handler(
204
205
  servicer.PushMessages,
205
- request_deserializer=flwr_dot_proto_dot_serverappio__pb2.PushInsMessagesRequest.FromString,
206
- response_serializer=flwr_dot_proto_dot_serverappio__pb2.PushInsMessagesResponse.SerializeToString,
206
+ request_deserializer=flwr_dot_proto_dot_appio__pb2.PushAppMessagesRequest.FromString,
207
+ response_serializer=flwr_dot_proto_dot_appio__pb2.PushAppMessagesResponse.SerializeToString,
207
208
  ),
208
209
  'PullMessages': grpc.unary_unary_rpc_method_handler(
209
210
  servicer.PullMessages,
210
- request_deserializer=flwr_dot_proto_dot_serverappio__pb2.PullResMessagesRequest.FromString,
211
- response_serializer=flwr_dot_proto_dot_serverappio__pb2.PullResMessagesResponse.SerializeToString,
211
+ request_deserializer=flwr_dot_proto_dot_appio__pb2.PullAppMessagesRequest.FromString,
212
+ response_serializer=flwr_dot_proto_dot_appio__pb2.PullAppMessagesResponse.SerializeToString,
212
213
  ),
213
214
  'GetRun': grpc.unary_unary_rpc_method_handler(
214
215
  servicer.GetRun,
@@ -220,15 +221,15 @@ def add_ServerAppIoServicer_to_server(servicer, server):
220
221
  request_deserializer=flwr_dot_proto_dot_fab__pb2.GetFabRequest.FromString,
221
222
  response_serializer=flwr_dot_proto_dot_fab__pb2.GetFabResponse.SerializeToString,
222
223
  ),
223
- 'PullServerAppInputs': grpc.unary_unary_rpc_method_handler(
224
- servicer.PullServerAppInputs,
225
- request_deserializer=flwr_dot_proto_dot_serverappio__pb2.PullServerAppInputsRequest.FromString,
226
- response_serializer=flwr_dot_proto_dot_serverappio__pb2.PullServerAppInputsResponse.SerializeToString,
224
+ 'PullAppInputs': grpc.unary_unary_rpc_method_handler(
225
+ servicer.PullAppInputs,
226
+ request_deserializer=flwr_dot_proto_dot_appio__pb2.PullAppInputsRequest.FromString,
227
+ response_serializer=flwr_dot_proto_dot_appio__pb2.PullAppInputsResponse.SerializeToString,
227
228
  ),
228
- 'PushServerAppOutputs': grpc.unary_unary_rpc_method_handler(
229
- servicer.PushServerAppOutputs,
230
- request_deserializer=flwr_dot_proto_dot_serverappio__pb2.PushServerAppOutputsRequest.FromString,
231
- response_serializer=flwr_dot_proto_dot_serverappio__pb2.PushServerAppOutputsResponse.SerializeToString,
229
+ 'PushAppOutputs': grpc.unary_unary_rpc_method_handler(
230
+ servicer.PushAppOutputs,
231
+ request_deserializer=flwr_dot_proto_dot_appio__pb2.PushAppOutputsRequest.FromString,
232
+ response_serializer=flwr_dot_proto_dot_appio__pb2.PushAppOutputsResponse.SerializeToString,
232
233
  ),
233
234
  'UpdateRunStatus': grpc.unary_unary_rpc_method_handler(
234
235
  servicer.UpdateRunStatus,
@@ -304,8 +305,8 @@ class ServerAppIo(object):
304
305
  timeout=None,
305
306
  metadata=None):
306
307
  return grpc.experimental.unary_unary(request, target, '/flwr.proto.ServerAppIo/PushMessages',
307
- flwr_dot_proto_dot_serverappio__pb2.PushInsMessagesRequest.SerializeToString,
308
- flwr_dot_proto_dot_serverappio__pb2.PushInsMessagesResponse.FromString,
308
+ flwr_dot_proto_dot_appio__pb2.PushAppMessagesRequest.SerializeToString,
309
+ flwr_dot_proto_dot_appio__pb2.PushAppMessagesResponse.FromString,
309
310
  options, channel_credentials,
310
311
  insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
311
312
 
@@ -321,8 +322,8 @@ class ServerAppIo(object):
321
322
  timeout=None,
322
323
  metadata=None):
323
324
  return grpc.experimental.unary_unary(request, target, '/flwr.proto.ServerAppIo/PullMessages',
324
- flwr_dot_proto_dot_serverappio__pb2.PullResMessagesRequest.SerializeToString,
325
- flwr_dot_proto_dot_serverappio__pb2.PullResMessagesResponse.FromString,
325
+ flwr_dot_proto_dot_appio__pb2.PullAppMessagesRequest.SerializeToString,
326
+ flwr_dot_proto_dot_appio__pb2.PullAppMessagesResponse.FromString,
326
327
  options, channel_credentials,
327
328
  insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
328
329
 
@@ -361,7 +362,7 @@ class ServerAppIo(object):
361
362
  insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
362
363
 
363
364
  @staticmethod
364
- def PullServerAppInputs(request,
365
+ def PullAppInputs(request,
365
366
  target,
366
367
  options=(),
367
368
  channel_credentials=None,
@@ -371,14 +372,14 @@ class ServerAppIo(object):
371
372
  wait_for_ready=None,
372
373
  timeout=None,
373
374
  metadata=None):
374
- return grpc.experimental.unary_unary(request, target, '/flwr.proto.ServerAppIo/PullServerAppInputs',
375
- flwr_dot_proto_dot_serverappio__pb2.PullServerAppInputsRequest.SerializeToString,
376
- flwr_dot_proto_dot_serverappio__pb2.PullServerAppInputsResponse.FromString,
375
+ return grpc.experimental.unary_unary(request, target, '/flwr.proto.ServerAppIo/PullAppInputs',
376
+ flwr_dot_proto_dot_appio__pb2.PullAppInputsRequest.SerializeToString,
377
+ flwr_dot_proto_dot_appio__pb2.PullAppInputsResponse.FromString,
377
378
  options, channel_credentials,
378
379
  insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
379
380
 
380
381
  @staticmethod
381
- def PushServerAppOutputs(request,
382
+ def PushAppOutputs(request,
382
383
  target,
383
384
  options=(),
384
385
  channel_credentials=None,
@@ -388,9 +389,9 @@ class ServerAppIo(object):
388
389
  wait_for_ready=None,
389
390
  timeout=None,
390
391
  metadata=None):
391
- return grpc.experimental.unary_unary(request, target, '/flwr.proto.ServerAppIo/PushServerAppOutputs',
392
- flwr_dot_proto_dot_serverappio__pb2.PushServerAppOutputsRequest.SerializeToString,
393
- flwr_dot_proto_dot_serverappio__pb2.PushServerAppOutputsResponse.FromString,
392
+ return grpc.experimental.unary_unary(request, target, '/flwr.proto.ServerAppIo/PushAppOutputs',
393
+ flwr_dot_proto_dot_appio__pb2.PushAppOutputsRequest.SerializeToString,
394
+ flwr_dot_proto_dot_appio__pb2.PushAppOutputsResponse.FromString,
394
395
  options, channel_credentials,
395
396
  insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
396
397
 
@@ -3,6 +3,7 @@
3
3
  isort:skip_file
4
4
  """
5
5
  import abc
6
+ import flwr.proto.appio_pb2
6
7
  import flwr.proto.fab_pb2
7
8
  import flwr.proto.heartbeat_pb2
8
9
  import flwr.proto.log_pb2
@@ -19,13 +20,13 @@ class ServerAppIoStub:
19
20
  """Return a set of nodes"""
20
21
 
21
22
  PushMessages: grpc.UnaryUnaryMultiCallable[
22
- flwr.proto.serverappio_pb2.PushInsMessagesRequest,
23
- flwr.proto.serverappio_pb2.PushInsMessagesResponse]
23
+ flwr.proto.appio_pb2.PushAppMessagesRequest,
24
+ flwr.proto.appio_pb2.PushAppMessagesResponse]
24
25
  """Create one or more messages"""
25
26
 
26
27
  PullMessages: grpc.UnaryUnaryMultiCallable[
27
- flwr.proto.serverappio_pb2.PullResMessagesRequest,
28
- flwr.proto.serverappio_pb2.PullResMessagesResponse]
28
+ flwr.proto.appio_pb2.PullAppMessagesRequest,
29
+ flwr.proto.appio_pb2.PullAppMessagesResponse]
29
30
  """Get message results"""
30
31
 
31
32
  GetRun: grpc.UnaryUnaryMultiCallable[
@@ -38,14 +39,14 @@ class ServerAppIoStub:
38
39
  flwr.proto.fab_pb2.GetFabResponse]
39
40
  """Get FAB"""
40
41
 
41
- PullServerAppInputs: grpc.UnaryUnaryMultiCallable[
42
- flwr.proto.serverappio_pb2.PullServerAppInputsRequest,
43
- flwr.proto.serverappio_pb2.PullServerAppInputsResponse]
42
+ PullAppInputs: grpc.UnaryUnaryMultiCallable[
43
+ flwr.proto.appio_pb2.PullAppInputsRequest,
44
+ flwr.proto.appio_pb2.PullAppInputsResponse]
44
45
  """Pull ServerApp inputs"""
45
46
 
46
- PushServerAppOutputs: grpc.UnaryUnaryMultiCallable[
47
- flwr.proto.serverappio_pb2.PushServerAppOutputsRequest,
48
- flwr.proto.serverappio_pb2.PushServerAppOutputsResponse]
47
+ PushAppOutputs: grpc.UnaryUnaryMultiCallable[
48
+ flwr.proto.appio_pb2.PushAppOutputsRequest,
49
+ flwr.proto.appio_pb2.PushAppOutputsResponse]
49
50
  """Push ServerApp outputs"""
50
51
 
51
52
  UpdateRunStatus: grpc.UnaryUnaryMultiCallable[
@@ -95,17 +96,17 @@ class ServerAppIoServicer(metaclass=abc.ABCMeta):
95
96
 
96
97
  @abc.abstractmethod
97
98
  def PushMessages(self,
98
- request: flwr.proto.serverappio_pb2.PushInsMessagesRequest,
99
+ request: flwr.proto.appio_pb2.PushAppMessagesRequest,
99
100
  context: grpc.ServicerContext,
100
- ) -> flwr.proto.serverappio_pb2.PushInsMessagesResponse:
101
+ ) -> flwr.proto.appio_pb2.PushAppMessagesResponse:
101
102
  """Create one or more messages"""
102
103
  pass
103
104
 
104
105
  @abc.abstractmethod
105
106
  def PullMessages(self,
106
- request: flwr.proto.serverappio_pb2.PullResMessagesRequest,
107
+ request: flwr.proto.appio_pb2.PullAppMessagesRequest,
107
108
  context: grpc.ServicerContext,
108
- ) -> flwr.proto.serverappio_pb2.PullResMessagesResponse:
109
+ ) -> flwr.proto.appio_pb2.PullAppMessagesResponse:
109
110
  """Get message results"""
110
111
  pass
111
112
 
@@ -126,18 +127,18 @@ class ServerAppIoServicer(metaclass=abc.ABCMeta):
126
127
  pass
127
128
 
128
129
  @abc.abstractmethod
129
- def PullServerAppInputs(self,
130
- request: flwr.proto.serverappio_pb2.PullServerAppInputsRequest,
130
+ def PullAppInputs(self,
131
+ request: flwr.proto.appio_pb2.PullAppInputsRequest,
131
132
  context: grpc.ServicerContext,
132
- ) -> flwr.proto.serverappio_pb2.PullServerAppInputsResponse:
133
+ ) -> flwr.proto.appio_pb2.PullAppInputsResponse:
133
134
  """Pull ServerApp inputs"""
134
135
  pass
135
136
 
136
137
  @abc.abstractmethod
137
- def PushServerAppOutputs(self,
138
- request: flwr.proto.serverappio_pb2.PushServerAppOutputsRequest,
138
+ def PushAppOutputs(self,
139
+ request: flwr.proto.appio_pb2.PushAppOutputsRequest,
139
140
  context: grpc.ServicerContext,
140
- ) -> flwr.proto.serverappio_pb2.PushServerAppOutputsResponse:
141
+ ) -> flwr.proto.appio_pb2.PushAppOutputsResponse:
141
142
  """Push ServerApp outputs"""
142
143
  pass
143
144
 
@@ -47,6 +47,12 @@ from flwr.common.message import remove_content_from_message
47
47
  from flwr.common.retry_invoker import _make_simple_grpc_retry_invoker, _wrap_stub
48
48
  from flwr.common.serde import message_to_proto, run_from_proto
49
49
  from flwr.common.typing import Run
50
+ from flwr.proto.appio_pb2 import ( # pylint: disable=E0611
51
+ PullAppMessagesRequest,
52
+ PullAppMessagesResponse,
53
+ PushAppMessagesRequest,
54
+ PushAppMessagesResponse,
55
+ )
50
56
  from flwr.proto.message_pb2 import ( # pylint: disable=E0611
51
57
  ConfirmMessageReceivedRequest,
52
58
  )
@@ -55,10 +61,6 @@ from flwr.proto.run_pb2 import GetRunRequest, GetRunResponse # pylint: disable=
55
61
  from flwr.proto.serverappio_pb2 import ( # pylint: disable=E0611
56
62
  GetNodesRequest,
57
63
  GetNodesResponse,
58
- PullResMessagesRequest,
59
- PullResMessagesResponse,
60
- PushInsMessagesRequest,
61
- PushInsMessagesResponse,
62
64
  )
63
65
  from flwr.proto.serverappio_pb2_grpc import ServerAppIoStub # pylint: disable=E0611
64
66
 
@@ -223,8 +225,8 @@ class GrpcGrid(Grid):
223
225
  object_tree = get_object_tree(message)
224
226
 
225
227
  # Call GrpcServerAppIoStub method
226
- res: PushInsMessagesResponse = self._stub.PushMessages(
227
- PushInsMessagesRequest(
228
+ res: PushAppMessagesResponse = self._stub.PushMessages(
229
+ PushAppMessagesRequest(
228
230
  messages_list=[message_to_proto(remove_content_from_message(message))],
229
231
  run_id=run_id,
230
232
  message_object_trees=[object_tree],
@@ -294,8 +296,8 @@ class GrpcGrid(Grid):
294
296
  run_id = cast(Run, self._run).run_id
295
297
  try:
296
298
  # Pull Messages
297
- res: PullResMessagesResponse = self._stub.PullMessages(
298
- PullResMessagesRequest(
299
+ res: PullAppMessagesResponse = self._stub.PullMessages(
300
+ PullAppMessagesRequest(
299
301
  message_ids=message_ids,
300
302
  run_id=run_id,
301
303
  )