flwr-nightly 1.26.0.dev20260203__tar.gz → 1.27.0.dev20260205__tar.gz

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.
Files changed (413) hide show
  1. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/PKG-INFO +1 -1
  2. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/serverappio_pb2.py +2 -2
  3. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/serverappio_pb2_grpc.py +0 -45
  4. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/serverappio_pb2_grpc.pyi +0 -21
  5. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/serverappio/serverappio_servicer.py +1 -15
  6. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/serverapp/strategy/bulyan.py +7 -1
  7. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/serverapp/strategy/dp_fixed_clipping.py +9 -1
  8. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/constant.py +1 -0
  9. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/pyproject.toml +1 -1
  10. flwr_nightly-1.26.0.dev20260203/py/flwr/cli/example.py +0 -67
  11. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/README.md +0 -0
  12. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/__init__.py +0 -0
  13. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/app/__init__.py +0 -0
  14. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/app/error.py +0 -0
  15. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/app/exception.py +0 -0
  16. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/app/message_type.py +0 -0
  17. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/app/metadata.py +0 -0
  18. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/app/user_config.py +0 -0
  19. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/__init__.py +0 -0
  20. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/app.py +0 -0
  21. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/app_cmd/__init__.py +0 -0
  22. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/app_cmd/publish.py +0 -0
  23. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/app_cmd/review.py +0 -0
  24. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/auth_plugin/__init__.py +0 -0
  25. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/auth_plugin/auth_plugin.py +0 -0
  26. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/auth_plugin/noop_auth_plugin.py +0 -0
  27. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/auth_plugin/oidc_cli_plugin.py +0 -0
  28. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/build.py +0 -0
  29. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/cli_account_auth_interceptor.py +0 -0
  30. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/config/__init__.py +0 -0
  31. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/config/ls.py +0 -0
  32. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/config_migration.py +0 -0
  33. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/config_utils.py +0 -0
  34. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/constant.py +0 -0
  35. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/federation/__init__.py +0 -0
  36. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/federation/ls.py +0 -0
  37. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/flower_config.py +0 -0
  38. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/install.py +0 -0
  39. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/log.py +0 -0
  40. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/login/__init__.py +0 -0
  41. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/login/login.py +0 -0
  42. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/ls.py +0 -0
  43. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/new/__init__.py +0 -0
  44. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/new/new.py +0 -0
  45. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/pull.py +0 -0
  46. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/run/__init__.py +0 -0
  47. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/run/run.py +0 -0
  48. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/run_utils.py +0 -0
  49. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/stop.py +0 -0
  50. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/supernode/__init__.py +0 -0
  51. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/supernode/ls.py +0 -0
  52. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/supernode/register.py +0 -0
  53. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/supernode/unregister.py +0 -0
  54. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/typing.py +0 -0
  55. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/cli/utils.py +0 -0
  56. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/client/__init__.py +0 -0
  57. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/client/client.py +0 -0
  58. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/client/dpfedavg_numpy_client.py +0 -0
  59. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/client/grpc_adapter_client/__init__.py +0 -0
  60. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/client/grpc_adapter_client/connection.py +0 -0
  61. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/client/grpc_rere_client/__init__.py +0 -0
  62. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/client/grpc_rere_client/connection.py +0 -0
  63. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/client/grpc_rere_client/grpc_adapter.py +0 -0
  64. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/client/grpc_rere_client/node_auth_client_interceptor.py +0 -0
  65. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/client/message_handler/__init__.py +0 -0
  66. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/client/message_handler/message_handler.py +0 -0
  67. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/client/mod/__init__.py +0 -0
  68. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/client/mod/centraldp_mods.py +0 -0
  69. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/client/mod/comms_mods.py +0 -0
  70. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/client/mod/localdp_mod.py +0 -0
  71. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/client/mod/secure_aggregation/__init__.py +0 -0
  72. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/client/mod/secure_aggregation/secagg_mod.py +0 -0
  73. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/client/mod/secure_aggregation/secaggplus_mod.py +0 -0
  74. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/client/mod/utils.py +0 -0
  75. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/client/numpy_client.py +0 -0
  76. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/client/rest_client/__init__.py +0 -0
  77. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/client/rest_client/connection.py +0 -0
  78. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/client/run_info_store.py +0 -0
  79. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/client/typing.py +0 -0
  80. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/clientapp/__init__.py +0 -0
  81. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/clientapp/client_app.py +0 -0
  82. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/clientapp/mod/__init__.py +0 -0
  83. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/clientapp/mod/centraldp_mods.py +0 -0
  84. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/clientapp/mod/localdp_mod.py +0 -0
  85. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/clientapp/typing.py +0 -0
  86. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/clientapp/utils.py +0 -0
  87. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/__init__.py +0 -0
  88. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/args.py +0 -0
  89. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/config.py +0 -0
  90. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/constant.py +0 -0
  91. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/context.py +0 -0
  92. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/differential_privacy.py +0 -0
  93. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/differential_privacy_constants.py +0 -0
  94. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/dp.py +0 -0
  95. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/event_log_plugin/__init__.py +0 -0
  96. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/event_log_plugin/event_log_plugin.py +0 -0
  97. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/exit/__init__.py +0 -0
  98. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/exit/exit.py +0 -0
  99. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/exit/exit_code.py +0 -0
  100. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/exit/exit_handler.py +0 -0
  101. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/exit/signal_handler.py +0 -0
  102. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/grpc.py +0 -0
  103. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/inflatable.py +0 -0
  104. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/inflatable_protobuf_utils.py +0 -0
  105. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/inflatable_utils.py +0 -0
  106. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/logger.py +0 -0
  107. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/message.py +0 -0
  108. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/object_ref.py +0 -0
  109. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/parameter.py +0 -0
  110. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/record/__init__.py +0 -0
  111. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/record/array.py +0 -0
  112. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/record/arraychunk.py +0 -0
  113. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/record/arrayrecord.py +0 -0
  114. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/record/configrecord.py +0 -0
  115. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/record/conversion_utils.py +0 -0
  116. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/record/metricrecord.py +0 -0
  117. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/record/recorddict.py +0 -0
  118. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/record/typeddict.py +0 -0
  119. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/recorddict_compat.py +0 -0
  120. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/retry_invoker.py +0 -0
  121. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/secure_aggregation/__init__.py +0 -0
  122. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/secure_aggregation/crypto/__init__.py +0 -0
  123. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/secure_aggregation/crypto/shamir.py +0 -0
  124. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/secure_aggregation/crypto/symmetric_encryption.py +0 -0
  125. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/secure_aggregation/ndarrays_arithmetic.py +0 -0
  126. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/secure_aggregation/quantization.py +0 -0
  127. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/secure_aggregation/secaggplus_constants.py +0 -0
  128. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/secure_aggregation/secaggplus_utils.py +0 -0
  129. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/serde.py +0 -0
  130. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/serde_utils.py +0 -0
  131. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/telemetry.py +0 -0
  132. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/common/typing.py +0 -0
  133. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/compat/__init__.py +0 -0
  134. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/compat/client/__init__.py +0 -0
  135. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/compat/client/app.py +0 -0
  136. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/compat/client/grpc_client/__init__.py +0 -0
  137. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/compat/client/grpc_client/connection.py +0 -0
  138. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/compat/common/__init__.py +0 -0
  139. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/compat/common/constant.py +0 -0
  140. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/compat/server/__init__.py +0 -0
  141. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/compat/server/app.py +0 -0
  142. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/compat/simulation/__init__.py +0 -0
  143. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/__init__.py +0 -0
  144. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/appio_pb2.py +0 -0
  145. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/appio_pb2.pyi +0 -0
  146. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/appio_pb2_grpc.py +0 -0
  147. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/appio_pb2_grpc.pyi +0 -0
  148. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/clientappio_pb2.py +0 -0
  149. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/clientappio_pb2.pyi +0 -0
  150. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/clientappio_pb2_grpc.py +0 -0
  151. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/clientappio_pb2_grpc.pyi +0 -0
  152. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/control_pb2.py +0 -0
  153. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/control_pb2.pyi +0 -0
  154. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/control_pb2_grpc.py +0 -0
  155. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/control_pb2_grpc.pyi +0 -0
  156. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/error_pb2.py +0 -0
  157. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/error_pb2.pyi +0 -0
  158. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/error_pb2_grpc.py +0 -0
  159. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/error_pb2_grpc.pyi +0 -0
  160. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/fab_pb2.py +0 -0
  161. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/fab_pb2.pyi +0 -0
  162. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/fab_pb2_grpc.py +0 -0
  163. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/fab_pb2_grpc.pyi +0 -0
  164. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/federation_pb2.py +0 -0
  165. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/federation_pb2.pyi +0 -0
  166. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/federation_pb2_grpc.py +0 -0
  167. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/federation_pb2_grpc.pyi +0 -0
  168. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/fleet_pb2.py +0 -0
  169. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/fleet_pb2.pyi +0 -0
  170. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/fleet_pb2_grpc.py +0 -0
  171. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/fleet_pb2_grpc.pyi +0 -0
  172. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/grpcadapter_pb2.py +0 -0
  173. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/grpcadapter_pb2.pyi +0 -0
  174. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/grpcadapter_pb2_grpc.py +0 -0
  175. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/grpcadapter_pb2_grpc.pyi +0 -0
  176. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/heartbeat_pb2.py +0 -0
  177. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/heartbeat_pb2.pyi +0 -0
  178. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/heartbeat_pb2_grpc.py +0 -0
  179. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/heartbeat_pb2_grpc.pyi +0 -0
  180. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/log_pb2.py +0 -0
  181. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/log_pb2.pyi +0 -0
  182. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/log_pb2_grpc.py +0 -0
  183. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/log_pb2_grpc.pyi +0 -0
  184. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/message_pb2.py +0 -0
  185. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/message_pb2.pyi +0 -0
  186. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/message_pb2_grpc.py +0 -0
  187. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/message_pb2_grpc.pyi +0 -0
  188. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/node_pb2.py +0 -0
  189. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/node_pb2.pyi +0 -0
  190. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/node_pb2_grpc.py +0 -0
  191. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/node_pb2_grpc.pyi +0 -0
  192. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/recorddict_pb2.py +0 -0
  193. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/recorddict_pb2.pyi +0 -0
  194. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/recorddict_pb2_grpc.py +0 -0
  195. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/recorddict_pb2_grpc.pyi +0 -0
  196. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/run_pb2.py +0 -0
  197. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/run_pb2.pyi +0 -0
  198. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/run_pb2_grpc.py +0 -0
  199. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/run_pb2_grpc.pyi +0 -0
  200. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/serverappio_pb2.pyi +0 -0
  201. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/simulationio_pb2.py +0 -0
  202. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/simulationio_pb2.pyi +0 -0
  203. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/simulationio_pb2_grpc.py +0 -0
  204. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/simulationio_pb2_grpc.pyi +0 -0
  205. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/transport_pb2.py +0 -0
  206. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/transport_pb2.pyi +0 -0
  207. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/transport_pb2_grpc.py +0 -0
  208. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/proto/transport_pb2_grpc.pyi +0 -0
  209. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/py.typed +0 -0
  210. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/__init__.py +0 -0
  211. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/app.py +0 -0
  212. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/client_manager.py +0 -0
  213. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/client_proxy.py +0 -0
  214. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/compat/__init__.py +0 -0
  215. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/compat/app.py +0 -0
  216. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/compat/app_utils.py +0 -0
  217. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/compat/grid_client_proxy.py +0 -0
  218. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/compat/legacy_context.py +0 -0
  219. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/criterion.py +0 -0
  220. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/fleet_event_log_interceptor.py +0 -0
  221. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/grid/__init__.py +0 -0
  222. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/grid/grid.py +0 -0
  223. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/grid/grpc_grid.py +0 -0
  224. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/grid/inmemory_grid.py +0 -0
  225. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/history.py +0 -0
  226. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/run_serverapp.py +0 -0
  227. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/server.py +0 -0
  228. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/server_app.py +0 -0
  229. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/server_config.py +0 -0
  230. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/serverapp/__init__.py +0 -0
  231. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/serverapp/app.py +0 -0
  232. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/serverapp_components.py +0 -0
  233. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/strategy/__init__.py +0 -0
  234. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/strategy/aggregate.py +0 -0
  235. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/strategy/bulyan.py +0 -0
  236. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/strategy/dp_adaptive_clipping.py +0 -0
  237. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/strategy/dp_fixed_clipping.py +0 -0
  238. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/strategy/dpfedavg_adaptive.py +0 -0
  239. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/strategy/dpfedavg_fixed.py +0 -0
  240. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/strategy/fault_tolerant_fedavg.py +0 -0
  241. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/strategy/fedadagrad.py +0 -0
  242. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/strategy/fedadam.py +0 -0
  243. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/strategy/fedavg.py +0 -0
  244. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/strategy/fedavg_android.py +0 -0
  245. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/strategy/fedavgm.py +0 -0
  246. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/strategy/fedmedian.py +0 -0
  247. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/strategy/fedopt.py +0 -0
  248. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/strategy/fedprox.py +0 -0
  249. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/strategy/fedtrimmedavg.py +0 -0
  250. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/strategy/fedxgb_bagging.py +0 -0
  251. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/strategy/fedxgb_cyclic.py +0 -0
  252. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/strategy/fedxgb_nn_avg.py +0 -0
  253. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/strategy/fedyogi.py +0 -0
  254. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/strategy/krum.py +0 -0
  255. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/strategy/qfedavg.py +0 -0
  256. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/strategy/strategy.py +0 -0
  257. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/__init__.py +0 -0
  258. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/fleet/__init__.py +0 -0
  259. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/fleet/grpc_adapter/__init__.py +0 -0
  260. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/fleet/grpc_adapter/grpc_adapter_servicer.py +0 -0
  261. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/fleet/grpc_bidi/__init__.py +0 -0
  262. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/fleet/grpc_bidi/flower_service_servicer.py +0 -0
  263. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/fleet/grpc_bidi/grpc_bridge.py +0 -0
  264. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/fleet/grpc_bidi/grpc_client_proxy.py +0 -0
  265. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/fleet/grpc_bidi/grpc_server.py +0 -0
  266. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/fleet/grpc_rere/__init__.py +0 -0
  267. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/fleet/grpc_rere/fleet_servicer.py +0 -0
  268. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/fleet/grpc_rere/node_auth_server_interceptor.py +0 -0
  269. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/fleet/message_handler/__init__.py +0 -0
  270. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/fleet/message_handler/message_handler.py +0 -0
  271. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/fleet/rest_rere/__init__.py +0 -0
  272. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/fleet/rest_rere/rest_api.py +0 -0
  273. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/fleet/vce/__init__.py +0 -0
  274. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/fleet/vce/backend/__init__.py +0 -0
  275. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/fleet/vce/backend/backend.py +0 -0
  276. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/fleet/vce/backend/raybackend.py +0 -0
  277. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/fleet/vce/vce_api.py +0 -0
  278. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/linkstate/__init__.py +0 -0
  279. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/linkstate/in_memory_linkstate.py +0 -0
  280. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/linkstate/linkstate.py +0 -0
  281. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/linkstate/linkstate_factory.py +0 -0
  282. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/linkstate/sql_linkstate.py +0 -0
  283. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/linkstate/utils.py +0 -0
  284. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/serverappio/__init__.py +0 -0
  285. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/serverappio/serverappio_grpc.py +0 -0
  286. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/simulation/__init__.py +0 -0
  287. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/simulation/simulationio_grpc.py +0 -0
  288. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/simulation/simulationio_servicer.py +0 -0
  289. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/superlink/utils.py +0 -0
  290. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/typing.py +0 -0
  291. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/utils/__init__.py +0 -0
  292. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/utils/tensorboard.py +0 -0
  293. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/utils/validator.py +0 -0
  294. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/workflow/__init__.py +0 -0
  295. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/workflow/constant.py +0 -0
  296. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/workflow/default_workflows.py +0 -0
  297. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/workflow/secure_aggregation/__init__.py +0 -0
  298. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/workflow/secure_aggregation/secagg_workflow.py +0 -0
  299. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/server/workflow/secure_aggregation/secaggplus_workflow.py +0 -0
  300. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/serverapp/__init__.py +0 -0
  301. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/serverapp/exception.py +0 -0
  302. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/serverapp/strategy/__init__.py +0 -0
  303. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/serverapp/strategy/dp_adaptive_clipping.py +0 -0
  304. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/serverapp/strategy/fedadagrad.py +0 -0
  305. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/serverapp/strategy/fedadam.py +0 -0
  306. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/serverapp/strategy/fedavg.py +0 -0
  307. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/serverapp/strategy/fedavgm.py +0 -0
  308. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/serverapp/strategy/fedmedian.py +0 -0
  309. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/serverapp/strategy/fedopt.py +0 -0
  310. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/serverapp/strategy/fedprox.py +0 -0
  311. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/serverapp/strategy/fedtrimmedavg.py +0 -0
  312. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/serverapp/strategy/fedxgb_bagging.py +0 -0
  313. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/serverapp/strategy/fedxgb_cyclic.py +0 -0
  314. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/serverapp/strategy/fedyogi.py +0 -0
  315. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/serverapp/strategy/krum.py +0 -0
  316. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/serverapp/strategy/multikrum.py +0 -0
  317. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/serverapp/strategy/qfedavg.py +0 -0
  318. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/serverapp/strategy/result.py +0 -0
  319. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/serverapp/strategy/strategy.py +0 -0
  320. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/serverapp/strategy/strategy_utils.py +0 -0
  321. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/simulation/__init__.py +0 -0
  322. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/simulation/app.py +0 -0
  323. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/simulation/legacy_app.py +0 -0
  324. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/simulation/ray_transport/__init__.py +0 -0
  325. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/simulation/ray_transport/ray_actor.py +0 -0
  326. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/simulation/ray_transport/ray_client_proxy.py +0 -0
  327. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/simulation/ray_transport/utils.py +0 -0
  328. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/simulation/run_simulation.py +0 -0
  329. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/simulation/simulationio_connection.py +0 -0
  330. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/__init__.py +0 -0
  331. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/address.py +0 -0
  332. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/app_utils.py +0 -0
  333. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/cli/__init__.py +0 -0
  334. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/cli/flower_superexec.py +0 -0
  335. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/corestate/__init__.py +0 -0
  336. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/corestate/corestate.py +0 -0
  337. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/corestate/in_memory_corestate.py +0 -0
  338. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/corestate/sql_corestate.py +0 -0
  339. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/credential_store/__init__.py +0 -0
  340. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/credential_store/credential_store.py +0 -0
  341. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/credential_store/file_credential_store.py +0 -0
  342. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/date.py +0 -0
  343. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/ffs/__init__.py +0 -0
  344. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/ffs/disk_ffs.py +0 -0
  345. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/ffs/ffs.py +0 -0
  346. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/ffs/ffs_factory.py +0 -0
  347. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/grpc_health/__init__.py +0 -0
  348. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/grpc_health/health_server.py +0 -0
  349. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/grpc_health/simple_health_servicer.py +0 -0
  350. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/heartbeat.py +0 -0
  351. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/license_plugin/__init__.py +0 -0
  352. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/license_plugin/license_plugin.py +0 -0
  353. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/object_store/__init__.py +0 -0
  354. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/object_store/in_memory_object_store.py +0 -0
  355. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/object_store/object_store.py +0 -0
  356. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/object_store/object_store_factory.py +0 -0
  357. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/object_store/sql_object_store.py +0 -0
  358. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/primitives/__init__.py +0 -0
  359. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/primitives/asymmetric.py +0 -0
  360. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/primitives/asymmetric_ed25519.py +0 -0
  361. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/sql_mixin.py +0 -0
  362. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/state/__init__.py +0 -0
  363. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/state/alembic/__init__.py +0 -0
  364. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/state/alembic/env.py +0 -0
  365. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/state/alembic/script.py.mako +0 -0
  366. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/state/alembic/utils.py +0 -0
  367. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/state/alembic/versions/__init__.py +0 -0
  368. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/state/alembic/versions/rev_2026_01_28_initialize_migration_of_state_tables.py +0 -0
  369. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/state/schema/README.md +0 -0
  370. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/state/schema/__init__.py +0 -0
  371. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/state/schema/corestate_tables.py +0 -0
  372. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/state/schema/linkstate_tables.py +0 -0
  373. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/state/schema/objectstore_tables.py +0 -0
  374. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/superexec/__init__.py +0 -0
  375. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/superexec/plugin/__init__.py +0 -0
  376. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/superexec/plugin/base_exec_plugin.py +0 -0
  377. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/superexec/plugin/clientapp_exec_plugin.py +0 -0
  378. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/superexec/plugin/exec_plugin.py +0 -0
  379. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/superexec/plugin/serverapp_exec_plugin.py +0 -0
  380. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/superexec/plugin/simulation_exec_plugin.py +0 -0
  381. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/superexec/run_superexec.py +0 -0
  382. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/utils.py +0 -0
  383. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supercore/version.py +0 -0
  384. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/superlink/__init__.py +0 -0
  385. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/superlink/artifact_provider/__init__.py +0 -0
  386. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/superlink/artifact_provider/artifact_provider.py +0 -0
  387. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/superlink/auth_plugin/__init__.py +0 -0
  388. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/superlink/auth_plugin/auth_plugin.py +0 -0
  389. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/superlink/auth_plugin/noop_auth_plugin.py +0 -0
  390. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/superlink/federation/__init__.py +0 -0
  391. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/superlink/federation/federation_manager.py +0 -0
  392. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/superlink/federation/noop_federation_manager.py +0 -0
  393. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/superlink/servicer/__init__.py +0 -0
  394. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/superlink/servicer/control/__init__.py +0 -0
  395. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/superlink/servicer/control/control_account_auth_interceptor.py +0 -0
  396. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/superlink/servicer/control/control_event_log_interceptor.py +0 -0
  397. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/superlink/servicer/control/control_grpc.py +0 -0
  398. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/superlink/servicer/control/control_license_interceptor.py +0 -0
  399. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/superlink/servicer/control/control_servicer.py +0 -0
  400. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supernode/__init__.py +0 -0
  401. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supernode/cli/__init__.py +0 -0
  402. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supernode/cli/flower_supernode.py +0 -0
  403. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supernode/cli/flwr_clientapp.py +0 -0
  404. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supernode/nodestate/__init__.py +0 -0
  405. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supernode/nodestate/in_memory_nodestate.py +0 -0
  406. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supernode/nodestate/nodestate.py +0 -0
  407. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supernode/nodestate/nodestate_factory.py +0 -0
  408. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supernode/runtime/__init__.py +0 -0
  409. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supernode/runtime/run_clientapp.py +0 -0
  410. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supernode/servicer/__init__.py +0 -0
  411. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supernode/servicer/clientappio/__init__.py +0 -0
  412. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supernode/servicer/clientappio/clientappio_servicer.py +0 -0
  413. {flwr_nightly-1.26.0.dev20260203 → flwr_nightly-1.27.0.dev20260205}/py/flwr/supernode/start_client_internal.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: flwr-nightly
