flwr 1.19.0__py3-none-any.whl → 1.21.0__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 (167) hide show
  1. flwr/__init__.py +4 -1
  2. flwr/app/__init__.py +28 -0
  3. flwr/app/exception.py +31 -0
  4. flwr/cli/auth_plugin/oidc_cli_plugin.py +4 -4
  5. flwr/cli/build.py +15 -5
  6. flwr/cli/cli_user_auth_interceptor.py +1 -1
  7. flwr/cli/config_utils.py +3 -3
  8. flwr/cli/constant.py +25 -8
  9. flwr/cli/log.py +9 -9
  10. flwr/cli/login/login.py +3 -3
  11. flwr/cli/ls.py +5 -5
  12. flwr/cli/new/new.py +23 -4
  13. flwr/cli/new/templates/app/README.flowertune.md.tpl +2 -0
  14. flwr/cli/new/templates/app/README.md.tpl +5 -0
  15. flwr/cli/new/templates/app/code/__init__.pytorch_msg_api.py.tpl +1 -0
  16. flwr/cli/new/templates/app/code/client.pytorch_msg_api.py.tpl +80 -0
  17. flwr/cli/new/templates/app/code/server.pytorch_msg_api.py.tpl +41 -0
  18. flwr/cli/new/templates/app/code/task.pytorch_msg_api.py.tpl +98 -0
  19. flwr/cli/new/templates/app/pyproject.baseline.toml.tpl +14 -3
  20. flwr/cli/new/templates/app/pyproject.flowertune.toml.tpl +13 -1
  21. flwr/cli/new/templates/app/pyproject.huggingface.toml.tpl +21 -2
  22. flwr/cli/new/templates/app/pyproject.jax.toml.tpl +18 -1
  23. flwr/cli/new/templates/app/pyproject.mlx.toml.tpl +19 -2
  24. flwr/cli/new/templates/app/pyproject.numpy.toml.tpl +18 -1
  25. flwr/cli/new/templates/app/pyproject.pytorch.toml.tpl +20 -3
  26. flwr/cli/new/templates/app/pyproject.pytorch_msg_api.toml.tpl +53 -0
  27. flwr/cli/new/templates/app/pyproject.sklearn.toml.tpl +18 -1
  28. flwr/cli/new/templates/app/pyproject.tensorflow.toml.tpl +18 -1
  29. flwr/cli/run/run.py +53 -50
  30. flwr/cli/stop.py +7 -4
  31. flwr/cli/utils.py +29 -11
  32. flwr/client/grpc_adapter_client/connection.py +11 -4
  33. flwr/client/grpc_rere_client/connection.py +93 -129
  34. flwr/client/rest_client/connection.py +134 -164
  35. flwr/clientapp/__init__.py +10 -0
  36. flwr/clientapp/mod/__init__.py +26 -0
  37. flwr/clientapp/mod/centraldp_mods.py +132 -0
  38. flwr/common/args.py +20 -6
  39. flwr/common/auth_plugin/__init__.py +4 -4
  40. flwr/common/auth_plugin/auth_plugin.py +7 -7
  41. flwr/common/constant.py +26 -5
  42. flwr/common/event_log_plugin/event_log_plugin.py +1 -1
  43. flwr/common/exit/__init__.py +4 -0
  44. flwr/common/exit/exit.py +8 -1
  45. flwr/common/exit/exit_code.py +42 -8
  46. flwr/common/exit/exit_handler.py +62 -0
  47. flwr/common/{exit_handlers.py → exit/signal_handler.py} +20 -37
  48. flwr/common/grpc.py +1 -1
  49. flwr/common/{inflatable_grpc_utils.py → inflatable_protobuf_utils.py} +52 -10
  50. flwr/common/inflatable_utils.py +191 -24
  51. flwr/common/logger.py +1 -1
  52. flwr/common/record/array.py +101 -22
  53. flwr/common/record/arraychunk.py +59 -0
  54. flwr/common/retry_invoker.py +30 -11
  55. flwr/common/serde.py +0 -28
  56. flwr/common/telemetry.py +4 -0
  57. flwr/compat/client/app.py +14 -31
  58. flwr/compat/server/app.py +2 -2
  59. flwr/proto/appio_pb2.py +51 -0
  60. flwr/proto/appio_pb2.pyi +195 -0
  61. flwr/proto/appio_pb2_grpc.py +4 -0
  62. flwr/proto/appio_pb2_grpc.pyi +4 -0
  63. flwr/proto/clientappio_pb2.py +4 -19
  64. flwr/proto/clientappio_pb2.pyi +0 -125
  65. flwr/proto/clientappio_pb2_grpc.py +269 -29
  66. flwr/proto/clientappio_pb2_grpc.pyi +114 -21
  67. flwr/proto/control_pb2.py +62 -0
  68. flwr/proto/{exec_pb2_grpc.py → control_pb2_grpc.py} +54 -54
  69. flwr/proto/{exec_pb2_grpc.pyi → control_pb2_grpc.pyi} +28 -28
  70. flwr/proto/fleet_pb2.py +12 -20
  71. flwr/proto/fleet_pb2.pyi +6 -36
  72. flwr/proto/serverappio_pb2.py +8 -31
  73. flwr/proto/serverappio_pb2.pyi +0 -152
  74. flwr/proto/serverappio_pb2_grpc.py +107 -38
  75. flwr/proto/serverappio_pb2_grpc.pyi +47 -20
  76. flwr/proto/simulationio_pb2.py +4 -11
  77. flwr/proto/simulationio_pb2.pyi +0 -58
  78. flwr/proto/simulationio_pb2_grpc.py +129 -27
  79. flwr/proto/simulationio_pb2_grpc.pyi +52 -13
  80. flwr/server/app.py +130 -153
  81. flwr/server/fleet_event_log_interceptor.py +4 -0
  82. flwr/server/grid/grpc_grid.py +94 -54
  83. flwr/server/grid/inmemory_grid.py +1 -0
  84. flwr/server/serverapp/app.py +165 -144
  85. flwr/server/superlink/fleet/grpc_adapter/grpc_adapter_servicer.py +8 -0
  86. flwr/server/superlink/fleet/grpc_rere/fleet_servicer.py +1 -1
  87. flwr/server/superlink/fleet/grpc_rere/server_interceptor.py +2 -5
  88. flwr/server/superlink/fleet/message_handler/message_handler.py +10 -16
  89. flwr/server/superlink/fleet/rest_rere/rest_api.py +1 -2
  90. flwr/server/superlink/fleet/vce/backend/raybackend.py +3 -1
  91. flwr/server/superlink/fleet/vce/vce_api.py +6 -6
  92. flwr/server/superlink/linkstate/in_memory_linkstate.py +34 -0
  93. flwr/server/superlink/linkstate/linkstate.py +2 -1
  94. flwr/server/superlink/linkstate/sqlite_linkstate.py +45 -0
  95. flwr/server/superlink/serverappio/serverappio_grpc.py +2 -2
  96. flwr/server/superlink/serverappio/serverappio_servicer.py +95 -48
  97. flwr/server/superlink/simulation/simulationio_grpc.py +1 -1
  98. flwr/server/superlink/simulation/simulationio_servicer.py +98 -22
  99. flwr/server/superlink/utils.py +0 -35
  100. flwr/serverapp/__init__.py +12 -0
  101. flwr/serverapp/dp_fixed_clipping.py +352 -0
  102. flwr/serverapp/exception.py +38 -0
  103. flwr/serverapp/strategy/__init__.py +38 -0
  104. flwr/serverapp/strategy/dp_fixed_clipping.py +352 -0
  105. flwr/serverapp/strategy/fedadagrad.py +162 -0
  106. flwr/serverapp/strategy/fedadam.py +181 -0
  107. flwr/serverapp/strategy/fedavg.py +295 -0
  108. flwr/serverapp/strategy/fedopt.py +218 -0
  109. flwr/serverapp/strategy/fedyogi.py +173 -0
  110. flwr/serverapp/strategy/result.py +105 -0
  111. flwr/serverapp/strategy/strategy.py +285 -0
  112. flwr/serverapp/strategy/strategy_utils.py +251 -0
  113. flwr/serverapp/strategy/strategy_utils_tests.py +304 -0
  114. flwr/simulation/app.py +159 -154
  115. flwr/simulation/run_simulation.py +17 -0
  116. flwr/supercore/app_utils.py +58 -0
  117. flwr/supercore/cli/__init__.py +22 -0
  118. flwr/supercore/cli/flower_superexec.py +141 -0
  119. flwr/supercore/corestate/__init__.py +22 -0
  120. flwr/supercore/corestate/corestate.py +81 -0
  121. flwr/{server/superlink → supercore}/ffs/disk_ffs.py +1 -1
  122. flwr/supercore/grpc_health/__init__.py +25 -0
  123. flwr/supercore/grpc_health/health_server.py +53 -0
  124. flwr/supercore/grpc_health/simple_health_servicer.py +38 -0
  125. flwr/supercore/license_plugin/__init__.py +22 -0
  126. flwr/supercore/license_plugin/license_plugin.py +26 -0
  127. flwr/supercore/object_store/in_memory_object_store.py +31 -31
  128. flwr/supercore/object_store/object_store.py +20 -42
  129. flwr/supercore/object_store/utils.py +43 -0
  130. flwr/{superexec → supercore/superexec}/__init__.py +1 -1
  131. flwr/supercore/superexec/plugin/__init__.py +28 -0
  132. flwr/supercore/superexec/plugin/base_exec_plugin.py +53 -0
  133. flwr/supercore/superexec/plugin/clientapp_exec_plugin.py +28 -0
  134. flwr/supercore/superexec/plugin/exec_plugin.py +71 -0
  135. flwr/supercore/superexec/plugin/serverapp_exec_plugin.py +28 -0
  136. flwr/supercore/superexec/plugin/simulation_exec_plugin.py +28 -0
  137. flwr/supercore/superexec/run_superexec.py +185 -0
  138. flwr/supercore/utils.py +32 -0
  139. flwr/superlink/servicer/__init__.py +15 -0
  140. flwr/superlink/servicer/control/__init__.py +22 -0
  141. flwr/{superexec/exec_event_log_interceptor.py → superlink/servicer/control/control_event_log_interceptor.py} +9 -5
  142. flwr/{superexec/exec_grpc.py → superlink/servicer/control/control_grpc.py} +39 -28
  143. flwr/superlink/servicer/control/control_license_interceptor.py +82 -0
  144. flwr/{superexec/exec_servicer.py → superlink/servicer/control/control_servicer.py} +79 -31
  145. flwr/{superexec/exec_user_auth_interceptor.py → superlink/servicer/control/control_user_auth_interceptor.py} +18 -10
  146. flwr/supernode/cli/flower_supernode.py +3 -7
  147. flwr/supernode/cli/flwr_clientapp.py +20 -16
  148. flwr/supernode/nodestate/in_memory_nodestate.py +13 -4
  149. flwr/supernode/nodestate/nodestate.py +3 -44
  150. flwr/supernode/runtime/run_clientapp.py +129 -115
  151. flwr/supernode/servicer/clientappio/__init__.py +1 -3
  152. flwr/supernode/servicer/clientappio/clientappio_servicer.py +217 -165
  153. flwr/supernode/start_client_internal.py +205 -148
  154. {flwr-1.19.0.dist-info → flwr-1.21.0.dist-info}/METADATA +5 -3
  155. {flwr-1.19.0.dist-info → flwr-1.21.0.dist-info}/RECORD +161 -117
  156. {flwr-1.19.0.dist-info → flwr-1.21.0.dist-info}/entry_points.txt +1 -0
  157. flwr/common/inflatable_rest_utils.py +0 -99
  158. flwr/proto/exec_pb2.py +0 -62
  159. flwr/superexec/app.py +0 -45
  160. flwr/superexec/deployment.py +0 -192
  161. flwr/superexec/executor.py +0 -100
  162. flwr/superexec/simulation.py +0 -130
  163. /flwr/proto/{exec_pb2.pyi → control_pb2.pyi} +0 -0
  164. /flwr/{server/superlink → supercore}/ffs/__init__.py +0 -0
  165. /flwr/{server/superlink → supercore}/ffs/ffs.py +0 -0
  166. /flwr/{server/superlink → supercore}/ffs/ffs_factory.py +0 -0
  167. {flwr-1.19.0.dist-info → flwr-1.21.0.dist-info}/WHEEL +0 -0
