flwr-nightly 1.9.0.dev20240520__py3-none-any.whl → 1.10.0.dev20240612__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.

Potentially problematic release.


This version of flwr-nightly might be problematic. Click here for more details.

Files changed (53) hide show
  1. flwr/cli/app.py +2 -0
  2. flwr/cli/build.py +4 -19
  3. flwr/cli/config_utils.py +12 -27
  4. flwr/cli/install.py +196 -0
  5. flwr/cli/new/templates/app/pyproject.hf.toml.tpl +7 -1
  6. flwr/cli/new/templates/app/pyproject.jax.toml.tpl +1 -1
  7. flwr/cli/new/templates/app/pyproject.mlx.toml.tpl +7 -1
  8. flwr/cli/new/templates/app/pyproject.numpy.toml.tpl +7 -1
  9. flwr/cli/new/templates/app/pyproject.pytorch.toml.tpl +7 -1
  10. flwr/cli/new/templates/app/pyproject.sklearn.toml.tpl +7 -1
  11. flwr/cli/new/templates/app/pyproject.tensorflow.toml.tpl +7 -1
  12. flwr/cli/run/run.py +20 -4
  13. flwr/cli/utils.py +14 -0
  14. flwr/client/__init__.py +1 -0
  15. flwr/client/app.py +135 -97
  16. flwr/client/client_app.py +1 -1
  17. flwr/client/grpc_rere_client/client_interceptor.py +1 -1
  18. flwr/client/grpc_rere_client/connection.py +6 -6
  19. flwr/client/mod/__init__.py +1 -1
  20. flwr/client/rest_client/connection.py +1 -2
  21. flwr/client/supernode/app.py +70 -28
  22. flwr/common/object_ref.py +13 -9
  23. flwr/common/recordset_compat.py +8 -1
  24. flwr/common/secure_aggregation/crypto/symmetric_encryption.py +0 -15
  25. flwr/proto/driver_pb2.py +20 -19
  26. flwr/proto/driver_pb2_grpc.py +35 -0
  27. flwr/proto/driver_pb2_grpc.pyi +14 -0
  28. flwr/proto/fleet_pb2.py +28 -33
  29. flwr/proto/fleet_pb2.pyi +0 -42
  30. flwr/proto/fleet_pb2_grpc.py +7 -6
  31. flwr/proto/fleet_pb2_grpc.pyi +5 -4
  32. flwr/proto/grpcadapter_pb2.py +32 -0
  33. flwr/proto/grpcadapter_pb2.pyi +43 -0
  34. flwr/proto/grpcadapter_pb2_grpc.py +66 -0
  35. flwr/proto/grpcadapter_pb2_grpc.pyi +24 -0
  36. flwr/proto/run_pb2.py +30 -0
  37. flwr/proto/run_pb2.pyi +52 -0
  38. flwr/proto/run_pb2_grpc.py +4 -0
  39. flwr/proto/run_pb2_grpc.pyi +4 -0
  40. flwr/server/__init__.py +0 -4
  41. flwr/server/app.py +190 -395
  42. flwr/server/run_serverapp.py +29 -5
  43. flwr/server/server_app.py +2 -2
  44. flwr/server/superlink/driver/driver_servicer.py +7 -0
  45. flwr/server/superlink/fleet/grpc_rere/fleet_servicer.py +1 -2
  46. flwr/server/superlink/fleet/grpc_rere/server_interceptor.py +1 -2
  47. flwr/server/superlink/fleet/message_handler/message_handler.py +5 -3
  48. flwr/server/superlink/fleet/rest_rere/rest_api.py +1 -1
  49. {flwr_nightly-1.9.0.dev20240520.dist-info → flwr_nightly-1.10.0.dev20240612.dist-info}/METADATA +4 -3
  50. {flwr_nightly-1.9.0.dev20240520.dist-info → flwr_nightly-1.10.0.dev20240612.dist-info}/RECORD +53 -44
  51. {flwr_nightly-1.9.0.dev20240520.dist-info → flwr_nightly-1.10.0.dev20240612.dist-info}/entry_points.txt +0 -2
  52. {flwr_nightly-1.9.0.dev20240520.dist-info → flwr_nightly-1.10.0.dev20240612.dist-info}/LICENSE +0 -0
  53. {flwr_nightly-1.9.0.dev20240520.dist-info → flwr_nightly-1.10.0.dev20240612.dist-info}/WHEEL +0 -0
flwr/proto/driver_pb2.py CHANGED
@@ -14,31 +14,32 @@ _sym_db = _symbol_database.Default()
14
14
 
15
15
  from flwr.proto import node_pb2 as flwr_dot_proto_dot_node__pb2
16
16
  from flwr.proto import task_pb2 as flwr_dot_proto_dot_task__pb2
17
+ from flwr.proto import run_pb2 as flwr_dot_proto_dot_run__pb2
17
18
 
18
19
 