3
- Version: 1.26.0.dev20260203
3
+ Version: 1.27.0.dev20260205
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
@@ -31,7 +31,7 @@ from flwr.proto import fab_pb2 as flwr_dot_proto_dot_fab__pb2
31
31
  from flwr.proto import appio_pb2 as flwr_dot_proto_dot_appio__pb2
32
32
 
33
33
 
34
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1c\x66lwr/proto/serverappio.proto\x12\nflwr.proto\x1a\x1a\x66lwr/proto/heartbeat.proto\x1a\x14\x66lwr/proto/log.proto\x1a\x15\x66lwr/proto/node.proto\x1a\x18\x66lwr/proto/message.proto\x1a\x14\x66lwr/proto/run.proto\x1a\x14\x66lwr/proto/fab.proto\x1a\x16\x66lwr/proto/appio.proto\"!\n\x0fGetNodesRequest\x12\x0e\n\x06run_id\x18\x01 \x01(\x04\"3\n\x10GetNodesResponse\x12\x1f\n\x05nodes\x18\x01 \x03(\x0b\x32\x10.flwr.proto.Node2\x94\n\n\x0bServerAppIo\x12_\n\x10ListAppsToLaunch\x12#.flwr.proto.ListAppsToLaunchRequest\x1a$.flwr.proto.ListAppsToLaunchResponse\"\x00\x12S\n\x0cRequestToken\x12\x1f.flwr.proto.RequestTokenRequest\x1a .flwr.proto.RequestTokenResponse\"\x00\x12\x41\n\x06GetRun\x12\x19.flwr.proto.GetRunRequest\x1a\x1a.flwr.proto.GetRunResponse\"\x00\x12_\n\x10SendAppHeartbeat\x12#.flwr.proto.SendAppHeartbeatRequest\x1a$.flwr.proto.SendAppHeartbeatResponse\"\x00\x12V\n\rPullAppInputs\x12 .flwr.proto.PullAppInputsRequest\x1a!.flwr.proto.PullAppInputsResponse\"\x00\x12Y\n\x0ePushAppOutputs\x12!.flwr.proto.PushAppOutputsRequest\x1a\".flwr.proto.PushAppOutputsResponse\"\x00\x12M\n\nPushObject\x12\x1d.flwr.proto.PushObjectRequest\x1a\x1e.flwr.proto.PushObjectResponse\"\x00\x12M\n\nPullObject\x12\x1d.flwr.proto.PullObjectRequest\x1a\x1e.flwr.proto.PullObjectResponse\"\x00\x12q\n\x16\x43onfirmMessageReceived\x12).flwr.proto.ConfirmMessageReceivedRequest\x1a*.flwr.proto.ConfirmMessageReceivedResponse\"\x00\x12\\\n\x0fUpdateRunStatus\x12\".flwr.proto.UpdateRunStatusRequest\x1a#.flwr.proto.UpdateRunStatusResponse\"\x00\x12G\n\x08PushLogs\x12\x1b.flwr.proto.PushLogsRequest\x1a\x1c.flwr.proto.PushLogsResponse\"\x00\x12Y\n\x0cPushMessages\x12\".flwr.proto.PushAppMessagesRequest\x1a#.flwr.proto.PushAppMessagesResponse\"\x00\x12Y\n\x0cPullMessages\x12\".flwr.proto.PullAppMessagesRequest\x1a#.flwr.proto.PullAppMessagesResponse\"\x00\x12G\n\x08GetNodes\x12\x1b.flwr.proto.GetNodesRequest\x1a\x1c.flwr.proto.GetNodesResponse\"\x00\x12\x41\n\x06GetFab\x12\x19.flwr.proto.GetFabRequest\x1a\x1a.flwr.proto.GetFabResponse\"\x00\x62\x06proto3')
34
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1c\x66lwr/proto/serverappio.proto\x12\nflwr.proto\x1a\x1a\x66lwr/proto/heartbeat.proto\x1a\x14\x66lwr/proto/log.proto\x1a\x15\x66lwr/proto/node.proto\x1a\x18\x66lwr/proto/message.proto\x1a\x14\x66lwr/proto/run.proto\x1a\x14\x66lwr/proto/fab.proto\x1a\x16\x66lwr/proto/appio.proto\"!\n\x0fGetNodesRequest\x12\x0e\n\x06run_id\x18\x01 \x01(\x04\"3\n\x10GetNodesResponse\x12\x1f\n\x05nodes\x18\x01 \x03(\x0b\x32\x10.flwr.proto.Node2\xd1\t\n\x0bServerAppIo\x12_\n\x10ListAppsToLaunch\x12#.flwr.proto.ListAppsToLaunchRequest\x1a$.flwr.proto.ListAppsToLaunchResponse\"\x00\x12S\n\x0cRequestToken\x12\x1f.flwr.proto.RequestTokenRequest\x1a .flwr.proto.RequestTokenResponse\"\x00\x12\x41\n\x06GetRun\x12\x19.flwr.proto.GetRunRequest\x1a\x1a.flwr.proto.GetRunResponse\"\x00\x12_\n\x10SendAppHeartbeat\x12#.flwr.proto.SendAppHeartbeatRequest\x1a$.flwr.proto.SendAppHeartbeatResponse\"\x00\x12V\n\rPullAppInputs\x12 .flwr.proto.PullAppInputsRequest\x1a!.flwr.proto.PullAppInputsResponse\"\x00\x12Y\n\x0ePushAppOutputs\x12!.flwr.proto.PushAppOutputsRequest\x1a\".flwr.proto.PushAppOutputsResponse\"\x00\x12M\n\nPushObject\x12\x1d.flwr.proto.PushObjectRequest\x1a\x1e.flwr.proto.PushObjectResponse\"\x00\x12M\n\nPullObject\x12\x1d.flwr.proto.PullObjectRequest\x1a\x1e.flwr.proto.PullObjectResponse\"\x00\x12q\n\x16\x43onfirmMessageReceived\x12).flwr.proto.ConfirmMessageReceivedRequest\x1a*.flwr.proto.ConfirmMessageReceivedResponse\"\x00\x12\\\n\x0fUpdateRunStatus\x12\".flwr.proto.UpdateRunStatusRequest\x1a#.flwr.proto.UpdateRunStatusResponse\"\x00\x12G\n\x08PushLogs\x12\x1b.flwr.proto.PushLogsRequest\x1a\x1c.flwr.proto.PushLogsResponse\"\x00\x12Y\n\x0cPushMessages\x12\".flwr.proto.PushAppMessagesRequest\x1a#.flwr.proto.PushAppMessagesResponse\"\x00\x12Y\n\x0cPullMessages\x12\".flwr.proto.PullAppMessagesRequest\x1a#.flwr.proto.PullAppMessagesResponse\"\x00\x12G\n\x08GetNodes\x12\x1b.flwr.proto.GetNodesRequest\x1a\x1c.flwr.proto.GetNodesResponse\"\x00\x62\x06proto3')
35
35
 
