flwr 1.24.0__py3-none-any.whl → 1.26.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 (204) hide show
  1. flwr/__init__.py +1 -1
  2. flwr/app/__init__.py +4 -1
  3. flwr/app/message_type.py +29 -0
  4. flwr/app/metadata.py +5 -2
  5. flwr/app/user_config.py +19 -0
  6. flwr/cli/app.py +37 -19
  7. flwr/cli/app_cmd/publish.py +25 -75
  8. flwr/cli/app_cmd/review.py +25 -66
  9. flwr/cli/auth_plugin/auth_plugin.py +5 -10
  10. flwr/cli/auth_plugin/noop_auth_plugin.py +1 -2
  11. flwr/cli/auth_plugin/oidc_cli_plugin.py +38 -38
  12. flwr/cli/build.py +15 -28
  13. flwr/cli/config/__init__.py +21 -0
  14. flwr/cli/config/ls.py +71 -0
  15. flwr/cli/config_migration.py +297 -0
  16. flwr/cli/config_utils.py +63 -156
  17. flwr/cli/constant.py +71 -0
  18. flwr/cli/federation/__init__.py +0 -2
  19. flwr/cli/federation/ls.py +256 -64
  20. flwr/cli/flower_config.py +429 -0
  21. flwr/cli/install.py +23 -62
  22. flwr/cli/log.py +23 -37
  23. flwr/cli/login/login.py +29 -63
  24. flwr/cli/ls.py +72 -61
  25. flwr/cli/new/new.py +98 -309
  26. flwr/cli/pull.py +19 -37
  27. flwr/cli/run/run.py +87 -100
  28. flwr/cli/run_utils.py +23 -5
  29. flwr/cli/stop.py +33 -74
  30. flwr/cli/supernode/ls.py +35 -62
  31. flwr/cli/supernode/register.py +31 -80
  32. flwr/cli/supernode/unregister.py +24 -70
  33. flwr/cli/typing.py +200 -0
  34. flwr/cli/utils.py +160 -412
  35. flwr/client/grpc_adapter_client/connection.py +2 -2
  36. flwr/client/grpc_rere_client/connection.py +9 -6
  37. flwr/client/grpc_rere_client/grpc_adapter.py +1 -1
  38. flwr/client/message_handler/message_handler.py +2 -1
  39. flwr/client/mod/centraldp_mods.py +1 -1
  40. flwr/client/mod/localdp_mod.py +1 -1
  41. flwr/client/mod/secure_aggregation/secaggplus_mod.py +1 -1
  42. flwr/client/rest_client/connection.py +6 -4
  43. flwr/client/run_info_store.py +2 -1
  44. flwr/clientapp/client_app.py +2 -1
  45. flwr/common/__init__.py +3 -2
  46. flwr/common/args.py +5 -5
  47. flwr/common/config.py +12 -17
  48. flwr/common/constant.py +3 -16
  49. flwr/common/context.py +2 -1
  50. flwr/common/exit/exit.py +4 -4
  51. flwr/common/exit/exit_code.py +6 -0
  52. flwr/common/grpc.py +2 -1
  53. flwr/common/logger.py +1 -1
  54. flwr/common/message.py +1 -1
  55. flwr/common/retry_invoker.py +13 -5
  56. flwr/common/secure_aggregation/ndarrays_arithmetic.py +5 -2
  57. flwr/common/serde.py +13 -5
  58. flwr/common/telemetry.py +1 -1
  59. flwr/common/typing.py +10 -3
  60. flwr/compat/client/app.py +6 -9
  61. flwr/compat/client/grpc_client/connection.py +2 -1
  62. flwr/compat/common/constant.py +29 -0
  63. flwr/compat/server/app.py +1 -1
  64. flwr/proto/clientappio_pb2.py +2 -2
  65. flwr/proto/clientappio_pb2_grpc.py +104 -88
  66. flwr/proto/clientappio_pb2_grpc.pyi +140 -80
  67. flwr/proto/federation_pb2.py +5 -3
  68. flwr/proto/federation_pb2.pyi +32 -2
  69. flwr/proto/fleet_pb2.py +10 -10
  70. flwr/proto/fleet_pb2.pyi +5 -1
  71. flwr/proto/run_pb2.py +18 -26
  72. flwr/proto/run_pb2.pyi +10 -58
  73. flwr/proto/serverappio_pb2.py +2 -2
  74. flwr/proto/serverappio_pb2_grpc.py +138 -207
  75. flwr/proto/serverappio_pb2_grpc.pyi +189 -155
  76. flwr/proto/simulationio_pb2.py +2 -2
  77. flwr/proto/simulationio_pb2_grpc.py +62 -90
  78. flwr/proto/simulationio_pb2_grpc.pyi +95 -55
  79. flwr/server/app.py +7 -13
  80. flwr/server/compat/grid_client_proxy.py +2 -1
  81. flwr/server/grid/grpc_grid.py +5 -5
  82. flwr/server/serverapp/app.py +11 -4
  83. flwr/server/superlink/fleet/grpc_adapter/grpc_adapter_servicer.py +1 -1
  84. flwr/server/superlink/fleet/grpc_rere/node_auth_server_interceptor.py +13 -12
  85. flwr/server/superlink/fleet/message_handler/message_handler.py +42 -2
  86. flwr/server/superlink/linkstate/__init__.py +2 -2
  87. flwr/server/superlink/linkstate/in_memory_linkstate.py +36 -10
  88. flwr/server/superlink/linkstate/linkstate.py +34 -21
  89. flwr/server/superlink/linkstate/linkstate_factory.py +16 -8
  90. flwr/server/superlink/linkstate/{sqlite_linkstate.py → sql_linkstate.py} +471 -516
  91. flwr/server/superlink/linkstate/utils.py +49 -2
  92. flwr/server/superlink/serverappio/serverappio_servicer.py +1 -33
  93. flwr/server/superlink/simulation/simulationio_servicer.py +0 -19
  94. flwr/server/utils/validator.py +1 -1
  95. flwr/server/workflow/default_workflows.py +2 -1
  96. flwr/server/workflow/secure_aggregation/secaggplus_workflow.py +1 -1
  97. flwr/serverapp/strategy/bulyan.py +7 -1
  98. flwr/serverapp/strategy/dp_fixed_clipping.py +9 -1
  99. flwr/serverapp/strategy/fedavg.py +1 -1
  100. flwr/serverapp/strategy/fedxgb_cyclic.py +1 -1
  101. flwr/simulation/ray_transport/ray_client_proxy.py +2 -6
  102. flwr/simulation/run_simulation.py +3 -12
  103. flwr/simulation/simulationio_connection.py +3 -3
  104. flwr/{common → supercore}/address.py +7 -33
  105. flwr/supercore/app_utils.py +2 -1
  106. flwr/supercore/constant.py +27 -2
  107. flwr/supercore/corestate/{sqlite_corestate.py → sql_corestate.py} +19 -23
  108. flwr/supercore/credential_store/__init__.py +33 -0
  109. flwr/supercore/credential_store/credential_store.py +34 -0
  110. flwr/supercore/credential_store/file_credential_store.py +76 -0
  111. flwr/{common → supercore}/date.py +0 -11
  112. flwr/supercore/ffs/disk_ffs.py +1 -1
  113. flwr/supercore/object_store/object_store_factory.py +14 -6
  114. flwr/supercore/object_store/{sqlite_object_store.py → sql_object_store.py} +115 -117
  115. flwr/supercore/sql_mixin.py +315 -0
  116. flwr/{cli/new/templates → supercore/state}/__init__.py +2 -2
  117. flwr/{cli/new/templates/app/code/flwr_tune → supercore/state/alembic}/__init__.py +2 -2
  118. flwr/supercore/state/alembic/env.py +103 -0
  119. flwr/supercore/state/alembic/script.py.mako +43 -0
  120. flwr/supercore/state/alembic/utils.py +239 -0
  121. flwr/{cli/new/templates/app → supercore/state/alembic/versions}/__init__.py +2 -2
  122. flwr/supercore/state/alembic/versions/rev_2026_01_28_initialize_migration_of_state_tables.py +200 -0
  123. flwr/supercore/state/schema/README.md +121 -0
  124. flwr/{cli/new/templates/app/code → supercore/state/schema}/__init__.py +2 -2
  125. flwr/supercore/state/schema/corestate_tables.py +36 -0
  126. flwr/supercore/state/schema/linkstate_tables.py +152 -0
  127. flwr/supercore/state/schema/objectstore_tables.py +90 -0
  128. flwr/supercore/superexec/run_superexec.py +2 -2
  129. flwr/supercore/utils.py +225 -0
  130. flwr/superlink/federation/federation_manager.py +2 -2
  131. flwr/superlink/federation/noop_federation_manager.py +8 -6
  132. flwr/superlink/servicer/control/control_grpc.py +2 -0
  133. flwr/superlink/servicer/control/control_servicer.py +106 -21
  134. flwr/supernode/cli/flower_supernode.py +2 -1
  135. flwr/supernode/nodestate/in_memory_nodestate.py +62 -1
  136. flwr/supernode/nodestate/nodestate.py +45 -0
  137. flwr/supernode/runtime/run_clientapp.py +14 -14
  138. flwr/supernode/servicer/clientappio/clientappio_servicer.py +13 -5
  139. flwr/supernode/start_client_internal.py +17 -10
  140. {flwr-1.24.0.dist-info → flwr-1.26.0.dist-info}/METADATA +8 -8
  141. {flwr-1.24.0.dist-info → flwr-1.26.0.dist-info}/RECORD +144 -184
  142. flwr/cli/federation/show.py +0 -317
  143. flwr/cli/new/templates/app/.gitignore.tpl +0 -163
  144. flwr/cli/new/templates/app/LICENSE.tpl +0 -202
  145. flwr/cli/new/templates/app/README.baseline.md.tpl +0 -127
  146. flwr/cli/new/templates/app/README.flowertune.md.tpl +0 -68
  147. flwr/cli/new/templates/app/README.md.tpl +0 -37
  148. flwr/cli/new/templates/app/code/__init__.baseline.py.tpl +0 -1
  149. flwr/cli/new/templates/app/code/__init__.py.tpl +0 -1
  150. flwr/cli/new/templates/app/code/__init__.pytorch_legacy_api.py.tpl +0 -1
  151. flwr/cli/new/templates/app/code/client.baseline.py.tpl +0 -75
  152. flwr/cli/new/templates/app/code/client.huggingface.py.tpl +0 -93
  153. flwr/cli/new/templates/app/code/client.jax.py.tpl +0 -71
  154. flwr/cli/new/templates/app/code/client.mlx.py.tpl +0 -102
  155. flwr/cli/new/templates/app/code/client.numpy.py.tpl +0 -46
  156. flwr/cli/new/templates/app/code/client.pytorch.py.tpl +0 -80
  157. flwr/cli/new/templates/app/code/client.pytorch_legacy_api.py.tpl +0 -55
  158. flwr/cli/new/templates/app/code/client.sklearn.py.tpl +0 -108
  159. flwr/cli/new/templates/app/code/client.tensorflow.py.tpl +0 -82
  160. flwr/cli/new/templates/app/code/client.xgboost.py.tpl +0 -110
  161. flwr/cli/new/templates/app/code/dataset.baseline.py.tpl +0 -36
  162. flwr/cli/new/templates/app/code/flwr_tune/client_app.py.tpl +0 -92
  163. flwr/cli/new/templates/app/code/flwr_tune/dataset.py.tpl +0 -87
  164. flwr/cli/new/templates/app/code/flwr_tune/models.py.tpl +0 -56
  165. flwr/cli/new/templates/app/code/flwr_tune/server_app.py.tpl +0 -73
  166. flwr/cli/new/templates/app/code/flwr_tune/strategy.py.tpl +0 -78
  167. flwr/cli/new/templates/app/code/model.baseline.py.tpl +0 -66
  168. flwr/cli/new/templates/app/code/server.baseline.py.tpl +0 -43
  169. flwr/cli/new/templates/app/code/server.huggingface.py.tpl +0 -42
  170. flwr/cli/new/templates/app/code/server.jax.py.tpl +0 -39
  171. flwr/cli/new/templates/app/code/server.mlx.py.tpl +0 -41
  172. flwr/cli/new/templates/app/code/server.numpy.py.tpl +0 -38
  173. flwr/cli/new/templates/app/code/server.pytorch.py.tpl +0 -41
  174. flwr/cli/new/templates/app/code/server.pytorch_legacy_api.py.tpl +0 -31
  175. flwr/cli/new/templates/app/code/server.sklearn.py.tpl +0 -44
  176. flwr/cli/new/templates/app/code/server.tensorflow.py.tpl +0 -38
  177. flwr/cli/new/templates/app/code/server.xgboost.py.tpl +0 -56
  178. flwr/cli/new/templates/app/code/strategy.baseline.py.tpl +0 -1
  179. flwr/cli/new/templates/app/code/task.huggingface.py.tpl +0 -98
  180. flwr/cli/new/templates/app/code/task.jax.py.tpl +0 -57
  181. flwr/cli/new/templates/app/code/task.mlx.py.tpl +0 -102
  182. flwr/cli/new/templates/app/code/task.numpy.py.tpl +0 -7
  183. flwr/cli/new/templates/app/code/task.pytorch.py.tpl +0 -99
  184. flwr/cli/new/templates/app/code/task.pytorch_legacy_api.py.tpl +0 -111
  185. flwr/cli/new/templates/app/code/task.sklearn.py.tpl +0 -67
  186. flwr/cli/new/templates/app/code/task.tensorflow.py.tpl +0 -52
  187. flwr/cli/new/templates/app/code/task.xgboost.py.tpl +0 -67
  188. flwr/cli/new/templates/app/code/utils.baseline.py.tpl +0 -1
  189. flwr/cli/new/templates/app/pyproject.baseline.toml.tpl +0 -146
  190. flwr/cli/new/templates/app/pyproject.flowertune.toml.tpl +0 -80
  191. flwr/cli/new/templates/app/pyproject.huggingface.toml.tpl +0 -65
  192. flwr/cli/new/templates/app/pyproject.jax.toml.tpl +0 -52
  193. flwr/cli/new/templates/app/pyproject.mlx.toml.tpl +0 -56
  194. flwr/cli/new/templates/app/pyproject.numpy.toml.tpl +0 -49
  195. flwr/cli/new/templates/app/pyproject.pytorch.toml.tpl +0 -53
  196. flwr/cli/new/templates/app/pyproject.pytorch_legacy_api.toml.tpl +0 -53
  197. flwr/cli/new/templates/app/pyproject.sklearn.toml.tpl +0 -52
  198. flwr/cli/new/templates/app/pyproject.tensorflow.toml.tpl +0 -53
  199. flwr/cli/new/templates/app/pyproject.xgboost.toml.tpl +0 -61
  200. flwr/common/pyproject.py +0 -42
  201. flwr/supercore/sqlite_mixin.py +0 -159
  202. /flwr/{common → supercore}/version.py +0 -0
  203. {flwr-1.24.0.dist-info → flwr-1.26.0.dist-info}/WHEEL +0 -0
  204. {flwr-1.24.0.dist-info → flwr-1.26.0.dist-info}/entry_points.txt +0 -0