@@ -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
@@ -19,6 +20,16 @@ class ServerAppIoStub(object):
19
20
  Args:
20
21
  channel: A grpc.Channel.
21
22
  """
23
+ self.ListAppsToLaunch = channel.unary_unary(
24
+ '/flwr.proto.ServerAppIo/ListAppsToLaunch',
25
+ request_serializer=flwr_dot_proto_dot_appio__pb2.ListAppsToLaunchRequest.SerializeToString,
26
+ response_deserializer=flwr_dot_proto_dot_appio__pb2.ListAppsToLaunchResponse.FromString,
27
+ )
28
+ self.RequestToken = channel.unary_unary(
29
+ '/flwr.proto.ServerAppIo/RequestToken',
30
+ request_serializer=flwr_dot_proto_dot_appio__pb2.RequestTokenRequest.SerializeToString,
31
+ response_deserializer=flwr_dot_proto_dot_appio__pb2.RequestTokenResponse.FromString,
32
+ )
22
33
  self.GetNodes = channel.unary_unary(
23
34
  '/flwr.proto.ServerAppIo/GetNodes',
24
35
  request_serializer=flwr_dot_proto_dot_serverappio__pb2.GetNodesRequest.SerializeToString,
@@ -26,13 +37,13 @@ class ServerAppIoStub(object):
26
37
  )
27
38
  self.PushMessages = channel.unary_unary(
28
39
  '/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,
40
+ request_serializer=flwr_dot_proto_dot_appio__pb2.PushAppMessagesRequest.SerializeToString,
41
+ response_deserializer=flwr_dot_proto_dot_appio__pb2.PushAppMessagesResponse.FromString,
31
42
  )
32
43
  self.PullMessages = channel.unary_unary(
33
44
  '/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,
45
+ request_serializer=flwr_dot_proto_dot_appio__pb2.PullAppMessagesRequest.SerializeToString,
46
+ response_deserializer=flwr_dot_proto_dot_appio__pb2.PullAppMessagesResponse.FromString,
36
47
  )
37
48
  self.GetRun = channel.unary_unary(
38
49
  '/flwr.proto.ServerAppIo/GetRun',
@@ -44,15 +55,15 @@ class ServerAppIoStub(object):
44
55
  request_serializer=flwr_dot_proto_dot_fab__pb2.GetFabRequest.SerializeToString,
45
56
  response_deserializer=flwr_dot_proto_dot_fab__pb2.GetFabResponse.FromString,
46
57
  )
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,
58
+ self.PullAppInputs = channel.unary_unary(
59
+ '/flwr.proto.ServerAppIo/PullAppInputs',
60
+ request_serializer=flwr_dot_proto_dot_appio__pb2.PullAppInputsRequest.SerializeToString,
61
+ response_deserializer=flwr_dot_proto_dot_appio__pb2.PullAppInputsResponse.FromString,
51
62
  )
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,
63
+ self.PushAppOutputs = channel.unary_unary(
64
+ '/flwr.proto.ServerAppIo/PushAppOutputs',
65
+ request_serializer=flwr_dot_proto_dot_appio__pb2.PushAppOutputsRequest.SerializeToString,
66
+ response_deserializer=flwr_dot_proto_dot_appio__pb2.PushAppOutputsResponse.FromString,
56
67
  )
57
68
  self.UpdateRunStatus = channel.unary_unary(
58
69
  '/flwr.proto.ServerAppIo/UpdateRunStatus',
@@ -94,6 +105,20 @@ class ServerAppIoStub(object):
94
105
  class ServerAppIoServicer(object):
95
106
  """Missing associated documentation comment in .proto file."""
96
107
 
108
+ def ListAppsToLaunch(self, request, context):
109
+ """List runs to launch
110
+ """
111
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
112
+ context.set_details('Method not implemented!')
113
+ raise NotImplementedError('Method not implemented!')
114
+
115
+ def RequestToken(self, request, context):
116
+ """Request token for a run
117
+ """
118
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
119
+ context.set_details('Method not implemented!')
120
+ raise NotImplementedError('Method not implemented!')
121
+
97
122
  def GetNodes(self, request, context):
98
123
  """Return a set of nodes