19
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x17\x66lwr/proto/driver.proto\x12\nflwr.proto\x1a\x15\x66lwr/proto/node.proto\x1a\x15\x66lwr/proto/task.proto\"7\n\x10\x43reateRunRequest\x12\x0e\n\x06\x66\x61\x62_id\x18\x01 \x01(\t\x12\x13\n\x0b\x66\x61\x62_version\x18\x02 \x01(\t\"#\n\x11\x43reateRunResponse\x12\x0e\n\x06run_id\x18\x01 \x01(\x12\"!\n\x0fGetNodesRequest\x12\x0e\n\x06run_id\x18\x01 \x01(\x12\"3\n\x10GetNodesResponse\x12\x1f\n\x05nodes\x18\x01 \x03(\x0b\x32\x10.flwr.proto.Node\"@\n\x12PushTaskInsRequest\x12*\n\rtask_ins_list\x18\x01 \x03(\x0b\x32\x13.flwr.proto.TaskIns\"\'\n\x13PushTaskInsResponse\x12\x10\n\x08task_ids\x18\x02 \x03(\t\"F\n\x12PullTaskResRequest\x12\x1e\n\x04node\x18\x01 \x01(\x0b\x32\x10.flwr.proto.Node\x12\x10\n\x08task_ids\x18\x02 \x03(\t\"A\n\x13PullTaskResResponse\x12*\n\rtask_res_list\x18\x01 \x03(\x0b\x32\x13.flwr.proto.TaskRes2\xc1\x02\n\x06\x44river\x12J\n\tCreateRun\x12\x1c.flwr.proto.CreateRunRequest\x1a\x1d.flwr.proto.CreateRunResponse\"\x00\x12G\n\x08GetNodes\x12\x1b.flwr.proto.GetNodesRequest\x1a\x1c.flwr.proto.GetNodesResponse\"\x00\x12P\n\x0bPushTaskIns\x12\x1e.flwr.proto.PushTaskInsRequest\x1a\x1f.flwr.proto.PushTaskInsResponse\"\x00\x12P\n\x0bPullTaskRes\x12\x1e.flwr.proto.PullTaskResRequest\x1a\x1f.flwr.proto.PullTaskResResponse\"\x00\x62\x06proto3')
20
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x17\x66lwr/proto/driver.proto\x12\nflwr.proto\x1a\x15\x66lwr/proto/node.proto\x1a\x15\x66lwr/proto/task.proto\x1a\x14\x66lwr/proto/run.proto\"7\n\x10\x43reateRunRequest\x12\x0e\n\x06\x66\x61\x62_id\x18\x01 \x01(\t\x12\x13\n\x0b\x66\x61\x62_version\x18\x02 \x01(\t\"#\n\x11\x43reateRunResponse\x12\x0e\n\x06run_id\x18\x01 \x01(\x12\"!\n\x0fGetNodesRequest\x12\x0e\n\x06run_id\x18\x01 \x01(\x12\"3\n\x10GetNodesResponse\x12\x1f\n\x05nodes\x18\x01 \x03(\x0b\x32\x10.flwr.proto.Node\"@\n\x12PushTaskInsRequest\x12*\n\rtask_ins_list\x18\x01 \x03(\x0b\x32\x13.flwr.proto.TaskIns\"\'\n\x13PushTaskInsResponse\x12\x10\n\x08task_ids\x18\x02 \x03(\t\"F\n\x12PullTaskResRequest\x12\x1e\n\x04node\x18\x01 \x01(\x0b\x32\x10.flwr.proto.Node\x12\x10\n\x08task_ids\x18\x02 \x03(\t\"A\n\x13PullTaskResResponse\x12*\n\rtask_res_list\x18\x01 \x03(\x0b\x32\x13.flwr.proto.TaskRes2\x84\x03\n\x06\x44river\x12J\n\tCreateRun\x12\x1c.flwr.proto.CreateRunRequest\x1a\x1d.flwr.proto.CreateRunResponse\"\x00\x12G\n\x08GetNodes\x12\x1b.flwr.proto.GetNodesRequest\x1a\x1c.flwr.proto.GetNodesResponse\"\x00\x12P\n\x0bPushTaskIns\x12\x1e.flwr.proto.PushTaskInsRequest\x1a\x1f.flwr.proto.PushTaskInsResponse\"\x00\x12P\n\x0bPullTaskRes\x12\x1e.flwr.proto.PullTaskResRequest\x1a\x1f.flwr.proto.PullTaskResResponse\"\x00\x12\x41\n\x06GetRun\x12\x19.flwr.proto.GetRunRequest\x1a\x1a.flwr.proto.GetRunResponse\"\x00\x62\x06proto3')
20
21
 
21
22
  _globals = globals()
22
23
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
23
24
  _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'flwr.proto.driver_pb2', _globals)
24
25
  if _descriptor._USE_C_DESCRIPTORS == False:
25
26
  DESCRIPTOR._options = None
26
- _globals['_CREATERUNREQUEST']._serialized_start=85
27
- _globals['_CREATERUNREQUEST']._serialized_end=140
28
- _globals['_CREATERUNRESPONSE']._serialized_start=142
29
- _globals['_CREATERUNRESPONSE']._serialized_end=177
30
- _globals['_GETNODESREQUEST']._serialized_start=179
31
- _globals['_GETNODESREQUEST']._serialized_end=212
32
- _globals['_GETNODESRESPONSE']._serialized_start=214
33
- _globals['_GETNODESRESPONSE']._serialized_end=265
34
- _globals['_PUSHTASKINSREQUEST']._serialized_start=267
35
- _globals['_PUSHTASKINSREQUEST']._serialized_end=331
36
- _globals['_PUSHTASKINSRESPONSE']._serialized_start=333
37
- _globals['_PUSHTASKINSRESPONSE']._serialized_end=372
38
- _globals['_PULLTASKRESREQUEST']._serialized_start=374
39
- _globals['_PULLTASKRESREQUEST']._serialized_end=444
40
- _globals['_PULLTASKRESRESPONSE']._serialized_start=446
41
- _globals['_PULLTASKRESRESPONSE']._serialized_end=511
42
- _globals['_DRIVER']._serialized_start=514
43
- _globals['_DRIVER']._serialized_end=835
27
+ _globals['_CREATERUNREQUEST']._serialized_start=107
28
+ _globals['_CREATERUNREQUEST']._serialized_end=162
29
+ _globals['_CREATERUNRESPONSE']._serialized_start=164
30
+ _globals['_CREATERUNRESPONSE']._serialized_end=199
31
+ _globals['_GETNODESREQUEST']._serialized_start=201
32
+ _globals['_GETNODESREQUEST']._serialized_end=234
33
+ _globals['_GETNODESRESPONSE']._serialized_start=236
34
+ _globals['_GETNODESRESPONSE']._serialized_end=287
35
+ _globals['_PUSHTASKINSREQUEST']._serialized_start=289
36
+ _globals['_PUSHTASKINSREQUEST']._serialized_end=353
37
+ _globals['_PUSHTASKINSRESPONSE']._serialized_start=355
38
+ _globals['_PUSHTASKINSRESPONSE']._serialized_end=394
39
+ _globals['_PULLTASKRESREQUEST']._serialized_start=396
40
+ _globals['_PULLTASKRESREQUEST']._serialized_end=466
41
+ _globals['_PULLTASKRESRESPONSE']._serialized_start=468
42
+ _globals['_PULLTASKRESRESPONSE']._serialized_end=533
43
+ _globals['_DRIVER']._serialized_start=536
44
+ _globals['_DRIVER']._serialized_end=924
44
45
  # @@protoc_insertion_point(module_scope)