36
36
  _globals = globals()
37
37
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -43,5 +43,5 @@ if not _descriptor._USE_C_DESCRIPTORS:
43
43
  _globals['_GETNODESRESPONSE']._serialized_start=246
44
44
  _globals['_GETNODESRESPONSE']._serialized_end=297
45
45
  _globals['_SERVERAPPIO']._serialized_start=300
46
- _globals['_SERVERAPPIO']._serialized_end=1600
46
+ _globals['_SERVERAPPIO']._serialized_end=1533
47
47
  # @@protoc_insertion_point(module_scope)
@@ -4,7 +4,6 @@ import grpc
4
4
  import warnings
5
5
 
6
6
  from flwr.proto import appio_pb2 as flwr_dot_proto_dot_appio__pb2
7
- from flwr.proto import fab_pb2 as flwr_dot_proto_dot_fab__pb2
8
7
  from flwr.proto import heartbeat_pb2 as flwr_dot_proto_dot_heartbeat__pb2
9
8
  from flwr.proto import log_pb2 as flwr_dot_proto_dot_log__pb2
10
9
  from flwr.proto import message_pb2 as flwr_dot_proto_dot_message__pb2
@@ -110,11 +109,6 @@ class ServerAppIoStub(object):
110
109
  request_serializer=flwr_dot_proto_dot_serverappio__pb2.GetNodesRequest.SerializeToString,
