flwr 1.25.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.
- flwr/__init__.py +1 -1
- flwr/app/__init__.py +4 -1
- flwr/app/message_type.py +29 -0
- flwr/app/metadata.py +5 -2
- flwr/app/user_config.py +19 -0
- flwr/cli/app.py +37 -19
- flwr/cli/app_cmd/publish.py +25 -75
- flwr/cli/app_cmd/review.py +18 -69
- flwr/cli/auth_plugin/auth_plugin.py +5 -10
- flwr/cli/auth_plugin/noop_auth_plugin.py +1 -2
- flwr/cli/auth_plugin/oidc_cli_plugin.py +38 -38
- flwr/cli/build.py +15 -28
- flwr/cli/config/__init__.py +21 -0
- flwr/cli/config/ls.py +71 -0
- flwr/cli/config_migration.py +297 -0
- flwr/cli/config_utils.py +63 -156
- flwr/cli/constant.py +71 -0
- flwr/cli/federation/__init__.py +0 -2
- flwr/cli/federation/ls.py +256 -64
- flwr/cli/flower_config.py +429 -0
- flwr/cli/install.py +23 -62
- flwr/cli/log.py +23 -37
- flwr/cli/login/login.py +29 -63
- flwr/cli/ls.py +28 -58
- flwr/cli/new/new.py +9 -29
- flwr/cli/pull.py +19 -37
- flwr/cli/run/run.py +85 -93
- flwr/cli/run_utils.py +1 -1
- flwr/cli/stop.py +32 -73
- flwr/cli/supernode/ls.py +25 -57
- flwr/cli/supernode/register.py +31 -80
- flwr/cli/supernode/unregister.py +24 -70
- flwr/cli/typing.py +200 -0
- flwr/cli/utils.py +160 -275
- flwr/client/grpc_rere_client/connection.py +3 -3
- flwr/client/grpc_rere_client/grpc_adapter.py +1 -1
- flwr/client/message_handler/message_handler.py +2 -1
- flwr/client/mod/centraldp_mods.py +1 -1
- flwr/client/mod/localdp_mod.py +1 -1
- flwr/client/mod/secure_aggregation/secaggplus_mod.py +1 -1
- flwr/client/run_info_store.py +2 -1
- flwr/clientapp/client_app.py +2 -1
- flwr/common/__init__.py +3 -2
- flwr/common/args.py +5 -5
- flwr/common/config.py +12 -17
- flwr/common/constant.py +3 -16
- flwr/common/context.py +2 -1
- flwr/common/exit/exit.py +4 -4
- flwr/common/exit/exit_code.py +6 -0
- flwr/common/grpc.py +2 -1
- flwr/common/logger.py +1 -1
- flwr/common/message.py +1 -1
- flwr/common/retry_invoker.py +13 -5
- flwr/common/secure_aggregation/ndarrays_arithmetic.py +5 -2
- flwr/common/serde.py +7 -5
- flwr/common/telemetry.py +1 -1
- flwr/common/typing.py +4 -3
- flwr/compat/client/app.py +6 -9
- flwr/compat/client/grpc_client/connection.py +2 -1
- flwr/compat/common/constant.py +29 -0
- flwr/compat/server/app.py +1 -1
- flwr/proto/clientappio_pb2.py +2 -2
- flwr/proto/clientappio_pb2_grpc.py +104 -88
- flwr/proto/clientappio_pb2_grpc.pyi +140 -80
- flwr/proto/federation_pb2.py +5 -3
- flwr/proto/federation_pb2.pyi +32 -2
- flwr/proto/run_pb2.py +5 -13
- flwr/proto/run_pb2.pyi +0 -57
- flwr/proto/serverappio_pb2.py +2 -2
- flwr/proto/serverappio_pb2_grpc.py +138 -207
- flwr/proto/serverappio_pb2_grpc.pyi +189 -155
- flwr/proto/simulationio_pb2.py +2 -2
- flwr/proto/simulationio_pb2_grpc.py +62 -90
- flwr/proto/simulationio_pb2_grpc.pyi +95 -55
- flwr/server/app.py +6 -13
- flwr/server/compat/grid_client_proxy.py +2 -1
- flwr/server/grid/grpc_grid.py +5 -5
- flwr/server/serverapp/app.py +11 -4
- flwr/server/superlink/fleet/grpc_adapter/grpc_adapter_servicer.py +1 -1
- flwr/server/superlink/fleet/grpc_rere/node_auth_server_interceptor.py +13 -12
- flwr/server/superlink/fleet/message_handler/message_handler.py +6 -5
- flwr/server/superlink/linkstate/__init__.py +2 -2
- flwr/server/superlink/linkstate/in_memory_linkstate.py +2 -10
- flwr/server/superlink/linkstate/linkstate.py +2 -21
- flwr/server/superlink/linkstate/linkstate_factory.py +16 -8
- flwr/server/superlink/linkstate/{sqlite_linkstate.py → sql_linkstate.py} +432 -534
- flwr/server/superlink/linkstate/utils.py +49 -2
- flwr/server/superlink/serverappio/serverappio_servicer.py +1 -33
- flwr/server/superlink/simulation/simulationio_servicer.py +0 -19
- flwr/server/utils/validator.py +1 -1
- flwr/server/workflow/default_workflows.py +2 -1
- flwr/server/workflow/secure_aggregation/secaggplus_workflow.py +1 -1
- flwr/serverapp/strategy/bulyan.py +7 -1
- flwr/serverapp/strategy/dp_fixed_clipping.py +9 -1
- flwr/serverapp/strategy/fedavg.py +1 -1
- flwr/serverapp/strategy/fedxgb_cyclic.py +1 -1
- flwr/simulation/ray_transport/ray_client_proxy.py +2 -6
- flwr/simulation/run_simulation.py +3 -12
- flwr/simulation/simulationio_connection.py +3 -3
- flwr/{common → supercore}/address.py +7 -33
- flwr/supercore/app_utils.py +2 -1
- flwr/supercore/constant.py +24 -2
- flwr/supercore/corestate/{sqlite_corestate.py → sql_corestate.py} +19 -23
- flwr/supercore/credential_store/__init__.py +33 -0
- flwr/supercore/credential_store/credential_store.py +34 -0
- flwr/supercore/credential_store/file_credential_store.py +76 -0
- flwr/{common → supercore}/date.py +0 -11
- flwr/supercore/ffs/disk_ffs.py +1 -1
- flwr/supercore/object_store/object_store_factory.py +14 -6
- flwr/supercore/object_store/{sqlite_object_store.py → sql_object_store.py} +115 -117
- flwr/supercore/sql_mixin.py +315 -0
- flwr/supercore/state/__init__.py +15 -0
- flwr/supercore/state/alembic/__init__.py +15 -0
- flwr/supercore/state/alembic/env.py +103 -0
- flwr/supercore/state/alembic/script.py.mako +43 -0
- flwr/supercore/state/alembic/utils.py +239 -0
- flwr/supercore/state/alembic/versions/__init__.py +15 -0
- flwr/supercore/state/alembic/versions/rev_2026_01_28_initialize_migration_of_state_tables.py +200 -0
- flwr/supercore/state/schema/README.md +121 -0
- flwr/supercore/state/schema/__init__.py +15 -0
- flwr/supercore/state/schema/corestate_tables.py +36 -0
- flwr/supercore/state/schema/linkstate_tables.py +152 -0
- flwr/supercore/state/schema/objectstore_tables.py +90 -0
- flwr/supercore/superexec/run_superexec.py +2 -2
- flwr/supercore/utils.py +36 -1
- flwr/superlink/federation/federation_manager.py +2 -2
- flwr/superlink/federation/noop_federation_manager.py +8 -6
- flwr/superlink/servicer/control/control_servicer.py +19 -17
- flwr/supernode/cli/flower_supernode.py +2 -1
- flwr/supernode/runtime/run_clientapp.py +14 -14
- flwr/supernode/servicer/clientappio/clientappio_servicer.py +10 -8
- flwr/supernode/start_client_internal.py +10 -6
- {flwr-1.25.0.dist-info → flwr-1.26.0.dist-info}/METADATA +7 -5
- {flwr-1.25.0.dist-info → flwr-1.26.0.dist-info}/RECORD +137 -116
- flwr/cli/federation/show.py +0 -318
- flwr/common/pyproject.py +0 -42
- flwr/supercore/sqlite_mixin.py +0 -159
- /flwr/{common → supercore}/version.py +0 -0
- {flwr-1.25.0.dist-info → flwr-1.26.0.dist-info}/WHEEL +0 -0
- {flwr-1.25.0.dist-info → flwr-1.26.0.dist-info}/entry_points.txt +0 -0
|
@@ -20,7 +20,6 @@ limitations under the License.
|
|
|
20
20
|
import abc
|
|
21
21
|
import collections.abc
|
|
22
22
|
import flwr.proto.appio_pb2
|
|
23
|
-
import flwr.proto.fab_pb2
|
|
24
23
|
import flwr.proto.heartbeat_pb2
|
|
25
24
|
import flwr.proto.log_pb2
|
|
26
25
|
import flwr.proto.message_pb2
|
|
@@ -43,7 +42,12 @@ class ServerAppIoStub:
|
|
|
43
42
|
flwr.proto.appio_pb2.ListAppsToLaunchRequest,
|
|
44
43
|
flwr.proto.appio_pb2.ListAppsToLaunchResponse,
|
|
45
44
|
]
|
|
46
|
-
"""
|
|
45
|
+
"""///////////////////////////////////////////////////////////////////////////
|
|
46
|
+
General *AppIo endpoints for SuperExec processes
|
|
47
|
+
///////////////////////////////////////////////////////////////////////////
|
|
48
|
+
|
|
49
|
+
List runs to launch
|
|
50
|
+
"""
|
|
47
51
|
|
|
48
52
|
RequestToken: grpc.UnaryUnaryMultiCallable[
|
|
49
53
|
flwr.proto.appio_pb2.RequestTokenRequest,
|
|
@@ -51,77 +55,45 @@ class ServerAppIoStub:
|
|
|
51
55
|
]
|
|
52
56
|
"""Request token for a run"""
|
|
53
57
|
|
|
54
|
-
GetNodes: grpc.UnaryUnaryMultiCallable[
|
|
55
|
-
flwr.proto.serverappio_pb2.GetNodesRequest,
|
|
56
|
-
flwr.proto.serverappio_pb2.GetNodesResponse,
|
|
57
|
-
]
|
|
58
|
-
"""Return a set of nodes"""
|
|
59
|
-
|
|
60
|
-
PushMessages: grpc.UnaryUnaryMultiCallable[
|
|
61
|
-
flwr.proto.appio_pb2.PushAppMessagesRequest,
|
|
62
|
-
flwr.proto.appio_pb2.PushAppMessagesResponse,
|
|
63
|
-
]
|
|
64
|
-
"""Create one or more messages"""
|
|
65
|
-
|
|
66
|
-
PullMessages: grpc.UnaryUnaryMultiCallable[
|
|
67
|
-
flwr.proto.appio_pb2.PullAppMessagesRequest,
|
|
68
|
-
flwr.proto.appio_pb2.PullAppMessagesResponse,
|
|
69
|
-
]
|
|
70
|
-
"""Get message results"""
|
|
71
|
-
|
|
72
58
|
GetRun: grpc.UnaryUnaryMultiCallable[
|
|
73
59
|
flwr.proto.run_pb2.GetRunRequest,
|
|
74
60
|
flwr.proto.run_pb2.GetRunResponse,
|
|
75
61
|
]
|
|
76
|
-
"""
|
|
62
|
+
"""///////////////////////////////////////////////////////////////////////////
|
|
63
|
+
General *AppIo endpoints for App Executor processes
|
|
64
|
+
///////////////////////////////////////////////////////////////////////////
|
|
77
65
|
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
66
|
+
Get run details
|
|
67
|
+
"""
|
|
68
|
+
|
|
69
|
+
SendAppHeartbeat: grpc.UnaryUnaryMultiCallable[
|
|
70
|
+
flwr.proto.heartbeat_pb2.SendAppHeartbeatRequest,
|
|
71
|
+
flwr.proto.heartbeat_pb2.SendAppHeartbeatResponse,
|
|
81
72
|
]
|
|
82
|
-
"""
|
|
73
|
+
"""App heartbeat"""
|
|
83
74
|
|
|
84
75
|
PullAppInputs: grpc.UnaryUnaryMultiCallable[
|
|
85
76
|
flwr.proto.appio_pb2.PullAppInputsRequest,
|
|
86
77
|
flwr.proto.appio_pb2.PullAppInputsResponse,
|
|
87
78
|
]
|
|
88
|
-
"""Pull
|
|
79
|
+
"""Pull app inputs"""
|
|
89
80
|
|
|
90
81
|
PushAppOutputs: grpc.UnaryUnaryMultiCallable[
|
|
91
82
|
flwr.proto.appio_pb2.PushAppOutputsRequest,
|
|
92
83
|
flwr.proto.appio_pb2.PushAppOutputsResponse,
|
|
93
84
|
]
|
|
94
|
-
"""Push
|
|
95
|
-
|
|
96
|
-
UpdateRunStatus: grpc.UnaryUnaryMultiCallable[
|
|
97
|
-
flwr.proto.run_pb2.UpdateRunStatusRequest,
|
|
98
|
-
flwr.proto.run_pb2.UpdateRunStatusResponse,
|
|
99
|
-
]
|
|
100
|
-
"""Update the status of a given run"""
|
|
101
|
-
|
|
102
|
-
GetRunStatus: grpc.UnaryUnaryMultiCallable[
|
|
103
|
-
flwr.proto.run_pb2.GetRunStatusRequest,
|
|
104
|
-
flwr.proto.run_pb2.GetRunStatusResponse,
|
|
105
|
-
]
|
|
106
|
-
"""Get the status of a given run"""
|
|
107
|
-
|
|
108
|
-
PushLogs: grpc.UnaryUnaryMultiCallable[
|
|
109
|
-
flwr.proto.log_pb2.PushLogsRequest,
|
|
110
|
-
flwr.proto.log_pb2.PushLogsResponse,
|
|
111
|
-
]
|
|
112
|
-
"""Push ServerApp logs"""
|
|
113
|
-
|
|
114
|
-
SendAppHeartbeat: grpc.UnaryUnaryMultiCallable[
|
|
115
|
-
flwr.proto.heartbeat_pb2.SendAppHeartbeatRequest,
|
|
116
|
-
flwr.proto.heartbeat_pb2.SendAppHeartbeatResponse,
|
|
117
|
-
]
|
|
118
|
-
"""App heartbeat"""
|
|
85
|
+
"""Push app outputs"""
|
|
119
86
|
|
|
120
87
|
PushObject: grpc.UnaryUnaryMultiCallable[
|
|
121
88
|
flwr.proto.message_pb2.PushObjectRequest,
|
|
122
89
|
flwr.proto.message_pb2.PushObjectResponse,
|
|
123
90
|
]
|
|
124
|
-
"""
|
|
91
|
+
"""///////////////////////////////////////////////////////////////////////////
|
|
92
|
+
Specific endpoints shared by ServerAppIo and ClientAppIo
|
|
93
|
+
///////////////////////////////////////////////////////////////////////////
|
|
94
|
+
|
|
95
|
+
Push Object
|
|
96
|
+
"""
|
|
125
97
|
|
|
126
98
|
PullObject: grpc.UnaryUnaryMultiCallable[
|
|
127
99
|
flwr.proto.message_pb2.PullObjectRequest,
|
|
@@ -135,72 +107,126 @@ class ServerAppIoStub:
|
|
|
135
107
|
]
|
|
136
108
|
"""Confirm Message Received"""
|
|
137
109
|
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
flwr.proto.
|
|
141
|
-
flwr.proto.appio_pb2.ListAppsToLaunchResponse,
|
|
110
|
+
UpdateRunStatus: grpc.UnaryUnaryMultiCallable[
|
|
111
|
+
flwr.proto.run_pb2.UpdateRunStatusRequest,
|
|
112
|
+
flwr.proto.run_pb2.UpdateRunStatusResponse,
|
|
142
113
|
]
|
|
143
|
-
"""
|
|
114
|
+
"""///////////////////////////////////////////////////////////////////////////
|
|
115
|
+
Specific endpoints shared by ServerAppIo and SimulationIo
|
|
116
|
+
///////////////////////////////////////////////////////////////////////////
|
|
144
117
|
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
flwr.proto.appio_pb2.RequestTokenResponse,
|
|
148
|
-
]
|
|
149
|
-
"""Request token for a run"""
|
|
118
|
+
Update the status of a given run
|
|
119
|
+
"""
|
|
150
120
|
|
|
151
|
-
|
|
152
|
-
flwr.proto.
|
|
153
|
-
flwr.proto.
|
|
121
|
+
PushLogs: grpc.UnaryUnaryMultiCallable[
|
|
122
|
+
flwr.proto.log_pb2.PushLogsRequest,
|
|
123
|
+
flwr.proto.log_pb2.PushLogsResponse,
|
|
154
124
|
]
|
|
155
|
-
"""
|
|
125
|
+
"""Push ServerApp logs"""
|
|
156
126
|
|
|
157
|
-
PushMessages: grpc.
|
|
127
|
+
PushMessages: grpc.UnaryUnaryMultiCallable[
|
|
158
128
|
flwr.proto.appio_pb2.PushAppMessagesRequest,
|
|
159
129
|
flwr.proto.appio_pb2.PushAppMessagesResponse,
|
|
160
130
|
]
|
|
161
|
-
"""
|
|
131
|
+
"""///////////////////////////////////////////////////////////////////////////
|
|
132
|
+
Specific endpoints for ServerAppIo
|
|
133
|
+
///////////////////////////////////////////////////////////////////////////
|
|
162
134
|
|
|
163
|
-
|
|
135
|
+
Create one or more messages
|
|
136
|
+
"""
|
|
137
|
+
|
|
138
|
+
PullMessages: grpc.UnaryUnaryMultiCallable[
|
|
164
139
|
flwr.proto.appio_pb2.PullAppMessagesRequest,
|
|
165
140
|
flwr.proto.appio_pb2.PullAppMessagesResponse,
|
|
166
141
|
]
|
|
167
142
|
"""Get message results"""
|
|
168
143
|
|
|
144
|
+
GetNodes: grpc.UnaryUnaryMultiCallable[
|
|
145
|
+
flwr.proto.serverappio_pb2.GetNodesRequest,
|
|
146
|
+
flwr.proto.serverappio_pb2.GetNodesResponse,
|
|
147
|
+
]
|
|
148
|
+
"""Return a set of nodes"""
|
|
149
|
+
|
|
150
|
+
class ServerAppIoAsyncStub:
|
|
151
|
+
ListAppsToLaunch: grpc.aio.UnaryUnaryMultiCallable[
|
|
152
|
+
flwr.proto.appio_pb2.ListAppsToLaunchRequest,
|
|
153
|
+
flwr.proto.appio_pb2.ListAppsToLaunchResponse,
|
|
154
|
+
]
|
|
155
|
+
"""///////////////////////////////////////////////////////////////////////////
|
|
156
|
+
General *AppIo endpoints for SuperExec processes
|
|
157
|
+
///////////////////////////////////////////////////////////////////////////
|
|
158
|
+
|
|
159
|
+
List runs to launch
|
|
160
|
+
"""
|
|
161
|
+
|
|
162
|
+
RequestToken: grpc.aio.UnaryUnaryMultiCallable[
|
|
163
|
+
flwr.proto.appio_pb2.RequestTokenRequest,
|
|
164
|
+
flwr.proto.appio_pb2.RequestTokenResponse,
|
|
165
|
+
]
|
|
166
|
+
"""Request token for a run"""
|
|
167
|
+
|
|
169
168
|
GetRun: grpc.aio.UnaryUnaryMultiCallable[
|
|
170
169
|
flwr.proto.run_pb2.GetRunRequest,
|
|
171
170
|
flwr.proto.run_pb2.GetRunResponse,
|
|
172
171
|
]
|
|
173
|
-
"""
|
|
172
|
+
"""///////////////////////////////////////////////////////////////////////////
|
|
173
|
+
General *AppIo endpoints for App Executor processes
|
|
174
|
+
///////////////////////////////////////////////////////////////////////////
|
|
175
|
+
|
|
176
|
+
Get run details
|
|
177
|
+
"""
|
|
174
178
|
|
|
175
|
-
|
|
176
|
-
flwr.proto.
|
|
177
|
-
flwr.proto.
|
|
179
|
+
SendAppHeartbeat: grpc.aio.UnaryUnaryMultiCallable[
|
|
180
|
+
flwr.proto.heartbeat_pb2.SendAppHeartbeatRequest,
|
|
181
|
+
flwr.proto.heartbeat_pb2.SendAppHeartbeatResponse,
|
|
178
182
|
]
|
|
179
|
-
"""
|
|
183
|
+
"""App heartbeat"""
|
|
180
184
|
|
|
181
185
|
PullAppInputs: grpc.aio.UnaryUnaryMultiCallable[
|
|
182
186
|
flwr.proto.appio_pb2.PullAppInputsRequest,
|
|
183
187
|
flwr.proto.appio_pb2.PullAppInputsResponse,
|
|
184
188
|
]
|
|
185
|
-
"""Pull
|
|
189
|
+
"""Pull app inputs"""
|
|
186
190
|
|
|
187
191
|
PushAppOutputs: grpc.aio.UnaryUnaryMultiCallable[
|
|
188
192
|
flwr.proto.appio_pb2.PushAppOutputsRequest,
|
|
189
193
|
flwr.proto.appio_pb2.PushAppOutputsResponse,
|
|
190
194
|
]
|
|
191
|
-
"""Push
|
|
195
|
+
"""Push app outputs"""
|
|
196
|
+
|
|
197
|
+
PushObject: grpc.aio.UnaryUnaryMultiCallable[
|
|
198
|
+
flwr.proto.message_pb2.PushObjectRequest,
|
|
199
|
+
flwr.proto.message_pb2.PushObjectResponse,
|
|
200
|
+
]
|
|
201
|
+
"""///////////////////////////////////////////////////////////////////////////
|
|
202
|
+
Specific endpoints shared by ServerAppIo and ClientAppIo
|
|
203
|
+
///////////////////////////////////////////////////////////////////////////
|
|
204
|
+
|
|
205
|
+
Push Object
|
|
206
|
+
"""
|
|
207
|
+
|
|
208
|
+
PullObject: grpc.aio.UnaryUnaryMultiCallable[
|
|
209
|
+
flwr.proto.message_pb2.PullObjectRequest,
|
|
210
|
+
flwr.proto.message_pb2.PullObjectResponse,
|
|
211
|
+
]
|
|
212
|
+
"""Pull Object"""
|
|
213
|
+
|
|
214
|
+
ConfirmMessageReceived: grpc.aio.UnaryUnaryMultiCallable[
|
|
215
|
+
flwr.proto.message_pb2.ConfirmMessageReceivedRequest,
|
|
216
|
+
flwr.proto.message_pb2.ConfirmMessageReceivedResponse,
|
|
217
|
+
]
|
|
218
|
+
"""Confirm Message Received"""
|
|
192
219
|
|
|
193
220
|
UpdateRunStatus: grpc.aio.UnaryUnaryMultiCallable[
|
|
194
221
|
flwr.proto.run_pb2.UpdateRunStatusRequest,
|
|
195
222
|
flwr.proto.run_pb2.UpdateRunStatusResponse,
|
|
196
223
|
]
|
|
197
|
-
"""
|
|
224
|
+
"""///////////////////////////////////////////////////////////////////////////
|
|
225
|
+
Specific endpoints shared by ServerAppIo and SimulationIo
|
|
226
|
+
///////////////////////////////////////////////////////////////////////////
|
|
198
227
|
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
flwr.proto.run_pb2.GetRunStatusResponse,
|
|
202
|
-
]
|
|
203
|
-
"""Get the status of a given run"""
|
|
228
|
+
Update the status of a given run
|
|
229
|
+
"""
|
|
204
230
|
|
|
205
231
|
PushLogs: grpc.aio.UnaryUnaryMultiCallable[
|
|
206
232
|
flwr.proto.log_pb2.PushLogsRequest,
|
|
@@ -208,29 +234,28 @@ class ServerAppIoAsyncStub:
|
|
|
208
234
|
]
|
|
209
235
|
"""Push ServerApp logs"""
|
|
210
236
|
|
|
211
|
-
|
|
212
|
-
flwr.proto.
|
|
213
|
-
flwr.proto.
|
|
237
|
+
PushMessages: grpc.aio.UnaryUnaryMultiCallable[
|
|
238
|
+
flwr.proto.appio_pb2.PushAppMessagesRequest,
|
|
239
|
+
flwr.proto.appio_pb2.PushAppMessagesResponse,
|
|
214
240
|
]
|
|
215
|
-
"""
|
|
241
|
+
"""///////////////////////////////////////////////////////////////////////////
|
|
242
|
+
Specific endpoints for ServerAppIo
|
|
243
|
+
///////////////////////////////////////////////////////////////////////////
|
|
216
244
|
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
flwr.proto.message_pb2.PushObjectResponse,
|
|
220
|
-
]
|
|
221
|
-
"""Push Object"""
|
|
245
|
+
Create one or more messages
|
|
246
|
+
"""
|
|
222
247
|
|
|
223
|
-
|
|
224
|
-
flwr.proto.
|
|
225
|
-
flwr.proto.
|
|
248
|
+
PullMessages: grpc.aio.UnaryUnaryMultiCallable[
|
|
249
|
+
flwr.proto.appio_pb2.PullAppMessagesRequest,
|
|
250
|
+
flwr.proto.appio_pb2.PullAppMessagesResponse,
|
|
226
251
|
]
|
|
227
|
-
"""
|
|
252
|
+
"""Get message results"""
|
|
228
253
|
|
|
229
|
-
|
|
230
|
-
flwr.proto.
|
|
231
|
-
flwr.proto.
|
|
254
|
+
GetNodes: grpc.aio.UnaryUnaryMultiCallable[
|
|
255
|
+
flwr.proto.serverappio_pb2.GetNodesRequest,
|
|
256
|
+
flwr.proto.serverappio_pb2.GetNodesResponse,
|
|
232
257
|
]
|
|
233
|
-
"""
|
|
258
|
+
"""Return a set of nodes"""
|
|
234
259
|
|
|
235
260
|
class ServerAppIoServicer(metaclass=abc.ABCMeta):
|
|
236
261
|
@abc.abstractmethod
|
|
@@ -239,7 +264,12 @@ class ServerAppIoServicer(metaclass=abc.ABCMeta):
|
|
|
239
264
|
request: flwr.proto.appio_pb2.ListAppsToLaunchRequest,
|
|
240
265
|
context: _ServicerContext,
|
|
241
266
|
) -> typing.Union[flwr.proto.appio_pb2.ListAppsToLaunchResponse, collections.abc.Awaitable[flwr.proto.appio_pb2.ListAppsToLaunchResponse]]:
|
|
242
|
-
"""
|
|
267
|
+
"""///////////////////////////////////////////////////////////////////////////
|
|
268
|
+
General *AppIo endpoints for SuperExec processes
|
|
269
|
+
///////////////////////////////////////////////////////////////////////////
|
|
270
|
+
|
|
271
|
+
List runs to launch
|
|
272
|
+
"""
|
|
243
273
|
|
|
244
274
|
@abc.abstractmethod
|
|
245
275
|
def RequestToken(
|
|
@@ -250,60 +280,70 @@ class ServerAppIoServicer(metaclass=abc.ABCMeta):
|
|
|
250
280
|
"""Request token for a run"""
|
|
251
281
|
|
|
252
282
|
@abc.abstractmethod
|
|
253
|
-
def
|
|
283
|
+
def GetRun(
|
|
254
284
|
self,
|
|
255
|
-
request: flwr.proto.
|
|
285
|
+
request: flwr.proto.run_pb2.GetRunRequest,
|
|
256
286
|
context: _ServicerContext,
|
|
257
|
-
) -> typing.Union[flwr.proto.
|
|
258
|
-
"""
|
|
287
|
+
) -> typing.Union[flwr.proto.run_pb2.GetRunResponse, collections.abc.Awaitable[flwr.proto.run_pb2.GetRunResponse]]:
|
|
288
|
+
"""///////////////////////////////////////////////////////////////////////////
|
|
289
|
+
General *AppIo endpoints for App Executor processes
|
|
290
|
+
///////////////////////////////////////////////////////////////////////////
|
|
291
|
+
|
|
292
|
+
Get run details
|
|
293
|
+
"""
|
|
259
294
|
|
|
260
295
|
@abc.abstractmethod
|
|
261
|
-
def
|
|
296
|
+
def SendAppHeartbeat(
|
|
262
297
|
self,
|
|
263
|
-
request: flwr.proto.
|
|
298
|
+
request: flwr.proto.heartbeat_pb2.SendAppHeartbeatRequest,
|
|
264
299
|
context: _ServicerContext,
|
|
265
|
-
) -> typing.Union[flwr.proto.
|
|
266
|
-
"""
|
|
300
|
+
) -> typing.Union[flwr.proto.heartbeat_pb2.SendAppHeartbeatResponse, collections.abc.Awaitable[flwr.proto.heartbeat_pb2.SendAppHeartbeatResponse]]:
|
|
301
|
+
"""App heartbeat"""
|
|
267
302
|
|
|
268
303
|
@abc.abstractmethod
|
|
269
|
-
def
|
|
304
|
+
def PullAppInputs(
|
|
270
305
|
self,
|
|
271
|
-
request: flwr.proto.appio_pb2.
|
|
306
|
+
request: flwr.proto.appio_pb2.PullAppInputsRequest,
|
|
272
307
|
context: _ServicerContext,
|
|
273
|
-
) -> typing.Union[flwr.proto.appio_pb2.
|
|
274
|
-
"""
|
|
308
|
+
) -> typing.Union[flwr.proto.appio_pb2.PullAppInputsResponse, collections.abc.Awaitable[flwr.proto.appio_pb2.PullAppInputsResponse]]:
|
|
309
|
+
"""Pull app inputs"""
|
|
275
310
|
|
|
276
311
|
@abc.abstractmethod
|
|
277
|
-
def
|
|
312
|
+
def PushAppOutputs(
|
|
278
313
|
self,
|
|
279
|
-
request: flwr.proto.
|
|
314
|
+
request: flwr.proto.appio_pb2.PushAppOutputsRequest,
|
|
280
315
|
context: _ServicerContext,
|
|
281
|
-
) -> typing.Union[flwr.proto.
|
|
282
|
-
"""
|
|
316
|
+
) -> typing.Union[flwr.proto.appio_pb2.PushAppOutputsResponse, collections.abc.Awaitable[flwr.proto.appio_pb2.PushAppOutputsResponse]]:
|
|
317
|
+
"""Push app outputs"""
|
|
283
318
|
|
|
284
319
|
@abc.abstractmethod
|
|
285
|
-
def
|
|
320
|
+
def PushObject(
|
|
286
321
|
self,
|
|
287
|
-
request: flwr.proto.
|
|
322
|
+
request: flwr.proto.message_pb2.PushObjectRequest,
|
|
288
323
|
context: _ServicerContext,
|
|
289
|
-
) -> typing.Union[flwr.proto.
|
|
290
|
-
"""
|
|
324
|
+
) -> typing.Union[flwr.proto.message_pb2.PushObjectResponse, collections.abc.Awaitable[flwr.proto.message_pb2.PushObjectResponse]]:
|
|
325
|
+
"""///////////////////////////////////////////////////////////////////////////
|
|
326
|
+
Specific endpoints shared by ServerAppIo and ClientAppIo
|
|
327
|
+
///////////////////////////////////////////////////////////////////////////
|
|
328
|
+
|
|
329
|
+
Push Object
|
|
330
|
+
"""
|
|
291
331
|
|
|
292
332
|
@abc.abstractmethod
|
|
293
|
-
def
|
|
333
|
+
def PullObject(
|
|
294
334
|
self,
|
|
295
|
-
request: flwr.proto.
|
|
335
|
+
request: flwr.proto.message_pb2.PullObjectRequest,
|
|
296
336
|
context: _ServicerContext,
|
|
297
|
-
) -> typing.Union[flwr.proto.
|
|
298
|
-
"""Pull
|
|
337
|
+
) -> typing.Union[flwr.proto.message_pb2.PullObjectResponse, collections.abc.Awaitable[flwr.proto.message_pb2.PullObjectResponse]]:
|
|
338
|
+
"""Pull Object"""
|
|
299
339
|
|
|
300
340
|
@abc.abstractmethod
|
|
301
|
-
def
|
|
341
|
+
def ConfirmMessageReceived(
|
|
302
342
|
self,
|
|
303
|
-
request: flwr.proto.
|
|
343
|
+
request: flwr.proto.message_pb2.ConfirmMessageReceivedRequest,
|
|
304
344
|
context: _ServicerContext,
|
|
305
|
-
) -> typing.Union[flwr.proto.
|
|
306
|
-
"""
|
|
345
|
+
) -> typing.Union[flwr.proto.message_pb2.ConfirmMessageReceivedResponse, collections.abc.Awaitable[flwr.proto.message_pb2.ConfirmMessageReceivedResponse]]:
|
|
346
|
+
"""Confirm Message Received"""
|
|
307
347
|
|
|
308
348
|
@abc.abstractmethod
|
|
309
349
|
def UpdateRunStatus(
|
|
@@ -311,15 +351,12 @@ class ServerAppIoServicer(metaclass=abc.ABCMeta):
|
|
|
311
351
|
request: flwr.proto.run_pb2.UpdateRunStatusRequest,
|
|
312
352
|
context: _ServicerContext,
|
|
313
353
|
) -> typing.Union[flwr.proto.run_pb2.UpdateRunStatusResponse, collections.abc.Awaitable[flwr.proto.run_pb2.UpdateRunStatusResponse]]:
|
|
314
|
-
"""
|
|
354
|
+
"""///////////////////////////////////////////////////////////////////////////
|
|
355
|
+
Specific endpoints shared by ServerAppIo and SimulationIo
|
|
356
|
+
///////////////////////////////////////////////////////////////////////////
|
|
315
357
|
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
self,
|
|
319
|
-
request: flwr.proto.run_pb2.GetRunStatusRequest,
|
|
320
|
-
context: _ServicerContext,
|
|
321
|
-
) -> typing.Union[flwr.proto.run_pb2.GetRunStatusResponse, collections.abc.Awaitable[flwr.proto.run_pb2.GetRunStatusResponse]]:
|
|
322
|
-
"""Get the status of a given run"""
|
|
358
|
+
Update the status of a given run
|
|
359
|
+
"""
|
|
323
360
|
|
|
324
361
|
@abc.abstractmethod
|
|
325
362
|
def PushLogs(
|
|
@@ -330,35 +367,32 @@ class ServerAppIoServicer(metaclass=abc.ABCMeta):
|
|
|
330
367
|
"""Push ServerApp logs"""
|
|
331
368
|
|
|
332
369
|
@abc.abstractmethod
|
|
333
|
-
def
|
|
370
|
+
def PushMessages(
|
|
334
371
|
self,
|
|
335
|
-
request: flwr.proto.
|
|
372
|
+
request: flwr.proto.appio_pb2.PushAppMessagesRequest,
|
|
336
373
|
context: _ServicerContext,
|
|
337
|
-
) -> typing.Union[flwr.proto.
|
|
338
|
-
"""
|
|
374
|
+
) -> typing.Union[flwr.proto.appio_pb2.PushAppMessagesResponse, collections.abc.Awaitable[flwr.proto.appio_pb2.PushAppMessagesResponse]]:
|
|
375
|
+
"""///////////////////////////////////////////////////////////////////////////
|
|
376
|
+
Specific endpoints for ServerAppIo
|
|
377
|
+
///////////////////////////////////////////////////////////////////////////
|
|
339
378
|
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
self,
|
|
343
|
-
request: flwr.proto.message_pb2.PushObjectRequest,
|
|
344
|
-
context: _ServicerContext,
|
|
345
|
-
) -> typing.Union[flwr.proto.message_pb2.PushObjectResponse, collections.abc.Awaitable[flwr.proto.message_pb2.PushObjectResponse]]:
|
|
346
|
-
"""Push Object"""
|
|
379
|
+
Create one or more messages
|
|
380
|
+
"""
|
|
347
381
|
|
|
348
382
|
@abc.abstractmethod
|
|
349
|
-
def
|
|
383
|
+
def PullMessages(
|
|
350
384
|
self,
|
|
351
|
-
request: flwr.proto.
|
|
385
|
+
request: flwr.proto.appio_pb2.PullAppMessagesRequest,
|
|
352
386
|
context: _ServicerContext,
|
|
353
|
-
) -> typing.Union[flwr.proto.
|
|
354
|
-
"""
|
|
387
|
+
) -> typing.Union[flwr.proto.appio_pb2.PullAppMessagesResponse, collections.abc.Awaitable[flwr.proto.appio_pb2.PullAppMessagesResponse]]:
|
|
388
|
+
"""Get message results"""
|
|
355
389
|
|
|
356
390
|
@abc.abstractmethod
|
|
357
|
-
def
|
|
391
|
+
def GetNodes(
|
|
358
392
|
self,
|
|
359
|
-
request: flwr.proto.
|
|
393
|
+
request: flwr.proto.serverappio_pb2.GetNodesRequest,
|
|
360
394
|
context: _ServicerContext,
|
|
361
|
-
) -> typing.Union[flwr.proto.
|
|
362
|
-
"""
|
|
395
|
+
) -> typing.Union[flwr.proto.serverappio_pb2.GetNodesResponse, collections.abc.Awaitable[flwr.proto.serverappio_pb2.GetNodesResponse]]:
|
|
396
|
+
"""Return a set of nodes"""
|
|
363
397
|
|
|
364
398
|
def add_ServerAppIoServicer_to_server(servicer: ServerAppIoServicer, server: typing.Union[grpc.Server, grpc.aio.Server]) -> None: ...
|
flwr/proto/simulationio_pb2.py
CHANGED
|
@@ -28,7 +28,7 @@ from flwr.proto import run_pb2 as flwr_dot_proto_dot_run__pb2
|
|
|
28
28
|
from flwr.proto import appio_pb2 as flwr_dot_proto_dot_appio__pb2
|
|
29
29
|
|
|
30
30
|
|
|
31
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1d\x66lwr/proto/simulationio.proto\x12\nflwr.proto\x1a\x1a\x66lwr/proto/heartbeat.proto\x1a\x14\x66lwr/proto/log.proto\x1a\x14\x66lwr/proto/run.proto\x1a\x16\x66lwr/proto/appio.proto2\
|
|
31
|
+
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\x14\x66lwr/proto/run.proto\x1a\x16\x66lwr/proto/appio.proto2\xaf\x06\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\x12_\n\x10SendAppHeartbeat\x12#.flwr.proto.SendAppHeartbeatRequest\x1a$.flwr.proto.SendAppHeartbeatResponse\"\x00\x12V\n\rPullAppInputs\x12 .flwr.proto.PullAppInputsRequest\x1a!.flwr.proto.PullAppInputsResponse\"\x00\x12Y\n\x0ePushAppOutputs\x12!.flwr.proto.PushAppOutputsRequest\x1a\".flwr.proto.PushAppOutputsResponse\"\x00\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\x62\x06proto3')
|
|
32
32
|
|
|
33
33
|
_globals = globals()
|
|
34
34
|
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
@@ -36,5 +36,5 @@ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'flwr.proto.simulationio_pb2
|
|
|
36
36
|
if not _descriptor._USE_C_DESCRIPTORS:
|
|
37
37
|
DESCRIPTOR._loaded_options = None
|
|
38
38
|
_globals['_SIMULATIONIO']._serialized_start=142
|
|
39
|
-
_globals['_SIMULATIONIO']._serialized_end=
|
|
39
|
+
_globals['_SIMULATIONIO']._serialized_end=957
|
|
40
40
|
# @@protoc_insertion_point(module_scope)
|