99
124
  """
@@ -129,14 +154,14 @@ class ServerAppIoServicer(object):
129
154
  context.set_details('Method not implemented!')
130
155
  raise NotImplementedError('Method not implemented!')
131
156
 
132
- def PullServerAppInputs(self, request, context):
157
+ def PullAppInputs(self, request, context):
133
158
  """Pull ServerApp inputs
134
159
  """
135
160
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
136
161
  context.set_details('Method not implemented!')
137
162
  raise NotImplementedError('Method not implemented!')
138
163
 
139
- def PushServerAppOutputs(self, request, context):
164
+ def PushAppOutputs(self, request, context):
140
165
  """Push ServerApp outputs
141
166
  """
142
167
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
@@ -195,6 +220,16 @@ class ServerAppIoServicer(object):
195
220
 
196
221
  def add_ServerAppIoServicer_to_server(servicer, server):
197
222
  rpc_method_handlers = {
223
+ 'ListAppsToLaunch': grpc.unary_unary_rpc_method_handler(
224
+ servicer.ListAppsToLaunch,
225
+ request_deserializer=flwr_dot_proto_dot_appio__pb2.ListAppsToLaunchRequest.FromString,
226
+ response_serializer=flwr_dot_proto_dot_appio__pb2.ListAppsToLaunchResponse.SerializeToString,
227
+ ),
228
+ 'RequestToken': grpc.unary_unary_rpc_method_handler(
229
+ servicer.RequestToken,
230
+ request_deserializer=flwr_dot_proto_dot_appio__pb2.RequestTokenRequest.FromString,
231
+ response_serializer=flwr_dot_proto_dot_appio__pb2.RequestTokenResponse.SerializeToString,
232
+ ),
198
233
  'GetNodes': grpc.unary_unary_rpc_method_handler(
199
234
  servicer.GetNodes,
200
235
  request_deserializer=flwr_dot_proto_dot_serverappio__pb2.GetNodesRequest.FromString,
@@ -202,13 +237,13 @@ def add_ServerAppIoServicer_to_server(servicer, server):
202
237
  ),
203
238
  'PushMessages': grpc.unary_unary_rpc_method_handler(
204
239
  servicer.PushMessages,
205
- request_deserializer=flwr_dot_proto_dot_serverappio__pb2.PushInsMessagesRequest.FromString,
206
- response_serializer=flwr_dot_proto_dot_serverappio__pb2.PushInsMessagesResponse.SerializeToString,
240
+ request_deserializer=flwr_dot_proto_dot_appio__pb2.PushAppMessagesRequest.FromString,
241
+ response_serializer=flwr_dot_proto_dot_appio__pb2.PushAppMessagesResponse.SerializeToString,
207
242
  ),
208
243
  'PullMessages': grpc.unary_unary_rpc_method_handler(
209
244
  servicer.PullMessages,
210
- request_deserializer=flwr_dot_proto_dot_serverappio__pb2.PullResMessagesRequest.FromString,
211
- response_serializer=flwr_dot_proto_dot_serverappio__pb2.PullResMessagesResponse.SerializeToString,
245
+ request_deserializer=flwr_dot_proto_dot_appio__pb2.PullAppMessagesRequest.FromString,
246
+ response_serializer=flwr_dot_proto_dot_appio__pb2.PullAppMessagesResponse.SerializeToString,
212
247
  ),
213
248
  'GetRun': grpc.unary_unary_rpc_method_handler(
214
249
  servicer.GetRun,
@@ -220,15 +255,15 @@ def add_ServerAppIoServicer_to_server(servicer, server):
220
255
  request_deserializer=flwr_dot_proto_dot_fab__pb2.GetFabRequest.FromString,
221
256
  response_serializer=flwr_dot_proto_dot_fab__pb2.GetFabResponse.SerializeToString,
222
257
  ),
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,
258
+ 'PullAppInputs': grpc.unary_unary_rpc_method_handler(
259
+ servicer.PullAppInputs,
260
+ request_deserializer=flwr_dot_proto_dot_appio__pb2.PullAppInputsRequest.FromString,
261
+ response_serializer=flwr_dot_proto_dot_appio__pb2.PullAppInputsResponse.SerializeToString,
227
262
  ),
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,
263
+ 'PushAppOutputs': grpc.unary_unary_rpc_method_handler(
264
+ servicer.PushAppOutputs,
265
+ request_deserializer=flwr_dot_proto_dot_appio__pb2.PushAppOutputsRequest.FromString,
266
+ response_serializer=flwr_dot_proto_dot_appio__pb2.PushAppOutputsResponse.SerializeToString,
232
267
  ),
233
268
  'UpdateRunStatus': grpc.unary_unary_rpc_method_handler(
234
269
  servicer.UpdateRunStatus,
@@ -275,6 +310,40 @@ def add_ServerAppIoServicer_to_server(servicer, server):
275
310
  class ServerAppIo(object):
276
311
  """Missing associated documentation comment in .proto file."""
277
312
 
313
+ @staticmethod
314
+ def ListAppsToLaunch(request,
315
+ target,
316
+ options=(),
317
+ channel_credentials=None,
318
+ call_credentials=None,
319
+ insecure=False,
320
+ compression=None,
321
+ wait_for_ready=None,
322
+ timeout=None,
323
+ metadata=None):
324
+ return grpc.experimental.unary_unary(request, target, '/flwr.proto.ServerAppIo/ListAppsToLaunch',
325
+ flwr_dot_proto_dot_appio__pb2.ListAppsToLaunchRequest.SerializeToString,
326
+ flwr_dot_proto_dot_appio__pb2.ListAppsToLaunchResponse.FromString,
327
+ options, channel_credentials,
328
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
329
+
330
+ @staticmethod
331
+ def RequestToken(request,
332
+ target,
333
+ options=(),
334
+ channel_credentials=None,
335
+ call_credentials=None,
336
+ insecure=False,
337
+ compression=None,
338
+ wait_for_ready=None,
339
+ timeout=None,
340
+ metadata=None):
341
+ return grpc.experimental.unary_unary(request, target, '/flwr.proto.ServerAppIo/RequestToken',
342
+ flwr_dot_proto_dot_appio__pb2.RequestTokenRequest.SerializeToString,
343
+ flwr_dot_proto_dot_appio__pb2.RequestTokenResponse.FromString,
344
+ options, channel_credentials,
345
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
346
+
278
347
  @staticmethod
279
348
  def GetNodes(request,
280
349
  target,
@@ -304,8 +373,8 @@ class ServerAppIo(object):
304
373
  timeout=None,
305
374
  metadata=None):
306
375
  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,
376
+ flwr_dot_proto_dot_appio__pb2.PushAppMessagesRequest.SerializeToString,
377
+ flwr_dot_proto_dot_appio__pb2.PushAppMessagesResponse.FromString,
309
378
  options, channel_credentials,
310
379
  insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
311
380
 
@@ -321,8 +390,8 @@ class ServerAppIo(object):
321
390
  timeout=None,
322
391
  metadata=None):
323
392
  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,
393
+ flwr_dot_proto_dot_appio__pb2.PullAppMessagesRequest.SerializeToString,
394
+ flwr_dot_proto_dot_appio__pb2.PullAppMessagesResponse.FromString,
326
395
  options, channel_credentials,
327
396
  insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
328
397
 
@@ -361,7 +430,7 @@ class ServerAppIo(object):
361
430
  insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
362
431
 
363
432
  @staticmethod
364
- def PullServerAppInputs(request,
433
+ def PullAppInputs(request,
365
434
  target,
366
435
  options=(),
367
436
  channel_credentials=None,
@@ -371,14 +440,14 @@ class ServerAppIo(object):
371
440
  wait_for_ready=None,
372
441
  timeout=None,
373
442
  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,
443
+ return grpc.experimental.unary_unary(request, target, '/flwr.proto.ServerAppIo/PullAppInputs',
444
+ flwr_dot_proto_dot_appio__pb2.PullAppInputsRequest.SerializeToString,
445
+ flwr_dot_proto_dot_appio__pb2.PullAppInputsResponse.FromString,
377
446
  options, channel_credentials,
378
447
  insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
379
448
 
380
449
  @staticmethod
381
- def PushServerAppOutputs(request,
450
+ def PushAppOutputs(request,
382
451
  target,
383
452
  options=(),
384
453
  channel_credentials=None,
@@ -388,9 +457,9 @@ class ServerAppIo(object):
388
457
  wait_for_ready=None,
389
458
  timeout=None,
390
459
  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,
460
+ return grpc.experimental.unary_unary(request, target, '/flwr.proto.ServerAppIo/PushAppOutputs',
461
+ flwr_dot_proto_dot_appio__pb2.PushAppOutputsRequest.SerializeToString,
462
+ flwr_dot_proto_dot_appio__pb2.PushAppOutputsResponse.FromString,
394
463
  options, channel_credentials,
395
464
  insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
396
465
 
@@ -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
@@ -13,19 +14,29 @@ import grpc
13
14
 
14
15
  class ServerAppIoStub:
15
16
  def __init__(self, channel: grpc.Channel) -> None: ...
17
+ ListAppsToLaunch: grpc.UnaryUnaryMultiCallable[
18
+ flwr.proto.appio_pb2.ListAppsToLaunchRequest,
19
+ flwr.proto.appio_pb2.ListAppsToLaunchResponse]
20
+ """List runs to launch"""
21
+
22
+ RequestToken: grpc.UnaryUnaryMultiCallable[
23
+ flwr.proto.appio_pb2.RequestTokenRequest,
24
+ flwr.proto.appio_pb2.RequestTokenResponse]
25
+ """Request token for a run"""
26
+
16
27
  GetNodes: grpc.UnaryUnaryMultiCallable[
17
28
  flwr.proto.serverappio_pb2.GetNodesRequest,
18
29
  flwr.proto.serverappio_pb2.GetNodesResponse]
19
30
  """Return a set of nodes"""
20
31
 
21
32
  PushMessages: grpc.UnaryUnaryMultiCallable[
22
- flwr.proto.serverappio_pb2.PushInsMessagesRequest,
23
- flwr.proto.serverappio_pb2.PushInsMessagesResponse]
33
+ flwr.proto.appio_pb2.PushAppMessagesRequest,
34
+ flwr.proto.appio_pb2.PushAppMessagesResponse]
24
35
  """Create one or more messages"""
25
36
 
26
37
  PullMessages: grpc.UnaryUnaryMultiCallable[
27
- flwr.proto.serverappio_pb2.PullResMessagesRequest,
28
- flwr.proto.serverappio_pb2.PullResMessagesResponse]
38
+ flwr.proto.appio_pb2.PullAppMessagesRequest,
39
+ flwr.proto.appio_pb2.PullAppMessagesResponse]
29
40
  """Get message results"""
30
41
 
31
42
  GetRun: grpc.UnaryUnaryMultiCallable[
@@ -38,14 +49,14 @@ class ServerAppIoStub:
38
49
  flwr.proto.fab_pb2.GetFabResponse]
39
50
  """Get FAB"""
40
51
 
41
- PullServerAppInputs: grpc.UnaryUnaryMultiCallable[
42
- flwr.proto.serverappio_pb2.PullServerAppInputsRequest,
43
- flwr.proto.serverappio_pb2.PullServerAppInputsResponse]
52
+ PullAppInputs: grpc.UnaryUnaryMultiCallable[
53
+ flwr.proto.appio_pb2.PullAppInputsRequest,
54
+ flwr.proto.appio_pb2.PullAppInputsResponse]
44
55
  """Pull ServerApp inputs"""
45
56
 
46
- PushServerAppOutputs: grpc.UnaryUnaryMultiCallable[
47
- flwr.proto.serverappio_pb2.PushServerAppOutputsRequest,
48
- flwr.proto.serverappio_pb2.PushServerAppOutputsResponse]
57
+ PushAppOutputs: grpc.UnaryUnaryMultiCallable[
58
+ flwr.proto.appio_pb2.PushAppOutputsRequest,
59
+ flwr.proto.appio_pb2.PushAppOutputsResponse]
49
60
  """Push ServerApp outputs"""
50
61
 
51
62
  UpdateRunStatus: grpc.UnaryUnaryMultiCallable[
@@ -85,6 +96,22 @@ class ServerAppIoStub:
85
96
 
86
97
 
87
98
  class ServerAppIoServicer(metaclass=abc.ABCMeta):
99
+ @abc.abstractmethod
100
+ def ListAppsToLaunch(self,
101
+ request: flwr.proto.appio_pb2.ListAppsToLaunchRequest,
102
+ context: grpc.ServicerContext,
103
+ ) -> flwr.proto.appio_pb2.ListAppsToLaunchResponse:
104
+ """List runs to launch"""
105
+ pass
106
+
107
+ @abc.abstractmethod
108
+ def RequestToken(self,
109
+ request: flwr.proto.appio_pb2.RequestTokenRequest,
110
+ context: grpc.ServicerContext,
111
+ ) -> flwr.proto.appio_pb2.RequestTokenResponse:
112
+ """Request token for a run"""
113
+ pass
114
+
88
115
  @abc.abstractmethod
89
116
  def GetNodes(self,
90
117
  request: flwr.proto.serverappio_pb2.GetNodesRequest,
@@ -95,17 +122,17 @@ class ServerAppIoServicer(metaclass=abc.ABCMeta):
95
122
 
96
123
  @abc.abstractmethod
97
124
  def PushMessages(self,
98
- request: flwr.proto.serverappio_pb2.PushInsMessagesRequest,
125
+ request: flwr.proto.appio_pb2.PushAppMessagesRequest,
99
126
  context: grpc.ServicerContext,
100
- ) -> flwr.proto.serverappio_pb2.PushInsMessagesResponse:
127
+ ) -> flwr.proto.appio_pb2.PushAppMessagesResponse:
101
128
  """Create one or more messages"""
102
129
  pass
103
130
 
104
131
  @abc.abstractmethod
105
132
  def PullMessages(self,
106
- request: flwr.proto.serverappio_pb2.PullResMessagesRequest,
133
+ request: flwr.proto.appio_pb2.PullAppMessagesRequest,
107
134
  context: grpc.ServicerContext,
108
- ) -> flwr.proto.serverappio_pb2.PullResMessagesResponse:
135
+ ) -> flwr.proto.appio_pb2.PullAppMessagesResponse:
109
136
  """Get message results"""
110
137
  pass
111
138
 
@@ -126,18 +153,18 @@ class ServerAppIoServicer(metaclass=abc.ABCMeta):
126
153
  pass
127
154
 
128
155
  @abc.abstractmethod
129
- def PullServerAppInputs(self,
130
- request: flwr.proto.serverappio_pb2.PullServerAppInputsRequest,
156
+ def PullAppInputs(self,
157
+ request: flwr.proto.appio_pb2.PullAppInputsRequest,
131
158
  context: grpc.ServicerContext,
132
- ) -> flwr.proto.serverappio_pb2.PullServerAppInputsResponse:
159
+ ) -> flwr.proto.appio_pb2.PullAppInputsResponse:
133
160
  """Pull ServerApp inputs"""
134
161
  pass
135
162
 
136
163
  @abc.abstractmethod
137
- def PushServerAppOutputs(self,
138
- request: flwr.proto.serverappio_pb2.PushServerAppOutputsRequest,
164
+ def PushAppOutputs(self,
165
+ request: flwr.proto.appio_pb2.PushAppOutputsRequest,
139
166
  context: grpc.ServicerContext,
140
- ) -> flwr.proto.serverappio_pb2.PushServerAppOutputsResponse:
167
+ ) -> flwr.proto.appio_pb2.PushAppOutputsResponse:
141
168
  """Push ServerApp outputs"""
142
169
  pass
143
170
 
@@ -17,23 +17,16 @@ from flwr.proto import log_pb2 as flwr_dot_proto_dot_log__pb2
17
17
  from flwr.proto import message_pb2 as flwr_dot_proto_dot_message__pb2
18
18
  from flwr.proto import run_pb2 as flwr_dot_proto_dot_run__pb2
19
19
  from flwr.proto import fab_pb2 as flwr_dot_proto_dot_fab__pb2
20
+ from flwr.proto import appio_pb2 as flwr_dot_proto_dot_appio__pb2
20
21
 
21
22
 
22
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1d\x66lwr/proto/simulationio.proto\x12\nflwr.proto\x1a\x1a\x66lwr/proto/heartbeat.proto\x1a\x14\x66lwr/proto/log.proto\x1a\x18\x66lwr/proto/message.proto\x1a\x14\x66lwr/proto/run.proto\x1a\x14\x66lwr/proto/fab.proto\"\x1d\n\x1bPullSimulationInputsRequest\"\x80\x01\n\x1cPullSimulationInputsResponse\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\"T\n\x1cPushSimulationOutputsRequest\x12\x0e\n\x06run_id\x18\x01 \x01(\x04\x12$\n\x07\x63ontext\x18\x02 \x01(\x0b\x32\x13.flwr.proto.Context\"\x1f\n\x1dPushSimulationOutputsResponse2\xb5\x05\n\x0cSimulationIo\x12k\n\x14PullSimulationInputs\x12\'.flwr.proto.PullSimulationInputsRequest\x1a(.flwr.proto.PullSimulationInputsResponse\"\x00\x12n\n\x15PushSimulationOutputs\x12(.flwr.proto.PushSimulationOutputsRequest\x1a).flwr.proto.PushSimulationOutputsResponse\"\x00\x12\\\n\x0fUpdateRunStatus\x12\".flwr.proto.UpdateRunStatusRequest\x1a#.flwr.proto.UpdateRunStatusResponse\"\x00\x12G\n\x08PushLogs\x12\x1b.flwr.proto.PushLogsRequest\x1a\x1c.flwr.proto.PushLogsResponse\"\x00\x12k\n\x14GetFederationOptions\x12\'.flwr.proto.GetFederationOptionsRequest\x1a(.flwr.proto.GetFederationOptionsResponse\"\x00\x12S\n\x0cGetRunStatus\x12\x1f.flwr.proto.GetRunStatusRequest\x1a .flwr.proto.GetRunStatusResponse\"\x00\x12_\n\x10SendAppHeartbeat\x12#.flwr.proto.SendAppHeartbeatRequest\x1a$.flwr.proto.SendAppHeartbeatResponse\"\x00\x62\x06proto3')
23
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1d\x66lwr/proto/simulationio.proto\x12\nflwr.proto\x1a\x1a\x66lwr/proto/heartbeat.proto\x1a\x14\x66lwr/proto/log.proto\x1a\x18\x66lwr/proto/message.proto\x1a\x14\x66lwr/proto/run.proto\x1a\x14\x66lwr/proto/fab.proto\x1a\x16\x66lwr/proto/appio.proto2\x84\x07\n\x0cSimulationIo\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\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\x12G\n\x08PushLogs\x12\x1b.flwr.proto.PushLogsRequest\x1a\x1c.flwr.proto.PushLogsResponse\"\x00\x12k\n\x14GetFederationOptions\x12\'.flwr.proto.GetFederationOptionsRequest\x1a(.flwr.proto.GetFederationOptionsResponse\"\x00\x12S\n\x0cGetRunStatus\x12\x1f.flwr.proto.GetRunStatusRequest\x1a .flwr.proto.GetRunStatusResponse\"\x00\x12_\n\x10SendAppHeartbeat\x12#.flwr.proto.SendAppHeartbeatRequest\x1a$.flwr.proto.SendAppHeartbeatResponse\"\x00\x62\x06proto3')
23
24
 
24
25
  _globals = globals()
25
26
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
26
27
  _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'flwr.proto.simulationio_pb2', _globals)
27
28
  if _descriptor._USE_C_DESCRIPTORS == False:
28
29
  DESCRIPTOR._options = None
29
- _globals['_PULLSIMULATIONINPUTSREQUEST']._serialized_start=165
30
- _globals['_PULLSIMULATIONINPUTSREQUEST']._serialized_end=194
31
- _globals['_PULLSIMULATIONINPUTSRESPONSE']._serialized_start=197
32
- _globals['_PULLSIMULATIONINPUTSRESPONSE']._serialized_end=325
33
- _globals['_PUSHSIMULATIONOUTPUTSREQUEST']._serialized_start=327
34
- _globals['_PUSHSIMULATIONOUTPUTSREQUEST']._serialized_end=411
35
- _globals['_PUSHSIMULATIONOUTPUTSRESPONSE']._serialized_start=413
36
- _globals['_PUSHSIMULATIONOUTPUTSRESPONSE']._serialized_end=444
37
- _globals['_SIMULATIONIO']._serialized_start=447
38
- _globals['_SIMULATIONIO']._serialized_end=1140
30
+ _globals['_SIMULATIONIO']._serialized_start=190
31
+ _globals['_SIMULATIONIO']._serialized_end=1090
39
32
  # @@protoc_insertion_point(module_scope)
@@ -2,64 +2,6 @@
2
2
  @generated by mypy-protobuf. Do not edit manually!
3
3
  isort:skip_file
4
4
  """