@@ -3,6 +3,7 @@
3
3
  import grpc
4
4
 
5
5
  from flwr.proto import driver_pb2 as flwr_dot_proto_dot_driver__pb2
6
+ from flwr.proto import run_pb2 as flwr_dot_proto_dot_run__pb2
6
7
 
7
8
 
8
9
  class DriverStub(object):
@@ -34,6 +35,11 @@ class DriverStub(object):
34
35
  request_serializer=flwr_dot_proto_dot_driver__pb2.PullTaskResRequest.SerializeToString,
35
36
  response_deserializer=flwr_dot_proto_dot_driver__pb2.PullTaskResResponse.FromString,
36
37
  )
38
+ self.GetRun = channel.unary_unary(
39
+ '/flwr.proto.Driver/GetRun',
40
+ request_serializer=flwr_dot_proto_dot_run__pb2.GetRunRequest.SerializeToString,
41
+ response_deserializer=flwr_dot_proto_dot_run__pb2.GetRunResponse.FromString,
42
+ )
37
43
 
38
44
 
39
45
  class DriverServicer(object):
@@ -67,6 +73,13 @@ class DriverServicer(object):
67
73
  context.set_details('Method not implemented!')
68
74
  raise NotImplementedError('Method not implemented!')
69
75
 
76
+ def GetRun(self, request, context):
77
+ """Get run details
78
+ """
79
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
80
+ context.set_details('Method not implemented!')
81
+ raise NotImplementedError('Method not implemented!')
82
+
70
83
 
71
84
  def add_DriverServicer_to_server(servicer, server):
72
85
  rpc_method_handlers = {
@@ -90,6 +103,11 @@ def add_DriverServicer_to_server(servicer, server):
90
103
  request_deserializer=flwr_dot_proto_dot_driver__pb2.PullTaskResRequest.FromString,
91
104
  response_serializer=flwr_dot_proto_dot_driver__pb2.PullTaskResResponse.SerializeToString,
92
105
  ),
106
+ 'GetRun': grpc.unary_unary_rpc_method_handler(
107
+ servicer.GetRun,
108
+ request_deserializer=flwr_dot_proto_dot_run__pb2.GetRunRequest.FromString,
109
+ response_serializer=flwr_dot_proto_dot_run__pb2.GetRunResponse.SerializeToString,
110
+ ),
93
111
  }
94
112
  generic_handler = grpc.method_handlers_generic_handler(
95
113
  'flwr.proto.Driver', rpc_method_handlers)
@@ -167,3 +185,20 @@ class Driver(object):
167
185
  flwr_dot_proto_dot_driver__pb2.PullTaskResResponse.FromString,
168
186
  options, channel_credentials,
169
187
  insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
