flwr-nightly 1.9.0.dev20240501__py3-none-any.whl → 1.9.0.dev20240502__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.

Potentially problematic release.


This version of flwr-nightly might be problematic. Click here for more details.

flwr/common/logger.py CHANGED
@@ -82,13 +82,20 @@ class ConsoleHandler(StreamHandler):
82
82
  return formatter.format(record)
83
83
 
84
84
 
85
- def update_console_handler(level: int, timestamps: bool, colored: bool) -> None:
85
+ def update_console_handler(
86
+ level: Optional[int] = None,
87
+ timestamps: Optional[bool] = None,
88
+ colored: Optional[bool] = None,
89
+ ) -> None:
86
90
  """Update the logging handler."""
87
91
  for handler in logging.getLogger(LOGGER_NAME).handlers:
88
92
  if isinstance(handler, ConsoleHandler):
89
- handler.setLevel(level)
90
- handler.timestamps = timestamps
91
- handler.colored = colored
93
+ if level is not None:
94
+ handler.setLevel(level)
95
+ if timestamps is not None:
96
+ handler.timestamps = timestamps
97
+ if colored is not None:
98
+ handler.colored = colored
92
99
 
93
100
 
94
101
  # Configure console logger
@@ -254,16 +254,16 @@ class InMemoryState(State): # pylint: disable=R0902
254
254
  log(ERROR, "Unexpected run creation failure.")
255
255
  return 0
256
256
 
