flwr-nightly 1.11.0.dev20240828__tar.gz → 1.11.0.dev20240829__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.
Potentially problematic release.
This version of flwr-nightly might be problematic. Click here for more details.
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/PKG-INFO +1 -1
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/pyproject.toml +10 -6
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/__init__.py +0 -4
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/grpc_rere_client/client_interceptor.py +13 -4
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/telemetry.py +36 -30
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/__init__.py +0 -4
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/compat/app.py +0 -5
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/driver/grpc_driver.py +1 -3
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/simulation/run_simulation.py +23 -6
- flwr_nightly-1.11.0.dev20240829/src/py/flwr/superexec/__init__.py +15 -0
- flwr_nightly-1.11.0.dev20240828/src/py/flwr/superexec/__init__.py +0 -21
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/LICENSE +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/README.md +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/app.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/build.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/config_utils.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/example.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/install.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/new.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/.gitignore.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/LICENSE.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/README.baseline.md.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/README.flowertune.md.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/README.md.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/__init__.baseline.py.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/__init__.py.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/client.baseline.py.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/client.huggingface.py.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/client.jax.py.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/client.mlx.py.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/client.numpy.py.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/client.pytorch.py.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/client.sklearn.py.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/client.tensorflow.py.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/dataset.baseline.py.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/flwr_tune/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/flwr_tune/client_app.py.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/flwr_tune/dataset.py.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/flwr_tune/models.py.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/flwr_tune/server_app.py.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/flwr_tune/strategy.py.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/model.baseline.py.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/server.baseline.py.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/server.huggingface.py.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/server.jax.py.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/server.mlx.py.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/server.numpy.py.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/server.pytorch.py.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/server.sklearn.py.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/server.tensorflow.py.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/strategy.baseline.py.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/task.huggingface.py.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/task.jax.py.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/task.mlx.py.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/task.pytorch.py.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/task.tensorflow.py.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/code/utils.baseline.py.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/pyproject.baseline.toml.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/pyproject.flowertune.toml.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/pyproject.huggingface.toml.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/pyproject.jax.toml.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/pyproject.mlx.toml.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/pyproject.numpy.toml.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/pyproject.pytorch.toml.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/pyproject.sklearn.toml.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/templates/app/pyproject.tensorflow.toml.tpl +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/run/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/run/run.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/utils.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/app.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/client.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/client_app.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/clientapp/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/clientapp/app.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/clientapp/clientappio_servicer.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/clientapp/utils.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/dpfedavg_numpy_client.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/grpc_adapter_client/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/grpc_adapter_client/connection.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/grpc_client/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/grpc_client/connection.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/grpc_rere_client/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/grpc_rere_client/connection.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/grpc_rere_client/grpc_adapter.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/heartbeat.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/message_handler/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/message_handler/message_handler.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/message_handler/task_handler.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/mod/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/mod/centraldp_mods.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/mod/comms_mods.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/mod/localdp_mod.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/mod/secure_aggregation/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/mod/secure_aggregation/secagg_mod.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/mod/secure_aggregation/secaggplus_mod.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/mod/utils.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/node_state.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/node_state_tests.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/numpy_client.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/rest_client/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/rest_client/connection.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/supernode/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/supernode/app.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/typing.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/address.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/config.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/constant.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/context.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/date.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/differential_privacy.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/differential_privacy_constants.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/dp.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/exit_handlers.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/grpc.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/logger.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/message.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/object_ref.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/parameter.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/pyproject.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/record/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/record/configsrecord.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/record/conversion_utils.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/record/metricsrecord.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/record/parametersrecord.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/record/recordset.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/record/typeddict.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/recordset_compat.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/retry_invoker.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/secure_aggregation/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/secure_aggregation/crypto/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/secure_aggregation/crypto/shamir.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/secure_aggregation/crypto/symmetric_encryption.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/secure_aggregation/ndarrays_arithmetic.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/secure_aggregation/quantization.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/secure_aggregation/secaggplus_constants.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/secure_aggregation/secaggplus_utils.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/serde.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/typing.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/version.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/clientappio_pb2.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/clientappio_pb2.pyi +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/clientappio_pb2_grpc.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/clientappio_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/common_pb2.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/common_pb2.pyi +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/common_pb2_grpc.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/common_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/driver_pb2.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/driver_pb2.pyi +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/driver_pb2_grpc.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/driver_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/error_pb2.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/error_pb2.pyi +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/error_pb2_grpc.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/error_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/exec_pb2.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/exec_pb2.pyi +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/exec_pb2_grpc.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/exec_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/fab_pb2.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/fab_pb2.pyi +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/fab_pb2_grpc.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/fab_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/fleet_pb2.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/fleet_pb2.pyi +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/fleet_pb2_grpc.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/fleet_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/grpcadapter_pb2.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/grpcadapter_pb2.pyi +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/grpcadapter_pb2_grpc.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/grpcadapter_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/message_pb2.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/message_pb2.pyi +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/message_pb2_grpc.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/message_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/node_pb2.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/node_pb2.pyi +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/node_pb2_grpc.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/node_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/recordset_pb2.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/recordset_pb2.pyi +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/recordset_pb2_grpc.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/recordset_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/run_pb2.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/run_pb2.pyi +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/run_pb2_grpc.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/run_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/task_pb2.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/task_pb2.pyi +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/task_pb2_grpc.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/task_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/transport_pb2.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/transport_pb2.pyi +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/transport_pb2_grpc.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/proto/transport_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/py.typed +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/app.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/client_manager.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/client_proxy.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/compat/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/compat/app_utils.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/compat/driver_client_proxy.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/compat/legacy_context.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/criterion.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/driver/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/driver/driver.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/driver/inmemory_driver.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/history.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/run_serverapp.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/server.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/server_app.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/server_config.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/serverapp_components.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/strategy/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/strategy/aggregate.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/strategy/bulyan.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/strategy/dp_adaptive_clipping.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/strategy/dp_fixed_clipping.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/strategy/dpfedavg_adaptive.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/strategy/dpfedavg_fixed.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/strategy/fault_tolerant_fedavg.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/strategy/fedadagrad.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/strategy/fedadam.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/strategy/fedavg.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/strategy/fedavg_android.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/strategy/fedavgm.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/strategy/fedmedian.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/strategy/fedopt.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/strategy/fedprox.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/strategy/fedtrimmedavg.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/strategy/fedxgb_bagging.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/strategy/fedxgb_cyclic.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/strategy/fedxgb_nn_avg.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/strategy/fedyogi.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/strategy/krum.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/strategy/qfedavg.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/strategy/strategy.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/driver/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/driver/driver_grpc.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/driver/driver_servicer.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/ffs/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/ffs/disk_ffs.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/ffs/ffs.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/ffs/ffs_factory.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/fleet/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/fleet/grpc_adapter/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/fleet/grpc_adapter/grpc_adapter_servicer.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/fleet/grpc_bidi/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/fleet/grpc_bidi/flower_service_servicer.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/fleet/grpc_bidi/grpc_bridge.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/fleet/grpc_bidi/grpc_client_proxy.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/fleet/grpc_bidi/grpc_server.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/fleet/grpc_rere/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/fleet/grpc_rere/fleet_servicer.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/fleet/grpc_rere/server_interceptor.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/fleet/message_handler/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/fleet/message_handler/message_handler.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/fleet/rest_rere/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/fleet/rest_rere/rest_api.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/fleet/vce/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/fleet/vce/backend/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/fleet/vce/backend/backend.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/fleet/vce/backend/raybackend.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/fleet/vce/vce_api.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/state/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/state/in_memory_state.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/state/sqlite_state.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/state/state.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/state/state_factory.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/superlink/state/utils.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/typing.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/utils/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/utils/tensorboard.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/utils/validator.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/workflow/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/workflow/constant.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/workflow/default_workflows.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/workflow/secure_aggregation/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/workflow/secure_aggregation/secagg_workflow.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/workflow/secure_aggregation/secaggplus_workflow.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/simulation/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/simulation/app.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/simulation/ray_transport/__init__.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/simulation/ray_transport/ray_actor.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/simulation/ray_transport/ray_client_proxy.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/simulation/ray_transport/utils.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/superexec/app.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/superexec/deployment.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/superexec/exec_grpc.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/superexec/exec_servicer.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/superexec/executor.py +0 -0
- {flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/superexec/simulation.py +0 -0
|
@@ -4,7 +4,7 @@ build-backend = "poetry.core.masonry.api"
|
|
|
4
4
|
|
|
5
5
|
[tool.poetry]
|
|
6
6
|
name = "flwr-nightly"
|
|
7
|
-
version = "1.11.0.
|
|
7
|
+
version = "1.11.0.dev20240829"
|
|
8
8
|
description = "Flower: A Friendly Federated Learning Framework"
|
|
9
9
|
license = "Apache-2.0"
|
|
10
10
|
authors = ["The Flower Authors <hello@flower.ai>"]
|
|
@@ -52,14 +52,18 @@ exclude = [
|
|
|
52
52
|
]
|
|
53
53
|
|
|
54
54
|
[tool.poetry.scripts]
|
|
55
|
+
# `flwr` CLI
|
|
55
56
|
flwr = "flwr.cli.app:app"
|
|
56
|
-
|
|
57
|
-
flower-superexec = "flwr.superexec:run_superexec"
|
|
58
|
-
|
|
59
|
-
flower-client-app = "flwr.client:run_client_app"
|
|
60
|
-
flower-server-app = "flwr.server:run_server_app"
|
|
57
|
+
# SuperExec (can run with either Deployment Engine or Simulation Engine)
|
|
58
|
+
flower-superexec = "flwr.superexec.app:run_superexec"
|
|
59
|
+
# Simulation Engine
|
|
61
60
|
flower-simulation = "flwr.simulation.run_simulation:run_simulation_from_cli"
|
|
61
|
+
# Deployment Engine
|
|
62
|
+
flower-superlink = "flwr.server.app:run_superlink"
|
|
63
|
+
flower-supernode = "flwr.client.supernode.app:run_supernode"
|
|
64
|
+
flower-server-app = "flwr.server.run_serverapp:run_server_app"
|
|
62
65
|
flwr-clientapp = "flwr.client.clientapp:flwr_clientapp"
|
|
66
|
+
flower-client-app = "flwr.client.supernode:run_client_app" # Deprecated
|
|
63
67
|
|
|
64
68
|
[tool.poetry.dependencies]
|
|
65
69
|
python = "^3.8"
|
{flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/__init__.py
RENAMED
|
@@ -20,8 +20,6 @@ from .app import start_numpy_client as start_numpy_client
|
|
|
20
20
|
from .client import Client as Client
|
|
21
21
|
from .client_app import ClientApp as ClientApp
|
|
22
22
|
from .numpy_client import NumPyClient as NumPyClient
|
|
23
|
-
from .supernode import run_client_app as run_client_app
|
|
24
|
-
from .supernode import run_supernode as run_supernode
|
|
25
23
|
from .typing import ClientFn as ClientFn
|
|
26
24
|
from .typing import ClientFnExt as ClientFnExt
|
|
27
25
|
|
|
@@ -32,8 +30,6 @@ __all__ = [
|
|
|
32
30
|
"ClientFnExt",
|
|
33
31
|
"NumPyClient",
|
|
34
32
|
"mod",
|
|
35
|
-
"run_client_app",
|
|
36
|
-
"run_supernode",
|
|
37
33
|
"start_client",
|
|
38
34
|
"start_numpy_client",
|
|
39
35
|
]
|
|
@@ -17,11 +17,13 @@
|
|
|
17
17
|
|
|
18
18
|
import base64
|
|
19
19
|
import collections
|
|
20
|
+
from logging import WARNING
|
|
20
21
|
from typing import Any, Callable, Optional, Sequence, Tuple, Union
|
|
21
22
|
|
|
22
23
|
import grpc
|
|
23
24
|
from cryptography.hazmat.primitives.asymmetric import ec
|
|
24
25
|
|
|
26
|
+
from flwr.common.logger import log
|
|
25
27
|
from flwr.common.secure_aggregation.crypto.symmetric_encryption import (
|
|
26
28
|
bytes_to_public_key,
|
|
27
29
|
compute_hmac,
|
|
@@ -151,8 +153,15 @@ class AuthenticateClientInterceptor(grpc.UnaryUnaryClientInterceptor): # type:
|
|
|
151
153
|
server_public_key_bytes = base64.urlsafe_b64decode(
|
|
152
154
|
_get_value_from_tuples(_PUBLIC_KEY_HEADER, response.initial_metadata())
|
|
153
155
|
)
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
self.
|
|
157
|
-
|
|
156
|
+
|
|
157
|
+
if server_public_key_bytes != b"":
|
|
158
|
+
self.server_public_key = bytes_to_public_key(server_public_key_bytes)
|
|
159
|
+
else:
|
|
160
|
+
log(WARNING, "Can't get server public key, SuperLink may be offline")
|
|
161
|
+
|
|
162
|
+
if self.server_public_key is not None:
|
|
163
|
+
self.shared_secret = generate_shared_key(
|
|
164
|
+
self.private_key, self.server_public_key
|
|
165
|
+
)
|
|
166
|
+
|
|
158
167
|
return response
|
{flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/common/telemetry.py
RENAMED
|
@@ -132,53 +132,59 @@ class EventType(str, Enum):
|
|
|
132
132
|
# Ping
|
|
133
133
|
PING = auto()
|
|
134
134
|
|
|
135
|
-
#
|
|
135
|
+
# --- LEGACY FUNCTIONS -------------------------------------------------------------
|
|
136
|
+
|
|
137
|
+
# Legacy: `start_client` function
|
|
136
138
|
START_CLIENT_ENTER = auto()
|
|
137
139
|
START_CLIENT_LEAVE = auto()
|
|
138
140
|
|
|
139
|
-
#
|
|
141
|
+
# Legacy: `start_server` function
|
|
140
142
|
START_SERVER_ENTER = auto()
|
|
141
143
|
START_SERVER_LEAVE = auto()
|
|
142
144
|
|
|
143
|
-
#
|
|
144
|
-
|
|
145
|
-
|
|
145
|
+
# Legacy: `start_simulation` function
|
|
146
|
+
START_SIMULATION_ENTER = auto()
|
|
147
|
+
START_SIMULATION_LEAVE = auto()
|
|
146
148
|
|
|
147
|
-
#
|
|
148
|
-
RUN_FLEET_API_ENTER = auto()
|
|
149
|
-
RUN_FLEET_API_LEAVE = auto()
|
|
149
|
+
# --- `flwr` CLI -------------------------------------------------------------------
|
|
150
150
|
|
|
151
|
-
#
|
|
152
|
-
RUN_SUPERLINK_ENTER = auto()
|
|
153
|
-
RUN_SUPERLINK_LEAVE = auto()
|
|
151
|
+
# Not yet implemented
|
|
154
152
|
|
|
155
|
-
#
|
|
156
|
-
START_SIMULATION_ENTER = auto()
|
|
157
|
-
START_SIMULATION_LEAVE = auto()
|
|
153
|
+
# --- SuperExec --------------------------------------------------------------------
|
|
158
154
|
|
|
159
|
-
#
|
|
160
|
-
|
|
161
|
-
|
|
155
|
+
# SuperExec
|
|
156
|
+
RUN_SUPEREXEC_ENTER = auto()
|
|
157
|
+
RUN_SUPEREXEC_LEAVE = auto()
|
|
162
158
|
|
|
163
|
-
#
|
|
164
|
-
START_DRIVER_ENTER = auto()
|
|
165
|
-
START_DRIVER_LEAVE = auto()
|
|
159
|
+
# --- Simulation Engine ------------------------------------------------------------
|
|
166
160
|
|
|
167
|
-
# flower-
|
|
168
|
-
|
|
169
|
-
|
|
161
|
+
# CLI: flower-simulation
|
|
162
|
+
CLI_FLOWER_SIMULATION_ENTER = auto()
|
|
163
|
+
CLI_FLOWER_SIMULATION_LEAVE = auto()
|
|
170
164
|
|
|
171
|
-
#
|
|
172
|
-
|
|
173
|
-
|
|
165
|
+
# Python API: `run_simulation`
|
|
166
|
+
PYTHON_API_RUN_SIMULATION_ENTER = auto()
|
|
167
|
+
PYTHON_API_RUN_SIMULATION_LEAVE = auto()
|
|
174
168
|
|
|
175
|
-
#
|
|
169
|
+
# --- Deployment Engine ------------------------------------------------------------
|
|
170
|
+
|
|
171
|
+
# CLI: `flower-superlink`
|
|
172
|
+
RUN_SUPERLINK_ENTER = auto()
|
|
173
|
+
RUN_SUPERLINK_LEAVE = auto()
|
|
174
|
+
|
|
175
|
+
# CLI: `flower-supernode`
|
|
176
176
|
RUN_SUPERNODE_ENTER = auto()
|
|
177
177
|
RUN_SUPERNODE_LEAVE = auto()
|
|
178
178
|
|
|
179
|
-
#
|
|
180
|
-
|
|
181
|
-
|
|
179
|
+
# CLI: `flower-server-app`
|
|
180
|
+
RUN_SERVER_APP_ENTER = auto()
|
|
181
|
+
RUN_SERVER_APP_LEAVE = auto()
|
|
182
|
+
|
|
183
|
+
# --- DEPRECATED -------------------------------------------------------------------
|
|
184
|
+
|
|
185
|
+
# [DEPRECATED] CLI: `flower-client-app`
|
|
186
|
+
RUN_CLIENT_APP_ENTER = auto()
|
|
187
|
+
RUN_CLIENT_APP_LEAVE = auto()
|
|
182
188
|
|
|
183
189
|
|
|
184
190
|
# Use the ThreadPoolExecutor with max_workers=1 to have a queue
|
{flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/__init__.py
RENAMED
|
@@ -17,14 +17,12 @@
|
|
|
17
17
|
|
|
18
18
|
from . import strategy
|
|
19
19
|
from . import workflow as workflow
|
|
20
|
-
from .app import run_superlink as run_superlink
|
|
21
20
|
from .app import start_server as start_server
|
|
22
21
|
from .client_manager import ClientManager as ClientManager
|
|
23
22
|
from .client_manager import SimpleClientManager as SimpleClientManager
|
|
24
23
|
from .compat import LegacyContext as LegacyContext
|
|
25
24
|
from .driver import Driver as Driver
|
|
26
25
|
from .history import History as History
|
|
27
|
-
from .run_serverapp import run_server_app as run_server_app
|
|
28
26
|
from .server import Server as Server
|
|
29
27
|
from .server_app import ServerApp as ServerApp
|
|
30
28
|
from .server_config import ServerConfig as ServerConfig
|
|
@@ -40,8 +38,6 @@ __all__ = [
|
|
|
40
38
|
"ServerAppComponents",
|
|
41
39
|
"ServerConfig",
|
|
42
40
|
"SimpleClientManager",
|
|
43
|
-
"run_server_app",
|
|
44
|
-
"run_superlink",
|
|
45
41
|
"start_server",
|
|
46
42
|
"strategy",
|
|
47
43
|
"workflow",
|
{flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/server/compat/app.py
RENAMED
|
@@ -18,7 +18,6 @@
|
|
|
18
18
|
from logging import INFO
|
|
19
19
|
from typing import Optional
|
|
20
20
|
|
|
21
|
-
from flwr.common import EventType, event
|
|
22
21
|
from flwr.common.logger import log
|
|
23
22
|
from flwr.server.client_manager import ClientManager
|
|
24
23
|
from flwr.server.history import History
|
|
@@ -65,8 +64,6 @@ def start_driver( # pylint: disable=too-many-arguments, too-many-locals
|
|
|
65
64
|
hist : flwr.server.history.History
|
|
66
65
|
Object containing training and evaluation metrics.
|
|
67
66
|
"""
|
|
68
|
-
event(EventType.START_DRIVER_ENTER)
|
|
69
|
-
|
|
70
67
|
# Initialize the Driver API server and config
|
|
71
68
|
initialized_server, initialized_config = init_defaults(
|
|
72
69
|
server=server,
|
|
@@ -96,6 +93,4 @@ def start_driver( # pylint: disable=too-many-arguments, too-many-locals
|
|
|
96
93
|
f_stop.set()
|
|
97
94
|
thread.join()
|
|
98
95
|
|
|
99
|
-
event(EventType.START_SERVER_LEAVE)
|
|
100
|
-
|
|
101
96
|
return hist
|
|
@@ -21,7 +21,7 @@ from typing import Iterable, List, Optional, cast
|
|
|
21
21
|
|
|
22
22
|
import grpc
|
|
23
23
|
|
|
24
|
-
from flwr.common import DEFAULT_TTL,
|
|
24
|
+
from flwr.common import DEFAULT_TTL, Message, Metadata, RecordSet
|
|
25
25
|
from flwr.common.grpc import create_channel
|
|
26
26
|
from flwr.common.logger import log
|
|
27
27
|
from flwr.common.serde import (
|
|
@@ -94,7 +94,6 @@ class GrpcDriver(Driver):
|
|
|
94
94
|
|
|
95
95
|
This will not call GetRun.
|
|
96
96
|
"""
|
|
97
|
-
event(EventType.DRIVER_CONNECT)
|
|
98
97
|
if self._is_connected:
|
|
99
98
|
log(WARNING, "Already connected")
|
|
100
99
|
return
|
|
@@ -108,7 +107,6 @@ class GrpcDriver(Driver):
|
|
|
108
107
|
|
|
109
108
|
def _disconnect(self) -> None:
|
|
110
109
|
"""Disconnect from the Driver API."""
|
|
111
|
-
event(EventType.DRIVER_DISCONNECT)
|
|
112
110
|
if not self._is_connected:
|
|
113
111
|
log(DEBUG, "Already disconnected")
|
|
114
112
|
return
|
|
@@ -109,6 +109,11 @@ def run_simulation_from_cli() -> None:
|
|
|
109
109
|
"""Run Simulation Engine from the CLI."""
|
|
110
110
|
args = _parse_args_run_simulation().parse_args()
|
|
111
111
|
|
|
112
|
+
event(
|
|
113
|
+
EventType.CLI_FLOWER_SIMULATION_ENTER,
|
|
114
|
+
event_details={"backend": args.backend, "num-supernodes": args.num_supernodes},
|
|
115
|
+
)
|
|
116
|
+
|
|
112
117
|
# Add warnings for deprecated server_app and client_app arguments
|
|
113
118
|
if args.server_app:
|
|
114
119
|
warn_deprecated_feature(
|
|
@@ -177,7 +182,9 @@ def run_simulation_from_cli() -> None:
|
|
|
177
182
|
client_app_attr = app_components["clientapp"]
|
|
178
183
|
server_app_attr = app_components["serverapp"]
|
|
179
184
|
|
|
180
|
-
override_config = parse_config_args(
|
|
185
|
+
override_config = parse_config_args(
|
|
186
|
+
[args.run_config] if args.run_config else args.run_config
|
|
187
|
+
)
|
|
181
188
|
fused_config = get_fused_config_from_dir(app_path, override_config)
|
|
182
189
|
app_dir = args.app
|
|
183
190
|
is_app = True
|
|
@@ -212,6 +219,7 @@ def run_simulation_from_cli() -> None:
|
|
|
212
219
|
verbose_logging=args.verbose,
|
|
213
220
|
server_app_run_config=fused_config,
|
|
214
221
|
is_app=is_app,
|
|
222
|
+
exit_event=EventType.CLI_FLOWER_SIMULATION_LEAVE,
|
|
215
223
|
)
|
|
216
224
|
|
|
217
225
|
|
|
@@ -265,6 +273,11 @@ def run_simulation(
|
|
|
265
273
|
When disabled, only INFO, WARNING and ERROR log messages will be shown. If
|
|
266
274
|
enabled, DEBUG-level logs will be displayed.
|
|
267
275
|
"""
|
|
276
|
+
event(
|
|
277
|
+
EventType.PYTHON_API_RUN_SIMULATION_ENTER,
|
|
278
|
+
event_details={"backend": backend_name, "num-supernodes": num_supernodes},
|
|
279
|
+
)
|
|
280
|
+
|
|
268
281
|
if enable_tf_gpu_growth:
|
|
269
282
|
warn_deprecated_feature_with_example(
|
|
270
283
|
"Passing `enable_tf_gpu_growth=True` is deprecated.",
|
|
@@ -282,6 +295,7 @@ def run_simulation(
|
|
|
282
295
|
backend_config=backend_config,
|
|
283
296
|
enable_tf_gpu_growth=enable_tf_gpu_growth,
|
|
284
297
|
verbose_logging=verbose_logging,
|
|
298
|
+
exit_event=EventType.PYTHON_API_RUN_SIMULATION_LEAVE,
|
|
285
299
|
)
|
|
286
300
|
|
|
287
301
|
|
|
@@ -365,6 +379,7 @@ def _main_loop(
|
|
|
365
379
|
is_app: bool,
|
|
366
380
|
enable_tf_gpu_growth: bool,
|
|
367
381
|
run: Run,
|
|
382
|
+
exit_event: EventType,
|
|
368
383
|
flwr_dir: Optional[str] = None,
|
|
369
384
|
client_app: Optional[ClientApp] = None,
|
|
370
385
|
client_app_attr: Optional[str] = None,
|
|
@@ -372,7 +387,7 @@ def _main_loop(
|
|
|
372
387
|
server_app_attr: Optional[str] = None,
|
|
373
388
|
server_app_run_config: Optional[UserConfig] = None,
|
|
374
389
|
) -> None:
|
|
375
|
-
"""
|
|
390
|
+
"""Start ServerApp on a separate thread, then launch Simulation Engine."""
|
|
376
391
|
# Initialize StateFactory
|
|
377
392
|
state_factory = StateFactory(":flwr-in-memory-state:")
|
|
378
393
|
|
|
@@ -380,6 +395,7 @@ def _main_loop(
|
|
|
380
395
|
# A Threading event to indicate if an exception was raised in the ServerApp thread
|
|
381
396
|
server_app_thread_has_exception = threading.Event()
|
|
382
397
|
serverapp_th = None
|
|
398
|
+
success = True
|
|
383
399
|
try:
|
|
384
400
|
# Register run
|
|
385
401
|
log(DEBUG, "Pre-registering run with id %s", run.run_id)
|
|
@@ -403,8 +419,7 @@ def _main_loop(
|
|
|
403
419
|
enable_tf_gpu_growth=enable_tf_gpu_growth,
|
|
404
420
|
)
|
|
405
421
|
|
|
406
|
-
#
|
|
407
|
-
event(EventType.RUN_SUPERLINK_ENTER)
|
|
422
|
+
# Start Simulation Engine
|
|
408
423
|
vce.start_vce(
|
|
409
424
|
num_supernodes=num_supernodes,
|
|
410
425
|
client_app_attr=client_app_attr,
|
|
@@ -422,13 +437,13 @@ def _main_loop(
|
|
|
422
437
|
except Exception as ex:
|
|
423
438
|
log(ERROR, "An exception occurred !! %s", ex)
|
|
424
439
|
log(ERROR, traceback.format_exc())
|
|
440
|
+
success = False
|
|
425
441
|
raise RuntimeError("An error was encountered. Ending simulation.") from ex
|
|
426
442
|
|
|
427
443
|
finally:
|
|
428
444
|
# Trigger stop event
|
|
429
445
|
f_stop.set()
|
|
430
|
-
|
|
431
|
-
event(EventType.RUN_SUPERLINK_LEAVE)
|
|
446
|
+
event(exit_event, event_details={"success": success})
|
|
432
447
|
if serverapp_th:
|
|
433
448
|
serverapp_th.join()
|
|
434
449
|
if server_app_thread_has_exception.is_set():
|
|
@@ -440,6 +455,7 @@ def _main_loop(
|
|
|
440
455
|
# pylint: disable=too-many-arguments,too-many-locals
|
|
441
456
|
def _run_simulation(
|
|
442
457
|
num_supernodes: int,
|
|
458
|
+
exit_event: EventType,
|
|
443
459
|
client_app: Optional[ClientApp] = None,
|
|
444
460
|
server_app: Optional[ServerApp] = None,
|
|
445
461
|
backend_name: str = "ray",
|
|
@@ -506,6 +522,7 @@ def _run_simulation(
|
|
|
506
522
|
is_app,
|
|
507
523
|
enable_tf_gpu_growth,
|
|
508
524
|
run,
|
|
525
|
+
exit_event,
|
|
509
526
|
flwr_dir,
|
|
510
527
|
client_app,
|
|
511
528
|
client_app_attr,
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# Copyright 2024 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 SuperExec service."""
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
# Copyright 2024 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 SuperExec service."""
|
|
16
|
-
|
|
17
|
-
from .app import run_superexec as run_superexec
|
|
18
|
-
|
|
19
|
-
__all__ = [
|
|
20
|
-
"run_superexec",
|
|
21
|
-
]
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/build.py
RENAMED
|
File without changes
|
{flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/config_utils.py
RENAMED
|
File without changes
|
{flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/example.py
RENAMED
|
File without changes
|
{flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/install.py
RENAMED
|
File without changes
|
{flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/__init__.py
RENAMED
|
File without changes
|
{flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/new/new.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/run/__init__.py
RENAMED
|
File without changes
|
{flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/run/run.py
RENAMED
|
File without changes
|
{flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/cli/utils.py
RENAMED
|
File without changes
|
{flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/app.py
RENAMED
|
File without changes
|
{flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/client.py
RENAMED
|
File without changes
|
{flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/client_app.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{flwr_nightly-1.11.0.dev20240828 → flwr_nightly-1.11.0.dev20240829}/src/py/flwr/client/heartbeat.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|