@@ -4,7 +4,6 @@ import grpc
4
4
  import warnings
5
5
 
6
6
  from flwr.proto import appio_pb2 as flwr_dot_proto_dot_appio__pb2
7
- from flwr.proto import fab_pb2 as flwr_dot_proto_dot_fab__pb2
8
7
  from flwr.proto import heartbeat_pb2 as flwr_dot_proto_dot_heartbeat__pb2
9
8
  from flwr.proto import log_pb2 as flwr_dot_proto_dot_log__pb2
10
9
  from flwr.proto import message_pb2 as flwr_dot_proto_dot_message__pb2
@@ -50,30 +49,15 @@ class ServerAppIoStub(object):
50
49
  request_serializer=flwr_dot_proto_dot_appio__pb2.RequestTokenRequest.SerializeToString,
51
50
  response_deserializer=flwr_dot_proto_dot_appio__pb2.RequestTokenResponse.FromString,
52
51
  _registered_method=True)
53
- self.GetNodes = channel.unary_unary(
54
- '/flwr.proto.ServerAppIo/GetNodes',
55
- request_serializer=flwr_dot_proto_dot_serverappio__pb2.GetNodesRequest.SerializeToString,
56
- response_deserializer=flwr_dot_proto_dot_serverappio__pb2.GetNodesResponse.FromString,
57
- _registered_method=True)
58
- self.PushMessages = channel.unary_unary(
59
- '/flwr.proto.ServerAppIo/PushMessages',
60
- request_serializer=flwr_dot_proto_dot_appio__pb2.PushAppMessagesRequest.SerializeToString,
61
- response_deserializer=flwr_dot_proto_dot_appio__pb2.PushAppMessagesResponse.FromString,
62
- _registered_method=True)
63
- self.PullMessages = channel.unary_unary(
64
- '/flwr.proto.ServerAppIo/PullMessages',
65
- request_serializer=flwr_dot_proto_dot_appio__pb2.PullAppMessagesRequest.SerializeToString,
66
- response_deserializer=flwr_dot_proto_dot_appio__pb2.PullAppMessagesResponse.FromString,
67
- _registered_method=True)
68
52
  self.GetRun = channel.unary_unary(
69
53
  '/flwr.proto.ServerAppIo/GetRun',
70
54
  request_serializer=flwr_dot_proto_dot_run__pb2.GetRunRequest.SerializeToString,
71
55
  response_deserializer=flwr_dot_proto_dot_run__pb2.GetRunResponse.FromString,
72
56
  _registered_method=True)