188
+
189
+ @staticmethod
190
+ def GetRun(request,
191
+ target,
192
+ options=(),
193
+ channel_credentials=None,
194
+ call_credentials=None,
195
+ insecure=False,
196
+ compression=None,
197
+ wait_for_ready=None,
198
+ timeout=None,
199
+ metadata=None):
200
+ return grpc.experimental.unary_unary(request, target, '/flwr.proto.Driver/GetRun',
201
+ flwr_dot_proto_dot_run__pb2.GetRunRequest.SerializeToString,
202
+ flwr_dot_proto_dot_run__pb2.GetRunResponse.FromString,
203
+ options, channel_credentials,
204
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
@@ -4,6 +4,7 @@ isort:skip_file
4
4
  """
5
5
  import abc
6
6
  import flwr.proto.driver_pb2
7
+ import flwr.proto.run_pb2
7
8
  import grpc
8
9
 
9
10
  class DriverStub:
@@ -28,6 +29,11 @@ class DriverStub:
28
29
  flwr.proto.driver_pb2.PullTaskResResponse]
29
30
  """Get task results"""
30
31
 
32
+ GetRun: grpc.UnaryUnaryMultiCallable[
33
+ flwr.proto.run_pb2.GetRunRequest,
34
+ flwr.proto.run_pb2.GetRunResponse]
35
+ """Get run details"""
36
+
31
37
 
32
38
  class DriverServicer(metaclass=abc.ABCMeta):
33
39
  @abc.abstractmethod
@@ -62,5 +68,13 @@ class DriverServicer(metaclass=abc.ABCMeta):
62
68
  """Get task results"""
63
69
  pass
64
70
 
71
+ @abc.abstractmethod
72
+ def GetRun(self,
73
+ request: flwr.proto.run_pb2.GetRunRequest,
74
+ context: grpc.ServicerContext,
75
+ ) -> flwr.proto.run_pb2.GetRunResponse:
76
+ """Get run details"""
77
+ pass
78
+
65
79
 
66
80
  def add_DriverServicer_to_server(servicer: DriverServicer, server: grpc.Server) -> None: ...
flwr/proto/fleet_pb2.py CHANGED
@@ -14,9 +14,10 @@ _sym_db = _symbol_database.Default()
14
14
 
15
15
  from flwr.proto import node_pb2 as flwr_dot_proto_dot_node__pb2
16
16
  from flwr.proto import task_pb2 as flwr_dot_proto_dot_task__pb2
17
+ from flwr.proto import run_pb2 as flwr_dot_proto_dot_run__pb2
17
18
 
18
19
 
19
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x16\x66lwr/proto/fleet.proto\x12\nflwr.proto\x1a\x15\x66lwr/proto/node.proto\x1a\x15\x66lwr/proto/task.proto\"*\n\x11\x43reateNodeRequest\x12\x15\n\rping_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\"D\n\x0bPingRequest\x12\x1e\n\x04node\x18\x01 \x01(\x0b\x32\x10.flwr.proto.Node\x12\x15\n\rping_interval\x18\x02 \x01(\x01\"\x1f\n\x0cPingResponse\x12\x0f\n\x07success\x18\x01 \x01(\x08\"F\n\x12PullTaskInsRequest\x12\x1e\n\x04node\x18\x01 \x01(\x0b\x32\x10.flwr.proto.Node\x12\x10\n\x08task_ids\x18\x02 \x03(\t\"k\n\x13PullTaskInsResponse\x12(\n\treconnect\x18\x01 \x01(\x0b\x32\x15.flwr.proto.Reconnect\x12*\n\rtask_ins_list\x18\x02 \x03(\x0b\x32\x13.flwr.proto.TaskIns\"@\n\x12PushTaskResRequest\x12*\n\rtask_res_list\x18\x01 \x03(\x0b\x32\x13.flwr.proto.TaskRes\"\xae\x01\n\x13PushTaskResResponse\x12(\n\treconnect\x18\x01 \x01(\x0b\x32\x15.flwr.proto.Reconnect\x12=\n\x07results\x18\x02 \x03(\x0b\x32,.flwr.proto.PushTaskResResponse.ResultsEntry\x1a.\n\x0cResultsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\r:\x02\x38\x01\":\n\x03Run\x12\x0e\n\x06run_id\x18\x01 \x01(\x12\x12\x0e\n\x06\x66\x61\x62_id\x18\x02 \x01(\t\x12\x13\n\x0b\x66\x61\x62_version\x18\x03 \x01(\t\"\x1f\n\rGetRunRequest\x12\x0e\n\x06run_id\x18\x01 \x01(\x12\".\n\x0eGetRunResponse\x12\x1c\n\x03run\x18\x01 \x01(\x0b\x32\x0f.flwr.proto.Run\"\x1e\n\tReconnect\x12\x11\n\treconnect\x18\x01 \x01(\x04\x32\xc9\x03\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;\n\x04Ping\x12\x17.flwr.proto.PingRequest\x1a\x18.flwr.proto.PingResponse\"\x00\x12P\n\x0bPullTaskIns\x12\x1e.flwr.proto.PullTaskInsRequest\x1a\x1f.flwr.proto.PullTaskInsResponse\"\x00\x12P\n\x0bPushTaskRes\x12\x1e.flwr.proto.PushTaskResRequest\x1a\x1f.flwr.proto.PushTaskResResponse\"\x00\x12\x41\n\x06GetRun\x12\x19.flwr.proto.GetRunRequest\x1a\x1a.flwr.proto.GetRunResponse\"\x00\x62\x06proto3')
20
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x16\x66lwr/proto/fleet.proto\x12\nflwr.proto\x1a\x15\x66lwr/proto/node.proto\x1a\x15\x66lwr/proto/task.proto\x1a\x14\x66lwr/proto/run.proto\"*\n\x11\x43reateNodeRequest\x12\x15\n\rping_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\"D\n\x0bPingRequest\x12\x1e\n\x04node\x18\x01 \x01(\x0b\x32\x10.flwr.proto.Node\x12\x15\n\rping_interval\x18\x02 \x01(\x01\"\x1f\n\x0cPingResponse\x12\x0f\n\x07success\x18\x01 \x01(\x08\"F\n\x12PullTaskInsRequest\x12\x1e\n\x04node\x18\x01 \x01(\x0b\x32\x10.flwr.proto.Node\x12\x10\n\x08task_ids\x18\x02 \x03(\t\"k\n\x13PullTaskInsResponse\x12(\n\treconnect\x18\x01 \x01(\x0b\x32\x15.flwr.proto.Reconnect\x12*\n\rtask_ins_list\x18\x02 \x03(\x0b\x32\x13.flwr.proto.TaskIns\"@\n\x12PushTaskResRequest\x12*\n\rtask_res_list\x18\x01 \x03(\x0b\x32\x13.flwr.proto.TaskRes\"\xae\x01\n\x13PushTaskResResponse\x12(\n\treconnect\x18\x01 \x01(\x0b\x32\x15.flwr.proto.Reconnect\x12=\n\x07results\x18\x02 \x03(\x0b\x32,.flwr.proto.PushTaskResResponse.ResultsEntry\x1a.\n\x0cResultsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\r:\x02\x38\x01\"\x1e\n\tReconnect\x12\x11\n\treconnect\x18\x01 \x01(\x04\x32\xc9\x03\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;\n\x04Ping\x12\x17.flwr.proto.PingRequest\x1a\x18.flwr.proto.PingResponse\"\x00\x12P\n\x0bPullTaskIns\x12\x1e.flwr.proto.PullTaskInsRequest\x1a\x1f.flwr.proto.PullTaskInsResponse\"\x00\x12P\n\x0bPushTaskRes\x12\x1e.flwr.proto.PushTaskResRequest\x1a\x1f.flwr.proto.PushTaskResResponse\"\x00\x12\x41\n\x06GetRun\x12\x19.flwr.proto.GetRunRequest\x1a\x1a.flwr.proto.GetRunResponse\"\x00\x62\x06proto3')
20
21
 
21
22
  _globals = globals()
22
23
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -25,36 +26,30 @@ if _descriptor._USE_C_DESCRIPTORS == False:
25
26
  DESCRIPTOR._options = None
26
27
  _globals['_PUSHTASKRESRESPONSE_RESULTSENTRY']._options = None
27
28
  _globals['_PUSHTASKRESRESPONSE_RESULTSENTRY']._serialized_options = b'8\001'
28
- _globals['_CREATENODEREQUEST']._serialized_start=84
29
- _globals['_CREATENODEREQUEST']._serialized_end=126
30
- _globals['_CREATENODERESPONSE']._serialized_start=128
31
- _globals['_CREATENODERESPONSE']._serialized_end=180
32
- _globals['_DELETENODEREQUEST']._serialized_start=182
33
- _globals['_DELETENODEREQUEST']._serialized_end=233
34
- _globals['_DELETENODERESPONSE']._serialized_start=235
35
- _globals['_DELETENODERESPONSE']._serialized_end=255
36
- _globals['_PINGREQUEST']._serialized_start=257
37
- _globals['_PINGREQUEST']._serialized_end=325
38
- _globals['_PINGRESPONSE']._serialized_start=327
39
- _globals['_PINGRESPONSE']._serialized_end=358
40
- _globals['_PULLTASKINSREQUEST']._serialized_start=360
41
- _globals['_PULLTASKINSREQUEST']._serialized_end=430
42
- _globals['_PULLTASKINSRESPONSE']._serialized_start=432
43
- _globals['_PULLTASKINSRESPONSE']._serialized_end=539
44
- _globals['_PUSHTASKRESREQUEST']._serialized_start=541
45
- _globals['_PUSHTASKRESREQUEST']._serialized_end=605
46
- _globals['_PUSHTASKRESRESPONSE']._serialized_start=608
47
- _globals['_PUSHTASKRESRESPONSE']._serialized_end=782
48
- _globals['_PUSHTASKRESRESPONSE_RESULTSENTRY']._serialized_start=736
49
- _globals['_PUSHTASKRESRESPONSE_RESULTSENTRY']._serialized_end=782
50
- _globals['_RUN']._serialized_start=784
51
- _globals['_RUN']._serialized_end=842
52
- _globals['_GETRUNREQUEST']._serialized_start=844
53
- _globals['_GETRUNREQUEST']._serialized_end=875
54
- _globals['_GETRUNRESPONSE']._serialized_start=877
55
- _globals['_GETRUNRESPONSE']._serialized_end=923
56
- _globals['_RECONNECT']._serialized_start=925
57
- _globals['_RECONNECT']._serialized_end=955
58
- _globals['_FLEET']._serialized_start=958
59
- _globals['_FLEET']._serialized_end=1415
29
+ _globals['_CREATENODEREQUEST']._serialized_start=106
30
+ _globals['_CREATENODEREQUEST']._serialized_end=148
31
+ _globals['_CREATENODERESPONSE']._serialized_start=150
32
+ _globals['_CREATENODERESPONSE']._serialized_end=202
33
+ _globals['_DELETENODEREQUEST']._serialized_start=204
34
+ _globals['_DELETENODEREQUEST']._serialized_end=255
35
+ _globals['_DELETENODERESPONSE']._serialized_start=257
36
+ _globals['_DELETENODERESPONSE']._serialized_end=277
37
+ _globals['_PINGREQUEST']._serialized_start=279
38
+ _globals['_PINGREQUEST']._serialized_end=347
39
+ _globals['_PINGRESPONSE']._serialized_start=349
40
+ _globals['_PINGRESPONSE']._serialized_end=380
41
+ _globals['_PULLTASKINSREQUEST']._serialized_start=382
42
+ _globals['_PULLTASKINSREQUEST']._serialized_end=452
43
+ _globals['_PULLTASKINSRESPONSE']._serialized_start=454
44
+ _globals['_PULLTASKINSRESPONSE']._serialized_end=561
45
+ _globals['_PUSHTASKRESREQUEST']._serialized_start=563
46
+ _globals['_PUSHTASKRESREQUEST']._serialized_end=627
47
+ _globals['_PUSHTASKRESRESPONSE']._serialized_start=630
48
+ _globals['_PUSHTASKRESRESPONSE']._serialized_end=804
49
+ _globals['_PUSHTASKRESRESPONSE_RESULTSENTRY']._serialized_start=758
50
+ _globals['_PUSHTASKRESRESPONSE_RESULTSENTRY']._serialized_end=804
51
+ _globals['_RECONNECT']._serialized_start=806
52
+ _globals['_RECONNECT']._serialized_end=836
53
+ _globals['_FLEET']._serialized_start=839
54
+ _globals['_FLEET']._serialized_end=1296
60
55
  # @@protoc_insertion_point(module_scope)
flwr/proto/fleet_pb2.pyi CHANGED
@@ -164,48 +164,6 @@ class PushTaskResResponse(google.protobuf.message.Message):
164
164
  def ClearField(self, field_name: typing_extensions.Literal["reconnect",b"reconnect","results",b"results"]) -> None: ...
165
165
  global___PushTaskResResponse = PushTaskResResponse
166
166
 
167
- class Run(google.protobuf.message.Message):
168
- """GetRun messages"""
169
- DESCRIPTOR: google.protobuf.descriptor.Descriptor
170
- RUN_ID_FIELD_NUMBER: builtins.int
171
- FAB_ID_FIELD_NUMBER: builtins.int
172
- FAB_VERSION_FIELD_NUMBER: builtins.int
173
- run_id: builtins.int
174
- fab_id: typing.Text
175
- fab_version: typing.Text
176
- def __init__(self,
177
- *,
178
- run_id: builtins.int = ...,
179
- fab_id: typing.Text = ...,
180
- fab_version: typing.Text = ...,
181
- ) -> None: ...
182
- def ClearField(self, field_name: typing_extensions.Literal["fab_id",b"fab_id","fab_version",b"fab_version","run_id",b"run_id"]) -> None: ...
183
- global___Run = Run
184
-
185
- class GetRunRequest(google.protobuf.message.Message):
186
- DESCRIPTOR: google.protobuf.descriptor.Descriptor
187
- RUN_ID_FIELD_NUMBER: builtins.int
188
- run_id: builtins.int
189
- def __init__(self,
190
- *,
191
- run_id: builtins.int = ...,
192
- ) -> None: ...
193
- def ClearField(self, field_name: typing_extensions.Literal["run_id",b"run_id"]) -> None: ...
194
- global___GetRunRequest = GetRunRequest
195
-
196
- class GetRunResponse(google.protobuf.message.Message):
197
- DESCRIPTOR: google.protobuf.descriptor.Descriptor
198
- RUN_FIELD_NUMBER: builtins.int
199
- @property
200
- def run(self) -> global___Run: ...
201
- def __init__(self,
202
- *,
203
- run: typing.Optional[global___Run] = ...,
204
- ) -> None: ...
205
- def HasField(self, field_name: typing_extensions.Literal["run",b"run"]) -> builtins.bool: ...
206
- def ClearField(self, field_name: typing_extensions.Literal["run",b"run"]) -> None: ...
207
- global___GetRunResponse = GetRunResponse
208
-
209
167
  class Reconnect(google.protobuf.message.Message):
210
168
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
211
169
  RECONNECT_FIELD_NUMBER: builtins.int
@@ -3,6 +3,7 @@
3
3
  import grpc
4
4
 
5
5
  from flwr.proto import fleet_pb2 as flwr_dot_proto_dot_fleet__pb2
6
+ from flwr.proto import run_pb2 as flwr_dot_proto_dot_run__pb2
6
7
 
7
8
 
8
9
  class FleetStub(object):
@@ -41,8 +42,8 @@ class FleetStub(object):
41
42
  )
42
43
  self.GetRun = channel.unary_unary(
43
44
  '/flwr.proto.Fleet/GetRun',
44
- request_serializer=flwr_dot_proto_dot_fleet__pb2.GetRunRequest.SerializeToString,
45
- response_deserializer=flwr_dot_proto_dot_fleet__pb2.GetRunResponse.FromString,
45
+ request_serializer=flwr_dot_proto_dot_run__pb2.GetRunRequest.SerializeToString,
46
+ response_deserializer=flwr_dot_proto_dot_run__pb2.GetRunResponse.FromString,
46
47
  )
47
48
 
48
49
 
@@ -121,8 +122,8 @@ def add_FleetServicer_to_server(servicer, server):
121
122
  ),
122
123
  'GetRun': grpc.unary_unary_rpc_method_handler(
123
124
  servicer.GetRun,
124
- request_deserializer=flwr_dot_proto_dot_fleet__pb2.GetRunRequest.FromString,
125
- response_serializer=flwr_dot_proto_dot_fleet__pb2.GetRunResponse.SerializeToString,
125
+ request_deserializer=flwr_dot_proto_dot_run__pb2.GetRunRequest.FromString,
126
+ response_serializer=flwr_dot_proto_dot_run__pb2.GetRunResponse.SerializeToString,
126
127
  ),
127
128
  }
128
129
  generic_handler = grpc.method_handlers_generic_handler(
@@ -231,7 +232,7 @@ class Fleet(object):
231
232
  timeout=None,
232
233
  metadata=None):
233
234
  return grpc.experimental.unary_unary(request, target, '/flwr.proto.Fleet/GetRun',
234
- flwr_dot_proto_dot_fleet__pb2.GetRunRequest.SerializeToString,
235
- flwr_dot_proto_dot_fleet__pb2.GetRunResponse.FromString,
235
+ flwr_dot_proto_dot_run__pb2.GetRunRequest.SerializeToString,
236
+ flwr_dot_proto_dot_run__pb2.GetRunResponse.FromString,
236
237
  options, channel_credentials,
237
238
  insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
@@ -4,6 +4,7 @@ isort:skip_file
4
4
  """
5
5
  import abc
6
6
  import flwr.proto.fleet_pb2
7
+ import flwr.proto.run_pb2
7
8
  import grpc
8
9
 
9
10
  class FleetStub:
@@ -37,8 +38,8 @@ class FleetStub:
37
38
  """
38
39
 
39
40
  GetRun: grpc.UnaryUnaryMultiCallable[
40
- flwr.proto.fleet_pb2.GetRunRequest,
41
- flwr.proto.fleet_pb2.GetRunResponse]
41
+ flwr.proto.run_pb2.GetRunRequest,
42
+ flwr.proto.run_pb2.GetRunResponse]
42
43
 
43
44
 
44
45
  class FleetServicer(metaclass=abc.ABCMeta):
@@ -84,9 +85,9 @@ class FleetServicer(metaclass=abc.ABCMeta):
84
85
 
85
86
  @abc.abstractmethod
86
87
  def GetRun(self,
87
- request: flwr.proto.fleet_pb2.GetRunRequest,
88
+ request: flwr.proto.run_pb2.GetRunRequest,
88
89
  context: grpc.ServicerContext,
89
- ) -> flwr.proto.fleet_pb2.GetRunResponse: ...
90
+ ) -> flwr.proto.run_pb2.GetRunResponse: ...
90
91
 
91
92
 
92
93
  def add_FleetServicer_to_server(servicer: FleetServicer, server: grpc.Server) -> None: ...
@@ -0,0 +1,32 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # source: flwr/proto/grpcadapter.proto
4
+ # Protobuf Python Version: 4.25.0
5
+ """Generated protocol buffer code."""
6
+ from google.protobuf import descriptor as _descriptor
7
+ from google.protobuf import descriptor_pool as _descriptor_pool
8
+ from google.protobuf import symbol_database as _symbol_database
9
+ from google.protobuf.internal import builder as _builder
10
+ # @@protoc_insertion_point(imports)
11
+
12
+ _sym_db = _symbol_database.Default()
13
+
14
+
15
+
16
+
17
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1c\x66lwr/proto/grpcadapter.proto\x12\nflwr.proto\"\xba\x01\n\x10MessageContainer\x12<\n\x08metadata\x18\x01 \x03(\x0b\x32*.flwr.proto.MessageContainer.MetadataEntry\x12\x19\n\x11grpc_message_name\x18\x02 \x01(\t\x12\x1c\n\x14grpc_message_content\x18\x03 \x01(\x0c\x1a/\n\rMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x32Z\n\x0bGrpcAdapter\x12K\n\x0bSendReceive\x12\x1c.flwr.proto.MessageContainer\x1a\x1c.flwr.proto.MessageContainer\"\x00\x62\x06proto3')
18
+
19
+ _globals = globals()
20
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
21
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'flwr.proto.grpcadapter_pb2', _globals)
22
+ if _descriptor._USE_C_DESCRIPTORS == False:
23
+ DESCRIPTOR._options = None
24
+ _globals['_MESSAGECONTAINER_METADATAENTRY']._options = None
25
+ _globals['_MESSAGECONTAINER_METADATAENTRY']._serialized_options = b'8\001'
26
+ _globals['_MESSAGECONTAINER']._serialized_start=45
27
+ _globals['_MESSAGECONTAINER']._serialized_end=231
28
+ _globals['_MESSAGECONTAINER_METADATAENTRY']._serialized_start=184
29
+ _globals['_MESSAGECONTAINER_METADATAENTRY']._serialized_end=231
30
+ _globals['_GRPCADAPTER']._serialized_start=233
31
+ _globals['_GRPCADAPTER']._serialized_end=323
32
+ # @@protoc_insertion_point(module_scope)
@@ -0,0 +1,43 @@
1
+ """
2
+ @generated by mypy-protobuf. Do not edit manually!
3
+ isort:skip_file
4
+ """
5
+ import builtins
6
+ import google.protobuf.descriptor
7
+ import google.protobuf.internal.containers
8
+ import google.protobuf.message
9
+ import typing
10
+ import typing_extensions
11
+
12
+ DESCRIPTOR: google.protobuf.descriptor.FileDescriptor
13
+
14
+ class MessageContainer(google.protobuf.message.Message):
15
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
16
+ class MetadataEntry(google.protobuf.message.Message):
17
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
18
+ KEY_FIELD_NUMBER: builtins.int
19
+ VALUE_FIELD_NUMBER: builtins.int
20
+ key: typing.Text
21
+ value: typing.Text
22
+ def __init__(self,
23
+ *,
24
+ key: typing.Text = ...,
25
+ value: typing.Text = ...,
26
+ ) -> None: ...
27
+ def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ...
28
+
29
+ METADATA_FIELD_NUMBER: builtins.int
30
+ GRPC_MESSAGE_NAME_FIELD_NUMBER: builtins.int
31
+ GRPC_MESSAGE_CONTENT_FIELD_NUMBER: builtins.int
32
+ @property
33
+ def metadata(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: ...
34
+ grpc_message_name: typing.Text
35
+ grpc_message_content: builtins.bytes
36
+ def __init__(self,
37
+ *,
38
+ metadata: typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ...,
39
+ grpc_message_name: typing.Text = ...,
40
+ grpc_message_content: builtins.bytes = ...,
41
+ ) -> None: ...
42
+ def ClearField(self, field_name: typing_extensions.Literal["grpc_message_content",b"grpc_message_content","grpc_message_name",b"grpc_message_name","metadata",b"metadata"]) -> None: ...
43
+ global___MessageContainer = MessageContainer
@@ -0,0 +1,66 @@
1
+ # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
2
+ """Client and server classes corresponding to protobuf-defined services."""
3
+ import grpc
4
+
5
+ from flwr.proto import grpcadapter_pb2 as flwr_dot_proto_dot_grpcadapter__pb2
6
+
7
+
8
+ class GrpcAdapterStub(object):
9
+ """Missing associated documentation comment in .proto file."""
10
+
11
+ def __init__(self, channel):
12
+ """Constructor.
13
+
14
+ Args:
15
+ channel: A grpc.Channel.
16
+ """
17
+ self.SendReceive = channel.unary_unary(
18
+ '/flwr.proto.GrpcAdapter/SendReceive',
19
+ request_serializer=flwr_dot_proto_dot_grpcadapter__pb2.MessageContainer.SerializeToString,
20
+ response_deserializer=flwr_dot_proto_dot_grpcadapter__pb2.MessageContainer.FromString,
21
+ )
22
+
23
+
24
+ class GrpcAdapterServicer(object):
25
+ """Missing associated documentation comment in .proto file."""
26
+
27
+ def SendReceive(self, request, context):
28
+ """Missing associated documentation comment in .proto file."""
29
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
30
+ context.set_details('Method not implemented!')
31
+ raise NotImplementedError('Method not implemented!')
32
+
33
+
34
+ def add_GrpcAdapterServicer_to_server(servicer, server):
35
+ rpc_method_handlers = {
36
+ 'SendReceive': grpc.unary_unary_rpc_method_handler(
37
+ servicer.SendReceive,
38
+ request_deserializer=flwr_dot_proto_dot_grpcadapter__pb2.MessageContainer.FromString,
39
+ response_serializer=flwr_dot_proto_dot_grpcadapter__pb2.MessageContainer.SerializeToString,
40
+ ),
41
+ }
42
+ generic_handler = grpc.method_handlers_generic_handler(
43
+ 'flwr.proto.GrpcAdapter', rpc_method_handlers)
44
+ server.add_generic_rpc_handlers((generic_handler,))
45
+
46
+
47
+ # This class is part of an EXPERIMENTAL API.
48
+ class GrpcAdapter(object):
49
+ """Missing associated documentation comment in .proto file."""
50
+
51
+ @staticmethod
52
+ def SendReceive(request,
53
+ target,
54
+ options=(),
55
+ channel_credentials=None,
56
+ call_credentials=None,
57
+ insecure=False,
58
+ compression=None,
59
+ wait_for_ready=None,
60
+ timeout=None,
61
+ metadata=None):
62
+ return grpc.experimental.unary_unary(request, target, '/flwr.proto.GrpcAdapter/SendReceive',
63
+ flwr_dot_proto_dot_grpcadapter__pb2.MessageContainer.SerializeToString,
64
+ flwr_dot_proto_dot_grpcadapter__pb2.MessageContainer.FromString,
65
+ options, channel_credentials,
66
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
@@ -0,0 +1,24 @@
1
+ """
2
+ @generated by mypy-protobuf. Do not edit manually!
3
+ isort:skip_file
4
+ """
5
+ import abc
6
+ import flwr.proto.grpcadapter_pb2
7
+ import grpc
8
+
9
+ class GrpcAdapterStub:
10
+ def __init__(self, channel: grpc.Channel) -> None: ...
11
+ SendReceive: grpc.UnaryUnaryMultiCallable[
12
+ flwr.proto.grpcadapter_pb2.MessageContainer,
13
+ flwr.proto.grpcadapter_pb2.MessageContainer]
14
+
15
+
16
+ class GrpcAdapterServicer(metaclass=abc.ABCMeta):
17
+ @abc.abstractmethod
18
+ def SendReceive(self,
19
+ request: flwr.proto.grpcadapter_pb2.MessageContainer,
20
+ context: grpc.ServicerContext,
21
+ ) -> flwr.proto.grpcadapter_pb2.MessageContainer: ...
22
+
23
+
24
+ def add_GrpcAdapterServicer_to_server(servicer: GrpcAdapterServicer, server: grpc.Server) -> None: ...
flwr/proto/run_pb2.py ADDED
@@ -0,0 +1,30 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # source: flwr/proto/run.proto
4
+ # Protobuf Python Version: 4.25.0
5
+ """Generated protocol buffer code."""
6
+ from google.protobuf import descriptor as _descriptor
7
+ from google.protobuf import descriptor_pool as _descriptor_pool
8
+ from google.protobuf import symbol_database as _symbol_database
9
+ from google.protobuf.internal import builder as _builder
10
+ # @@protoc_insertion_point(imports)
11
+
12
+ _sym_db = _symbol_database.Default()
13
+
14
+
15
+
16
+
17
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x14\x66lwr/proto/run.proto\x12\nflwr.proto\":\n\x03Run\x12\x0e\n\x06run_id\x18\x01 \x01(\x12\x12\x0e\n\x06\x66\x61\x62_id\x18\x02 \x01(\t\x12\x13\n\x0b\x66\x61\x62_version\x18\x03 \x01(\t\"\x1f\n\rGetRunRequest\x12\x0e\n\x06run_id\x18\x01 \x01(\x12\".\n\x0eGetRunResponse\x12\x1c\n\x03run\x18\x01 \x01(\x0b\x32\x0f.flwr.proto.Runb\x06proto3')
18
+
19
+ _globals = globals()
20
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
21
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'flwr.proto.run_pb2', _globals)
22
+ if _descriptor._USE_C_DESCRIPTORS == False:
23
+ DESCRIPTOR._options = None
24
+ _globals['_RUN']._serialized_start=36
25
+ _globals['_RUN']._serialized_end=94
26
+ _globals['_GETRUNREQUEST']._serialized_start=96
27
+ _globals['_GETRUNREQUEST']._serialized_end=127
28
+ _globals['_GETRUNRESPONSE']._serialized_start=129
29
+ _globals['_GETRUNRESPONSE']._serialized_end=175
30
+ # @@protoc_insertion_point(module_scope)
flwr/proto/run_pb2.pyi ADDED
@@ -0,0 +1,52 @@
1
+ """
2
+ @generated by mypy-protobuf. Do not edit manually!
3
+ isort:skip_file
4
+ """
5
+ import builtins
6
+ import google.protobuf.descriptor
7
+ import google.protobuf.message
8
+ import typing
9
+ import typing_extensions
10
+
11
+ DESCRIPTOR: google.protobuf.descriptor.FileDescriptor
12
+
13
+ class Run(google.protobuf.message.Message):
14
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
15
+ RUN_ID_FIELD_NUMBER: builtins.int
16
+ FAB_ID_FIELD_NUMBER: builtins.int
17
+ FAB_VERSION_FIELD_NUMBER: builtins.int
18
+ run_id: builtins.int
19
+ fab_id: typing.Text
20
+ fab_version: typing.Text
21
+ def __init__(self,
22
+ *,
23
+ run_id: builtins.int = ...,
24
+ fab_id: typing.Text = ...,
25
+ fab_version: typing.Text = ...,
26
+ ) -> None: ...
27
+ def ClearField(self, field_name: typing_extensions.Literal["fab_id",b"fab_id","fab_version",b"fab_version","run_id",b"run_id"]) -> None: ...
28
+ global___Run = Run
29
+
30
+ class GetRunRequest(google.protobuf.message.Message):
31
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
32
+ RUN_ID_FIELD_NUMBER: builtins.int
33
+ run_id: builtins.int
34
+ def __init__(self,
35
+ *,
36
+ run_id: builtins.int = ...,
37
+ ) -> None: ...
38
+ def ClearField(self, field_name: typing_extensions.Literal["run_id",b"run_id"]) -> None: ...
39
+ global___GetRunRequest = GetRunRequest
40
+
41
+ class GetRunResponse(google.protobuf.message.Message):
42
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
43
+ RUN_FIELD_NUMBER: builtins.int
44
+ @property
45
+ def run(self) -> global___Run: ...
46
+ def __init__(self,
47
+ *,
48
+ run: typing.Optional[global___Run] = ...,
49
+ ) -> None: ...
50
+ def HasField(self, field_name: typing_extensions.Literal["run",b"run"]) -> builtins.bool: ...
51
+ def ClearField(self, field_name: typing_extensions.Literal["run",b"run"]) -> None: ...
52
+ global___GetRunResponse = GetRunResponse
@@ -0,0 +1,4 @@
1
+ # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
2
+ """Client and server classes corresponding to protobuf-defined services."""
3
+ import grpc
4
+
@@ -0,0 +1,4 @@
1
+ """
2
+ @generated by mypy-protobuf. Do not edit manually!
3
+ isort:skip_file
4
+ """
flwr/server/__init__.py CHANGED
@@ -17,8 +17,6 @@
17
17
 
18
18
  from . import strategy
19
19
  from . import workflow as workflow
20
- from .app import run_driver_api as run_driver_api
21
- from .app import run_fleet_api as run_fleet_api
22
20
  from .app import run_superlink as run_superlink
23
21
  from .app import start_server as start_server
24
22
  from .client_manager import ClientManager as ClientManager
@@ -36,8 +34,6 @@ __all__ = [
36
34
  "Driver",
37
35
  "History",
38
36
  "LegacyContext",
39
- "run_driver_api",
40
- "run_fleet_api",
41
37
  "run_server_app",
42
38
  "run_superlink",
43
39
  "Server",