257
- def store_server_public_private_key(
258
- self, public_key: bytes, private_key: bytes
257
+ def store_server_private_public_key(
258
+ self, private_key: bytes, public_key: bytes
259
259
  ) -> None:
260
- """Store `server_public_key` and `server_private_key` in state."""
260
+ """Store `server_private_key` and `server_public_key` in state."""
261
261
  with self.lock:
262
262
  if self.server_private_key is None and self.server_public_key is None:
263
263
  self.server_private_key = private_key
264
264
  self.server_public_key = public_key
265
265
  else:
266
- raise RuntimeError("Server public and private key already set")
266
+ raise RuntimeError("Server private and public key already set")
267
267
 
268
268
  def get_server_private_key(self) -> Optional[bytes]:
269
269
  """Retrieve `server_private_key` in urlsafe bytes."""
@@ -42,8 +42,8 @@ CREATE TABLE IF NOT EXISTS node(
42
42
 
43
43
  SQL_CREATE_TABLE_CREDENTIAL = """
44
44
  CREATE TABLE IF NOT EXISTS credential(
45
- public_key BLOB PRIMARY KEY,
46
- private_key BLOB
45
+ private_key BLOB PRIMARY KEY,
46
+ public_key BLOB
47
47
  );
48
48
  """
49
49
 
@@ -589,20 +589,20 @@ class SqliteState(State): # pylint: disable=R0904
589
589
  log(ERROR, "Unexpected run creation failure.")
590
590
  return 0
591
591
 
592
- def store_server_public_private_key(
593
- self, public_key: bytes, private_key: bytes
592
+ def store_server_private_public_key(
593
+ self, private_key: bytes, public_key: bytes
594
594
  ) -> None:
595
- """Store `server_public_key` and `server_private_key` in state."""
595
+ """Store `server_private_key` and `server_public_key` in state."""
596
596
  query = "SELECT COUNT(*) FROM credential"
597
597
  count = self.query(query)[0]["COUNT(*)"]
598
598
  if count < 1:
599
599
  query = (
600
- "INSERT OR REPLACE INTO credential (public_key, private_key) "
601
- "VALUES (:public_key, :private_key)"
600
+ "INSERT OR REPLACE INTO credential (private_key, public_key) "
601
+ "VALUES (:private_key, :public_key)"
602
602
  )
603
- self.query(query, {"public_key": public_key, "private_key": private_key})
603
+ self.query(query, {"private_key": private_key, "public_key": public_key})
604
604
  else:
605
- raise RuntimeError("Server public and private key already set")
605
+ raise RuntimeError("Server private and public key already set")
606
606
 
607
607
  def get_server_private_key(self) -> Optional[bytes]:
608
608
  """Retrieve `server_private_key` in urlsafe bytes."""
@@ -172,10 +172,10 @@ class State(abc.ABC):
172
172
  """
173
173
 
174
174
  @abc.abstractmethod
175
- def store_server_public_private_key(
176
- self, public_key: bytes, private_key: bytes
175
+ def store_server_private_public_key(
176
+ self, private_key: bytes, public_key: bytes
177
177
  ) -> None:
178
- """Store `server_public_key` and `server_private_key` in state."""
178
+ """Store `server_private_key` and `server_public_key` in state."""
179
179
 
180
180
  @abc.abstractmethod
181
181
  def get_server_private_key(self) -> Optional[bytes]:
@@ -28,7 +28,7 @@ import grpc
28
28
 
29
29
  from flwr.client import ClientApp
30
30
  from flwr.common import EventType, event, log
31
- from flwr.common.logger import set_logger_propagation
31
+ from flwr.common.logger import set_logger_propagation, update_console_handler
32
32
  from flwr.common.typing import ConfigsRecordValues
33
33
  from flwr.server.driver import Driver, GrpcDriver
34
34
  from flwr.server.run_serverapp import run
@@ -318,9 +318,9 @@ def _run_simulation(
318
318
  enabled, DEBUG-level logs will be displayed.
319
319
  """
320
320
  # Set logging level
321
- if not verbose_logging:
322
- logger = logging.getLogger("flwr")
323
- logger.setLevel(INFO)
321
+ logger = logging.getLogger("flwr")
322
+ if verbose_logging:
323
+ update_console_handler(level=DEBUG, timestamps=True, colored=True)
324
324
 
325
325
  if backend_config is None:
326
326
  backend_config = {}
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: flwr-nightly
3
- Version: 1.9.0.dev20240501
3
+ Version: 1.9.0.dev20240502
4
4
  Summary: Flower: A Friendly Federated Learning Framework
5
5
  Home-page: https://flower.ai
6
6
  License: Apache-2.0
@@ -69,7 +69,7 @@ flwr/common/differential_privacy_constants.py,sha256=c7b7tqgvT7yMK0XN9ndiTBs4mQf
69
69
  flwr/common/dp.py,sha256=Hc3lLHihjexbJaD_ft31gdv9XRcwOTgDBwJzICuok3A,2004
70
70
  flwr/common/exit_handlers.py,sha256=2Nt0wLhc17KQQsLPFSRAjjhUiEFfJK6tNozdGiIY4Fs,2812
71
71
  flwr/common/grpc.py,sha256=Yx_YFK24cU4U81RpXrdVwEVY_jTy4RE19cHtBxE2XOE,2460
72
- flwr/common/logger.py,sha256=s1ZTh6nCeGZh0MxbCG8zHYZAeQ9JNDpw8k6qtxSCCzM,6920
72
+ flwr/common/logger.py,sha256=bFu4eOychVwwYwaaCtxQ85dmx8gUtvwp6fRk-GefXHk,7107
73
73
  flwr/common/message.py,sha256=78SN-HZpqbsnap5JFbdnmqR1dL0juK1zDRiixg3Jbl4,12686
74
74
  flwr/common/object_ref.py,sha256=ELoUCAFO-vbjJC41CGpa-WBG2SLYe3ErW-d9YCG3zqA,4961
75
75
  flwr/common/parameter.py,sha256=-bFAUayToYDF50FZGrBC1hQYJCQDtB2bbr3ZuVLMtdE,2095
@@ -190,9 +190,9 @@ flwr/server/superlink/fleet/vce/backend/backend.py,sha256=LJsKl7oixVvptcG98Rd9ej
190
190
  flwr/server/superlink/fleet/vce/backend/raybackend.py,sha256=TaT2EpbVEsIY0EDzF8obadyZaSXjD38TFGdDPI-ytD0,6375
191
191
  flwr/server/superlink/fleet/vce/vce_api.py,sha256=c2J2m6v1jDyuAhiBArdZNIk4cbiZNFJkpKlBJFEQq-c,12454
192
192
  flwr/server/superlink/state/__init__.py,sha256=ij-7Ms-hyordQdRmGQxY1-nVa4OhixJ0jr7_YDkys0s,1003
193
- flwr/server/superlink/state/in_memory_state.py,sha256=d6T6NXGyvo53LnFJSRRsiCnFOXikYMmCcCUmiarOuD0,11651
194
- flwr/server/superlink/state/sqlite_state.py,sha256=eU5Ll6V0yQp9fnZbo5L-i0BM41SkmjK7kHzc1EHNr_M,27167
195
- flwr/server/superlink/state/state.py,sha256=bdEqkjfBbVtbT_YudaMFFLSR-q_R1q-tsvjdni3YJKg,7709
193
+ flwr/server/superlink/state/in_memory_state.py,sha256=TmMWlrvCk2378mdxHERkc0I_S5CLcYeT1sEmZMPfSFQ,11651
194
+ flwr/server/superlink/state/sqlite_state.py,sha256=ri-qgaMVxKzdmJBX2DBpSypfdZJ5eixAyZswZiM3x2w,27167
195
+ flwr/server/superlink/state/state.py,sha256=frqF0_rS56jsCDyZdW02YdYB94A6TfTuFhHYwP0WUqs,7709
196
196
  flwr/server/superlink/state/state_factory.py,sha256=91cSB-KOAFM37z7T098WxTkVeKNaAZ_mTI75snn2_tk,1654
197
197
  flwr/server/superlink/state/utils.py,sha256=qhIjBu5_rqm9GLMB6QS5TIRrMDVs85lmY17BqZ1ccLk,2207
198
198
  flwr/server/typing.py,sha256=2zSG-KuDAgwFPuzgVjTLDaEqJ8gXXGqFR2RD-qIk730,913
@@ -211,9 +211,9 @@ flwr/simulation/ray_transport/__init__.py,sha256=FsaAnzC4cw4DqoouBCix6496k29jACk
211
211
  flwr/simulation/ray_transport/ray_actor.py,sha256=_wv2eP7qxkCZ-6rMyYWnjLrGPBZRxjvTPjaVk8zIaQ4,19367
212
212
  flwr/simulation/ray_transport/ray_client_proxy.py,sha256=oDu4sEPIOu39vrNi-fqDAe10xtNUXMO49bM2RWfRcyw,6738
213
213
  flwr/simulation/ray_transport/utils.py,sha256=TYdtfg1P9VfTdLMOJlifInGpxWHYs9UfUqIv2wfkRLA,2392
214
- flwr/simulation/run_simulation.py,sha256=jSzL7vZJ6Cg76yAyuWt7X8WzwkZ26krpurRAIHXhrNk,15896
215
- flwr_nightly-1.9.0.dev20240501.dist-info/LICENSE,sha256=z8d0m5b2O9McPEK1xHG_dWgUBT6EfBDz6wA0F7xSPTA,11358
216
- flwr_nightly-1.9.0.dev20240501.dist-info/METADATA,sha256=xx9zVqrtYze9IkQZ6S2obortCJOalnsGcQnuhStB9Fs,15303
217
- flwr_nightly-1.9.0.dev20240501.dist-info/WHEEL,sha256=FMvqSimYX_P7y0a7UY-_Mc83r5zkBZsCYPm7Lr0Bsq4,88
218
- flwr_nightly-1.9.0.dev20240501.dist-info/entry_points.txt,sha256=8JJPfpqMnXz9c5V_FSt07Xwd-wCWbAO3MFUDXQ5ZGsI,378
219
- flwr_nightly-1.9.0.dev20240501.dist-info/RECORD,,
214
+ flwr/simulation/run_simulation.py,sha256=LszcnkCLM9YE-kgezB_H7b_NdDrK_Q0yN24mqYtZdfI,15957
215
+ flwr_nightly-1.9.0.dev20240502.dist-info/LICENSE,sha256=z8d0m5b2O9McPEK1xHG_dWgUBT6EfBDz6wA0F7xSPTA,11358
216
+ flwr_nightly-1.9.0.dev20240502.dist-info/METADATA,sha256=iVRawILxl5cTNXl8O6imsEOvK_dUuFjLkjYk-1nJoo8,15303
217
+ flwr_nightly-1.9.0.dev20240502.dist-info/WHEEL,sha256=FMvqSimYX_P7y0a7UY-_Mc83r5zkBZsCYPm7Lr0Bsq4,88
218
+ flwr_nightly-1.9.0.dev20240502.dist-info/entry_points.txt,sha256=8JJPfpqMnXz9c5V_FSt07Xwd-wCWbAO3MFUDXQ5ZGsI,378
219
+ flwr_nightly-1.9.0.dev20240502.dist-info/RECORD,,