flwr-nightly 1.26.0.dev20260130__py3-none-any.whl → 1.26.0.dev20260202__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.
flwr/cli/run/run.py CHANGED
@@ -44,7 +44,7 @@ from flwr.common.serde import config_record_to_proto, fab_to_proto, user_config_
44
44
  from flwr.common.typing import Fab
45
45
  from flwr.proto.control_pb2 import StartRunRequest # pylint: disable=E0611
46
46
  from flwr.proto.control_pb2_grpc import ControlStub
47
- from flwr.supercore.utils import parse_app_spec
47
+ from flwr.supercore.utils import check_federation_format, parse_app_spec
48
48
 
49
49
  from ..log import start_stream
50
50
  from ..utils import (
@@ -67,6 +67,14 @@ def run(
67
67
  str | None,
68
68
  typer.Argument(help="Name of the SuperLink connection."),
69
69
  ] = None,
70
+ federation: Annotated[
71
+ str | None,
72
+ typer.Option(
73
+ "--federation",
74
+ help="The federation to submit the run to; must be in the "
75
+ "format `@<account>/<federation>`.",
76
+ ),
77
+ ] = None,
70
78
  run_config_overrides: Annotated[
71
79
  list[str] | None,
72
80
  typer.Option(
@@ -139,6 +147,7 @@ def run(
139
147
  _run_with_control_api(
140
148
  app,
141
149
  config,
150
+ federation,
142
151
  superlink_connection,
143
152
  run_config_overrides,
144
153
  stream,
@@ -157,6 +166,7 @@ def run(
157
166
  def _run_with_control_api(
158
167
  app: Path,
159
168
  config: dict[str, Any],
169
+ federation: str | None,
160
170
  superlink_connection: SuperLinkConnection,
161
171
  config_overrides: list[str] | None,
162
172
  stream: bool,
@@ -165,6 +175,13 @@ def _run_with_control_api(
165
175
  ) -> None:
166
176
  channel = None
167
177
  is_remote_app = app_spec is not None
178
+
179
+ # Determine federation to use
180
+ if federation: # Override federation from CLI
181
+ check_federation_format(federation)
182
+ else: # Use federation from SuperLink connection if set
183
+ federation = superlink_connection.federation or ""
184
+
168
185
  try:
169
186
  channel = init_channel_from_connection(superlink_connection)
170
187
  stub = ControlStub(channel)
@@ -193,7 +210,7 @@ def _run_with_control_api(
193
210
  req = StartRunRequest(
194
211
  fab=fab_to_proto(fab),
195
212
  override_config=user_config_to_proto(parse_config_args(config_overrides)),
196
- federation=superlink_connection.federation or "",
213
+ federation=federation,
197
214
  federation_options=config_record_to_proto(c_record),
198
215
  app_spec=app_spec or "",
199
216
  )
flwr/cli/utils.py CHANGED
@@ -418,7 +418,8 @@ def flwr_cli_grpc_exc_handler() -> Iterator[None]: # pylint: disable=too-many-b
418
418
  if e.details() == FEDERATION_NOT_SPECIFIED_MESSAGE: # pylint: disable=E1101
419
419
  raise click.ClickException(
420
420
  "No federation specified. "
421
- "Please specify a federation and try again.",
421
+ "Please use the `--federation` flag or set a default federation "
422
+ "in your SuperLink connection configuration."
422
423
  ) from None
423
424
  patten = re.compile(FEDERATION_NOT_FOUND_MESSAGE.replace("%s", "(.+)"))
424
425
  if m := patten.match(e.details()): # pylint: disable=E1101
@@ -28,7 +28,7 @@ from flwr.proto import message_pb2 as flwr_dot_proto_dot_message__pb2
28
28
  from flwr.proto import appio_pb2 as flwr_dot_proto_dot_appio__pb2
29
29
 
30
30
 
31
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1c\x66lwr/proto/clientappio.proto\x12\nflwr.proto\x1a\x1a\x66lwr/proto/heartbeat.proto\x1a\x14\x66lwr/proto/run.proto\x1a\x18\x66lwr/proto/message.proto\x1a\x16\x66lwr/proto/appio.proto2\xeb\x07\n\x0b\x43lientAppIo\x12_\n\x10ListAppsToLaunch\x12#.flwr.proto.ListAppsToLaunchRequest\x1a$.flwr.proto.ListAppsToLaunchResponse\"\x00\x12S\n\x0cRequestToken\x12\x1f.flwr.proto.RequestTokenRequest\x1a .flwr.proto.RequestTokenResponse\"\x00\x12\x41\n\x06GetRun\x12\x19.flwr.proto.GetRunRequest\x1a\x1a.flwr.proto.GetRunResponse\"\x00\x12\\\n\x13PullClientAppInputs\x12 .flwr.proto.PullAppInputsRequest\x1a!.flwr.proto.PullAppInputsResponse\"\x00\x12_\n\x14PushClientAppOutputs\x12!.flwr.proto.PushAppOutputsRequest\x1a\".flwr.proto.PushAppOutputsResponse\"\x00\x12X\n\x0bPushMessage\x12\".flwr.proto.PushAppMessagesRequest\x1a#.flwr.proto.PushAppMessagesResponse\"\x00\x12X\n\x0bPullMessage\x12\".flwr.proto.PullAppMessagesRequest\x1a#.flwr.proto.PullAppMessagesResponse\"\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')
31
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1c\x66lwr/proto/clientappio.proto\x12\nflwr.proto\x1a\x1a\x66lwr/proto/heartbeat.proto\x1a\x14\x66lwr/proto/run.proto\x1a\x18\x66lwr/proto/message.proto\x1a\x16\x66lwr/proto/appio.proto2\xdf\x07\n\x0b\x43lientAppIo\x12_\n\x10ListAppsToLaunch\x12#.flwr.proto.ListAppsToLaunchRequest\x1a$.flwr.proto.ListAppsToLaunchResponse\"\x00\x12S\n\x0cRequestToken\x12\x1f.flwr.proto.RequestTokenRequest\x1a .flwr.proto.RequestTokenResponse\"\x00\x12\x41\n\x06GetRun\x12\x19.flwr.proto.GetRunRequest\x1a\x1a.flwr.proto.GetRunResponse\"\x00\x12_\n\x10SendAppHeartbeat\x12#.flwr.proto.SendAppHeartbeatRequest\x1a$.flwr.proto.SendAppHeartbeatResponse\"\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\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\x12X\n\x0bPushMessage\x12\".flwr.proto.PushAppMessagesRequest\x1a#.flwr.proto.PushAppMessagesResponse\"\x00\x12X\n\x0bPullMessage\x12\".flwr.proto.PullAppMessagesRequest\x1a#.flwr.proto.PullAppMessagesResponse\"\x00\x62\x06proto3')
32
32
 
33
33
  _globals = globals()
34
34
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -36,5 +36,5 @@ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'flwr.proto.clientappio_pb2'
36
36
  if not _descriptor._USE_C_DESCRIPTORS:
37
37
  DESCRIPTOR._loaded_options = None
38
38
  _globals['_CLIENTAPPIO']._serialized_start=145
39
- _globals['_CLIENTAPPIO']._serialized_end=1148
39
+ _globals['_CLIENTAPPIO']._serialized_end=1136
40
40
  # @@protoc_insertion_point(module_scope)
@@ -52,31 +52,21 @@ class ClientAppIoStub(object):
52
52
  request_serializer=flwr_dot_proto_dot_run__pb2.GetRunRequest.SerializeToString,
53
53
  response_deserializer=flwr_dot_proto_dot_run__pb2.GetRunResponse.FromString,
54
54
  _registered_method=True)
55
- self.PullClientAppInputs = channel.unary_unary(
56
- '/flwr.proto.ClientAppIo/PullClientAppInputs',
55
+ self.SendAppHeartbeat = channel.unary_unary(
56
+ '/flwr.proto.ClientAppIo/SendAppHeartbeat',
57
+ request_serializer=flwr_dot_proto_dot_heartbeat__pb2.SendAppHeartbeatRequest.SerializeToString,
58
+ response_deserializer=flwr_dot_proto_dot_heartbeat__pb2.SendAppHeartbeatResponse.FromString,
59
+ _registered_method=True)
60
+ self.PullAppInputs = channel.unary_unary(
61
+ '/flwr.proto.ClientAppIo/PullAppInputs',
57
62
  request_serializer=flwr_dot_proto_dot_appio__pb2.PullAppInputsRequest.SerializeToString,
58
63
  response_deserializer=flwr_dot_proto_dot_appio__pb2.PullAppInputsResponse.FromString,
59
64
  _registered_method=True)
60
- self.PushClientAppOutputs = channel.unary_unary(
61
- '/flwr.proto.ClientAppIo/PushClientAppOutputs',
65
+ self.PushAppOutputs = channel.unary_unary(
66
+ '/flwr.proto.ClientAppIo/PushAppOutputs',
62
67
  request_serializer=flwr_dot_proto_dot_appio__pb2.PushAppOutputsRequest.SerializeToString,
63
68
  response_deserializer=flwr_dot_proto_dot_appio__pb2.PushAppOutputsResponse.FromString,
64
69
  _registered_method=True)
65
- self.PushMessage = channel.unary_unary(
66
- '/flwr.proto.ClientAppIo/PushMessage',
67
- request_serializer=flwr_dot_proto_dot_appio__pb2.PushAppMessagesRequest.SerializeToString,
68
- response_deserializer=flwr_dot_proto_dot_appio__pb2.PushAppMessagesResponse.FromString,
69
- _registered_method=True)
70
- self.PullMessage = channel.unary_unary(
71
- '/flwr.proto.ClientAppIo/PullMessage',
72
- request_serializer=flwr_dot_proto_dot_appio__pb2.PullAppMessagesRequest.SerializeToString,
73
- response_deserializer=flwr_dot_proto_dot_appio__pb2.PullAppMessagesResponse.FromString,
74
- _registered_method=True)
75
- self.SendAppHeartbeat = channel.unary_unary(
76
- '/flwr.proto.ClientAppIo/SendAppHeartbeat',
77
- request_serializer=flwr_dot_proto_dot_heartbeat__pb2.SendAppHeartbeatRequest.SerializeToString,
78
- response_deserializer=flwr_dot_proto_dot_heartbeat__pb2.SendAppHeartbeatResponse.FromString,
79
- _registered_method=True)
80
70
  self.PushObject = channel.unary_unary(
81
71
  '/flwr.proto.ClientAppIo/PushObject',
82
72
  request_serializer=flwr_dot_proto_dot_message__pb2.PushObjectRequest.SerializeToString,
@@ -92,13 +82,27 @@ class ClientAppIoStub(object):
92
82
  request_serializer=flwr_dot_proto_dot_message__pb2.ConfirmMessageReceivedRequest.SerializeToString,
93
83
  response_deserializer=flwr_dot_proto_dot_message__pb2.ConfirmMessageReceivedResponse.FromString,
94
84
  _registered_method=True)
85
+ self.PushMessage = channel.unary_unary(
86
+ '/flwr.proto.ClientAppIo/PushMessage',
87
+ request_serializer=flwr_dot_proto_dot_appio__pb2.PushAppMessagesRequest.SerializeToString,
88
+ response_deserializer=flwr_dot_proto_dot_appio__pb2.PushAppMessagesResponse.FromString,
89
+ _registered_method=True)
90
+ self.PullMessage = channel.unary_unary(
91
+ '/flwr.proto.ClientAppIo/PullMessage',
92
+ request_serializer=flwr_dot_proto_dot_appio__pb2.PullAppMessagesRequest.SerializeToString,
93
+ response_deserializer=flwr_dot_proto_dot_appio__pb2.PullAppMessagesResponse.FromString,
94
+ _registered_method=True)
95
95
 
96
96
 
97
97
  class ClientAppIoServicer(object):
98
98
  """Missing associated documentation comment in .proto file."""
99
99
 
100
100
  def ListAppsToLaunch(self, request, context):
101
- """Get run IDs with pending messages
101
+ """///////////////////////////////////////////////////////////////////////////
102
+ General *AppIo endpoints for SuperExec processes
103
+ ///////////////////////////////////////////////////////////////////////////
104
+
105
+ Get run IDs with pending messages
102
106
  """
103
107
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
104
108
  context.set_details('Method not implemented!')
@@ -112,63 +116,75 @@ class ClientAppIoServicer(object):
112
116
  raise NotImplementedError('Method not implemented!')
113
117
 
114
118
  def GetRun(self, request, context):
115
- """Get run details
119
+ """///////////////////////////////////////////////////////////////////////////
120
+ General *AppIo endpoints for App Executor processes
121
+ ///////////////////////////////////////////////////////////////////////////
122
+
123
+ Get run details
116
124
  """
117
125
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
118
126
  context.set_details('Method not implemented!')
119
127
  raise NotImplementedError('Method not implemented!')
120
128
 
121
- def PullClientAppInputs(self, request, context):
122
- """Pull client app inputs
129
+ def SendAppHeartbeat(self, request, context):
130
+ """App heartbeat
123
131
  """
124
132
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
125
133
  context.set_details('Method not implemented!')
126
134
  raise NotImplementedError('Method not implemented!')
127
135
 
128
- def PushClientAppOutputs(self, request, context):
129
- """Push client app outputs
136
+ def PullAppInputs(self, request, context):
137
+ """Pull app inputs
130
138
  """
131
139
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
132
140
  context.set_details('Method not implemented!')
133
141
  raise NotImplementedError('Method not implemented!')
134
142
 
135
- def PushMessage(self, request, context):
136
- """Push Message
143
+ def PushAppOutputs(self, request, context):
144
+ """Push app outputs
137
145
  """
138
146
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
139
147
  context.set_details('Method not implemented!')
140
148
  raise NotImplementedError('Method not implemented!')
141
149
 
142
- def PullMessage(self, request, context):
143
- """Pull Message
150
+ def PushObject(self, request, context):
151
+ """///////////////////////////////////////////////////////////////////////////
152
+ Specific endpoints shared by ServerAppIo and ClientAppIo
153
+ ///////////////////////////////////////////////////////////////////////////
154
+
155
+ Push Object
144
156
  """
145
157
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
146
158
  context.set_details('Method not implemented!')
147
159
  raise NotImplementedError('Method not implemented!')
148
160
 
149
- def SendAppHeartbeat(self, request, context):
150
- """App heartbeat
161
+ def PullObject(self, request, context):
162
+ """Pull Object
151
163
  """
152
164
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
153
165
  context.set_details('Method not implemented!')
154
166
  raise NotImplementedError('Method not implemented!')
155
167
 
156
- def PushObject(self, request, context):
157
- """Push Object
168
+ def ConfirmMessageReceived(self, request, context):
169
+ """Confirm Message Received
158
170
  """
159
171
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
160
172
  context.set_details('Method not implemented!')
161
173
  raise NotImplementedError('Method not implemented!')
162
174
 
163
- def PullObject(self, request, context):
164
- """Pull Object
175
+ def PushMessage(self, request, context):
176
+ """///////////////////////////////////////////////////////////////////////////
177
+ Specific endpoints for ClientAppIo
178
+ ///////////////////////////////////////////////////////////////////////////
179
+
180
+ Push Message
165
181
  """
166
182
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
167
183
  context.set_details('Method not implemented!')
168
184
  raise NotImplementedError('Method not implemented!')
169
185
 
170
- def ConfirmMessageReceived(self, request, context):
171
- """Confirm Message Received
186
+ def PullMessage(self, request, context):
187
+ """Pull Message
172
188
  """
173
189
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
174
190
  context.set_details('Method not implemented!')
@@ -192,31 +208,21 @@ def add_ClientAppIoServicer_to_server(servicer, server):
192
208
  request_deserializer=flwr_dot_proto_dot_run__pb2.GetRunRequest.FromString,
193
209
  response_serializer=flwr_dot_proto_dot_run__pb2.GetRunResponse.SerializeToString,
194
210
  ),
195
- 'PullClientAppInputs': grpc.unary_unary_rpc_method_handler(
196
- servicer.PullClientAppInputs,
211
+ 'SendAppHeartbeat': grpc.unary_unary_rpc_method_handler(
212
+ servicer.SendAppHeartbeat,
213
+ request_deserializer=flwr_dot_proto_dot_heartbeat__pb2.SendAppHeartbeatRequest.FromString,
214
+ response_serializer=flwr_dot_proto_dot_heartbeat__pb2.SendAppHeartbeatResponse.SerializeToString,
215
+ ),
216
+ 'PullAppInputs': grpc.unary_unary_rpc_method_handler(
217
+ servicer.PullAppInputs,
197
218
  request_deserializer=flwr_dot_proto_dot_appio__pb2.PullAppInputsRequest.FromString,
198
219
  response_serializer=flwr_dot_proto_dot_appio__pb2.PullAppInputsResponse.SerializeToString,
199
220
  ),
200
- 'PushClientAppOutputs': grpc.unary_unary_rpc_method_handler(
201
- servicer.PushClientAppOutputs,
221
+ 'PushAppOutputs': grpc.unary_unary_rpc_method_handler(
222
+ servicer.PushAppOutputs,
202
223
  request_deserializer=flwr_dot_proto_dot_appio__pb2.PushAppOutputsRequest.FromString,
203
224
  response_serializer=flwr_dot_proto_dot_appio__pb2.PushAppOutputsResponse.SerializeToString,
204
225
  ),
205
- 'PushMessage': grpc.unary_unary_rpc_method_handler(
206
- servicer.PushMessage,
207
- request_deserializer=flwr_dot_proto_dot_appio__pb2.PushAppMessagesRequest.FromString,
208
- response_serializer=flwr_dot_proto_dot_appio__pb2.PushAppMessagesResponse.SerializeToString,
209
- ),
210
- 'PullMessage': grpc.unary_unary_rpc_method_handler(
211
- servicer.PullMessage,
212
- request_deserializer=flwr_dot_proto_dot_appio__pb2.PullAppMessagesRequest.FromString,
213
- response_serializer=flwr_dot_proto_dot_appio__pb2.PullAppMessagesResponse.SerializeToString,
214
- ),
215
- 'SendAppHeartbeat': grpc.unary_unary_rpc_method_handler(
216
- servicer.SendAppHeartbeat,
217
- request_deserializer=flwr_dot_proto_dot_heartbeat__pb2.SendAppHeartbeatRequest.FromString,
218
- response_serializer=flwr_dot_proto_dot_heartbeat__pb2.SendAppHeartbeatResponse.SerializeToString,
219
- ),
220
226
  'PushObject': grpc.unary_unary_rpc_method_handler(
221
227
  servicer.PushObject,
222
228
  request_deserializer=flwr_dot_proto_dot_message__pb2.PushObjectRequest.FromString,
@@ -232,6 +238,16 @@ def add_ClientAppIoServicer_to_server(servicer, server):
232
238
  request_deserializer=flwr_dot_proto_dot_message__pb2.ConfirmMessageReceivedRequest.FromString,
233
239
  response_serializer=flwr_dot_proto_dot_message__pb2.ConfirmMessageReceivedResponse.SerializeToString,
234
240
  ),
241
+ 'PushMessage': grpc.unary_unary_rpc_method_handler(
242
+ servicer.PushMessage,
243
+ request_deserializer=flwr_dot_proto_dot_appio__pb2.PushAppMessagesRequest.FromString,
244
+ response_serializer=flwr_dot_proto_dot_appio__pb2.PushAppMessagesResponse.SerializeToString,
245
+ ),
246
+ 'PullMessage': grpc.unary_unary_rpc_method_handler(
247
+ servicer.PullMessage,
248
+ request_deserializer=flwr_dot_proto_dot_appio__pb2.PullAppMessagesRequest.FromString,
249
+ response_serializer=flwr_dot_proto_dot_appio__pb2.PullAppMessagesResponse.SerializeToString,
250
+ ),
235
251
  }
236
252
  generic_handler = grpc.method_handlers_generic_handler(
237
253
  'flwr.proto.ClientAppIo', rpc_method_handlers)
@@ -325,7 +341,7 @@ class ClientAppIo(object):
325
341
  _registered_method=True)
326
342
 
327
343
  @staticmethod
328
- def PullClientAppInputs(request,
344
+ def SendAppHeartbeat(request,
329
345
  target,
330
346
  options=(),
331
347
  channel_credentials=None,
@@ -338,9 +354,9 @@ class ClientAppIo(object):
338
354
  return grpc.experimental.unary_unary(
339
355
  request,
340
356
  target,
341
- '/flwr.proto.ClientAppIo/PullClientAppInputs',
342
- flwr_dot_proto_dot_appio__pb2.PullAppInputsRequest.SerializeToString,
343
- flwr_dot_proto_dot_appio__pb2.PullAppInputsResponse.FromString,
357
+ '/flwr.proto.ClientAppIo/SendAppHeartbeat',
358
+ flwr_dot_proto_dot_heartbeat__pb2.SendAppHeartbeatRequest.SerializeToString,
359
+ flwr_dot_proto_dot_heartbeat__pb2.SendAppHeartbeatResponse.FromString,
344
360
  options,
345
361
  channel_credentials,
346
362
  insecure,
@@ -352,7 +368,7 @@ class ClientAppIo(object):
352
368
  _registered_method=True)
353
369
 
354
370
  @staticmethod
355
- def PushClientAppOutputs(request,
371
+ def PullAppInputs(request,
356
372
  target,
357
373
  options=(),
358
374
  channel_credentials=None,
@@ -365,9 +381,9 @@ class ClientAppIo(object):
365
381
  return grpc.experimental.unary_unary(
366
382
  request,
367
383
  target,
368
- '/flwr.proto.ClientAppIo/PushClientAppOutputs',
369
- flwr_dot_proto_dot_appio__pb2.PushAppOutputsRequest.SerializeToString,
370
- flwr_dot_proto_dot_appio__pb2.PushAppOutputsResponse.FromString,
384
+ '/flwr.proto.ClientAppIo/PullAppInputs',
385
+ flwr_dot_proto_dot_appio__pb2.PullAppInputsRequest.SerializeToString,
386
+ flwr_dot_proto_dot_appio__pb2.PullAppInputsResponse.FromString,
371
387
  options,
372
388
  channel_credentials,
373
389
  insecure,
@@ -379,7 +395,7 @@ class ClientAppIo(object):
379
395
  _registered_method=True)
380
396
 
381
397
  @staticmethod
382
- def PushMessage(request,
398
+ def PushAppOutputs(request,
383
399
  target,
384
400
  options=(),
385
401
  channel_credentials=None,
@@ -392,9 +408,9 @@ class ClientAppIo(object):
392
408
  return grpc.experimental.unary_unary(
393
409
  request,
394
410
  target,
395
- '/flwr.proto.ClientAppIo/PushMessage',
396
- flwr_dot_proto_dot_appio__pb2.PushAppMessagesRequest.SerializeToString,
397
- flwr_dot_proto_dot_appio__pb2.PushAppMessagesResponse.FromString,
411
+ '/flwr.proto.ClientAppIo/PushAppOutputs',
412
+ flwr_dot_proto_dot_appio__pb2.PushAppOutputsRequest.SerializeToString,
413
+ flwr_dot_proto_dot_appio__pb2.PushAppOutputsResponse.FromString,
398
414
  options,
399
415
  channel_credentials,
400
416
  insecure,
@@ -406,7 +422,7 @@ class ClientAppIo(object):
406
422
  _registered_method=True)
407
423
 
408
424
  @staticmethod
409
- def PullMessage(request,
425
+ def PushObject(request,
410
426
  target,
411
427
  options=(),
412
428
  channel_credentials=None,
@@ -419,9 +435,9 @@ class ClientAppIo(object):
419
435
  return grpc.experimental.unary_unary(
420
436
  request,
421
437
  target,
422
- '/flwr.proto.ClientAppIo/PullMessage',
423
- flwr_dot_proto_dot_appio__pb2.PullAppMessagesRequest.SerializeToString,
424
- flwr_dot_proto_dot_appio__pb2.PullAppMessagesResponse.FromString,
438
+ '/flwr.proto.ClientAppIo/PushObject',
439
+ flwr_dot_proto_dot_message__pb2.PushObjectRequest.SerializeToString,
440
+ flwr_dot_proto_dot_message__pb2.PushObjectResponse.FromString,
425
441
  options,
426
442
  channel_credentials,
427
443
  insecure,
@@ -433,7 +449,7 @@ class ClientAppIo(object):
433
449
  _registered_method=True)
434
450
 
435
451
  @staticmethod
436
- def SendAppHeartbeat(request,
452
+ def PullObject(request,
437
453
  target,
438
454
  options=(),
439
455
  channel_credentials=None,
@@ -446,9 +462,9 @@ class ClientAppIo(object):
446
462
  return grpc.experimental.unary_unary(
447
463
  request,
448
464
  target,
449
- '/flwr.proto.ClientAppIo/SendAppHeartbeat',
450
- flwr_dot_proto_dot_heartbeat__pb2.SendAppHeartbeatRequest.SerializeToString,
451
- flwr_dot_proto_dot_heartbeat__pb2.SendAppHeartbeatResponse.FromString,
465
+ '/flwr.proto.ClientAppIo/PullObject',
466
+ flwr_dot_proto_dot_message__pb2.PullObjectRequest.SerializeToString,
467
+ flwr_dot_proto_dot_message__pb2.PullObjectResponse.FromString,
452
468
  options,
453
469
  channel_credentials,
454
470
  insecure,
@@ -460,7 +476,7 @@ class ClientAppIo(object):
460
476
  _registered_method=True)
461
477
 
462
478
  @staticmethod
463
- def PushObject(request,
479
+ def ConfirmMessageReceived(request,
464
480
  target,
465
481
  options=(),
466
482
  channel_credentials=None,
@@ -473,9 +489,9 @@ class ClientAppIo(object):
473
489
  return grpc.experimental.unary_unary(
474
490
  request,
475
491
  target,
476
- '/flwr.proto.ClientAppIo/PushObject',
477
- flwr_dot_proto_dot_message__pb2.PushObjectRequest.SerializeToString,
478
- flwr_dot_proto_dot_message__pb2.PushObjectResponse.FromString,
492
+ '/flwr.proto.ClientAppIo/ConfirmMessageReceived',
493
+ flwr_dot_proto_dot_message__pb2.ConfirmMessageReceivedRequest.SerializeToString,
494
+ flwr_dot_proto_dot_message__pb2.ConfirmMessageReceivedResponse.FromString,
479
495
  options,
480
496
  channel_credentials,
481
497
  insecure,
@@ -487,7 +503,7 @@ class ClientAppIo(object):
487
503
  _registered_method=True)
488
504
 
489
505
  @staticmethod
490
- def PullObject(request,
506
+ def PushMessage(request,
491
507
  target,
492
508
  options=(),
493
509
  channel_credentials=None,
@@ -500,9 +516,9 @@ class ClientAppIo(object):
500
516
  return grpc.experimental.unary_unary(
501
517
  request,
502
518
  target,
503
- '/flwr.proto.ClientAppIo/PullObject',
504
- flwr_dot_proto_dot_message__pb2.PullObjectRequest.SerializeToString,
505
- flwr_dot_proto_dot_message__pb2.PullObjectResponse.FromString,
519
+ '/flwr.proto.ClientAppIo/PushMessage',
520
+ flwr_dot_proto_dot_appio__pb2.PushAppMessagesRequest.SerializeToString,
521
+ flwr_dot_proto_dot_appio__pb2.PushAppMessagesResponse.FromString,
506
522
  options,
507
523
  channel_credentials,
508
524
  insecure,
@@ -514,7 +530,7 @@ class ClientAppIo(object):
514
530
  _registered_method=True)
515
531
 
516
532
  @staticmethod
517
- def ConfirmMessageReceived(request,
533
+ def PullMessage(request,
518
534
  target,
519
535
  options=(),
520
536
  channel_credentials=None,
@@ -527,9 +543,9 @@ class ClientAppIo(object):
527
543
  return grpc.experimental.unary_unary(
528
544
  request,
529
545
  target,
530
- '/flwr.proto.ClientAppIo/ConfirmMessageReceived',
531
- flwr_dot_proto_dot_message__pb2.ConfirmMessageReceivedRequest.SerializeToString,
532
- flwr_dot_proto_dot_message__pb2.ConfirmMessageReceivedResponse.FromString,
546
+ '/flwr.proto.ClientAppIo/PullMessage',
547
+ flwr_dot_proto_dot_appio__pb2.PullAppMessagesRequest.SerializeToString,
548
+ flwr_dot_proto_dot_appio__pb2.PullAppMessagesResponse.FromString,
533
549
  options,
534
550
  channel_credentials,
535
551
  insecure,