73
- self.GetFab = channel.unary_unary(
74
- '/flwr.proto.ServerAppIo/GetFab',
75
- request_serializer=flwr_dot_proto_dot_fab__pb2.GetFabRequest.SerializeToString,
76
- response_deserializer=flwr_dot_proto_dot_fab__pb2.GetFabResponse.FromString,
57
+ self.SendAppHeartbeat = channel.unary_unary(
58
+ '/flwr.proto.ServerAppIo/SendAppHeartbeat',
59
+ request_serializer=flwr_dot_proto_dot_heartbeat__pb2.SendAppHeartbeatRequest.SerializeToString,
60
+ response_deserializer=flwr_dot_proto_dot_heartbeat__pb2.SendAppHeartbeatResponse.FromString,
77
61
  _registered_method=True)
78
62
  self.PullAppInputs = channel.unary_unary(
79
63
  '/flwr.proto.ServerAppIo/PullAppInputs',
@@ -85,26 +69,6 @@ class ServerAppIoStub(object):
85
69
  request_serializer=flwr_dot_proto_dot_appio__pb2.PushAppOutputsRequest.SerializeToString,
86
70
  response_deserializer=flwr_dot_proto_dot_appio__pb2.PushAppOutputsResponse.FromString,
87
71
  _registered_method=True)
88
- self.UpdateRunStatus = channel.unary_unary(
89
- '/flwr.proto.ServerAppIo/UpdateRunStatus',
90
- request_serializer=flwr_dot_proto_dot_run__pb2.UpdateRunStatusRequest.SerializeToString,
91
- response_deserializer=flwr_dot_proto_dot_run__pb2.UpdateRunStatusResponse.FromString,
92
- _registered_method=True)
93
- self.GetRunStatus = channel.unary_unary(
94
- '/flwr.proto.ServerAppIo/GetRunStatus',
95
- request_serializer=flwr_dot_proto_dot_run__pb2.GetRunStatusRequest.SerializeToString,
96
- response_deserializer=flwr_dot_proto_dot_run__pb2.GetRunStatusResponse.FromString,
97
- _registered_method=True)
98
- self.PushLogs = channel.unary_unary(
99
- '/flwr.proto.ServerAppIo/PushLogs',
100
- request_serializer=flwr_dot_proto_dot_log__pb2.PushLogsRequest.SerializeToString,
101
- response_deserializer=flwr_dot_proto_dot_log__pb2.PushLogsResponse.FromString,
102
- _registered_method=True)
103
- self.SendAppHeartbeat = channel.unary_unary(
104
- '/flwr.proto.ServerAppIo/SendAppHeartbeat',
105
- request_serializer=flwr_dot_proto_dot_heartbeat__pb2.SendAppHeartbeatRequest.SerializeToString,
106
- response_deserializer=flwr_dot_proto_dot_heartbeat__pb2.SendAppHeartbeatResponse.FromString,
107
- _registered_method=True)
108
72
  self.PushObject = channel.unary_unary(
109
73
  '/flwr.proto.ServerAppIo/PushObject',
110
74
  request_serializer=flwr_dot_proto_dot_message__pb2.PushObjectRequest.SerializeToString,
@@ -120,13 +84,42 @@ class ServerAppIoStub(object):
120
84
  request_serializer=flwr_dot_proto_dot_message__pb2.ConfirmMessageReceivedRequest.SerializeToString,
121
85
  response_deserializer=flwr_dot_proto_dot_message__pb2.ConfirmMessageReceivedResponse.FromString,
122
86
  _registered_method=True)
87
+ self.UpdateRunStatus = channel.unary_unary(
88
+ '/flwr.proto.ServerAppIo/UpdateRunStatus',
89
+ request_serializer=flwr_dot_proto_dot_run__pb2.UpdateRunStatusRequest.SerializeToString,
90
+ response_deserializer=flwr_dot_proto_dot_run__pb2.UpdateRunStatusResponse.FromString,
91
+ _registered_method=True)
92
+ self.PushLogs = channel.unary_unary(
93
+ '/flwr.proto.ServerAppIo/PushLogs',
94
+ request_serializer=flwr_dot_proto_dot_log__pb2.PushLogsRequest.SerializeToString,
95
+ response_deserializer=flwr_dot_proto_dot_log__pb2.PushLogsResponse.FromString,
96
+ _registered_method=True)
97
+ self.PushMessages = channel.unary_unary(
98
+ '/flwr.proto.ServerAppIo/PushMessages',
99
+ request_serializer=flwr_dot_proto_dot_appio__pb2.PushAppMessagesRequest.SerializeToString,
100
+ response_deserializer=flwr_dot_proto_dot_appio__pb2.PushAppMessagesResponse.FromString,
101
+ _registered_method=True)
102
+ self.PullMessages = channel.unary_unary(
103
+ '/flwr.proto.ServerAppIo/PullMessages',
104
+ request_serializer=flwr_dot_proto_dot_appio__pb2.PullAppMessagesRequest.SerializeToString,
105
+ response_deserializer=flwr_dot_proto_dot_appio__pb2.PullAppMessagesResponse.FromString,
106
+ _registered_method=True)
107
+ self.GetNodes = channel.unary_unary(
108
+ '/flwr.proto.ServerAppIo/GetNodes',
109
+ request_serializer=flwr_dot_proto_dot_serverappio__pb2.GetNodesRequest.SerializeToString,
110
+ response_deserializer=flwr_dot_proto_dot_serverappio__pb2.GetNodesResponse.FromString,
111
+ _registered_method=True)
123
112
 
124
113
 
125
114
  class ServerAppIoServicer(object):
126
115
  """Missing associated documentation comment in .proto file."""
127
116
 
128
117
  def ListAppsToLaunch(self, request, context):
129
- """List runs to launch
118
+ """///////////////////////////////////////////////////////////////////////////
119
+ General *AppIo endpoints for SuperExec processes
120
+ ///////////////////////////////////////////////////////////////////////////
121
+
122
+ List runs to launch
130
123
  """
131
124
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
132
125
  context.set_details('Method not implemented!')
@@ -139,64 +132,69 @@ class ServerAppIoServicer(object):
139
132
  context.set_details('Method not implemented!')
140
133
  raise NotImplementedError('Method not implemented!')
141
134
 
142
- def GetNodes(self, request, context):
143
- """Return a set of nodes
135
+ def GetRun(self, request, context):
136
+ """///////////////////////////////////////////////////////////////////////////
137
+ General *AppIo endpoints for App Executor processes
138
+ ///////////////////////////////////////////////////////////////////////////
139
+
140
+ Get run details
144
141
  """
145
142
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
146
143
  context.set_details('Method not implemented!')
147
144
  raise NotImplementedError('Method not implemented!')
148
145
 
149
- def PushMessages(self, request, context):
150
- """Create one or more messages
146
+ def SendAppHeartbeat(self, request, context):
147
+ """App heartbeat
151
148
  """
152
149
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
153
150
  context.set_details('Method not implemented!')
154
151
  raise NotImplementedError('Method not implemented!')
155
152
 
156
- def PullMessages(self, request, context):
157
- """Get message results
153
+ def PullAppInputs(self, request, context):
154
+ """Pull app inputs
158
155
  """
159
156
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
160
157
  context.set_details('Method not implemented!')
161
158
  raise NotImplementedError('Method not implemented!')
162
159
 
163
- def GetRun(self, request, context):
164
- """Get run details
160
+ def PushAppOutputs(self, request, context):
161
+ """Push app outputs
165
162
  """
166
163
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
167
164
  context.set_details('Method not implemented!')
168
165
  raise NotImplementedError('Method not implemented!')
169
166
 
170
- def GetFab(self, request, context):
171
- """Get FAB
167
+ def PushObject(self, request, context):
168
+ """///////////////////////////////////////////////////////////////////////////
169
+ Specific endpoints shared by ServerAppIo and ClientAppIo
170
+ ///////////////////////////////////////////////////////////////////////////
171
+
172
+ Push Object
172
173
  """
173
174
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
174
175
  context.set_details('Method not implemented!')
175
176
  raise NotImplementedError('Method not implemented!')
176
177
 
177
- def PullAppInputs(self, request, context):
178
- """Pull ServerApp inputs
178
+ def PullObject(self, request, context):
179
+ """Pull Object
179
180
  """
180
181
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
181
182
  context.set_details('Method not implemented!')
182
183
  raise NotImplementedError('Method not implemented!')
183
184
 
184
- def PushAppOutputs(self, request, context):
185
- """Push ServerApp outputs
185
+ def ConfirmMessageReceived(self, request, context):
186
+ """Confirm Message Received
186
187
  """
187
188
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
188
189
  context.set_details('Method not implemented!')
189
190
  raise NotImplementedError('Method not implemented!')
190
191
 
191
192
  def UpdateRunStatus(self, request, context):
192
- """Update the status of a given run
193
- """
194
- context.set_code(grpc.StatusCode.UNIMPLEMENTED)
195
- context.set_details('Method not implemented!')
196
- raise NotImplementedError('Method not implemented!')
193
+ """///////////////////////////////////////////////////////////////////////////
194
+ Specific endpoints shared by ServerAppIo and SimulationIo
195
+ ///////////////////////////////////////////////////////////////////////////
197
196
 
198
- def GetRunStatus(self, request, context):
199
- """Get the status of a given run
197
+ Update the status of a given run
200
198
  """
201
199
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
202
200
  context.set_details('Method not implemented!')
@@ -209,29 +207,26 @@ class ServerAppIoServicer(object):
209
207
  context.set_details('Method not implemented!')
210
208
  raise NotImplementedError('Method not implemented!')
211
209
 
212
- def SendAppHeartbeat(self, request, context):
213
- """App heartbeat
214
- """
215
- context.set_code(grpc.StatusCode.UNIMPLEMENTED)
216
- context.set_details('Method not implemented!')
217
- raise NotImplementedError('Method not implemented!')
210
+ def PushMessages(self, request, context):
211
+ """///////////////////////////////////////////////////////////////////////////
212
+ Specific endpoints for ServerAppIo
213
+ ///////////////////////////////////////////////////////////////////////////
218
214
 
219
- def PushObject(self, request, context):
220
- """Push Object
215
+ Create one or more messages
221
216
  """
222
217
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
223
218
  context.set_details('Method not implemented!')
224
219
  raise NotImplementedError('Method not implemented!')
225
220
 
226
- def PullObject(self, request, context):
227
- """Pull Object
221
+ def PullMessages(self, request, context):
222
+ """Get message results
228
223
  """
229
224
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
230
225
  context.set_details('Method not implemented!')
231
226
  raise NotImplementedError('Method not implemented!')
232
227
 
233
- def ConfirmMessageReceived(self, request, context):
234
- """Confirm Message Received
228
+ def GetNodes(self, request, context):
229
+ """Return a set of nodes
235
230
  """
236
231
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
237
232
  context.set_details('Method not implemented!')
@@ -250,30 +245,15 @@ def add_ServerAppIoServicer_to_server(servicer, server):
250
245
  request_deserializer=flwr_dot_proto_dot_appio__pb2.RequestTokenRequest.FromString,
251
246
  response_serializer=flwr_dot_proto_dot_appio__pb2.RequestTokenResponse.SerializeToString,
252
247
  ),