111
110
  response_deserializer=flwr_dot_proto_dot_serverappio__pb2.GetNodesResponse.FromString,
112
111
  _registered_method=True)
113
- self.GetFab = channel.unary_unary(
114
- '/flwr.proto.ServerAppIo/GetFab',
115
- request_serializer=flwr_dot_proto_dot_fab__pb2.GetFabRequest.SerializeToString,
116
- response_deserializer=flwr_dot_proto_dot_fab__pb2.GetFabResponse.FromString,
117
- _registered_method=True)
118
112
 
119
113
 
120
114
  class ServerAppIoServicer(object):
@@ -238,13 +232,6 @@ class ServerAppIoServicer(object):
238
232
  context.set_details('Method not implemented!')
239
233
  raise NotImplementedError('Method not implemented!')
240
234
 
241
- def GetFab(self, request, context):
242
- """Get FAB
243
- """
244
- context.set_code(grpc.StatusCode.UNIMPLEMENTED)
245
- context.set_details('Method not implemented!')
246
- raise NotImplementedError('Method not implemented!')
247
-
248
235
 
249
236
  def add_ServerAppIoServicer_to_server(servicer, server):
250
237
  rpc_method_handlers = {
@@ -318,11 +305,6 @@ def add_ServerAppIoServicer_to_server(servicer, server):
318
305
  request_deserializer=flwr_dot_proto_dot_serverappio__pb2.GetNodesRequest.FromString,
319
306
  response_serializer=flwr_dot_proto_dot_serverappio__pb2.GetNodesResponse.SerializeToString,
320
307
  ),