5
- import builtins
6
- import flwr.proto.fab_pb2
7
- import flwr.proto.message_pb2
8
- import flwr.proto.run_pb2
9
5
  import google.protobuf.descriptor
10
- import google.protobuf.message
11
- import typing
12
- import typing_extensions
13
6
 
14
7
  DESCRIPTOR: google.protobuf.descriptor.FileDescriptor
15
-
16
- class PullSimulationInputsRequest(google.protobuf.message.Message):
17
- """PullSimulationInputs messages"""
18
- DESCRIPTOR: google.protobuf.descriptor.Descriptor
19
- def __init__(self,
20
- ) -> None: ...
21
- global___PullSimulationInputsRequest = PullSimulationInputsRequest
22
-
23
- class PullSimulationInputsResponse(google.protobuf.message.Message):
24
- DESCRIPTOR: google.protobuf.descriptor.Descriptor
25
- CONTEXT_FIELD_NUMBER: builtins.int
26
- RUN_FIELD_NUMBER: builtins.int
27
- FAB_FIELD_NUMBER: builtins.int
28
- @property
29
- def context(self) -> flwr.proto.message_pb2.Context: ...
30
- @property
31
- def run(self) -> flwr.proto.run_pb2.Run: ...
32
- @property
33
- def fab(self) -> flwr.proto.fab_pb2.Fab: ...
34
- def __init__(self,
35
- *,
36
- context: typing.Optional[flwr.proto.message_pb2.Context] = ...,
37
- run: typing.Optional[flwr.proto.run_pb2.Run] = ...,
38
- fab: typing.Optional[flwr.proto.fab_pb2.Fab] = ...,
39
- ) -> None: ...
40
- def HasField(self, field_name: typing_extensions.Literal["context",b"context","fab",b"fab","run",b"run"]) -> builtins.bool: ...
41
- def ClearField(self, field_name: typing_extensions.Literal["context",b"context","fab",b"fab","run",b"run"]) -> None: ...
42
- global___PullSimulationInputsResponse = PullSimulationInputsResponse
43
-
44
- class PushSimulationOutputsRequest(google.protobuf.message.Message):
45
- """PushSimulationOutputs messages"""
46
- DESCRIPTOR: google.protobuf.descriptor.Descriptor
47
- RUN_ID_FIELD_NUMBER: builtins.int
48
- CONTEXT_FIELD_NUMBER: builtins.int
49
- run_id: builtins.int
50
- @property
51
- def context(self) -> flwr.proto.message_pb2.Context: ...
52
- def __init__(self,
53
- *,
54
- run_id: builtins.int = ...,
55
- context: typing.Optional[flwr.proto.message_pb2.Context] = ...,
56
- ) -> None: ...
57
- def HasField(self, field_name: typing_extensions.Literal["context",b"context"]) -> builtins.bool: ...
58
- def ClearField(self, field_name: typing_extensions.Literal["context",b"context","run_id",b"run_id"]) -> None: ...
59
- global___PushSimulationOutputsRequest = PushSimulationOutputsRequest
60
-
61
- class PushSimulationOutputsResponse(google.protobuf.message.Message):
62
- DESCRIPTOR: google.protobuf.descriptor.Descriptor
63
- def __init__(self,
64
- ) -> None: ...
65
- global___PushSimulationOutputsResponse = PushSimulationOutputsResponse