flwr-nightly 1.17.0.dev20250319__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/context.py +4 -4
- 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/compat/grid_client_proxy.py +30 -30
- flwr/server/grid/grid.py +3 -3
- flwr/server/grid/grpc_grid.py +15 -23
- flwr/server/grid/inmemory_grid.py +14 -20
- flwr/server/superlink/fleet/vce/vce_api.py +1 -3
- flwr/server/superlink/linkstate/in_memory_linkstate.py +1 -1
- flwr/server/superlink/linkstate/sqlite_linkstate.py +14 -18
- flwr/server/superlink/linkstate/utils.py +10 -7
- flwr/server/superlink/serverappio/serverappio_servicer.py +1 -1
- flwr/server/utils/validator.py +4 -4
- flwr/server/workflow/default_workflows.py +7 -7
- flwr/server/workflow/secure_aggregation/secaggplus_workflow.py +8 -8
- flwr/simulation/ray_transport/ray_client_proxy.py +34 -32
- flwr/simulation/run_simulation.py +3 -3
- flwr/superexec/deployment.py +2 -2
- flwr/superexec/simulation.py +2 -2
- {flwr_nightly-1.17.0.dev20250319.dist-info → flwr_nightly-1.17.0.dev20250320.dist-info}/METADATA +1 -1
- {flwr_nightly-1.17.0.dev20250319.dist-info → flwr_nightly-1.17.0.dev20250320.dist-info}/RECORD +49 -49
- 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.dev20250319.dist-info → flwr_nightly-1.17.0.dev20250320.dist-info}/LICENSE +0 -0
- {flwr_nightly-1.17.0.dev20250319.dist-info → flwr_nightly-1.17.0.dev20250320.dist-info}/WHEEL +0 -0
- {flwr_nightly-1.17.0.dev20250319.dist-info → flwr_nightly-1.17.0.dev20250320.dist-info}/entry_points.txt +0 -0
@@ -20,7 +20,7 @@ from dataclasses import dataclass, field
|
|
20
20
|
from logging import DEBUG, ERROR, INFO, WARN
|
21
21
|
from typing import Optional, Union, cast
|
22
22
|
|
23
|
-
import flwr.common.
|
23
|
+
import flwr.common.recorddict_compat as compat
|
24
24
|
from flwr.common import (
|
25
25
|
ConfigsRecord,
|
26
26
|
Context,
|
@@ -28,7 +28,7 @@ from flwr.common import (
|
|
28
28
|
Message,
|
29
29
|
MessageType,
|
30
30
|
NDArrays,
|
31
|
-
|
31
|
+
RecordDict,
|
32
32
|
bytes_to_ndarray,
|
33
33
|
log,
|
34
34
|
ndarrays_to_parameters,
|
@@ -66,7 +66,7 @@ class WorkflowState: # pylint: disable=R0902
|
|
66
66
|
"""The state of the SecAgg+ protocol."""
|
67
67
|
|
68
68
|
nid_to_proxies: dict[int, ClientProxy] = field(default_factory=dict)
|
69
|
-
nid_to_fitins: dict[int,
|
69
|
+
nid_to_fitins: dict[int, RecordDict] = field(default_factory=dict)
|
70
70
|
sampled_node_ids: set[int] = field(default_factory=set)
|
71
71
|
active_node_ids: set[int] = field(default_factory=set)
|
72
72
|
num_shares: int = 0
|
@@ -303,7 +303,7 @@ class SecAggPlusWorkflow:
|
|
303
303
|
)
|
304
304
|
|
305
305
|
state.nid_to_fitins = {
|
306
|
-
proxy.node_id: compat.
|
306
|
+
proxy.node_id: compat.fitins_to_recorddict(fitins, True)
|
307
307
|
for proxy, fitins in proxy_fitins_lst
|
308
308
|
}
|
309
309
|
state.nid_to_proxies = {proxy.node_id: proxy for proxy, _ in proxy_fitins_lst}
|
@@ -367,7 +367,7 @@ class SecAggPlusWorkflow:
|
|
367
367
|
|
368
368
|
# Send setup configuration to clients
|
369
369
|
cfgs_record = ConfigsRecord(sa_params_dict) # type: ignore
|
370
|
-
content =
|
370
|
+
content = RecordDict({RECORD_KEY_CONFIGS: cfgs_record})
|
371
371
|
|
372
372
|
def make(nid: int) -> Message:
|
373
373
|
return grid.create_message(
|
@@ -417,7 +417,7 @@ class SecAggPlusWorkflow:
|
|
417
417
|
{str(nid): state.nid_to_publickeys[nid] for nid in neighbours}
|
418
418
|
)
|
419
419
|
cfgs_record[Key.STAGE] = Stage.SHARE_KEYS
|
420
|
-
content =
|
420
|
+
content = RecordDict({RECORD_KEY_CONFIGS: cfgs_record})
|
421
421
|
return grid.create_message(
|
422
422
|
content=content,
|
423
423
|
message_type=MessageType.TRAIN,
|
@@ -540,7 +540,7 @@ class SecAggPlusWorkflow:
|
|
540
540
|
if msg.has_error():
|
541
541
|
state.failures.append(Exception(msg.error))
|
542
542
|
continue
|
543
|
-
fitres = compat.
|
543
|
+
fitres = compat.recorddict_to_fitres(msg.content, True)
|
544
544
|
proxy = state.nid_to_proxies[msg.metadata.src_node_id]
|
545
545
|
state.legacy_results.append((proxy, fitres))
|
546
546
|
|
@@ -566,7 +566,7 @@ class SecAggPlusWorkflow:
|
|
566
566
|
Key.DEAD_NODE_ID_LIST: list(neighbours & dead_nids),
|
567
567
|
}
|
568
568
|
cfgs_record = ConfigsRecord(cfgs_dict) # type: ignore
|
569
|
-
content =
|
569
|
+
content = RecordDict({RECORD_KEY_CONFIGS: cfgs_record})
|
570
570
|
return grid.create_message(
|
571
571
|
content=content,
|
572
572
|
message_type=MessageType.TRAIN,
|
@@ -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 (
|
@@ -260,7 +260,7 @@ 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
|
|
@@ -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:
|
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.dev20250319.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
119
|
flwr/common/constant.py,sha256=a1kNtPH5yS30YUWs7VgNu-O7i8_RAt5iL0AzG04QHVo,6989
|
120
|
-
flwr/common/context.py,sha256=
|
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
|
@@ -130,18 +130,18 @@ flwr/common/exit/exit_code.py,sha256=PNEnCrZfOILjfDAFu5m-2YWEJBrk97xglq4zCUlqV7E
|
|
130
130
|
flwr/common/exit_handlers.py,sha256=yclujry30954o0lI7vtknTajskPCvK8TXw2V3RdldXU,3174
|
131
131
|
flwr/common/grpc.py,sha256=7sHNP34LcNZv7J1GewJxXh509XTEbYvoHvXL5tQ3tcw,9798
|
132
132
|
flwr/common/logger.py,sha256=Q5ZsQq1ouTvpP63I4V8e7gr0T_r7h0DJ122Nh3q0qzg,13049
|
133
|
-
flwr/common/message.py,sha256=
|
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
|
@@ -220,14 +220,14 @@ flwr/server/client_proxy.py,sha256=4G-oTwhb45sfWLx2uZdcXD98IZwdTS6F88xe3akCdUg,2
|
|
220
220
|
flwr/server/compat/__init__.py,sha256=uEH_iym6jRdv-Z48CksoMsxvrxU26PIIj50Plf39jhs,886
|
221
221
|
flwr/server/compat/app.py,sha256=Q4XY4sQ5fRPvX86X1U2A2Ah1QbVTg26YsTJC8JgdruY,3323
|
222
222
|
flwr/server/compat/app_utils.py,sha256=X63iKjRsdsyVL0TTIlIXqysOxXh1lyymR8qEmJopx2c,3772
|
223
|
-
flwr/server/compat/grid_client_proxy.py,sha256=
|
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
227
|
flwr/server/grid/__init__.py,sha256=aWZHezoR2UGMJISB_gPMCm2N_2GSbm97A3lAp7ruhRQ,888
|
228
|
-
flwr/server/grid/grid.py,sha256=
|
229
|
-
flwr/server/grid/grpc_grid.py,sha256=
|
230
|
-
flwr/server/grid/inmemory_grid.py,sha256=
|
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
232
|
flwr/server/run_serverapp.py,sha256=EEDgJH0iwKCsxguGrdjQ6Eh7BL6VaM23DWjec6AlVdE,2063
|
233
233
|
flwr/server/server.py,sha256=1ZsFEptmAV-L2vP2etNC9Ed5CLSxpuKzUFkAPQ4l5Xc,17893
|
@@ -284,16 +284,16 @@ 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
|
@@ -301,33 +301,33 @@ flwr/server/superlink/utils.py,sha256=KVb3K_g2vYfu9TnftcN0ewmev133WZcjuEePMm8d7G
|
|
301
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
|
{flwr_nightly-1.17.0.dev20250319.dist-info → flwr_nightly-1.17.0.dev20250320.dist-info}/LICENSE
RENAMED
File without changes
|
{flwr_nightly-1.17.0.dev20250319.dist-info → flwr_nightly-1.17.0.dev20250320.dist-info}/WHEEL
RENAMED
File without changes
|
File without changes
|