253
- 'GetNodes': grpc.unary_unary_rpc_method_handler(
254
- servicer.GetNodes,
255
- request_deserializer=flwr_dot_proto_dot_serverappio__pb2.GetNodesRequest.FromString,
256
- response_serializer=flwr_dot_proto_dot_serverappio__pb2.GetNodesResponse.SerializeToString,
257
- ),
258
- 'PushMessages': grpc.unary_unary_rpc_method_handler(
259
- servicer.PushMessages,
260
- request_deserializer=flwr_dot_proto_dot_appio__pb2.PushAppMessagesRequest.FromString,
261
- response_serializer=flwr_dot_proto_dot_appio__pb2.PushAppMessagesResponse.SerializeToString,
262
- ),
263
- 'PullMessages': grpc.unary_unary_rpc_method_handler(
264
- servicer.PullMessages,
265
- request_deserializer=flwr_dot_proto_dot_appio__pb2.PullAppMessagesRequest.FromString,
266
- response_serializer=flwr_dot_proto_dot_appio__pb2.PullAppMessagesResponse.SerializeToString,
267
- ),
268
248
  'GetRun': grpc.unary_unary_rpc_method_handler(
269
249
  servicer.GetRun,
270
250
  request_deserializer=flwr_dot_proto_dot_run__pb2.GetRunRequest.FromString,
271
251
  response_serializer=flwr_dot_proto_dot_run__pb2.GetRunResponse.SerializeToString,
272
252
  ),