321
- 'GetFab': grpc.unary_unary_rpc_method_handler(
322
- servicer.GetFab,
323
- request_deserializer=flwr_dot_proto_dot_fab__pb2.GetFabRequest.FromString,
324
- response_serializer=flwr_dot_proto_dot_fab__pb2.GetFabResponse.SerializeToString,
325
- ),
326
308
  }
327
309
  generic_handler = grpc.method_handlers_generic_handler(
328
310
  'flwr.proto.ServerAppIo', rpc_method_handlers)
@@ -711,30 +693,3 @@ class ServerAppIo(object):
711
693
  timeout,
712
694
  metadata,
713
695
  _registered_method=True)
714
-
715
- @staticmethod
716
- def GetFab(request,
717
- target,
718
- options=(),
719
- channel_credentials=None,
720
- call_credentials=None,
721
- insecure=False,
722
- compression=None,
723
- wait_for_ready=None,
724
- timeout=None,
725
- metadata=None):
726
- return grpc.experimental.unary_unary(
727
- request,
728
- target,
729
- '/flwr.proto.ServerAppIo/GetFab',
730
- flwr_dot_proto_dot_fab__pb2.GetFabRequest.SerializeToString,
731
- flwr_dot_proto_dot_fab__pb2.GetFabResponse.FromString,
732
- options,
733
- channel_credentials,
734
- insecure,
735
- call_credentials,
736
- compression,
737
- wait_for_ready,
738
- timeout,
739
- metadata,
740
- _registered_method=True)
@@ -20,7 +20,6 @@ limitations under the License.
20
20
  import abc
