flwr-nightly 1.26.0.dev20260129__py3-none-any.whl → 1.26.0.dev20260201__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/cli/build.py +1 -1
- flwr/cli/config_migration.py +2 -2
- flwr/cli/install.py +1 -1
- flwr/cli/run/run.py +21 -4
- flwr/cli/supernode/register.py +1 -2
- flwr/cli/utils.py +2 -1
- flwr/client/grpc_rere_client/connection.py +1 -1
- flwr/common/args.py +4 -4
- flwr/common/config.py +2 -2
- flwr/common/exit/exit.py +3 -3
- flwr/common/logger.py +1 -1
- flwr/proto/clientappio_pb2.py +1 -1
- flwr/proto/clientappio_pb2_grpc.py +106 -90
- flwr/proto/clientappio_pb2_grpc.pyi +145 -85
- flwr/proto/serverappio_pb2.py +1 -1
- flwr/proto/serverappio_pb2_grpc.py +168 -148
- flwr/proto/serverappio_pb2_grpc.pyi +209 -134
- flwr/proto/simulationio_pb2.py +1 -1
- flwr/proto/simulationio_pb2_grpc.py +80 -64
- flwr/proto/simulationio_pb2_grpc.pyi +109 -49
- flwr/server/app.py +1 -1
- flwr/server/serverapp/app.py +11 -4
- flwr/server/superlink/linkstate/linkstate_factory.py +12 -4
- flwr/supercore/ffs/disk_ffs.py +1 -1
- flwr/supercore/object_store/object_store_factory.py +10 -2
- flwr/supercore/sql_mixin.py +8 -2
- flwr/supernode/cli/flower_supernode.py +2 -1
- {flwr_nightly-1.26.0.dev20260129.dist-info → flwr_nightly-1.26.0.dev20260201.dist-info}/METADATA +2 -2
- {flwr_nightly-1.26.0.dev20260129.dist-info → flwr_nightly-1.26.0.dev20260201.dist-info}/RECORD +31 -31
- {flwr_nightly-1.26.0.dev20260129.dist-info → flwr_nightly-1.26.0.dev20260201.dist-info}/WHEEL +0 -0
- {flwr_nightly-1.26.0.dev20260129.dist-info → flwr_nightly-1.26.0.dev20260201.dist-info}/entry_points.txt +0 -0
|
@@ -56,20 +56,28 @@ class LinkStateFactory:
|
|
|
56
56
|
|
|
57
57
|
def state(self) -> LinkState:
|
|
58
58
|
"""Return a State instance and create it, if necessary."""
|
|
59
|
+
# Return cached state if it exists
|
|
60
|
+
if self.state_instance is not None:
|
|
61
|
+
if self.database == FLWR_IN_MEMORY_DB_NAME:
|
|
62
|
+
log(DEBUG, "Using InMemoryState")
|
|
63
|
+
else:
|
|
64
|
+
log(DEBUG, "Using SqlLinkState")
|
|
65
|
+
return self.state_instance
|
|
66
|
+
|
|
59
67
|
# Get the ObjectStore instance
|
|
60
68
|
object_store = self.objectstore_factory.store()
|
|
61
69
|
|
|
62
70
|
# InMemoryState
|
|
63
71
|
if self.database == FLWR_IN_MEMORY_DB_NAME:
|
|
64
|
-
|
|
65
|
-
self.
|
|
66
|
-
|
|
67
|
-
)
|
|
72
|
+
self.state_instance = InMemoryLinkState(
|
|
73
|
+
self.federation_manager, object_store
|
|
74
|
+
)
|
|
68
75
|
log(DEBUG, "Using InMemoryState")
|
|
69
76
|
return self.state_instance
|
|
70
77
|
|
|
71
78
|
# SqlLinkState
|
|
72
79
|
state = SqlLinkState(self.database, self.federation_manager, object_store)
|
|
73
80
|
state.initialize()
|
|
81
|
+
self.state_instance = state
|
|
74
82
|
log(DEBUG, "Using SqlLinkState")
|
|
75
83
|
return state
|
flwr/supercore/ffs/disk_ffs.py
CHANGED
|
@@ -33,7 +33,7 @@ class DiskFfs(Ffs): # pylint: disable=R0904
|
|
|
33
33
|
base_dir : str
|
|
34
34
|
The base directory to store the objects.
|
|
35
35
|
"""
|
|
36
|
-
self.base_dir = Path(base_dir)
|
|
36
|
+
self.base_dir = Path(base_dir).expanduser()
|
|
37
37
|
|
|
38
38
|
def put(self, content: bytes, meta: dict[str, str]) -> str:
|
|
39
39
|
"""Store bytes and metadata and return key (hash of content).
|
|
@@ -49,15 +49,23 @@ class ObjectStoreFactory:
|
|
|
49
49
|
ObjectStore
|
|
50
50
|
An ObjectStore instance for storing objects by object_id.
|
|
51
51
|
"""
|
|
52
|
+
# Return cached store if it exists
|
|
53
|
+
if self.store_instance is not None:
|
|
54
|
+
if self.database == FLWR_IN_MEMORY_DB_NAME:
|
|
55
|
+
log(DEBUG, "Using InMemoryObjectStore")
|
|
56
|
+
else:
|
|
57
|
+
log(DEBUG, "Using SqlObjectStore")
|
|
58
|
+
return self.store_instance
|
|
59
|
+
|
|
52
60
|
# InMemoryObjectStore
|
|
53
61
|
if self.database == FLWR_IN_MEMORY_DB_NAME:
|
|
54
|
-
|
|
55
|
-
self.store_instance = InMemoryObjectStore()
|
|
62
|
+
self.store_instance = InMemoryObjectStore()
|
|
56
63
|
log(DEBUG, "Using InMemoryObjectStore")
|
|
57
64
|
return self.store_instance
|
|
58
65
|
|
|
59
66
|
# SqlObjectStore
|
|
60
67
|
store = SqlObjectStore(self.database)
|
|
61
68
|
store.initialize()
|
|
69
|
+
self.store_instance = store
|
|
62
70
|
log(DEBUG, "Using SqlObjectStore")
|
|
63
71
|
return store
|
flwr/supercore/sql_mixin.py
CHANGED
|
@@ -30,6 +30,7 @@ from sqlalchemy.orm import Session, sessionmaker
|
|
|
30
30
|
|
|
31
31
|
from flwr.common.logger import log
|
|
32
32
|
from flwr.supercore.constant import FLWR_IN_MEMORY_SQLITE_DB_URL, SQLITE_PRAGMAS
|
|
33
|
+
from flwr.supercore.state.alembic.utils import run_migrations
|
|
33
34
|
|
|
34
35
|
_current_session: ContextVar[Session | None] = ContextVar(
|
|
35
36
|
"current_sqlalchemy_session",
|
|
@@ -193,9 +194,14 @@ class SqlMixin(ABC):
|
|
|
193
194
|
# Create session factory
|
|
194
195
|
self._session_factory = sessionmaker(bind=self._engine)
|
|
195
196
|
|
|
196
|
-
# Create
|
|
197
|
-
|
|
197
|
+
# Create database
|
|
198
|
+
metadata: MetaData | None = self.get_metadata()
|
|
199
|
+
if metadata and self.database_url == FLWR_IN_MEMORY_SQLITE_DB_URL:
|
|
200
|
+
# In-memory databases: create tables directly from SQLAlchemy metadata
|
|
198
201
|
metadata.create_all(self._engine)
|
|
202
|
+
else:
|
|
203
|
+
# File-based databases: use Alembic migrations for schema versioning
|
|
204
|
+
run_migrations(self._engine)
|
|
199
205
|
|
|
200
206
|
# Get all table names using inspector
|
|
201
207
|
inspector = inspect(self._engine)
|
|
@@ -233,7 +233,7 @@ def _try_setup_client_authentication(
|
|
|
233
233
|
|
|
234
234
|
try:
|
|
235
235
|
ssh_private_key = load_ssh_private_key(
|
|
236
|
-
Path(args.auth_supernode_private_key).read_bytes(),
|
|
236
|
+
Path(args.auth_supernode_private_key).expanduser().read_bytes(),
|
|
237
237
|
None,
|
|
238
238
|
)
|
|
239
239
|
if not isinstance(ssh_private_key, ec.EllipticCurvePrivateKey):
|
|
@@ -260,6 +260,7 @@ def _try_obtain_trusted_entities(
|
|
|
260
260
|
"""Validate and return the trust entities."""
|
|
261
261
|
if not trusted_entities_path:
|
|
262
262
|
return None
|
|
263
|
+
trusted_entities_path = trusted_entities_path.expanduser()
|
|
263
264
|
if not trusted_entities_path.is_file():
|
|
264
265
|
flwr_exit(
|
|
265
266
|
ExitCode.SUPERNODE_INVALID_TRUSTED_ENTITIES,
|
{flwr_nightly-1.26.0.dev20260129.dist-info → flwr_nightly-1.26.0.dev20260201.dist-info}/METADATA
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: flwr-nightly
|
|
3
|
-
Version: 1.26.0.
|
|
3
|
+
Version: 1.26.0.dev20260201
|
|
4
4
|
Summary: Flower: A Friendly Federated AI Framework
|
|
5
5
|
License: Apache-2.0
|
|
6
6
|
Keywords: Artificial Intelligence,Federated AI,Federated Analytics,Federated Evaluation,Federated Learning,Flower,Machine Learning
|
|
@@ -32,7 +32,7 @@ Provides-Extra: rest
|
|
|
32
32
|
Provides-Extra: simulation
|
|
33
33
|
Requires-Dist: SQLAlchemy (>=2.0.45,<3.0.0)
|
|
34
34
|
Requires-Dist: alembic (>=1.18.1,<2.0.0)
|
|
35
|
-
Requires-Dist: click (
|
|
35
|
+
Requires-Dist: click (>=8.0.0,<9.0.0)
|
|
36
36
|
Requires-Dist: cryptography (>=44.0.1,<45.0.0)
|
|
37
37
|
Requires-Dist: grpcio (>=1.70.0,<2.0.0)
|
|
38
38
|
Requires-Dist: grpcio-health-checking (>=1.70.0,<2.0.0)
|
{flwr_nightly-1.26.0.dev20260129.dist-info → flwr_nightly-1.26.0.dev20260201.dist-info}/RECORD
RENAMED
|
@@ -14,18 +14,18 @@ flwr/cli/auth_plugin/__init__.py,sha256=qpebWV9uLpx72_J8yTVgT1DlH2Y9MK_RraDoTYEq
|
|
|
14
14
|
flwr/cli/auth_plugin/auth_plugin.py,sha256=CKGsk0RvSmKPDfz5RsQIE_w1bWROBSOoVydbub4Z-I8,2813
|
|
15
15
|
flwr/cli/auth_plugin/noop_auth_plugin.py,sha256=GKrZ97w7NoZGn2r6gzqtMvyeHXeIkNKCLTfT_NHaiwg,3209
|
|
16
16
|
flwr/cli/auth_plugin/oidc_cli_plugin.py,sha256=1gN00FifSrhUA5s5uaE_GpQ3N7U8fQec4PXlSJr50RU,5975
|
|
17
|
-
flwr/cli/build.py,sha256=
|
|
17
|
+
flwr/cli/build.py,sha256=Zfy6SfuhnkfVt0nccfrX-lWxNgtzhhG-OTSXG0VFfLQ,10007
|
|
18
18
|
flwr/cli/cli_account_auth_interceptor.py,sha256=mXgxThpZjU_2Xlae9xT8ewOw60GeE64comDd57asLIY,3680
|
|
19
19
|
flwr/cli/config/__init__.py,sha256=46z6whA3hvKkl9APRs-UG7Ym3K9VOqKx_pYcgelRjtE,788
|
|
20
20
|
flwr/cli/config/ls.py,sha256=14JvV7llvhKozz19eIrrrWxR6WeXyko8apPFiq4P08E,2661
|
|
21
|
-
flwr/cli/config_migration.py,sha256=
|
|
21
|
+
flwr/cli/config_migration.py,sha256=Lc_y6zebVBgRr6JdiPJcyroUjuOG0k7UQEbqISUPC2E,10647
|
|
22
22
|
flwr/cli/config_utils.py,sha256=LNmbPODWefsEtt4ov63BFtuTcK1Pb8Z-AHt1_haWWdA,7841
|
|
23
23
|
flwr/cli/constant.py,sha256=MYLI7m9ntwWNkFgEEtKVo1JWX3umf_0EdqY8nJy-83Y,3525
|
|
24
24
|
flwr/cli/example.py,sha256=SNTorkKPrx1rOryGREUyZu8TcOc1-vFv1zEddaysdY0,2216
|
|
25
25
|
flwr/cli/federation/__init__.py,sha256=okxswL4fAjApI9gV_alU1lRkTUcQRbwlzvtUTLz61fE,793
|
|
26
26
|
flwr/cli/federation/ls.py,sha256=VwoM0BrlcvQvE4oGqFol4sAI9JqtR32SYN5gzDfmVPY,10144
|
|
27
27
|
flwr/cli/flower_config.py,sha256=YQfuFGW52jf6EoAxWrXQYw6lmuH0j2qsZ0twHRLxx4k,15278
|
|
28
|
-
flwr/cli/install.py,sha256=
|
|
28
|
+
flwr/cli/install.py,sha256=AKjJxDr_kBJirpqMg_EemlP23CfH5UF3h5IjtJQ_xPs,9124
|
|
29
29
|
flwr/cli/log.py,sha256=BPA0dvGlXx5PrtURPua5fJyF7iVrb28K4fEY2Uth0EE,7317
|
|
30
30
|
flwr/cli/login/__init__.py,sha256=B1SXKU3HCQhWfFDMJhlC7FOl8UsvH4mxysxeBnrfyUE,800
|
|
31
31
|
flwr/cli/login/login.py,sha256=o-jm5QRMIpivE8kpY7cPTGbr7nQhsyFYaftMtBaaT0s,3649
|
|
@@ -34,22 +34,22 @@ flwr/cli/new/__init__.py,sha256=QA1E2QtzPvFCjLTUHnFnJbufuFiGyT_0Y53Wpbvg1F0,790
|
|
|
34
34
|
flwr/cli/new/new.py,sha256=15phs5dhEpo7ORs7uulGzHWtW9W5ZGn0EKFE_T5WXb8,7829
|
|
35
35
|
flwr/cli/pull.py,sha256=XzBvLrdYGrSCuky5OoCEU4V9UR9QlyZMT7Tj-W6wSw0,2946
|
|
36
36
|
flwr/cli/run/__init__.py,sha256=RPyB7KbYTFl6YRiilCch6oezxrLQrl1kijV7BMGkLbA,790
|
|
37
|
-
flwr/cli/run/run.py,sha256=
|
|
37
|
+
flwr/cli/run/run.py,sha256=4TnkVR6k921F3p198Avdh7qVs0IUt_NcUsInlhV6NUI,9355
|
|
38
38
|
flwr/cli/run_utils.py,sha256=ZnlBOqFfRxVEPZKR_9zYrynNcohiCFY8QN6OFyOCrQs,5082
|
|
39
39
|
flwr/cli/stop.py,sha256=c5e2gTumMT6pKr7ESIXZ-IbLY6fEOfWbkesvQeAfaSQ,3934
|
|
40
40
|
flwr/cli/supernode/__init__.py,sha256=DBkjoPo2hS2Y-ghJxwLbrAbCQFBgD82_Itl2_892UBo,917
|
|
41
41
|
flwr/cli/supernode/ls.py,sha256=mmpwIpwp5YZSdq3gDlv0h8QpKoMBgZWrMrvJm_ltiRw,7594
|
|
42
|
-
flwr/cli/supernode/register.py,sha256=
|
|
42
|
+
flwr/cli/supernode/register.py,sha256=HzgJ1Q8Mlx7oJE-2kRLbIX2OrQP7wM0IeywirLqyz9Y,4724
|
|
43
43
|
flwr/cli/supernode/unregister.py,sha256=ha8-oTXA4NW8xHLyQPHn-e0f7-9bF2QyjXxUD299O6s,2938
|
|
44
44
|
flwr/cli/typing.py,sha256=xGAIv9mAVzs6UXapzu4i8bQ-MckzHMSihtLcnu5SWGU,7562
|
|
45
|
-
flwr/cli/utils.py,sha256=
|
|
45
|
+
flwr/cli/utils.py,sha256=JiKK7PqNHDUERdhaDPEHNcp2rELthS3GWGBPqwwM02c,17337
|
|
46
46
|
flwr/client/__init__.py,sha256=xwkPJfdeWxIIfmiPE5vnmnY_JbTlErP0Qs9eBP6qRFg,1252
|
|
47
47
|
flwr/client/client.py,sha256=3HAchxvknKG9jYbB7swNyDj-e5vUWDuMKoLvbT7jCVM,7895
|
|
48
48
|
flwr/client/dpfedavg_numpy_client.py,sha256=ELDHyEJcTB-FlLhHC-JXy8HuB3ZFHfT0HL3g1VSWY5w,7451
|
|
49
49
|
flwr/client/grpc_adapter_client/__init__.py,sha256=RQWP5mFPROLHKgombiRvPXVWSoVrQ81wvZm0-lOuuBA,742
|
|
50
50
|
flwr/client/grpc_adapter_client/connection.py,sha256=rr3NA7d-BYsWNTu1VRE9966FxToLLECLBAVNhf5uFoo,4242
|
|
51
51
|
flwr/client/grpc_rere_client/__init__.py,sha256=i7iS0Lt8B7q0E2L72e4F_YrKm6ClRKnd71PNA6PW2O0,752
|
|
52
|
-
flwr/client/grpc_rere_client/connection.py,sha256=
|
|
52
|
+
flwr/client/grpc_rere_client/connection.py,sha256=0IU1X5W1H8D1Lit6_-sJIPLRyfpOv10AGOsQboZTg7E,13832
|
|
53
53
|
flwr/client/grpc_rere_client/grpc_adapter.py,sha256=HR6P604_RZa6CRd0tf2Nmcw5e5puRIAryWQrq64yxyw,7568
|
|
54
54
|
flwr/client/grpc_rere_client/node_auth_client_interceptor.py,sha256=rIUo64KOSYMC-GlfTvIYgeouAX8i6eOd5Rq2Yi9UFMY,2437
|
|
55
55
|
flwr/client/message_handler/__init__.py,sha256=0lyljDVqre3WljiZbPcwCCf8GiIaSVI_yo_ylEyPwSE,719
|
|
@@ -75,8 +75,8 @@ flwr/clientapp/mod/localdp_mod.py,sha256=CHh0SJOSWSD6In9p9yOFbE7S4eH1m-aQcStT8ZI
|
|
|
75
75
|
flwr/clientapp/typing.py,sha256=Ld2rsD40SvIRD1Z_IdAGaYSbRtkgXZ5CPFIkJJ3Ao-A,862
|
|
76
76
|
flwr/clientapp/utils.py,sha256=UEb3DFpAsAaG1ARU34D3L8njn4k1iPg-qpHl_Hyo8zA,4340
|
|
77
77
|
flwr/common/__init__.py,sha256=7Rf7Ti78N7vUydpIZ2b-1im6ciWz0G5_w91N9YEPsLM,4195
|
|
78
|
-
flwr/common/args.py,sha256=
|
|
79
|
-
flwr/common/config.py,sha256=
|
|
78
|
+
flwr/common/args.py,sha256=4m368Vm-9UEHbJI5S3pgjF6Kf9jZ6pNsQOLrH1av3tI,5870
|
|
79
|
+
flwr/common/config.py,sha256=A0pqN12KDGhhkwvwrPgdlfa3Msm6llyFILx0W9fTUDc,13721
|
|
80
80
|
flwr/common/constant.py,sha256=W_6nBuZOagCsx4w8ZcrrEmyDRAekTGyMhmJycgq7tIQ,10146
|
|
81
81
|
flwr/common/context.py,sha256=pnFVcn-X0XKK1giw82I54meNodJJEoUwZ-NpkzT37zo,2421
|
|
82
82
|
flwr/common/differential_privacy.py,sha256=HiW2qQa5mCQfE0oePapFp3q0uZzjoHKthp5UrkRFtY8,6143
|
|
@@ -85,7 +85,7 @@ flwr/common/dp.py,sha256=ftqWheOICK5N_zPaofnbFb474lMb5w9lclwxf5DKY0w,1978
|
|
|
85
85
|
flwr/common/event_log_plugin/__init__.py,sha256=ts3VAL3Fk6Grp1EK_1Qg_V-BfOof9F86iBx4rbrEkyo,838
|
|
86
86
|
flwr/common/event_log_plugin/event_log_plugin.py,sha256=uJYR363nVzjfJePay3UHwaifwgBx2rAbKHHAuQC10VU,2014
|
|
87
87
|
flwr/common/exit/__init__.py,sha256=8W7xaO1iw0vacgmQW7FTFbSh7csNv6XfsgIlnIbNF6U,978
|
|
88
|
-
flwr/common/exit/exit.py,sha256=
|
|
88
|
+
flwr/common/exit/exit.py,sha256=cyvHiznpsbESOdhWbBhWGUiVa83dr_1nZ2ia_m6B4fk,4018
|
|
89
89
|
flwr/common/exit/exit_code.py,sha256=xpvi_3UOhf6AT8pR0ZGXyBxWfnuFFE50O1cKqOGVxxE,7000
|
|
90
90
|
flwr/common/exit/exit_handler.py,sha256=zUAXHtp4rYK_sbkgsqS5zrVAzJUiSBrB-a4Ay3vSPE8,2302
|
|
91
91
|
flwr/common/exit/signal_handler.py,sha256=o_e33v9kP0jz13q-8BZDrKF7vNCzOApvDPZ3-nTXfIc,3697
|
|
@@ -93,7 +93,7 @@ flwr/common/grpc.py,sha256=8XoMTA5rJMze8fG6vOs1g4_rkxMhfpvMEYJPnqYPi2g,9799
|
|
|
93
93
|
flwr/common/inflatable.py,sha256=GDL9oBKs16_yyVdlH6kBf493O5xll_h9V7XB5Mpx1Hc,9524
|
|
94
94
|
flwr/common/inflatable_protobuf_utils.py,sha256=GTX9yoEAXhKPwcKc4ltmJHUvARFsC4qvkoNCMHqpVtc,5065
|
|
95
95
|
flwr/common/inflatable_utils.py,sha256=nooSMLLiOcHGqFx9n1Il_dAp76JIKyc36ibnkijwELE,19540
|
|
96
|
-
flwr/common/logger.py,sha256=
|
|
96
|
+
flwr/common/logger.py,sha256=kyeiusWV5T-FsG8wc21n_CBokuwg1S_YCerVp0a1MrE,12994
|
|
97
97
|
flwr/common/message.py,sha256=uKQ4-gMt62zVuPfke4JmcB9q-yN9kMGTsSUUF9fnH-4,19915
|
|
98
98
|
flwr/common/object_ref.py,sha256=aw6BLQlZRVqcfuyX2bScc71ZTRZtrBIAHyxYfplTkNE,9081
|
|
99
99
|
flwr/common/parameter.py,sha256=UVw6sOgehEFhFs4uUCMl2kfVq1PD6ncmWgPLMsZPKPE,2095
|
|
@@ -135,10 +135,10 @@ flwr/proto/appio_pb2.py,sha256=GhleCmuqLiDqvumA0qgVl37NTwuan_K_XpUKStXZxwU,4274
|
|
|
135
135
|
flwr/proto/appio_pb2.pyi,sha256=pbrd1mRg0q7mbGqkJYYX1-GwzhiSnuZpjrAJU5im0Og,9512
|
|
136
136
|
flwr/proto/appio_pb2_grpc.py,sha256=f8jZU97X0SNIz4PQ9qj43yAhgVzmaGInItUCOAGZ7tU,897
|
|
137
137
|
flwr/proto/appio_pb2_grpc.pyi,sha256=M-7_sdP1mjiKKC4o13hXUx5sEnX3BXSIXgovr9tNVCg,1071
|
|
138
|
-
flwr/proto/clientappio_pb2.py,sha256=
|
|
138
|
+
flwr/proto/clientappio_pb2.py,sha256=VRBIUTnrkoFR4LuwFPBUtajvQhCYuxWKHTv6Qhf_DYw,2920
|
|
139
139
|
flwr/proto/clientappio_pb2.pyi,sha256=OsUGEduv1iJCew8C4cMz87Y5uQAhHDmxNyVfwA4kXd8,824
|
|
140
|
-
flwr/proto/clientappio_pb2_grpc.py,sha256=
|
|
141
|
-
flwr/proto/clientappio_pb2_grpc.pyi,sha256=
|
|
140
|
+
flwr/proto/clientappio_pb2_grpc.py,sha256=Xf6VhpV-wXnrpZE-flaVHlGUDP1Q1-c6xmlZYwOmK5Y,22912
|
|
141
|
+
flwr/proto/clientappio_pb2_grpc.pyi,sha256=OTD5b8s-FyUgVpKJHrVgLPo6CGzUTTZJPGxEGbj-8oo,12086
|
|
142
142
|
flwr/proto/control_pb2.py,sha256=RSrFkLnCxmrW9HXv8Qj2H7_34568HU9uKe9D23uPnBE,9231
|
|
143
143
|
flwr/proto/control_pb2.pyi,sha256=tTdf9mOD_rrN96l9uh8rBPc1-sTGHOdiAhtIY9mGtZc,16528
|
|
144
144
|
flwr/proto/control_pb2_grpc.py,sha256=XDGrK2tIT_AcopBnygjddXZRdBTtxP29q-9mK63PsP4,23321
|
|
@@ -187,21 +187,21 @@ flwr/proto/run_pb2.py,sha256=8tQDMyiBjw_-S6jiJpFd_-dDrMq9ZhyPyWwnmFu3qek,5101
|
|
|
187
187
|
flwr/proto/run_pb2.pyi,sha256=t42qPzJTY1GVUUrkdIjdoPfAKlsXlUw9A8vBpwgbHsI,10852
|
|
188
188
|
flwr/proto/run_pb2_grpc.py,sha256=l5u1Ww6JxVLVN784Z2OQbkQ-tAf5yYGh6QbNDc4F5II,895
|
|
189
189
|
flwr/proto/run_pb2_grpc.pyi,sha256=fMwjLr-QCljWBa8uk0fvMCytnrF1-IzFLCbezqEmvdU,1071
|
|
190
|
-
flwr/proto/serverappio_pb2.py,sha256=
|
|
190
|
+
flwr/proto/serverappio_pb2.py,sha256=R-NbCzzkVKPKqnJQrlslBEGIw4PvvC3nwQkxkmsxrqA,4045
|
|
191
191
|
flwr/proto/serverappio_pb2.pyi,sha256=KpVM8B_O0M3RFJ-DtnNlQapJs4V-7pHcdEb2G3ECbhE,1998
|
|
192
|
-
flwr/proto/serverappio_pb2_grpc.py,sha256=
|
|
193
|
-
flwr/proto/serverappio_pb2_grpc.pyi,sha256=
|
|
194
|
-
flwr/proto/simulationio_pb2.py,sha256=
|
|
192
|
+
flwr/proto/serverappio_pb2_grpc.py,sha256=UWium7vo4x6odOSJ-ymnsnEqGSrvVUvJO4xT37_EJ4k,32123
|
|
193
|
+
flwr/proto/serverappio_pb2_grpc.pyi,sha256=Vr0BEZGmJOU_Xs0fJ0eijWmr8LqpnD-exrDC8kRJmRM,16310
|
|
194
|
+
flwr/proto/simulationio_pb2.py,sha256=WZ7fqvwPdayfgH8UZPdkhQwMtEWcTm0t_h9a9srrSBQ,2787
|
|
195
195
|
flwr/proto/simulationio_pb2.pyi,sha256=OsUGEduv1iJCew8C4cMz87Y5uQAhHDmxNyVfwA4kXd8,824
|
|
196
|
-
flwr/proto/simulationio_pb2_grpc.py,sha256=
|
|
197
|
-
flwr/proto/simulationio_pb2_grpc.pyi,sha256=
|
|
196
|
+
flwr/proto/simulationio_pb2_grpc.py,sha256=j37CCQNKDaTKXaFxm56MCR6UAIVF2zCH2hLO1sXbqWY,20994
|
|
197
|
+
flwr/proto/simulationio_pb2_grpc.pyi,sha256=lN9HoAvnHX_IJmtMKswge5qyhdHc1wdi-k_IHbqEu9Q,11328
|
|
198
198
|
flwr/proto/transport_pb2.py,sha256=xqDF2oI0PzAndH17O80SQkyOT_QF9m7CQ0166He7UDQ,10122
|
|
199
199
|
flwr/proto/transport_pb2.pyi,sha256=A-AzbyDAyp4hzJCuC6MOA1NewkFmtuhPwFCjPKqQP0Q,22450
|
|
200
200
|
flwr/proto/transport_pb2_grpc.py,sha256=jYsbV3KYdp4TaNfWxv3ljFEvB-Yjsa8MIPtTH-vVPPk,3600
|
|
201
201
|
flwr/proto/transport_pb2_grpc.pyi,sha256=qd2cOXq6HBZtwRfPpKuni27NGMJCAxyP5R95Vk8WWDU,2073
|
|
202
202
|
flwr/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
203
203
|
flwr/server/__init__.py,sha256=LQQHiuL2jy7TpNaKastRdGsexlxSt5ZWAQNVqitDnrY,1598
|
|
204
|
-
flwr/server/app.py,sha256=
|
|
204
|
+
flwr/server/app.py,sha256=Q4p3_-ft63L8psN9pOFTL7FvnyMhcky6GNI_cjdQqSw,31691
|
|
205
205
|
flwr/server/client_manager.py,sha256=3WOqNWh5dlqPRG-DMGwXiyvGNEYS_jKqXKkFIkMqWLQ,6187
|
|
206
206
|
flwr/server/client_proxy.py,sha256=QS_RGgjSZ8V4StAHH8zc7W9_os2FyO4wNqkbylQMBTY,2341
|
|
207
207
|
flwr/server/compat/__init__.py,sha256=0IsttWvY15qO98_1GyzVC-vR1e_ZPXOdu2qUlOkYMPE,886
|
|
@@ -221,7 +221,7 @@ flwr/server/server.py,sha256=Oqv3WZ92KN9XTS6vqcYFTEvJM0sHZfkUmNM8xgbhZBE,17698
|
|
|
221
221
|
flwr/server/server_app.py,sha256=udSNhp5Syg0XJj-AnfqPGkBkg9zuPaSgm1LCL_4PYkc,9469
|
|
222
222
|
flwr/server/server_config.py,sha256=anmj2Rf18kM1chyl-9myRLDS77YVKTS6MpsDh2nIFOY,1318
|
|
223
223
|
flwr/server/serverapp/__init__.py,sha256=xcC0T_MQSMS9cicUzUUpMNCOsF2d8Oh_8jvnoBLuZvo,800
|
|
224
|
-
flwr/server/serverapp/app.py,sha256
|
|
224
|
+
flwr/server/serverapp/app.py,sha256=-88vN2d-7FtqV9L--nvcVpYHNLgfG-Jd0tYQEAmA6lw,10163
|
|
225
225
|
flwr/server/serverapp_components.py,sha256=b8GbqXkiEsiOw61gGITVj6eFpl66upEf7eMjDu1Oo-M,2078
|
|
226
226
|
flwr/server/strategy/__init__.py,sha256=HhsSWMWaC7oCb2g7Kqn1MBKdrfvgi8VxACy9ZL706Q0,2836
|
|
227
227
|
flwr/server/strategy/aggregate.py,sha256=ebIKolvRzSGwVKbxSZtofGSQAIT8LRddMW2c33mXQ2w,14070
|
|
@@ -271,7 +271,7 @@ flwr/server/superlink/fleet/vce/vce_api.py,sha256=A62Vx3r71bNI-v10IUen_27fDJoYXs
|
|
|
271
271
|
flwr/server/superlink/linkstate/__init__.py,sha256=KSUCjOfJlW1g6GAjlqK3mTviqLvJLuQEzSJwO27Qokg,1052
|
|
272
272
|
flwr/server/superlink/linkstate/in_memory_linkstate.py,sha256=1-aaSwad77SeYND3HEF2041KNG5ZA-8i1RcheYZMNq8,31689
|
|
273
273
|
flwr/server/superlink/linkstate/linkstate.py,sha256=Zz2vBI0QFFnptCUIeNjqQCbpCvMMzfsZluprEMkkHio,16809
|
|
274
|
-
flwr/server/superlink/linkstate/linkstate_factory.py,sha256=
|
|
274
|
+
flwr/server/superlink/linkstate/linkstate_factory.py,sha256=CgAoYgisVOrHQizN6u6_L-iKZdv5mgBszag6LgAfe3w,3139
|
|
275
275
|
flwr/server/superlink/linkstate/sql_linkstate.py,sha256=ziZvpEQBVV9GSxjHiS0fAyaY1G7x4y6XKlNLH-c_4TQ,48727
|
|
276
276
|
flwr/server/superlink/linkstate/utils.py,sha256=IA1mKKhGVBPoD61VXKFa8dZ_prnfuyWIuKAeeHPLmuE,16000
|
|
277
277
|
flwr/server/superlink/serverappio/__init__.py,sha256=Fy4zJuoccZe5mZSEIpOmQvU6YeXFBa1M4eZuXXmJcn8,717
|
|
@@ -338,7 +338,7 @@ flwr/supercore/credential_store/credential_store.py,sha256=m_YHW0_A8CBfuRVq-GJgG
|
|
|
338
338
|
flwr/supercore/credential_store/file_credential_store.py,sha256=PeWuigqtMGMYnj_tKnWtlmJtu7OLuVaOB4D9GS47lHc,2771
|
|
339
339
|
flwr/supercore/date.py,sha256=NsadFTzy6LMRB9zNeEV1szvzwQT45wC639P9kBTRZK4,1213
|
|
340
340
|
flwr/supercore/ffs/__init__.py,sha256=U3KXwG_SplEvchat27K0LYPoPHzh-cwwT_NHsGlYMt8,908
|
|
341
|
-
flwr/supercore/ffs/disk_ffs.py,sha256=
|
|
341
|
+
flwr/supercore/ffs/disk_ffs.py,sha256=WTgK7A15EkHcBZTEQEKl1YdfJj8vRfCwJk7cnnHE4oo,3254
|
|
342
342
|
flwr/supercore/ffs/ffs.py,sha256=Q71OLKYIuuhe_XDTqku03qozUfDBQ5Lxg-MbpGDPHlk,2364
|
|
343
343
|
flwr/supercore/ffs/ffs_factory.py,sha256=tPwVDWMddgo45X8tk1lBCTkmJenWBbRagjWfx7UsYuE,1459
|
|
344
344
|
flwr/supercore/grpc_health/__init__.py,sha256=rCPZ7ucPY9NXBWuhb9iKs2D-yZ0rQ5YkJ7LlOeahN9A,948
|
|
@@ -350,12 +350,12 @@ flwr/supercore/license_plugin/license_plugin.py,sha256=BFhlCH5v9KKuY7crVCsi8fuYe
|
|
|
350
350
|
flwr/supercore/object_store/__init__.py,sha256=cdfPAmjINY6iOp8oI_LdcVh2simg469Mkdl4LLV4kHI,911
|
|
351
351
|
flwr/supercore/object_store/in_memory_object_store.py,sha256=-DU6n1Ef3EmllHY9SzeXw57ftoU0mR_6or4NIDSZlcs,9322
|
|
352
352
|
flwr/supercore/object_store/object_store.py,sha256=XLo-xe258TmCel9dNLCJepFjXaQtEi0wBqzU9YsyJVg,5221
|
|
353
|
-
flwr/supercore/object_store/object_store_factory.py,sha256=
|
|
353
|
+
flwr/supercore/object_store/object_store_factory.py,sha256=RByhm8Ow6TxmklP1MTluaze3v5kw0O1CILrA7Y0nWMg,2604
|
|
354
354
|
flwr/supercore/object_store/sql_object_store.py,sha256=ZBmyc3a_GXZFNaefDCxhrri-_BgcQPOj7OtUfrPcjKo,10130
|
|
355
355
|
flwr/supercore/primitives/__init__.py,sha256=Tx8GOjnmMo8Y74RsDGrMpfr-E0Nl8dcUDF784_ge6F8,745
|
|
356
356
|
flwr/supercore/primitives/asymmetric.py,sha256=1643niHYj3uEbfPd06VuMHwN3tKVwg0uVyR3RhTdWIU,3778
|
|
357
357
|
flwr/supercore/primitives/asymmetric_ed25519.py,sha256=eIhOTMibQW0FJX4MXdplHdL3HcfCiKuFu2mQ8GQTUz8,5025
|
|
358
|
-
flwr/supercore/sql_mixin.py,sha256=
|
|
358
|
+
flwr/supercore/sql_mixin.py,sha256=lI-7kCudH2f8XEpxoeJsqYr0iA1grGeogwnu_4JHHqE,12058
|
|
359
359
|
flwr/supercore/state/__init__.py,sha256=FkKhsNVM4LjlRlOgXTz6twINmw5ohIUKS_OER0BNo_w,724
|
|
360
360
|
flwr/supercore/state/alembic/__init__.py,sha256=pC-y-xsfgi9YwCrqnt814yOJ9ytlDRUFGqOY6Qzt-_U,746
|
|
361
361
|
flwr/supercore/state/alembic/env.py,sha256=8zrPVosMxLqZ8CAhS7PHOlMU2Vr-LEt7gSCN4UYSAJg,3913
|
|
@@ -396,7 +396,7 @@ flwr/superlink/servicer/control/control_license_interceptor.py,sha256=8d28soJ0mL
|
|
|
396
396
|
flwr/superlink/servicer/control/control_servicer.py,sha256=s9LgpbXUGU7DYwOvFUzNjgyKEWHyjPJQeUfp-XXUBWM,25523
|
|
397
397
|
flwr/supernode/__init__.py,sha256=KgeCaVvXWrU3rptNR1y0oBp4YtXbAcrnCcJAiOoWkI4,707
|
|
398
398
|
flwr/supernode/cli/__init__.py,sha256=JuEMr0-s9zv-PEWKuLB9tj1ocNfroSyNJ-oyv7ati9A,887
|
|
399
|
-
flwr/supernode/cli/flower_supernode.py,sha256=
|
|
399
|
+
flwr/supernode/cli/flower_supernode.py,sha256=LhciYbUwUfvkR4hiHxizERhQzpqZOAG9d6qVm6-V4jY,10891
|
|
400
400
|
flwr/supernode/cli/flwr_clientapp.py,sha256=W3tAyqSfeHbPhqBC4Pfo9bsyFdkBKPqdKlhGmeUKwKg,3173
|
|
401
401
|
flwr/supernode/nodestate/__init__.py,sha256=CyLLObbmmVgfRO88UCM0VMait1dL57mUauUDfuSHsbU,976
|
|
402
402
|
flwr/supernode/nodestate/in_memory_nodestate.py,sha256=DBhpDsPmitkOr86pW78_0aiG_jWgjjCXerFONXsyOSE,10578
|
|
@@ -408,7 +408,7 @@ flwr/supernode/servicer/__init__.py,sha256=lucTzre5WPK7G1YLCfaqg3rbFWdNSb7ZTt-ca
|
|
|
408
408
|
flwr/supernode/servicer/clientappio/__init__.py,sha256=7Oy62Y_oijqF7Dxi6tpcUQyOpLc_QpIRZ83NvwmB0Yg,813
|
|
409
409
|
flwr/supernode/servicer/clientappio/clientappio_servicer.py,sha256=rRL4CQ0L78jF_p0ct4-JMGREt6wWRy__wy4czF4f54Y,11639
|
|
410
410
|
flwr/supernode/start_client_internal.py,sha256=3MkeDiWZr-SsvACuuAxJi8nYw6GYNKOO6q8b36E3R9k,26250
|
|
411
|
-
flwr_nightly-1.26.0.
|
|
412
|
-
flwr_nightly-1.26.0.
|
|
413
|
-
flwr_nightly-1.26.0.
|
|
414
|
-
flwr_nightly-1.26.0.
|
|
411
|
+
flwr_nightly-1.26.0.dev20260201.dist-info/METADATA,sha256=FBBYBlISXR4y-A2v4xpIkeyUzYIrk1VXdbv__inBD8I,14447
|
|
412
|
+
flwr_nightly-1.26.0.dev20260201.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
|
|
413
|
+
flwr_nightly-1.26.0.dev20260201.dist-info/entry_points.txt,sha256=hxHD2ixb_vJFDOlZV-zB4Ao32_BQlL34ftsDh1GXv14,420
|
|
414
|
+
flwr_nightly-1.26.0.dev20260201.dist-info/RECORD,,
|
{flwr_nightly-1.26.0.dev20260129.dist-info → flwr_nightly-1.26.0.dev20260201.dist-info}/WHEEL
RENAMED
|
File without changes
|
|
File without changes
|