273
- 'GetFab': grpc.unary_unary_rpc_method_handler(
274
- servicer.GetFab,
275
- request_deserializer=flwr_dot_proto_dot_fab__pb2.GetFabRequest.FromString,
276
- response_serializer=flwr_dot_proto_dot_fab__pb2.GetFabResponse.SerializeToString,
253
+ 'SendAppHeartbeat': grpc.unary_unary_rpc_method_handler(
254
+ servicer.SendAppHeartbeat,
255
+ request_deserializer=flwr_dot_proto_dot_heartbeat__pb2.SendAppHeartbeatRequest.FromString,
256
+ response_serializer=flwr_dot_proto_dot_heartbeat__pb2.SendAppHeartbeatResponse.SerializeToString,
277
257
  ),
278
258
  'PullAppInputs': grpc.unary_unary_rpc_method_handler(
279
259
  servicer.PullAppInputs,
@@ -285,26 +265,6 @@ def add_ServerAppIoServicer_to_server(servicer, server):
285
265
  request_deserializer=flwr_dot_proto_dot_appio__pb2.PushAppOutputsRequest.FromString,
286
266
  response_serializer=flwr_dot_proto_dot_appio__pb2.PushAppOutputsResponse.SerializeToString,
287
267
  ),
288
- 'UpdateRunStatus': grpc.unary_unary_rpc_method_handler(
289
- servicer.UpdateRunStatus,
290
- request_deserializer=flwr_dot_proto_dot_run__pb2.UpdateRunStatusRequest.FromString,
291
- response_serializer=flwr_dot_proto_dot_run__pb2.UpdateRunStatusResponse.SerializeToString,
292
- ),
293
- 'GetRunStatus': grpc.unary_unary_rpc_method_handler(
294
- servicer.GetRunStatus,
295
- request_deserializer=flwr_dot_proto_dot_run__pb2.GetRunStatusRequest.FromString,
296
- response_serializer=flwr_dot_proto_dot_run__pb2.GetRunStatusResponse.SerializeToString,
297
- ),
298
- 'PushLogs': grpc.unary_unary_rpc_method_handler(
299
- servicer.PushLogs,
300
- request_deserializer=flwr_dot_proto_dot_log__pb2.PushLogsRequest.FromString,
301
- response_serializer=flwr_dot_proto_dot_log__pb2.PushLogsResponse.SerializeToString,
302
- ),
303
- 'SendAppHeartbeat': grpc.unary_unary_rpc_method_handler(
304
- servicer.SendAppHeartbeat,
305
- request_deserializer=flwr_dot_proto_dot_heartbeat__pb2.SendAppHeartbeatRequest.FromString,
306
- response_serializer=flwr_dot_proto_dot_heartbeat__pb2.SendAppHeartbeatResponse.SerializeToString,
307
- ),
308
268
  'PushObject': grpc.unary_unary_rpc_method_handler(
309
269
  servicer.PushObject,
310
270
  request_deserializer=flwr_dot_proto_dot_message__pb2.PushObjectRequest.FromString,
@@ -320,6 +280,31 @@ def add_ServerAppIoServicer_to_server(servicer, server):
320
280
  request_deserializer=flwr_dot_proto_dot_message__pb2.ConfirmMessageReceivedRequest.FromString,
321
281
  response_serializer=flwr_dot_proto_dot_message__pb2.ConfirmMessageReceivedResponse.SerializeToString,
322
282
  ),
283
+ 'UpdateRunStatus': grpc.unary_unary_rpc_method_handler(
284
+ servicer.UpdateRunStatus,
285
+ request_deserializer=flwr_dot_proto_dot_run__pb2.UpdateRunStatusRequest.FromString,
286
+ response_serializer=flwr_dot_proto_dot_run__pb2.UpdateRunStatusResponse.SerializeToString,
287
+ ),
288
+ 'PushLogs': grpc.unary_unary_rpc_method_handler(
289
+ servicer.PushLogs,
290
+ request_deserializer=flwr_dot_proto_dot_log__pb2.PushLogsRequest.FromString,
291
+ response_serializer=flwr_dot_proto_dot_log__pb2.PushLogsResponse.SerializeToString,
292
+ ),
293
+ 'PushMessages': grpc.unary_unary_rpc_method_handler(
294
+ servicer.PushMessages,
295
+ request_deserializer=flwr_dot_proto_dot_appio__pb2.PushAppMessagesRequest.FromString,
296
+ response_serializer=flwr_dot_proto_dot_appio__pb2.PushAppMessagesResponse.SerializeToString,
297
+ ),
298
+ 'PullMessages': grpc.unary_unary_rpc_method_handler(
299
+ servicer.PullMessages,
300
+ request_deserializer=flwr_dot_proto_dot_appio__pb2.PullAppMessagesRequest.FromString,
301
+ response_serializer=flwr_dot_proto_dot_appio__pb2.PullAppMessagesResponse.SerializeToString,
302
+ ),
303
+ 'GetNodes': grpc.unary_unary_rpc_method_handler(
304
+ servicer.GetNodes,
305
+ request_deserializer=flwr_dot_proto_dot_serverappio__pb2.GetNodesRequest.FromString,
306
+ response_serializer=flwr_dot_proto_dot_serverappio__pb2.GetNodesResponse.SerializeToString,
307
+ ),
323
308
  }