21
21
  import collections.abc
22
22
  import flwr.proto.appio_pb2
23
- import flwr.proto.fab_pb2
24
23
  import flwr.proto.heartbeat_pb2
25
24
  import flwr.proto.log_pb2
26
25
  import flwr.proto.message_pb2
@@ -148,12 +147,6 @@ class ServerAppIoStub:
148
147
  ]
149
148
  """Return a set of nodes"""
150
149
 
151
- GetFab: grpc.UnaryUnaryMultiCallable[
152
- flwr.proto.fab_pb2.GetFabRequest,
153
- flwr.proto.fab_pb2.GetFabResponse,
154
- ]
155
- """Get FAB"""
156
-
157
150
  class ServerAppIoAsyncStub:
158
151
  ListAppsToLaunch: grpc.aio.UnaryUnaryMultiCallable[
159
152
  flwr.proto.appio_pb2.ListAppsToLaunchRequest,
@@ -264,12 +257,6 @@ class ServerAppIoAsyncStub:
264
257
  ]
265
258
  """Return a set of nodes"""
266
259
 
267
- GetFab: grpc.aio.UnaryUnaryMultiCallable[
268
- flwr.proto.fab_pb2.GetFabRequest,
269
- flwr.proto.fab_pb2.GetFabResponse,
270
- ]
271
- """Get FAB"""
272
-
273
260
  class ServerAppIoServicer(metaclass=abc.ABCMeta):
