flwr-nightly 1.17.0.dev20250318__py3-none-any.whl → 1.17.0.dev20250320__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/client/app.py +6 -4
- flwr/client/clientapp/app.py +2 -2
- flwr/client/grpc_client/connection.py +23 -20
- flwr/client/message_handler/message_handler.py +27 -27
- flwr/client/mod/centraldp_mods.py +7 -7
- flwr/client/mod/localdp_mod.py +4 -4
- flwr/client/mod/secure_aggregation/secaggplus_mod.py +5 -5
- flwr/client/run_info_store.py +2 -2
- flwr/common/__init__.py +2 -0
- flwr/common/constant.py +2 -0
- flwr/common/context.py +4 -4
- flwr/common/logger.py +2 -2
- flwr/common/message.py +269 -101
- flwr/common/record/__init__.py +2 -1
- flwr/common/record/configsrecord.py +2 -2
- flwr/common/record/metricsrecord.py +1 -1
- flwr/common/record/parametersrecord.py +1 -1
- flwr/common/record/{recordset.py → recorddict.py} +57 -17
- flwr/common/{recordset_compat.py → recorddict_compat.py} +105 -105
- flwr/common/serde.py +33 -37
- flwr/proto/exec_pb2.py +32 -32
- flwr/proto/exec_pb2.pyi +3 -3
- flwr/proto/message_pb2.py +12 -12
- flwr/proto/message_pb2.pyi +9 -9
- flwr/proto/recorddict_pb2.py +70 -0
- flwr/proto/{recordset_pb2.pyi → recorddict_pb2.pyi} +2 -2
- flwr/proto/run_pb2.py +32 -32
- flwr/proto/run_pb2.pyi +3 -3
- flwr/server/__init__.py +2 -0
- flwr/server/compat/__init__.py +2 -2
- flwr/server/compat/app.py +11 -11
- flwr/server/compat/app_utils.py +16 -16
- flwr/server/compat/grid_client_proxy.py +38 -38
- flwr/server/grid/__init__.py +7 -6
- flwr/server/grid/grid.py +46 -17
- flwr/server/grid/grpc_grid.py +26 -33
- flwr/server/grid/inmemory_grid.py +19 -25
- flwr/server/run_serverapp.py +4 -4
- flwr/server/server_app.py +37 -11
- flwr/server/serverapp/app.py +10 -10
- flwr/server/superlink/fleet/vce/vce_api.py +1 -3
- flwr/server/superlink/linkstate/in_memory_linkstate.py +29 -4
- flwr/server/superlink/linkstate/sqlite_linkstate.py +54 -20
- flwr/server/superlink/linkstate/utils.py +77 -17
- flwr/server/superlink/serverappio/serverappio_servicer.py +1 -1
- flwr/server/typing.py +3 -3
- flwr/server/utils/validator.py +4 -4
- flwr/server/workflow/default_workflows.py +24 -26
- flwr/server/workflow/secure_aggregation/secaggplus_workflow.py +23 -23
- flwr/simulation/ray_transport/ray_client_proxy.py +34 -32
- flwr/simulation/run_simulation.py +13 -13
- flwr/superexec/deployment.py +2 -2
- flwr/superexec/simulation.py +2 -2
- {flwr_nightly-1.17.0.dev20250318.dist-info → flwr_nightly-1.17.0.dev20250320.dist-info}/METADATA +1 -1
- {flwr_nightly-1.17.0.dev20250318.dist-info → flwr_nightly-1.17.0.dev20250320.dist-info}/RECORD +60 -60
- flwr/proto/recordset_pb2.py +0 -70
- /flwr/proto/{recordset_pb2_grpc.py → recorddict_pb2_grpc.py} +0 -0
- /flwr/proto/{recordset_pb2_grpc.pyi → recorddict_pb2_grpc.pyi} +0 -0
- {flwr_nightly-1.17.0.dev20250318.dist-info → flwr_nightly-1.17.0.dev20250320.dist-info}/LICENSE +0 -0
- {flwr_nightly-1.17.0.dev20250318.dist-info → flwr_nightly-1.17.0.dev20250320.dist-info}/WHEEL +0 -0
- {flwr_nightly-1.17.0.dev20250318.dist-info → flwr_nightly-1.17.0.dev20250320.dist-info}/entry_points.txt +0 -0
@@ -23,7 +23,7 @@ from flwr import common
|
|
23
23
|
from flwr.client import ClientFnExt
|
24
24
|
from flwr.client.client_app import ClientApp
|
25
25
|
from flwr.client.run_info_store import DeprecatedRunInfoStore
|
26
|
-
from flwr.common import DEFAULT_TTL, Message, Metadata,
|
26
|
+
from flwr.common import DEFAULT_TTL, Message, Metadata, RecordDict, now
|
27
27
|
from flwr.common.constant import (
|
28
28
|
NUM_PARTITIONS_KEY,
|
29
29
|
PARTITION_ID_KEY,
|
@@ -31,15 +31,16 @@ from flwr.common.constant import (
|
|
31
31
|
MessageTypeLegacy,
|
32
32
|
)
|
33
33
|
from flwr.common.logger import log
|
34
|
-
from flwr.common.
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
34
|
+
from flwr.common.message import make_message
|
35
|
+
from flwr.common.recorddict_compat import (
|
36
|
+
evaluateins_to_recorddict,
|
37
|
+
fitins_to_recorddict,
|
38
|
+
getparametersins_to_recorddict,
|
39
|
+
getpropertiesins_to_recorddict,
|
40
|
+
recorddict_to_evaluateres,
|
41
|
+
recorddict_to_fitres,
|
42
|
+
recorddict_to_getparametersres,
|
43
|
+
recorddict_to_getpropertiesres,
|
43
44
|
)
|
44
45
|
from flwr.server.client_proxy import ClientProxy
|
45
46
|
from flwr.simulation.ray_transport.ray_actor import VirtualClientEngineActorPool
|
@@ -109,23 +110,24 @@ class RayActorClientProxy(ClientProxy):
|
|
109
110
|
|
110
111
|
return out_mssg
|
111
112
|
|
112
|
-
def
|
113
|
+
def _wrap_recorddict_in_message(
|
113
114
|
self,
|
114
|
-
|
115
|
+
recorddict: RecordDict,
|
115
116
|
message_type: str,
|
116
117
|
timeout: Optional[float],
|
117
118
|
group_id: Optional[int],
|
118
119
|
) -> Message:
|
119
|
-
"""Wrap a
|
120
|
-
return
|
121
|
-
content=
|
120
|
+
"""Wrap a RecordDict inside a Message."""
|
121
|
+
return make_message(
|
122
|
+
content=recorddict,
|
122
123
|
metadata=Metadata(
|
123
124
|
run_id=0,
|
124
125
|
message_id="",
|
125
126
|
group_id=str(group_id) if group_id is not None else "",
|
126
127
|
src_node_id=0,
|
127
128
|
dst_node_id=self.node_id,
|
128
|
-
|
129
|
+
reply_to_message_id="",
|
130
|
+
created_at=now().timestamp(),
|
129
131
|
ttl=timeout if timeout else DEFAULT_TTL,
|
130
132
|
message_type=message_type,
|
131
133
|
),
|
@@ -138,9 +140,9 @@ class RayActorClientProxy(ClientProxy):
|
|
138
140
|
group_id: Optional[int],
|
139
141
|
) -> common.GetPropertiesRes:
|
140
142
|
"""Return client's properties."""
|
141
|
-
|
142
|
-
message = self.
|
143
|
-
|
143
|
+
recorddict = getpropertiesins_to_recorddict(ins)
|
144
|
+
message = self._wrap_recorddict_in_message(
|
145
|
+
recorddict,
|
144
146
|
message_type=MessageTypeLegacy.GET_PROPERTIES,
|
145
147
|
timeout=timeout,
|
146
148
|
group_id=group_id,
|
@@ -148,7 +150,7 @@ class RayActorClientProxy(ClientProxy):
|
|
148
150
|
|
149
151
|
message_out = self._submit_job(message, timeout)
|
150
152
|
|
151
|
-
return
|
153
|
+
return recorddict_to_getpropertiesres(message_out.content)
|
152
154
|
|
153
155
|
def get_parameters(
|
154
156
|
self,
|
@@ -157,9 +159,9 @@ class RayActorClientProxy(ClientProxy):
|
|
157
159
|
group_id: Optional[int],
|
158
160
|
) -> common.GetParametersRes:
|
159
161
|
"""Return the current local model parameters."""
|
160
|
-
|
161
|
-
message = self.
|
162
|
-
|
162
|
+
recorddict = getparametersins_to_recorddict(ins)
|
163
|
+
message = self._wrap_recorddict_in_message(
|
164
|
+
recorddict,
|
163
165
|
message_type=MessageTypeLegacy.GET_PARAMETERS,
|
164
166
|
timeout=timeout,
|
165
167
|
group_id=group_id,
|
@@ -167,17 +169,17 @@ class RayActorClientProxy(ClientProxy):
|
|
167
169
|
|
168
170
|
message_out = self._submit_job(message, timeout)
|
169
171
|
|
170
|
-
return
|
172
|
+
return recorddict_to_getparametersres(message_out.content, keep_input=False)
|
171
173
|
|
172
174
|
def fit(
|
173
175
|
self, ins: common.FitIns, timeout: Optional[float], group_id: Optional[int]
|
174
176
|
) -> common.FitRes:
|
175
177
|
"""Train model parameters on the locally held dataset."""
|
176
|
-
|
178
|
+
recorddict = fitins_to_recorddict(
|
177
179
|
ins, keep_input=True
|
178
180
|
) # This must stay TRUE since ins are in-memory
|
179
|
-
message = self.
|
180
|
-
|
181
|
+
message = self._wrap_recorddict_in_message(
|
182
|
+
recorddict,
|
181
183
|
message_type=MessageType.TRAIN,
|
182
184
|
timeout=timeout,
|
183
185
|
group_id=group_id,
|
@@ -185,17 +187,17 @@ class RayActorClientProxy(ClientProxy):
|
|
185
187
|
|
186
188
|
message_out = self._submit_job(message, timeout)
|
187
189
|
|
188
|
-
return
|
190
|
+
return recorddict_to_fitres(message_out.content, keep_input=False)
|
189
191
|
|
190
192
|
def evaluate(
|
191
193
|
self, ins: common.EvaluateIns, timeout: Optional[float], group_id: Optional[int]
|
192
194
|
) -> common.EvaluateRes:
|
193
195
|
"""Evaluate model parameters on the locally held dataset."""
|
194
|
-
|
196
|
+
recorddict = evaluateins_to_recorddict(
|
195
197
|
ins, keep_input=True
|
196
198
|
) # This must stay TRUE since ins are in-memory
|
197
|
-
message = self.
|
198
|
-
|
199
|
+
message = self._wrap_recorddict_in_message(
|
200
|
+
recorddict,
|
199
201
|
message_type=MessageType.EVALUATE,
|
200
202
|
timeout=timeout,
|
201
203
|
group_id=group_id,
|
@@ -203,7 +205,7 @@ class RayActorClientProxy(ClientProxy):
|
|
203
205
|
|
204
206
|
message_out = self._submit_job(message, timeout)
|
205
207
|
|
206
|
-
return
|
208
|
+
return recorddict_to_evaluateres(message_out.content)
|
207
209
|
|
208
210
|
def reconnect(
|
209
211
|
self,
|
@@ -30,7 +30,7 @@ from typing import Any, Optional
|
|
30
30
|
from flwr.cli.config_utils import load_and_validate
|
31
31
|
from flwr.cli.utils import get_sha256_hash
|
32
32
|
from flwr.client import ClientApp
|
33
|
-
from flwr.common import Context, EventType,
|
33
|
+
from flwr.common import Context, EventType, RecordDict, event, log, now
|
34
34
|
from flwr.common.config import get_fused_config_from_dir, parse_config_args
|
35
35
|
from flwr.common.constant import RUN_ID_NUM_BYTES, Status
|
36
36
|
from flwr.common.logger import (
|
@@ -39,7 +39,7 @@ from flwr.common.logger import (
|
|
39
39
|
warn_deprecated_feature_with_example,
|
40
40
|
)
|
41
41
|
from flwr.common.typing import Run, RunStatus, UserConfig
|
42
|
-
from flwr.server.grid import
|
42
|
+
from flwr.server.grid import Grid, InMemoryGrid
|
43
43
|
from flwr.server.run_serverapp import run as _run
|
44
44
|
from flwr.server.server_app import ServerApp
|
45
45
|
from flwr.server.superlink.fleet import vce
|
@@ -168,7 +168,7 @@ def run_simulation(
|
|
168
168
|
messages sent by the `ServerApp`.
|
169
169
|
|
170
170
|
num_supernodes : int
|
171
|
-
Number of nodes that run a ClientApp. They can be sampled by a
|
171
|
+
Number of nodes that run a ClientApp. They can be sampled by a Grid in the
|
172
172
|
ServerApp and receive a Message describing what the ClientApp should perform.
|
173
173
|
|
174
174
|
backend_name : str (default: ray)
|
@@ -225,7 +225,7 @@ def run_serverapp_th(
|
|
225
225
|
server_app_attr: Optional[str],
|
226
226
|
server_app: Optional[ServerApp],
|
227
227
|
server_app_run_config: UserConfig,
|
228
|
-
|
228
|
+
grid: Grid,
|
229
229
|
app_dir: str,
|
230
230
|
f_stop: threading.Event,
|
231
231
|
has_exception: threading.Event,
|
@@ -239,7 +239,7 @@ def run_serverapp_th(
|
|
239
239
|
tf_gpu_growth: bool,
|
240
240
|
stop_event: threading.Event,
|
241
241
|
exception_event: threading.Event,
|
242
|
-
|
242
|
+
_grid: Grid,
|
243
243
|
_server_app_dir: str,
|
244
244
|
_server_app_run_config: UserConfig,
|
245
245
|
_server_app_attr: Optional[str],
|
@@ -260,13 +260,13 @@ def run_serverapp_th(
|
|
260
260
|
run_id=run_id,
|
261
261
|
node_id=0,
|
262
262
|
node_config={},
|
263
|
-
state=
|
263
|
+
state=RecordDict(),
|
264
264
|
run_config=_server_app_run_config,
|
265
265
|
)
|
266
266
|
|
267
267
|
# Run ServerApp
|
268
268
|
updated_context = _run(
|
269
|
-
|
269
|
+
grid=_grid,
|
270
270
|
context=context,
|
271
271
|
server_app_dir=_server_app_dir,
|
272
272
|
server_app_attr=_server_app_attr,
|
@@ -291,7 +291,7 @@ def run_serverapp_th(
|
|
291
291
|
enable_tf_gpu_growth,
|
292
292
|
f_stop,
|
293
293
|
has_exception,
|
294
|
-
|
294
|
+
grid,
|
295
295
|
app_dir,
|
296
296
|
server_app_run_config,
|
297
297
|
server_app_attr,
|
@@ -333,7 +333,7 @@ def _main_loop(
|
|
333
333
|
run_id=run.run_id,
|
334
334
|
node_id=0,
|
335
335
|
node_config=UserConfig(),
|
336
|
-
state=
|
336
|
+
state=RecordDict(),
|
337
337
|
run_config=UserConfig(),
|
338
338
|
)
|
339
339
|
try:
|
@@ -347,9 +347,9 @@ def _main_loop(
|
|
347
347
|
if server_app_run_config is None:
|
348
348
|
server_app_run_config = {}
|
349
349
|
|
350
|
-
# Initialize
|
351
|
-
|
352
|
-
|
350
|
+
# Initialize Grid
|
351
|
+
grid = InMemoryGrid(state_factory=state_factory)
|
352
|
+
grid.set_run(run_id=run.run_id)
|
353
353
|
output_context_queue: Queue[Context] = Queue()
|
354
354
|
|
355
355
|
# Get and run ServerApp thread
|
@@ -357,7 +357,7 @@ def _main_loop(
|
|
357
357
|
server_app_attr=server_app_attr,
|
358
358
|
server_app=server_app,
|
359
359
|
server_app_run_config=server_app_run_config,
|
360
|
-
|
360
|
+
grid=grid,
|
361
361
|
app_dir=app_dir,
|
362
362
|
f_stop=f_stop,
|
363
363
|
has_exception=server_app_thread_has_exception,
|
flwr/superexec/deployment.py
CHANGED
@@ -23,7 +23,7 @@ from typing import Optional
|
|
23
23
|
from typing_extensions import override
|
24
24
|
|
25
25
|
from flwr.cli.config_utils import get_fab_metadata
|
26
|
-
from flwr.common import ConfigsRecord, Context,
|
26
|
+
from flwr.common import ConfigsRecord, Context, RecordDict
|
27
27
|
from flwr.common.constant import (
|
28
28
|
SERVERAPPIO_API_DEFAULT_CLIENT_ADDRESS,
|
29
29
|
Status,
|
@@ -149,7 +149,7 @@ class DeploymentEngine(Executor):
|
|
149
149
|
"""Register a Context for a Run."""
|
150
150
|
# Create an empty context for the Run
|
151
151
|
context = Context(
|
152
|
-
run_id=run_id, node_id=0, node_config={}, state=
|
152
|
+
run_id=run_id, node_id=0, node_config={}, state=RecordDict(), run_config={}
|
153
153
|
)
|
154
154
|
|
155
155
|
# Register the context at the LinkState
|
flwr/superexec/simulation.py
CHANGED
@@ -22,7 +22,7 @@ from typing import Optional
|
|
22
22
|
from typing_extensions import override
|
23
23
|
|
24
24
|
from flwr.cli.config_utils import get_fab_metadata
|
25
|
-
from flwr.common import ConfigsRecord, Context,
|
25
|
+
from flwr.common import ConfigsRecord, Context, RecordDict
|
26
26
|
from flwr.common.logger import log
|
27
27
|
from flwr.common.typing import Fab, UserConfig
|
28
28
|
from flwr.server.superlink.ffs import Ffs
|
@@ -104,7 +104,7 @@ class SimulationEngine(Executor):
|
|
104
104
|
run_id=run_id,
|
105
105
|
node_id=0,
|
106
106
|
node_config={},
|
107
|
-
state=
|
107
|
+
state=RecordDict(),
|
108
108
|
run_config={},
|
109
109
|
)
|
110
110
|
|
{flwr_nightly-1.17.0.dev20250318.dist-info → flwr_nightly-1.17.0.dev20250320.dist-info}/RECORD
RENAMED
@@ -72,32 +72,32 @@ flwr/cli/run/run.py,sha256=kEOYKin9qPJy8SODxcAvIWk-OskKPsxvcbvhDhf2VD4,8299
|
|
72
72
|
flwr/cli/stop.py,sha256=E4TGynmYQss5iWJ_fjSdYIW8nrNta2KOiK4sfvHKO_g,4976
|
73
73
|
flwr/cli/utils.py,sha256=D9XcpxzwkGPNdwX16o0kI-sYnRDMlWYyKNIpz6npRhQ,11236
|
74
74
|
flwr/client/__init__.py,sha256=DGDoO0AEAfz-0CUFmLdyUUweAS64-07AOnmDfWUefK4,1192
|
75
|
-
flwr/client/app.py,sha256=
|
75
|
+
flwr/client/app.py,sha256=rHL2-ki3XegWNO7RL36-mQmAfpW5cGwlsvNRN6-9W6Y,34301
|
76
76
|
flwr/client/client.py,sha256=8o58nd9o6ZFcMIaVYPGcV4MSjBG4H0oFgWiv8ZEO3oA,7895
|
77
77
|
flwr/client/client_app.py,sha256=iuQSO-iwRjWzpeWOjeYKmvfIpBxoGnIAU2TgsmqLpyo,17145
|
78
78
|
flwr/client/clientapp/__init__.py,sha256=kZqChGnTChQ1WGSUkIlW2S5bc0d0mzDubCAmZUGRpEY,800
|
79
|
-
flwr/client/clientapp/app.py,sha256=
|
79
|
+
flwr/client/clientapp/app.py,sha256=Eh54GXLfCysefGkVhTB2ublrqbaKtGpZ1jRhD389TYQ,9062
|
80
80
|
flwr/client/clientapp/clientappio_servicer.py,sha256=5L6bjw_j3Mnx9kRFwYwxDNABKurBO5q1jZOWE_X11wQ,8522
|
81
81
|
flwr/client/clientapp/utils.py,sha256=qqTw9PKPCldGnnbAbMhtS-Qs_GcqADE1eOtVPXeKYAo,4344
|
82
82
|
flwr/client/dpfedavg_numpy_client.py,sha256=4KsEvzavDKyVDU1V0kMqffTwu1lNdUCYQN-i0DTYVN8,7404
|
83
83
|
flwr/client/grpc_adapter_client/__init__.py,sha256=QyNWIbsq9DpyMk7oemiO1P3TBFfkfkctnJ1JoAkTl3s,742
|
84
84
|
flwr/client/grpc_adapter_client/connection.py,sha256=nV-hPd5q5Eblg6PgUrGGYj74mbE1a0qjfN8G3wzJVAc,4006
|
85
85
|
flwr/client/grpc_client/__init__.py,sha256=LsnbqXiJhgQcB0XzAlUQgPx011Uf7Y7yabIC1HxivJ8,735
|
86
|
-
flwr/client/grpc_client/connection.py,sha256=
|
86
|
+
flwr/client/grpc_client/connection.py,sha256=qR_hoEwBX_jc7DFNFr_2irn74Q3TGVoniActzXAZtgY,9192
|
87
87
|
flwr/client/grpc_rere_client/__init__.py,sha256=MK-oSoV3kwUEQnIwl0GN4OpiHR7eLOrMA8ikunET130,752
|
88
88
|
flwr/client/grpc_rere_client/client_interceptor.py,sha256=8yX2jhwfX9r1PO76ZdME4tPefutnQqWPi7kELriBMUo,2451
|
89
89
|
flwr/client/grpc_rere_client/connection.py,sha256=CHC5ssg7SMIN78JsWFKHg2P_fT2G_Ng3rtR869hLmoQ,11777
|
90
90
|
flwr/client/grpc_rere_client/grpc_adapter.py,sha256=4EixBCeceM-nLu-eqB1jr0pXaGdkvoSbKmrY1ushQok,5601
|
91
91
|
flwr/client/heartbeat.py,sha256=cx37mJBH8LyoIN4Lks85wtqT1mnU5GulQnr4pGCvAq0,2404
|
92
92
|
flwr/client/message_handler/__init__.py,sha256=QxxQuBNpFPTHx3KiUNvQSlqMKlEnbRR1kFfc1KVje08,719
|
93
|
-
flwr/client/message_handler/message_handler.py,sha256=
|
93
|
+
flwr/client/message_handler/message_handler.py,sha256=UPpIV2N4A_fCjADhd8AN0cB_WaXOHOt38laesxkYlLs,6536
|
94
94
|
flwr/client/mod/__init__.py,sha256=37XeXZLFq_tzFVKVtC9JaigM2bSAU7BrGQvMPCE3Q28,1159
|
95
|
-
flwr/client/mod/centraldp_mods.py,sha256=
|
95
|
+
flwr/client/mod/centraldp_mods.py,sha256=IfbUCAMXc0qztC5_bJkoQCEMSCXGje3Z6hiIfhiVwbY,5422
|
96
96
|
flwr/client/mod/comms_mods.py,sha256=s_H57ZXUPaWFifodCbRCOZW06IZRsilcOr9F-yWBtxg,2625
|
97
|
-
flwr/client/mod/localdp_mod.py,sha256=
|
97
|
+
flwr/client/mod/localdp_mod.py,sha256=vPrPHMw30PoSDBZEZjtbEHKRF8atx3CxZRN1x_yDze4,5007
|
98
98
|
flwr/client/mod/secure_aggregation/__init__.py,sha256=A7DzZ3uvXTUkuHBzrxJMWQQD4RtO_PsVA53yHc4oWco,849
|
99
99
|
flwr/client/mod/secure_aggregation/secagg_mod.py,sha256=wI9tuIEvMUETz-wVIEbPYvh-1nK9CEylBLGoVpNhL94,1095
|
100
|
-
flwr/client/mod/secure_aggregation/secaggplus_mod.py,sha256=
|
100
|
+
flwr/client/mod/secure_aggregation/secaggplus_mod.py,sha256=iMVEG5TSHJMn_Ttd3_E_oOvs2rW7LW079AdvnAa0HM8,19689
|
101
101
|
flwr/client/mod/utils.py,sha256=dFcTHOjUuuiw34fcQlvyzytYD0sCv1w9x8fQX1Yo8Oc,1201
|
102
102
|
flwr/client/nodestate/__init__.py,sha256=6FTlzydo1j0n55Tb-Qo0XmuqTUyRxg3x7jHgo3gU1No,976
|
103
103
|
flwr/client/nodestate/in_memory_nodestate.py,sha256=MKI3jVPARPWJmNGw61k1-9LIXROkTx2PrhWjDM8cpHk,1291
|
@@ -106,18 +106,18 @@ flwr/client/nodestate/nodestate_factory.py,sha256=apUbcJG0a_FUVsc0TkNN3q9yovc9u_
|
|
106
106
|
flwr/client/numpy_client.py,sha256=chTkL9dOtK_wgUoYtzp5mfDOC1k8xPAd1qPIsB3hcjA,9581
|
107
107
|
flwr/client/rest_client/__init__.py,sha256=5KGlp7pjc1dhNRkKlaNtUfQmg8wrRFh9lS3P3uRS-7Q,735
|
108
108
|
flwr/client/rest_client/connection.py,sha256=c0mHsNXHAsbX4zNelbGd2qrV3vj90FfNE6FsiD6JzuY,12904
|
109
|
-
flwr/client/run_info_store.py,sha256=
|
109
|
+
flwr/client/run_info_store.py,sha256=CtOTf-m5WMpbHtNL97h6FzYCsRBk7yD4Pl7yNRY-lEo,4042
|
110
110
|
flwr/client/supernode/__init__.py,sha256=D5swXxemuRbA2rB_T9B8LwJW-_PucXwmlFQQerwIUv0,793
|
111
111
|
flwr/client/supernode/app.py,sha256=W1VAgvjdSgrKKgjyM04Hx5XIUGxK2Oouuh0LjavZB9E,8975
|
112
112
|
flwr/client/typing.py,sha256=dxoTBnTMfqXr5J7G3y-uNjqxYCddvxhu89spfj4Lm2U,1048
|
113
|
-
flwr/common/__init__.py,sha256=
|
113
|
+
flwr/common/__init__.py,sha256=hx6PLFNNpHotn44-MeOmyGHSEnn8uWkpoZP-GYF2weM,3964
|
114
114
|
flwr/common/address.py,sha256=rRaN1JpiCJnit7ImEqZVxURQ69dPihRoyyWn_3I2wh4,4119
|
115
115
|
flwr/common/args.py,sha256=2gGT2a3SPJ0-LTNKnhBsZ-ESIoW9FGpw-9xkUSs8qwk,5417
|
116
116
|
flwr/common/auth_plugin/__init__.py,sha256=1Y8Oj3iB49IHDu9tvDih1J74Ygu7k85V9s2A4WORPyA,887
|
117
117
|
flwr/common/auth_plugin/auth_plugin.py,sha256=dQU5U4uJIA5XqgOJ3PankHWq-uXCaMvO74khaMPGdiU,3938
|
118
118
|
flwr/common/config.py,sha256=SAkG3BztnA6iupXxF3GAIpGmWVVCH0ptyMpC9yjr_14,13965
|
119
|
-
flwr/common/constant.py,sha256=
|
120
|
-
flwr/common/context.py,sha256=
|
119
|
+
flwr/common/constant.py,sha256=a1kNtPH5yS30YUWs7VgNu-O7i8_RAt5iL0AzG04QHVo,6989
|
120
|
+
flwr/common/context.py,sha256=XE3WlKPd4C_md6I8oWw8HM4grtOjMKz7YamhNWieF34,2407
|
121
121
|
flwr/common/date.py,sha256=NHHpESce5wYqEwoDXf09gp9U9l_5Bmlh2BsOcwS-kDM,1554
|
122
122
|
flwr/common/differential_privacy.py,sha256=YA01NqjddKNAEVmf7hXmOVxOjhekgzvJudk3mBGq-2k,6148
|
123
123
|
flwr/common/differential_privacy_constants.py,sha256=c7b7tqgvT7yMK0XN9ndiTBs4mQf6d3qk6K7KBZGlV4Q,1074
|
@@ -129,19 +129,19 @@ flwr/common/exit/exit.py,sha256=DmZFyksp-w1sFDQekq5Z-qfnr-ivCAv78aQkqj-TDps,3458
|
|
129
129
|
flwr/common/exit/exit_code.py,sha256=PNEnCrZfOILjfDAFu5m-2YWEJBrk97xglq4zCUlqV7E,3470
|
130
130
|
flwr/common/exit_handlers.py,sha256=yclujry30954o0lI7vtknTajskPCvK8TXw2V3RdldXU,3174
|
131
131
|
flwr/common/grpc.py,sha256=7sHNP34LcNZv7J1GewJxXh509XTEbYvoHvXL5tQ3tcw,9798
|
132
|
-
flwr/common/logger.py,sha256=
|
133
|
-
flwr/common/message.py,sha256=
|
132
|
+
flwr/common/logger.py,sha256=Q5ZsQq1ouTvpP63I4V8e7gr0T_r7h0DJ122Nh3q0qzg,13049
|
133
|
+
flwr/common/message.py,sha256=u2M7mEnKMqrrOOwRj6pEeIiHB2ZjfNuf8s3Ctt9SESE,23060
|
134
134
|
flwr/common/object_ref.py,sha256=DXL8NtbN17DSYaR-Zc8WYhaG8rv0_D_cclvP7Sa66So,9134
|
135
135
|
flwr/common/parameter.py,sha256=-bFAUayToYDF50FZGrBC1hQYJCQDtB2bbr3ZuVLMtdE,2095
|
136
136
|
flwr/common/pyproject.py,sha256=vEAxl800XiJ1JNJDui8vuVV-08msnB6hLt7o95viZl0,1386
|
137
|
-
flwr/common/record/__init__.py,sha256=
|
138
|
-
flwr/common/record/configsrecord.py,sha256=
|
137
|
+
flwr/common/record/__init__.py,sha256=NiHmLzVIMPTzwmuQpFNUkdbjbGXRfCdvTD9f7OazCzQ,1086
|
138
|
+
flwr/common/record/configsrecord.py,sha256=C92Yk4KfznbgvHBMxrfwgUBnzyhZYn1eFjohyAVDhcc,6490
|
139
139
|
flwr/common/record/conversion_utils.py,sha256=ZcsM-vTm_rVtLXLFD2RY3N47V_hUr3ywTdtnpVXnOGU,1202
|
140
|
-
flwr/common/record/metricsrecord.py,sha256=
|
141
|
-
flwr/common/record/parametersrecord.py,sha256=
|
142
|
-
flwr/common/record/
|
140
|
+
flwr/common/record/metricsrecord.py,sha256=4ZnkDW0-27-3wPwib9GMj04wSATogx1sHlv_VsImhFY,5755
|
141
|
+
flwr/common/record/parametersrecord.py,sha256=ywMocK61f1miMC28nh5axQ1sDdR76RYsIwYPpMwy0b4,21598
|
142
|
+
flwr/common/record/recorddict.py,sha256=I9dZ9MU3asmKj3Saej2BXOSEdBAs9VgTz51T-SGXn1g,9718
|
143
143
|
flwr/common/record/typeddict.py,sha256=q5hL2xkXymuiCprHWb69mUmLpWQk_XXQq0hGQ69YPaw,3599
|
144
|
-
flwr/common/
|
144
|
+
flwr/common/recorddict_compat.py,sha256=BxV198O3fiiUhxuKuM2bqBZIembFwOrdB2NRin6_BNg,14377
|
145
145
|
flwr/common/retry_invoker.py,sha256=UIDKsn0AitS3fOr43WTqZAdD-TaHkBeTj1QxD7SGba0,14481
|
146
146
|
flwr/common/secure_aggregation/__init__.py,sha256=erPnTWdOfMH0K0HQTmj5foDJ6t3iYcExy2aACy8iZNQ,731
|
147
147
|
flwr/common/secure_aggregation/crypto/__init__.py,sha256=nlHesCWy8xxE5s6qHWnauCtyClcMQ2K0CEXAHakY5n0,738
|
@@ -151,7 +151,7 @@ flwr/common/secure_aggregation/ndarrays_arithmetic.py,sha256=zvVAIrIyI6OSzGhpCi8
|
|
151
151
|
flwr/common/secure_aggregation/quantization.py,sha256=NE_ltC3Fx5Z3bMKqJHA95wQf2tkGQlN0VZf3d1w5ABA,2400
|
152
152
|
flwr/common/secure_aggregation/secaggplus_constants.py,sha256=9MF-oQh62uD7rt9VeNB-rHf2gBLd5GL3S9OejCxmILY,2183
|
153
153
|
flwr/common/secure_aggregation/secaggplus_utils.py,sha256=OgYd68YBRaHQYLc-YdExj9CSpwL58bVTaPrdHoAj2AE,3214
|
154
|
-
flwr/common/serde.py,sha256=
|
154
|
+
flwr/common/serde.py,sha256=2sMooHIcG3KNIuW-sL_EgT9_8_oBF7IPGJ0s08LmqeM,27220
|
155
155
|
flwr/common/telemetry.py,sha256=k4JVXNEZSyYF2BuKk10iH70D8RYmQEtFlVr42Ve6lls,8770
|
156
156
|
flwr/common/typing.py,sha256=Prl8_4tKnIl_Kh5UjJGbw1tnld543EkXrX0RWffJpiA,6900
|
157
157
|
flwr/common/version.py,sha256=aNSxLL49RKeLz8sPcZrsTEWtrAeQ0uxu6tjmfba4O60,1325
|
@@ -164,8 +164,8 @@ flwr/proto/error_pb2.py,sha256=PQVWrfjVPo88ql_KgV9nCxyQNCcV9PVfmcw7sOzTMro,1084
|
|
164
164
|
flwr/proto/error_pb2.pyi,sha256=ZNH4HhJTU_KfMXlyCeg8FwU-fcUYxTqEmoJPtWtHikc,734
|
165
165
|
flwr/proto/error_pb2_grpc.py,sha256=1oboBPFxaTEXt9Aw7EAj8gXHDCNMhZD2VXqocC9l_gk,159
|
166
166
|
flwr/proto/error_pb2_grpc.pyi,sha256=ff2TSiLVnG6IVQcTGzb2DIH3XRSoAvAo_RMcvbMFyc0,76
|
167
|
-
flwr/proto/exec_pb2.py,sha256=
|
168
|
-
flwr/proto/exec_pb2.pyi,sha256=
|
167
|
+
flwr/proto/exec_pb2.py,sha256=duaVCForuqLgqfz_KRMgbfAsEXehshLi2V5CRXDkPf0,5667
|
168
|
+
flwr/proto/exec_pb2.pyi,sha256=UM1LP-xLH1iQolHSjoE3NKiH6XmrHzipXo2XYfZ8BW4,9480
|
169
169
|
flwr/proto/exec_pb2_grpc.py,sha256=-bdLqjsqQxK9R8LIiZaKlLKH2NmjR50EaGKTPPTwFhI,10445
|
170
170
|
flwr/proto/exec_pb2_grpc.pyi,sha256=M5k-FzeLWxal7zt28LJfzMWWRxmNknTC2BzHRRMa1sQ,2914
|
171
171
|
flwr/proto/fab_pb2.py,sha256=2Nu0WaWxDZ8TbutMtctjdcGM7OtXiyP4kmCgg5o7Jjw,1627
|
@@ -184,20 +184,20 @@ flwr/proto/log_pb2.py,sha256=iKaS3MVn1BS4xHu8uGPFCOi1KWtvVx-H9V4jCUIJghs,1393
|
|
184
184
|
flwr/proto/log_pb2.pyi,sha256=ipuhgo40sAHTcRzCsGI1HwIstr5q0THPNk_cf62YyME,1448
|
185
185
|
flwr/proto/log_pb2_grpc.py,sha256=1oboBPFxaTEXt9Aw7EAj8gXHDCNMhZD2VXqocC9l_gk,159
|
186
186
|
flwr/proto/log_pb2_grpc.pyi,sha256=ff2TSiLVnG6IVQcTGzb2DIH3XRSoAvAo_RMcvbMFyc0,76
|
187
|
-
flwr/proto/message_pb2.py,sha256=
|
188
|
-
flwr/proto/message_pb2.pyi,sha256=
|
187
|
+
flwr/proto/message_pb2.py,sha256=ob77p0WOtDYAvKhVoGOSPriGtVuSSfMw9WR7G7FkAJk,3198
|
188
|
+
flwr/proto/message_pb2.pyi,sha256=DPUti2q_VJpRsy6Fzc5OPVm8j3Ko4OgN8IuEiFV4KOo,5759
|
189
189
|
flwr/proto/message_pb2_grpc.py,sha256=1oboBPFxaTEXt9Aw7EAj8gXHDCNMhZD2VXqocC9l_gk,159
|
190
190
|
flwr/proto/message_pb2_grpc.pyi,sha256=ff2TSiLVnG6IVQcTGzb2DIH3XRSoAvAo_RMcvbMFyc0,76
|
191
191
|
flwr/proto/node_pb2.py,sha256=BzZfAWIX7lV62bZr9f7x16lUZcpg-EImxnwxQXgCbYg,1045
|
192
192
|
flwr/proto/node_pb2.pyi,sha256=CPMeIPzUeI5-Csw9sHktV9UBH4GbqiGuYzGQQKftm6Q,616
|
193
193
|
flwr/proto/node_pb2_grpc.py,sha256=1oboBPFxaTEXt9Aw7EAj8gXHDCNMhZD2VXqocC9l_gk,159
|
194
194
|
flwr/proto/node_pb2_grpc.pyi,sha256=ff2TSiLVnG6IVQcTGzb2DIH3XRSoAvAo_RMcvbMFyc0,76
|
195
|
-
flwr/proto/
|
196
|
-
flwr/proto/
|
197
|
-
flwr/proto/
|
198
|
-
flwr/proto/
|
199
|
-
flwr/proto/run_pb2.py,sha256=
|
200
|
-
flwr/proto/run_pb2.pyi,sha256=
|
195
|
+
flwr/proto/recorddict_pb2.py,sha256=WUse6WhFk_sHtOFsDyaEKlaGSkCDAz5O_pS5qKro9EY,6383
|
196
|
+
flwr/proto/recorddict_pb2.pyi,sha256=ySqVewxkw570NY6yRjuAw9FxlXNGVdtoUS-LEwXH0L8,15373
|
197
|
+
flwr/proto/recorddict_pb2_grpc.py,sha256=1oboBPFxaTEXt9Aw7EAj8gXHDCNMhZD2VXqocC9l_gk,159
|
198
|
+
flwr/proto/recorddict_pb2_grpc.pyi,sha256=ff2TSiLVnG6IVQcTGzb2DIH3XRSoAvAo_RMcvbMFyc0,76
|
199
|
+
flwr/proto/run_pb2.py,sha256=NYo1Vf3vQqWhBOoCHYP3bNa_mlxLRjBCrRWDBWlOVHE,5746
|
200
|
+
flwr/proto/run_pb2.pyi,sha256=1FjFf7BGN8N89Hs1VkgJsCA1zsbhp9Du7eTdi94eJMk,11742
|
201
201
|
flwr/proto/run_pb2_grpc.py,sha256=1oboBPFxaTEXt9Aw7EAj8gXHDCNMhZD2VXqocC9l_gk,159
|
202
202
|
flwr/proto/run_pb2_grpc.pyi,sha256=ff2TSiLVnG6IVQcTGzb2DIH3XRSoAvAo_RMcvbMFyc0,76
|
203
203
|
flwr/proto/serverappio_pb2.py,sha256=WijK7rejbb7h6GVK0pTf81Ey5Ltf7A_S7aKlUJWlny4,4908
|
@@ -213,28 +213,28 @@ flwr/proto/transport_pb2.pyi,sha256=ipHQ03eFBqsxtAuAVefZ2lVr04BZ4YifJCS2eauNmy8,
|
|
213
213
|
flwr/proto/transport_pb2_grpc.py,sha256=vLN3EHtx2aEEMCO4f1Upu-l27BPzd3-5pV-u8wPcosk,2598
|
214
214
|
flwr/proto/transport_pb2_grpc.pyi,sha256=AGXf8RiIiW2J5IKMlm_3qT3AzcDa4F3P5IqUjve_esA,766
|
215
215
|
flwr/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
216
|
-
flwr/server/__init__.py,sha256=
|
216
|
+
flwr/server/__init__.py,sha256=X-qtJ1lsYJkTEYmLiYwhvnGI-tInj9P5geLtACJ-W9k,1569
|
217
217
|
flwr/server/app.py,sha256=Hc5FIcGPoeKk7D2Mqp-qgDJUHh-I3uAWG7MDuqeasUo,33619
|
218
218
|
flwr/server/client_manager.py,sha256=7Ese0tgrH-i-ms363feYZJKwB8gWnXSmg_hYF2Bju4U,6227
|
219
219
|
flwr/server/client_proxy.py,sha256=4G-oTwhb45sfWLx2uZdcXD98IZwdTS6F88xe3akCdUg,2399
|
220
|
-
flwr/server/compat/__init__.py,sha256=
|
221
|
-
flwr/server/compat/app.py,sha256=
|
222
|
-
flwr/server/compat/app_utils.py,sha256=
|
223
|
-
flwr/server/compat/grid_client_proxy.py,sha256=
|
220
|
+
flwr/server/compat/__init__.py,sha256=uEH_iym6jRdv-Z48CksoMsxvrxU26PIIj50Plf39jhs,886
|
221
|
+
flwr/server/compat/app.py,sha256=Q4XY4sQ5fRPvX86X1U2A2Ah1QbVTg26YsTJC8JgdruY,3323
|
222
|
+
flwr/server/compat/app_utils.py,sha256=X63iKjRsdsyVL0TTIlIXqysOxXh1lyymR8qEmJopx2c,3772
|
223
|
+
flwr/server/compat/grid_client_proxy.py,sha256=YrbYR1JkH53cvbom-wJYNUo5t9ASxyoU-APOkOcQgEo,4973
|
224
224
|
flwr/server/compat/legacy_context.py,sha256=wBzBcfV6YO6IQGriM_FdJ5XZfiBBEEJdS_OdAiF47dY,1804
|
225
225
|
flwr/server/criterion.py,sha256=ypbAexbztzGUxNen9RCHF91QeqiEQix4t4Ih3E-42MM,1061
|
226
226
|
flwr/server/fleet_event_log_interceptor.py,sha256=AkL7Y5d3xm2vRhL3ahmEVVoOvAP7PA7dRgB-je4v-Ys,3774
|
227
|
-
flwr/server/grid/__init__.py,sha256=
|
228
|
-
flwr/server/grid/grid.py,sha256=
|
229
|
-
flwr/server/grid/grpc_grid.py,sha256=
|
230
|
-
flwr/server/grid/inmemory_grid.py,sha256=
|
227
|
+
flwr/server/grid/__init__.py,sha256=aWZHezoR2UGMJISB_gPMCm2N_2GSbm97A3lAp7ruhRQ,888
|
228
|
+
flwr/server/grid/grid.py,sha256=5r5wdqs3NJ5EJ7HyhMahMauAnPyLZEsgpNOfdKudt_s,6614
|
229
|
+
flwr/server/grid/grpc_grid.py,sha256=1aTWEgTA3Z0gnWJy5ywe3H7YmaoPTmrXBlu1fD3CFPI,10973
|
230
|
+
flwr/server/grid/inmemory_grid.py,sha256=WypQlPP6ArTOipS0i9xJCZmonu6LoKCAra2s7g_vPsE,5959
|
231
231
|
flwr/server/history.py,sha256=qSb5_pPTrwofpSYGsZWzMPkl_4uJ4mJFWesxXDrEvDU,5026
|
232
|
-
flwr/server/run_serverapp.py,sha256=
|
232
|
+
flwr/server/run_serverapp.py,sha256=EEDgJH0iwKCsxguGrdjQ6Eh7BL6VaM23DWjec6AlVdE,2063
|
233
233
|
flwr/server/server.py,sha256=1ZsFEptmAV-L2vP2etNC9Ed5CLSxpuKzUFkAPQ4l5Xc,17893
|
234
|
-
flwr/server/server_app.py,sha256=
|
234
|
+
flwr/server/server_app.py,sha256=mQqv3eWNxLKELe_zEIkfLrNdTvB2ljC7jON5bxeExGE,9788
|
235
235
|
flwr/server/server_config.py,sha256=CZaHVAsMvGLjpWVcLPkiYxgJN4xfIyAiUrCI3fETKY4,1349
|
236
236
|
flwr/server/serverapp/__init__.py,sha256=L0K-94UDdTyEZ8LDtYybGIIIv3HW6AhSVjXMUfYJQnQ,800
|
237
|
-
flwr/server/serverapp/app.py,sha256=
|
237
|
+
flwr/server/serverapp/app.py,sha256=ONhyP0mxu2WR7x8MvGvJy5bd2V6LruwjlKcNLZiGzw8,8623
|
238
238
|
flwr/server/serverapp_components.py,sha256=-IV_CitOfrJclJj2jNdbN1Q65PyFmtKtrTIg1hc6WQw,2118
|
239
239
|
flwr/server/strategy/__init__.py,sha256=tQer2SwjDnvgFFuJMZM-S01Z615N5XK6MaCvpm4BMU0,2836
|
240
240
|
flwr/server/strategy/aggregate.py,sha256=PDvekufza13s9AsVmz9WASunaBs3yCtl8JVliFx9j6Q,13978
|
@@ -284,50 +284,50 @@ flwr/server/superlink/fleet/vce/__init__.py,sha256=TZJsKTpYO_djv2EXx9Ji62I8TA0Ji
|
|
284
284
|
flwr/server/superlink/fleet/vce/backend/__init__.py,sha256=cGgal5qpd0_MwEdIqjJbHHSIgGa6GSPoI5_byUwtG_k,1437
|
285
285
|
flwr/server/superlink/fleet/vce/backend/backend.py,sha256=lr_uBMaoCp7qs59ZRpCI07wp-EsClNB-7QWFfF0r95c,2195
|
286
286
|
flwr/server/superlink/fleet/vce/backend/raybackend.py,sha256=jsUkFEVQTnrucK1jNQ_cUM8YwL7W4MQNA1GAf8ibRdg,7156
|
287
|
-
flwr/server/superlink/fleet/vce/vce_api.py,sha256=
|
287
|
+
flwr/server/superlink/fleet/vce/vce_api.py,sha256=GlT2wMpAFSk_jTXyp4kWdlsyt9DQ189zpHRzhf1I0Xg,12765
|
288
288
|
flwr/server/superlink/linkstate/__init__.py,sha256=v-2JyJlCB3qyhMNwMjmcNVOq4rkooqFU0LHH8Zo1jls,1064
|
289
|
-
flwr/server/superlink/linkstate/in_memory_linkstate.py,sha256=
|
289
|
+
flwr/server/superlink/linkstate/in_memory_linkstate.py,sha256=RQcdLeSN0MoIrKtY-lDEy3VZSADTnm10-NxU-7zwJNM,22295
|
290
290
|
flwr/server/superlink/linkstate/linkstate.py,sha256=YB3SryGNvt-bE-unYjoloJt9d3xAUPBNLK4mor8gk3M,11851
|
291
291
|
flwr/server/superlink/linkstate/linkstate_factory.py,sha256=ISSMjDlwuN7swxjOeYlTNpI_kuZ8PGkMcJnf1dbhUSE,2069
|
292
|
-
flwr/server/superlink/linkstate/sqlite_linkstate.py,sha256=
|
293
|
-
flwr/server/superlink/linkstate/utils.py,sha256=
|
292
|
+
flwr/server/superlink/linkstate/sqlite_linkstate.py,sha256=ksMR8FHj36dzJb4I0-gxyu3Z20x5qPTYfoQIZ6OG_qw,39634
|
293
|
+
flwr/server/superlink/linkstate/utils.py,sha256=srQtrrFuj8JVMqPOj3GWjHdgbolw39nG02gnf8AO9aU,15374
|
294
294
|
flwr/server/superlink/serverappio/__init__.py,sha256=Fy4zJuoccZe5mZSEIpOmQvU6YeXFBa1M4eZuXXmJcn8,717
|
295
295
|
flwr/server/superlink/serverappio/serverappio_grpc.py,sha256=opJ6SYwIAbu4NWEo3K-VxFO-tMSFmE4H3i2HwHIVRzw,2173
|
296
|
-
flwr/server/superlink/serverappio/serverappio_servicer.py,sha256=
|
296
|
+
flwr/server/superlink/serverappio/serverappio_servicer.py,sha256=DwBT7cn0UUc16l9HvyrWtQPAZsdDySTEZfuUV1-k-qA,13124
|
297
297
|
flwr/server/superlink/simulation/__init__.py,sha256=mg-oapC9dkzEfjXPQFior5lpWj4g9kwbLovptyYM_g0,718
|
298
298
|
flwr/server/superlink/simulation/simulationio_grpc.py,sha256=8aUrZZLdvprKUfLLqFID4aItus9beU6m1qLQYIPB7k0,2224
|
299
299
|
flwr/server/superlink/simulation/simulationio_servicer.py,sha256=J_TmdqM-Bxgp-iPEI3tvCuBpykw1UX0FouMQalEYAF4,6907
|
300
300
|
flwr/server/superlink/utils.py,sha256=KVb3K_g2vYfu9TnftcN0ewmev133WZcjuEePMm8d7GE,2137
|
301
|
-
flwr/server/typing.py,sha256=
|
301
|
+
flwr/server/typing.py,sha256=3pdDgzX-rwW56egOINr1R_Qnbhm20ieYNuVaI_P7-as,1011
|
302
302
|
flwr/server/utils/__init__.py,sha256=vnS9EAyVUsBOmWeYZXMoBcjeEFhqN4_KQQVk5EBiWG0,884
|
303
303
|
flwr/server/utils/tensorboard.py,sha256=gEBD8w_5uaIfp5aw5RYH66lYZpd_SfkObHQ7eDd9MUk,5466
|
304
|
-
flwr/server/utils/validator.py,sha256=
|
304
|
+
flwr/server/utils/validator.py,sha256=ka2zJkCNnfs6GdPJYWh_ojq8D5egOICmXBZmJWzecdQ,3616
|
305
305
|
flwr/server/workflow/__init__.py,sha256=SXY0XkwbkezFBxxrFB5hKUtmtAgnYISBkPouR1V71ss,902
|
306
306
|
flwr/server/workflow/constant.py,sha256=q4DLdR8Krlxuewq2AQjwTL75hphxE5ODNz4AhViHMXk,1082
|
307
|
-
flwr/server/workflow/default_workflows.py,sha256=
|
307
|
+
flwr/server/workflow/default_workflows.py,sha256=gEZcUR_FB0xnzuI5xESzJ1y5n1e9w_YswBJ_0enJHS4,14109
|
308
308
|
flwr/server/workflow/secure_aggregation/__init__.py,sha256=3XlgDOjD_hcukTGl6Bc1B-8M_dPlVSJuTbvXIbiO-Ic,880
|
309
309
|
flwr/server/workflow/secure_aggregation/secagg_workflow.py,sha256=l2IdMdJjs1bgHs5vQgLSOVzar7v2oxUn46oCrnVE1rM,5839
|
310
|
-
flwr/server/workflow/secure_aggregation/secaggplus_workflow.py,sha256=
|
310
|
+
flwr/server/workflow/secure_aggregation/secaggplus_workflow.py,sha256=s4ueiT0okWZWcJQFkaPDn8BsHOJ8TWj8S_2OKTW-f7s,29589
|
311
311
|
flwr/simulation/__init__.py,sha256=5UcDVJNjFoSwWqHbGM1hKfTTUUNdwAtuoNvNrfvdkUY,1556
|
312
312
|
flwr/simulation/app.py,sha256=xRVSJBnTXQUqWIYOzENfTnJlZ24CSNhWkhVEFxIu4I0,9758
|
313
313
|
flwr/simulation/legacy_app.py,sha256=qpZI4Vvzr5TyWSLTRrMP-jN4rH2C25JI9nVSSjhFwSQ,15861
|
314
314
|
flwr/simulation/ray_transport/__init__.py,sha256=wzcEEwUUlulnXsg6raCA1nGpP3LlAQDtJ8zNkCXcVbA,734
|
315
315
|
flwr/simulation/ray_transport/ray_actor.py,sha256=k11yoAPQzFGQU-KnCCP0ZrfPPdUPXXrBe-1DKM5VdW4,18997
|
316
|
-
flwr/simulation/ray_transport/ray_client_proxy.py,sha256=
|
316
|
+
flwr/simulation/ray_transport/ray_client_proxy.py,sha256=4JZRkic8ZYuf-pBaTqSA_yu_1ryms8Ql2FmuCFYrg1k,7506
|
317
317
|
flwr/simulation/ray_transport/utils.py,sha256=wtbQhKQ4jGoiQDLJNQP17m1DSfL22ERhDBGuoeUFaAQ,2393
|
318
|
-
flwr/simulation/run_simulation.py,sha256=
|
318
|
+
flwr/simulation/run_simulation.py,sha256=FGiv4HG89RZ5X5-zR8tLAREeeE9cgEOI3aqkKzIYgBw,20305
|
319
319
|
flwr/simulation/simulationio_connection.py,sha256=lcbEmdjb9RVEF2W5vSbf_J1zlTuv_ZAT_HLox1mqcfY,3494
|
320
320
|
flwr/superexec/__init__.py,sha256=fcj366jh4RFby_vDwLroU4kepzqbnJgseZD_jUr_Mko,715
|
321
321
|
flwr/superexec/app.py,sha256=C0T2LMjuyF__I5V1FKfjtWtbsQPxK_EgL4vuhWIwG8s,1465
|
322
|
-
flwr/superexec/deployment.py,sha256=
|
322
|
+
flwr/superexec/deployment.py,sha256=838JZys7mXLSu9EVQheICpYo-jAZ2pyab293CyEH_-c,6737
|
323
323
|
flwr/superexec/exec_event_log_interceptor.py,sha256=IlQ_w-GpGNMJ4g1gTI3H4LHfWli1-8O7a2-pCqB3yeA,5753
|
324
324
|
flwr/superexec/exec_grpc.py,sha256=9-WF6qPuhiYohMe3SIZ5Sapp_dLjICvm5QfdTNizsJg,3252
|
325
325
|
flwr/superexec/exec_servicer.py,sha256=4UpzJqPUHkBG2PZNe2lrX7XFVDOL6yw_HcoBHxuXE9A,8349
|
326
326
|
flwr/superexec/exec_user_auth_interceptor.py,sha256=2kXjjJcrZyff893QTFLQD6zxC4pdVwtN4Rc66jHptfE,4440
|
327
327
|
flwr/superexec/executor.py,sha256=_B55WW2TD1fBINpabSSDRenVHXYmvlfhv-k8hJKU4lQ,3115
|
328
|
-
flwr/superexec/simulation.py,sha256=
|
329
|
-
flwr_nightly-1.17.0.
|
330
|
-
flwr_nightly-1.17.0.
|
331
|
-
flwr_nightly-1.17.0.
|
332
|
-
flwr_nightly-1.17.0.
|
333
|
-
flwr_nightly-1.17.0.
|
328
|
+
flwr/superexec/simulation.py,sha256=avPJhubZDN9GZK9kS9ALyI1hJIaCZyy5fJ_ZfJcxjYM,4090
|
329
|
+
flwr_nightly-1.17.0.dev20250320.dist-info/LICENSE,sha256=z8d0m5b2O9McPEK1xHG_dWgUBT6EfBDz6wA0F7xSPTA,11358
|
330
|
+
flwr_nightly-1.17.0.dev20250320.dist-info/METADATA,sha256=Y_39geFEo4Y2MNgaJqpTkB5TPYe7d_6ZOpWLewWb6WM,15878
|
331
|
+
flwr_nightly-1.17.0.dev20250320.dist-info/WHEEL,sha256=FMvqSimYX_P7y0a7UY-_Mc83r5zkBZsCYPm7Lr0Bsq4,88
|
332
|
+
flwr_nightly-1.17.0.dev20250320.dist-info/entry_points.txt,sha256=2-1L-GNKhwGw2_7_RoH55vHw2SIHjdAQy3HAVAWl9PY,374
|
333
|
+
flwr_nightly-1.17.0.dev20250320.dist-info/RECORD,,
|
flwr/proto/recordset_pb2.py
DELETED
@@ -1,70 +0,0 @@
|
|
1
|
-
# -*- coding: utf-8 -*-
|
2
|
-
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
3
|
-
# source: flwr/proto/recordset.proto
|
4
|
-
# Protobuf Python Version: 4.25.1
|
5
|
-
"""Generated protocol buffer code."""
|
6
|
-
from google.protobuf import descriptor as _descriptor
|
7
|
-
from google.protobuf import descriptor_pool as _descriptor_pool
|
8
|
-
from google.protobuf import symbol_database as _symbol_database
|
9
|
-
from google.protobuf.internal import builder as _builder
|
10
|
-
# @@protoc_insertion_point(imports)
|
11
|
-
|
12
|
-
_sym_db = _symbol_database.Default()
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1a\x66lwr/proto/recordset.proto\x12\nflwr.proto\"\x1a\n\nDoubleList\x12\x0c\n\x04vals\x18\x01 \x03(\x01\"\x18\n\x08SintList\x12\x0c\n\x04vals\x18\x01 \x03(\x12\"\x18\n\x08UintList\x12\x0c\n\x04vals\x18\x01 \x03(\x04\"\x18\n\x08\x42oolList\x12\x0c\n\x04vals\x18\x01 \x03(\x08\"\x1a\n\nStringList\x12\x0c\n\x04vals\x18\x01 \x03(\t\"\x19\n\tBytesList\x12\x0c\n\x04vals\x18\x01 \x03(\x0c\"B\n\x05\x41rray\x12\r\n\x05\x64type\x18\x01 \x01(\t\x12\r\n\x05shape\x18\x02 \x03(\x05\x12\r\n\x05stype\x18\x03 \x01(\t\x12\x0c\n\x04\x64\x61ta\x18\x04 \x01(\x0c\"\xd8\x01\n\x12MetricsRecordValue\x12\x10\n\x06\x64ouble\x18\x01 \x01(\x01H\x00\x12\x10\n\x06sint64\x18\x02 \x01(\x12H\x00\x12\x10\n\x06uint64\x18\x03 \x01(\x04H\x00\x12-\n\x0b\x64ouble_list\x18\x15 \x01(\x0b\x32\x16.flwr.proto.DoubleListH\x00\x12)\n\tsint_list\x18\x16 \x01(\x0b\x32\x14.flwr.proto.SintListH\x00\x12)\n\tuint_list\x18\x17 \x01(\x0b\x32\x14.flwr.proto.UintListH\x00\x42\x07\n\x05value\"\x92\x03\n\x12\x43onfigsRecordValue\x12\x10\n\x06\x64ouble\x18\x01 \x01(\x01H\x00\x12\x10\n\x06sint64\x18\x02 \x01(\x12H\x00\x12\x10\n\x06uint64\x18\x03 \x01(\x04H\x00\x12\x0e\n\x04\x62ool\x18\x04 \x01(\x08H\x00\x12\x10\n\x06string\x18\x05 \x01(\tH\x00\x12\x0f\n\x05\x62ytes\x18\x06 \x01(\x0cH\x00\x12-\n\x0b\x64ouble_list\x18\x15 \x01(\x0b\x32\x16.flwr.proto.DoubleListH\x00\x12)\n\tsint_list\x18\x16 \x01(\x0b\x32\x14.flwr.proto.SintListH\x00\x12)\n\tuint_list\x18\x17 \x01(\x0b\x32\x14.flwr.proto.UintListH\x00\x12)\n\tbool_list\x18\x18 \x01(\x0b\x32\x14.flwr.proto.BoolListH\x00\x12-\n\x0bstring_list\x18\x19 \x01(\x0b\x32\x16.flwr.proto.StringListH\x00\x12+\n\nbytes_list\x18\x1a \x01(\x0b\x32\x15.flwr.proto.BytesListH\x00\x42\x07\n\x05value\"M\n\x10ParametersRecord\x12\x11\n\tdata_keys\x18\x01 \x03(\t\x12&\n\x0b\x64\x61ta_values\x18\x02 \x03(\x0b\x32\x11.flwr.proto.Array\"\x8f\x01\n\rMetricsRecord\x12\x31\n\x04\x64\x61ta\x18\x01 \x03(\x0b\x32#.flwr.proto.MetricsRecord.DataEntry\x1aK\n\tDataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12-\n\x05value\x18\x02 \x01(\x0b\x32\x1e.flwr.proto.MetricsRecordValue:\x02\x38\x01\"\x8f\x01\n\rConfigsRecord\x12\x31\n\x04\x64\x61ta\x18\x01 \x03(\x0b\x32#.flwr.proto.ConfigsRecord.DataEntry\x1aK\n\tDataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12-\n\x05value\x18\x02 \x01(\x0b\x32\x1e.flwr.proto.ConfigsRecordValue:\x02\x38\x01\"\x97\x03\n\tRecordSet\x12\x39\n\nparameters\x18\x01 \x03(\x0b\x32%.flwr.proto.RecordSet.ParametersEntry\x12\x33\n\x07metrics\x18\x02 \x03(\x0b\x32\".flwr.proto.RecordSet.MetricsEntry\x12\x33\n\x07\x63onfigs\x18\x03 \x03(\x0b\x32\".flwr.proto.RecordSet.ConfigsEntry\x1aO\n\x0fParametersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12+\n\x05value\x18\x02 \x01(\x0b\x32\x1c.flwr.proto.ParametersRecord:\x02\x38\x01\x1aI\n\x0cMetricsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12(\n\x05value\x18\x02 \x01(\x0b\x32\x19.flwr.proto.MetricsRecord:\x02\x38\x01\x1aI\n\x0c\x43onfigsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12(\n\x05value\x18\x02 \x01(\x0b\x32\x19.flwr.proto.ConfigsRecord:\x02\x38\x01\x62\x06proto3')
|
18
|
-
|
19
|
-
_globals = globals()
|
20
|
-
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
21
|
-
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'flwr.proto.recordset_pb2', _globals)
|
22
|
-
if _descriptor._USE_C_DESCRIPTORS == False:
|
23
|
-
DESCRIPTOR._options = None
|
24
|
-
_globals['_METRICSRECORD_DATAENTRY']._options = None
|
25
|
-
_globals['_METRICSRECORD_DATAENTRY']._serialized_options = b'8\001'
|
26
|
-
_globals['_CONFIGSRECORD_DATAENTRY']._options = None
|
27
|
-
_globals['_CONFIGSRECORD_DATAENTRY']._serialized_options = b'8\001'
|
28
|
-
_globals['_RECORDSET_PARAMETERSENTRY']._options = None
|
29
|
-
_globals['_RECORDSET_PARAMETERSENTRY']._serialized_options = b'8\001'
|
30
|
-
_globals['_RECORDSET_METRICSENTRY']._options = None
|
31
|
-
_globals['_RECORDSET_METRICSENTRY']._serialized_options = b'8\001'
|
32
|
-
_globals['_RECORDSET_CONFIGSENTRY']._options = None
|
33
|
-
_globals['_RECORDSET_CONFIGSENTRY']._serialized_options = b'8\001'
|
34
|
-
_globals['_DOUBLELIST']._serialized_start=42
|
35
|
-
_globals['_DOUBLELIST']._serialized_end=68
|
36
|
-
_globals['_SINTLIST']._serialized_start=70
|
37
|
-
_globals['_SINTLIST']._serialized_end=94
|
38
|
-
_globals['_UINTLIST']._serialized_start=96
|
39
|
-
_globals['_UINTLIST']._serialized_end=120
|
40
|
-
_globals['_BOOLLIST']._serialized_start=122
|
41
|
-
_globals['_BOOLLIST']._serialized_end=146
|
42
|
-
_globals['_STRINGLIST']._serialized_start=148
|
43
|
-
_globals['_STRINGLIST']._serialized_end=174
|
44
|
-
_globals['_BYTESLIST']._serialized_start=176
|
45
|
-
_globals['_BYTESLIST']._serialized_end=201
|
46
|
-
_globals['_ARRAY']._serialized_start=203
|
47
|
-
_globals['_ARRAY']._serialized_end=269
|
48
|
-
_globals['_METRICSRECORDVALUE']._serialized_start=272
|
49
|
-
_globals['_METRICSRECORDVALUE']._serialized_end=488
|
50
|
-
_globals['_CONFIGSRECORDVALUE']._serialized_start=491
|
51
|
-
_globals['_CONFIGSRECORDVALUE']._serialized_end=893
|
52
|
-
_globals['_PARAMETERSRECORD']._serialized_start=895
|
53
|
-
_globals['_PARAMETERSRECORD']._serialized_end=972
|
54
|
-
_globals['_METRICSRECORD']._serialized_start=975
|
55
|
-
_globals['_METRICSRECORD']._serialized_end=1118
|
56
|
-
_globals['_METRICSRECORD_DATAENTRY']._serialized_start=1043
|
57
|
-
_globals['_METRICSRECORD_DATAENTRY']._serialized_end=1118
|
58
|
-
_globals['_CONFIGSRECORD']._serialized_start=1121
|
59
|
-
_globals['_CONFIGSRECORD']._serialized_end=1264
|
60
|
-
_globals['_CONFIGSRECORD_DATAENTRY']._serialized_start=1189
|
61
|
-
_globals['_CONFIGSRECORD_DATAENTRY']._serialized_end=1264
|
62
|
-
_globals['_RECORDSET']._serialized_start=1267
|
63
|
-
_globals['_RECORDSET']._serialized_end=1674
|
64
|
-
_globals['_RECORDSET_PARAMETERSENTRY']._serialized_start=1445
|
65
|
-
_globals['_RECORDSET_PARAMETERSENTRY']._serialized_end=1524
|
66
|
-
_globals['_RECORDSET_METRICSENTRY']._serialized_start=1526
|
67
|
-
_globals['_RECORDSET_METRICSENTRY']._serialized_end=1599
|
68
|
-
_globals['_RECORDSET_CONFIGSENTRY']._serialized_start=1601
|
69
|
-
_globals['_RECORDSET_CONFIGSENTRY']._serialized_end=1674
|
70
|
-
# @@protoc_insertion_point(module_scope)
|
File without changes
|
File without changes
|