324
309
  generic_handler = grpc.method_handlers_generic_handler(
325
310
  'flwr.proto.ServerAppIo', rpc_method_handlers)
@@ -386,7 +371,7 @@ class ServerAppIo(object):
386
371
  _registered_method=True)
387
372
 
388
373
  @staticmethod
389
- def GetNodes(request,
374
+ def GetRun(request,
390
375
  target,
391
376
  options=(),
392
377
  channel_credentials=None,
@@ -399,9 +384,9 @@ class ServerAppIo(object):
399
384
  return grpc.experimental.unary_unary(
400
385
  request,
401
386
  target,
402
- '/flwr.proto.ServerAppIo/GetNodes',
403
- flwr_dot_proto_dot_serverappio__pb2.GetNodesRequest.SerializeToString,
404
- flwr_dot_proto_dot_serverappio__pb2.GetNodesResponse.FromString,
387
+ '/flwr.proto.ServerAppIo/GetRun',
388
+ flwr_dot_proto_dot_run__pb2.GetRunRequest.SerializeToString,
389
+ flwr_dot_proto_dot_run__pb2.GetRunResponse.FromString,
405
390
  options,
406
391
  channel_credentials,
407
392
  insecure,
@@ -413,7 +398,7 @@ class ServerAppIo(object):
413
398
  _registered_method=True)
414
399
 
415
400
  @staticmethod
416
- def PushMessages(request,
401
+ def SendAppHeartbeat(request,
417
402
  target,
418
403
  options=(),
419
404
  channel_credentials=None,
@@ -426,9 +411,9 @@ class ServerAppIo(object):
426
411
  return grpc.experimental.unary_unary(
427
412
  request,
428
413
  target,
429
- '/flwr.proto.ServerAppIo/PushMessages',
430
- flwr_dot_proto_dot_appio__pb2.PushAppMessagesRequest.SerializeToString,
431
- flwr_dot_proto_dot_appio__pb2.PushAppMessagesResponse.FromString,
414
+ '/flwr.proto.ServerAppIo/SendAppHeartbeat',
415
+ flwr_dot_proto_dot_heartbeat__pb2.SendAppHeartbeatRequest.SerializeToString,
416
+ flwr_dot_proto_dot_heartbeat__pb2.SendAppHeartbeatResponse.FromString,
432
417
  options,
433
418
  channel_credentials,
434
419
  insecure,
@@ -440,7 +425,7 @@ class ServerAppIo(object):
440
425
  _registered_method=True)
441
426
 
442
427
  @staticmethod
443
- def PullMessages(request,
428
+ def PullAppInputs(request,
444
429
  target,
445
430
  options=(),
446
431
  channel_credentials=None,
@@ -453,9 +438,9 @@ class ServerAppIo(object):
453
438
  return grpc.experimental.unary_unary(
454
439
  request,
455
440
  target,
456
- '/flwr.proto.ServerAppIo/PullMessages',
457
- flwr_dot_proto_dot_appio__pb2.PullAppMessagesRequest.SerializeToString,
458
- flwr_dot_proto_dot_appio__pb2.PullAppMessagesResponse.FromString,
441
+ '/flwr.proto.ServerAppIo/PullAppInputs',
442
+ flwr_dot_proto_dot_appio__pb2.PullAppInputsRequest.SerializeToString,
443
+ flwr_dot_proto_dot_appio__pb2.PullAppInputsResponse.FromString,
459
444
  options,
460
445
  channel_credentials,
461
446
  insecure,
@@ -467,7 +452,7 @@ class ServerAppIo(object):
467
452
  _registered_method=True)
468
453
 
469
454
  @staticmethod
470
- def GetRun(request,
455
+ def PushAppOutputs(request,
471
456
  target,
472
457
  options=(),
473
458
  channel_credentials=None,
@@ -480,9 +465,9 @@ class ServerAppIo(object):
480
465
  return grpc.experimental.unary_unary(
481
466
  request,
482
467
  target,
483
- '/flwr.proto.ServerAppIo/GetRun',
484
- flwr_dot_proto_dot_run__pb2.GetRunRequest.SerializeToString,
485
- flwr_dot_proto_dot_run__pb2.GetRunResponse.FromString,
468
+ '/flwr.proto.ServerAppIo/PushAppOutputs',
469
+ flwr_dot_proto_dot_appio__pb2.PushAppOutputsRequest.SerializeToString,
470
+ flwr_dot_proto_dot_appio__pb2.PushAppOutputsResponse.FromString,
486
471
  options,
487
472
  channel_credentials,
488
473
  insecure,
@@ -494,7 +479,7 @@ class ServerAppIo(object):
494
479
  _registered_method=True)
495
480
 
496
481
  @staticmethod
497
- def GetFab(request,
482
+ def PushObject(request,
498
483
  target,
499
484
  options=(),
500
485
  channel_credentials=None,
@@ -507,9 +492,9 @@ class ServerAppIo(object):
507
492
  return grpc.experimental.unary_unary(
508
493
  request,
509
494
  target,
510
- '/flwr.proto.ServerAppIo/GetFab',
511
- flwr_dot_proto_dot_fab__pb2.GetFabRequest.SerializeToString,
512
- flwr_dot_proto_dot_fab__pb2.GetFabResponse.FromString,
495
+ '/flwr.proto.ServerAppIo/PushObject',
496
+ flwr_dot_proto_dot_message__pb2.PushObjectRequest.SerializeToString,
497
+ flwr_dot_proto_dot_message__pb2.PushObjectResponse.FromString,
513
498
  options,
514
499
  channel_credentials,
515
500
  insecure,
@@ -521,7 +506,7 @@ class ServerAppIo(object):
521
506
  _registered_method=True)
522
507
 
523
508
  @staticmethod
524
- def PullAppInputs(request,
509
+ def PullObject(request,
525
510
  target,
526
511
  options=(),
527
512
  channel_credentials=None,
@@ -534,9 +519,9 @@ class ServerAppIo(object):
534
519
  return grpc.experimental.unary_unary(
535
520
  request,
536
521
  target,
537
- '/flwr.proto.ServerAppIo/PullAppInputs',
538
- flwr_dot_proto_dot_appio__pb2.PullAppInputsRequest.SerializeToString,
539
- flwr_dot_proto_dot_appio__pb2.PullAppInputsResponse.FromString,
522
+ '/flwr.proto.ServerAppIo/PullObject',
523
+ flwr_dot_proto_dot_message__pb2.PullObjectRequest.SerializeToString,
524
+ flwr_dot_proto_dot_message__pb2.PullObjectResponse.FromString,
540
525
  options,
541
526
  channel_credentials,
542
527
  insecure,
@@ -548,7 +533,7 @@ class ServerAppIo(object):
548
533
  _registered_method=True)
549
534
 
550
535
  @staticmethod
551
- def PushAppOutputs(request,
536
+ def ConfirmMessageReceived(request,
552
537
  target,
553
538
  options=(),
554
539
  channel_credentials=None,
@@ -561,9 +546,9 @@ class ServerAppIo(object):
561
546
  return grpc.experimental.unary_unary(
562
547
  request,
563
548
  target,
564
- '/flwr.proto.ServerAppIo/PushAppOutputs',
565
- flwr_dot_proto_dot_appio__pb2.PushAppOutputsRequest.SerializeToString,
566
- flwr_dot_proto_dot_appio__pb2.PushAppOutputsResponse.FromString,
549
+ '/flwr.proto.ServerAppIo/ConfirmMessageReceived',
550
+ flwr_dot_proto_dot_message__pb2.ConfirmMessageReceivedRequest.SerializeToString,
551
+ flwr_dot_proto_dot_message__pb2.ConfirmMessageReceivedResponse.FromString,
567
552
  options,
568
553
  channel_credentials,
569
554
  insecure,
@@ -601,33 +586,6 @@ class ServerAppIo(object):
601
586
  metadata,
602
587
  _registered_method=True)
603
588
 
604
- @staticmethod
605
- def GetRunStatus(request,
606
- target,
607
- options=(),
608
- channel_credentials=None,
609
- call_credentials=None,
610
- insecure=False,
611
- compression=None,
612
- wait_for_ready=None,
613
- timeout=None,
614
- metadata=None):
615
- return grpc.experimental.unary_unary(
616
- request,
617
- target,
618
- '/flwr.proto.ServerAppIo/GetRunStatus',
619
- flwr_dot_proto_dot_run__pb2.GetRunStatusRequest.SerializeToString,
620
- flwr_dot_proto_dot_run__pb2.GetRunStatusResponse.FromString,
621
- options,
622
- channel_credentials,
623
- insecure,
624
- call_credentials,
625
- compression,
626
- wait_for_ready,
627
- timeout,
628
- metadata,
629
- _registered_method=True)
630
-
631
589
  @staticmethod
632
590
  def PushLogs(request,
633
591
  target,
@@ -656,34 +614,7 @@ class ServerAppIo(object):
656
614
  _registered_method=True)
657
615
 
658
616
  @staticmethod
659
- def SendAppHeartbeat(request,
660
- target,
661
- options=(),
662
- channel_credentials=None,
663
- call_credentials=None,
664
- insecure=False,
665
- compression=None,
666
- wait_for_ready=None,
667
- timeout=None,
668
- metadata=None):
669
- return grpc.experimental.unary_unary(
670
- request,
671
- target,
672
- '/flwr.proto.ServerAppIo/SendAppHeartbeat',
673
- flwr_dot_proto_dot_heartbeat__pb2.SendAppHeartbeatRequest.SerializeToString,
674
- flwr_dot_proto_dot_heartbeat__pb2.SendAppHeartbeatResponse.FromString,
675
- options,
676
- channel_credentials,
677
- insecure,
678
- call_credentials,
679
- compression,
680
- wait_for_ready,
681
- timeout,
682
- metadata,
683
- _registered_method=True)
684
-
685
- @staticmethod
686
- def PushObject(request,
617
+ def PushMessages(request,
687
618
  target,
688
619
  options=(),
689
620
  channel_credentials=None,
@@ -696,9 +627,9 @@ class ServerAppIo(object):
696
627
  return grpc.experimental.unary_unary(
697
628
  request,
698
629
  target,
699
- '/flwr.proto.ServerAppIo/PushObject',
700
- flwr_dot_proto_dot_message__pb2.PushObjectRequest.SerializeToString,
701
- flwr_dot_proto_dot_message__pb2.PushObjectResponse.FromString,
630
+ '/flwr.proto.ServerAppIo/PushMessages',
631
+ flwr_dot_proto_dot_appio__pb2.PushAppMessagesRequest.SerializeToString,
632
+ flwr_dot_proto_dot_appio__pb2.PushAppMessagesResponse.FromString,
702
633
  options,
703
634
  channel_credentials,
704
635
  insecure,
@@ -710,7 +641,7 @@ class ServerAppIo(object):
710
641
  _registered_method=True)
711
642
 
712
643
  @staticmethod
713
- def PullObject(request,
644
+ def PullMessages(request,
714
645
  target,
715
646
  options=(),
716
647
  channel_credentials=None,
@@ -723,9 +654,9 @@ class ServerAppIo(object):
723
654
  return grpc.experimental.unary_unary(
724
655
  request,
725
656
  target,
726
- '/flwr.proto.ServerAppIo/PullObject',
727
- flwr_dot_proto_dot_message__pb2.PullObjectRequest.SerializeToString,
728
- flwr_dot_proto_dot_message__pb2.PullObjectResponse.FromString,
657
+ '/flwr.proto.ServerAppIo/PullMessages',
658
+ flwr_dot_proto_dot_appio__pb2.PullAppMessagesRequest.SerializeToString,
659
+ flwr_dot_proto_dot_appio__pb2.PullAppMessagesResponse.FromString,
729
660
  options,
730
661
  channel_credentials,
731
662
  insecure,
@@ -737,7 +668,7 @@ class ServerAppIo(object):
737
668
  _registered_method=True)
738
669
 
739
670
  @staticmethod
740
- def ConfirmMessageReceived(request,
671
+ def GetNodes(request,
741
672
  target,
742
673
  options=(),
743
674
  channel_credentials=None,
@@ -750,9 +681,9 @@ class ServerAppIo(object):
750
681
  return grpc.experimental.unary_unary(
751
682
  request,
752
683
  target,
753
- '/flwr.proto.ServerAppIo/ConfirmMessageReceived',
754
- flwr_dot_proto_dot_message__pb2.ConfirmMessageReceivedRequest.SerializeToString,
755
- flwr_dot_proto_dot_message__pb2.ConfirmMessageReceivedResponse.FromString,
684
+ '/flwr.proto.ServerAppIo/GetNodes',
685
+ flwr_dot_proto_dot_serverappio__pb2.GetNodesRequest.SerializeToString,
686
+ flwr_dot_proto_dot_serverappio__pb2.GetNodesResponse.FromString,
756
687
  options,
757
688
  channel_credentials,
758
689
  insecure,