274
261
  @abc.abstractmethod
275
262
  def ListAppsToLaunch(
@@ -408,12 +395,4 @@ class ServerAppIoServicer(metaclass=abc.ABCMeta):
408
395
  ) -> typing.Union[flwr.proto.serverappio_pb2.GetNodesResponse, collections.abc.Awaitable[flwr.proto.serverappio_pb2.GetNodesResponse]]:
409
396
  """Return a set of nodes"""
410
397
 
411
- @abc.abstractmethod
412
- def GetFab(
413
- self,
414
- request: flwr.proto.fab_pb2.GetFabRequest,
415
- context: _ServicerContext,
416
- ) -> typing.Union[flwr.proto.fab_pb2.GetFabResponse, collections.abc.Awaitable[flwr.proto.fab_pb2.GetFabResponse]]:
417
- """Get FAB"""
418
-
419
398
  def add_ServerAppIoServicer_to_server(servicer: ServerAppIoServicer, server: typing.Union[grpc.Server, grpc.aio.Server]) -> None: ...
@@ -54,7 +54,6 @@ from flwr.proto.appio_pb2 import ( # pylint: disable=E0611
54
54
  RequestTokenRequest,
55
55
  RequestTokenResponse,
56
56
  )
57
- from flwr.proto.fab_pb2 import GetFabRequest, GetFabResponse # pylint: disable=E0611
58
57
  from flwr.proto.heartbeat_pb2 import ( # pylint: disable=E0611
59
58
  SendAppHeartbeatRequest,
60
59
  SendAppHeartbeatResponse,
@@ -85,7 +84,7 @@ from flwr.proto.serverappio_pb2 import ( # pylint: disable=E0611
85
84
  from flwr.server.superlink.linkstate import LinkState, LinkStateFactory
86
85
  from flwr.server.superlink.utils import abort_if
87
86
  from flwr.server.utils.validator import validate_message
88
- from flwr.supercore.ffs import Ffs, FfsFactory
87
+ from flwr.supercore.ffs import FfsFactory
89
88
  from flwr.supercore.object_store import NoObjectInStoreError, ObjectStoreFactory
90
89
 
91
90
 
@@ -312,19 +311,6 @@ class ServerAppIoServicer(serverappio_pb2_grpc.ServerAppIoServicer):
312
311
 
313
312
  return GetRunResponse(run=run_to_proto(run))
314
313
 
315
- def GetFab(
316
- self, request: GetFabRequest, context: grpc.ServicerContext
317
- ) -> GetFabResponse:
318
- """Get FAB from Ffs."""
319
- log(DEBUG, "ServerAppIoServicer.GetFab")
320
-
321
- ffs: Ffs = self.ffs_factory.ffs()
322
- if result := ffs.get(request.hash_str):
323
- fab = Fab(request.hash_str, result[0], result[1])
324
- return GetFabResponse(fab=fab_to_proto(fab))
325
-
326
- raise ValueError(f"Found no FAB with hash: {request.hash_str}")
327
-
328
314
  def PullAppInputs(
329
315
  self, request: PullAppInputsRequest, context: grpc.ServicerContext
330
316
  ) -> PullAppInputsResponse:
@@ -185,7 +185,13 @@ class Bulyan(FedAvg):
185
185
 
186
186
  # Convert to ArrayRecord
187
187
  arrays = ArrayRecord(
188
- dict(zip(array_keys, map(Array, aggregated_ndarrays), strict=True))
188
+ dict(
189
+ zip(
190
+ array_keys,
191
+ (Array(np.asarray(arr)) for arr in aggregated_ndarrays),
192
+ strict=True,
193
+ )
194
+ )
189
195
  )
190
196
 
191
197
  # Aggregate MetricRecords
@@ -22,6 +22,8 @@ from abc import ABC
22
22
  from collections.abc import Iterable
23
23
  from logging import INFO, WARNING
24
24
 
25
+ import numpy as np
26
+
25
27
  from flwr.common import Array, ArrayRecord, ConfigRecord, Message, MetricRecord, log
26
28
  from flwr.common.differential_privacy import (
27
29
  add_gaussian_noise_inplace,
@@ -216,7 +218,13 @@ class DifferentialPrivacyServerSideFixedClipping(DifferentialPrivacyFixedClippin
216
218
  )
217
219
  # Replace content while preserving keys
218
220
  reply.content[arr_name] = ArrayRecord(
219
- dict(zip(record.keys(), map(Array, reply_ndarrays), strict=True))
221
+ dict(
222
+ zip(
223
+ record.keys(),
224
+ (Array(np.asarray(v)) for v in reply_ndarrays),
225
+ strict=True,
226
+ )
227
+ )
220
228
  )
221
229
  log(
222
230
  INFO,
@@ -73,6 +73,7 @@ SYSTEM_MESSAGE_TYPE = "system"
73
73
 
74
74
  # SQLite PRAGMA settings for optimal performance and correctness
75
75
  SQLITE_PRAGMAS = (
76
+ ("busy_timeout", "5000"), # Retry lock acquisition for up to 5s before SQLITE_BUSY
76
77
  ("journal_mode", "WAL"), # Enable Write-Ahead Logging for better concurrency
77
78
  ("synchronous", "NORMAL"),
78
79
  ("foreign_keys", "ON"),
@@ -4,7 +4,7 @@ build-backend = "poetry.core.masonry.api"
4
4
 
5
5
  [tool.poetry]
6
6
  name = "flwr-nightly"
7
- version = "1.26.0.dev20260203"
7
+ version = "1.27.0.dev20260205"
8
8
  description = "Flower: A Friendly Federated AI Framework"
9
9
  license = "Apache-2.0"
10
10
  authors = ["The Flower Authors <hello@flower.ai>"]
@@ -1,67 +0,0 @@
1
- # Copyright 2025 Flower Labs GmbH. All Rights Reserved.
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # http://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
- # ==============================================================================
15
- """Flower command line interface `example` command."""
16
-
17
-
18
- import json
19
- import os
20
- import subprocess
21
- import tempfile
22
- import urllib.request
23
-
24
- from .utils import prompt_options
25
-
26
-
27
- def example() -> None:
28
- """Clone a Flower example.
29
-
30
- All examples available in the Flower repository are available through this command.
31
- """
32
- # Load list of examples directly from GitHub
33
- url = "https://api.github.com/repos/adap/flower/git/trees/main"
34
- with urllib.request.urlopen(url) as res:
35
- data = json.load(res)
36
- examples_directory_url = [
37
- item["url"] for item in data["tree"] if item["path"] == "examples"
38
- ][0]
39
-
40
- with urllib.request.urlopen(examples_directory_url) as res:
41
- data = json.load(res)
42
- example_names = [
43
- item["path"]
44
- for item in data["tree"]
45
- if item["path"] not in [".gitignore", "doc"]
46
- ]
47
-
48
- example_name = prompt_options(
49
- "Please select example by typing in the number",
50
- example_names,
51
- )
52
-
53
- with tempfile.TemporaryDirectory() as tmpdirname:
54
- subprocess.check_output(
55
- [
56
- "git",
57
- "clone",
58
- "--depth=1",
59
- "https://github.com/adap/flower.git",
60
- tmpdirname,
61
- ]
62
- )
63
- examples_dir = os.path.join(tmpdirname, "examples", example_name)
64
- subprocess.check_output(["mv", examples_dir, "."])
65
-
66
- print()
67
- print(f"Example ready to use in {os.path.join(os.getcwd(), example_name)}")