flwr-nightly 1.14.0.dev20241126__tar.gz → 1.14.0.dev20241202__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.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/PKG-INFO +1 -1
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/pyproject.toml +1 -1
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/pyproject.baseline.toml.tpl +1 -1
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/pyproject.flowertune.toml.tpl +1 -1
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/pyproject.huggingface.toml.tpl +1 -1
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/pyproject.jax.toml.tpl +1 -1
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/pyproject.mlx.toml.tpl +1 -1
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/pyproject.numpy.toml.tpl +1 -1
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/pyproject.pytorch.toml.tpl +1 -1
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/pyproject.sklearn.toml.tpl +1 -1
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/pyproject.tensorflow.toml.tpl +1 -1
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/app.py +2 -4
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/fleet/grpc_rere/server_interceptor.py +12 -11
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/linkstate/sqlite_linkstate.py +0 -3
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/LICENSE +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/README.md +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/app.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/build.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/config_utils.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/example.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/install.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/log.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/ls.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/new.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/.gitignore.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/LICENSE.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/README.baseline.md.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/README.flowertune.md.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/README.md.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/__init__.baseline.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/__init__.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/client.baseline.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/client.huggingface.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/client.jax.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/client.mlx.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/client.numpy.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/client.pytorch.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/client.sklearn.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/client.tensorflow.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/dataset.baseline.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/flwr_tune/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/flwr_tune/client_app.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/flwr_tune/dataset.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/flwr_tune/models.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/flwr_tune/server_app.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/flwr_tune/strategy.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/model.baseline.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/server.baseline.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/server.huggingface.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/server.jax.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/server.mlx.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/server.numpy.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/server.pytorch.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/server.sklearn.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/server.tensorflow.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/strategy.baseline.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/task.huggingface.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/task.jax.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/task.mlx.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/task.numpy.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/task.pytorch.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/task.sklearn.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/task.tensorflow.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/templates/app/code/utils.baseline.py.tpl +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/run/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/run/run.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/utils.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/app.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/client.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/client_app.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/clientapp/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/clientapp/app.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/clientapp/clientappio_servicer.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/clientapp/utils.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/dpfedavg_numpy_client.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/grpc_adapter_client/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/grpc_adapter_client/connection.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/grpc_client/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/grpc_client/connection.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/grpc_rere_client/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/grpc_rere_client/client_interceptor.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/grpc_rere_client/connection.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/grpc_rere_client/grpc_adapter.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/heartbeat.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/message_handler/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/message_handler/message_handler.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/message_handler/task_handler.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/mod/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/mod/centraldp_mods.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/mod/comms_mods.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/mod/localdp_mod.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/mod/secure_aggregation/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/mod/secure_aggregation/secagg_mod.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/mod/secure_aggregation/secaggplus_mod.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/mod/utils.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/nodestate/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/nodestate/in_memory_nodestate.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/nodestate/nodestate.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/nodestate/nodestate_factory.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/numpy_client.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/rest_client/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/rest_client/connection.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/run_info_store.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/supernode/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/supernode/app.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/typing.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/address.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/args.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/config.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/constant.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/context.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/date.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/differential_privacy.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/differential_privacy_constants.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/dp.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/exit_handlers.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/grpc.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/logger.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/message.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/object_ref.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/parameter.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/pyproject.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/record/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/record/configsrecord.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/record/conversion_utils.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/record/metricsrecord.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/record/parametersrecord.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/record/recordset.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/record/typeddict.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/recordset_compat.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/retry_invoker.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/secure_aggregation/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/secure_aggregation/crypto/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/secure_aggregation/crypto/shamir.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/secure_aggregation/crypto/symmetric_encryption.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/secure_aggregation/ndarrays_arithmetic.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/secure_aggregation/quantization.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/secure_aggregation/secaggplus_constants.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/secure_aggregation/secaggplus_utils.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/serde.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/telemetry.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/typing.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/version.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/clientappio_pb2.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/clientappio_pb2.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/clientappio_pb2_grpc.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/clientappio_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/common_pb2.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/common_pb2.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/common_pb2_grpc.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/common_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/control_pb2.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/control_pb2.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/control_pb2_grpc.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/control_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/error_pb2.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/error_pb2.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/error_pb2_grpc.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/error_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/exec_pb2.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/exec_pb2.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/exec_pb2_grpc.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/exec_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/fab_pb2.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/fab_pb2.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/fab_pb2_grpc.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/fab_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/fleet_pb2.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/fleet_pb2.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/fleet_pb2_grpc.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/fleet_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/grpcadapter_pb2.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/grpcadapter_pb2.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/grpcadapter_pb2_grpc.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/grpcadapter_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/log_pb2.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/log_pb2.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/log_pb2_grpc.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/log_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/message_pb2.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/message_pb2.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/message_pb2_grpc.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/message_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/node_pb2.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/node_pb2.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/node_pb2_grpc.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/node_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/recordset_pb2.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/recordset_pb2.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/recordset_pb2_grpc.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/recordset_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/run_pb2.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/run_pb2.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/run_pb2_grpc.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/run_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/serverappio_pb2.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/serverappio_pb2.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/serverappio_pb2_grpc.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/serverappio_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/simulationio_pb2.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/simulationio_pb2.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/simulationio_pb2_grpc.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/simulationio_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/task_pb2.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/task_pb2.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/task_pb2_grpc.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/task_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/transport_pb2.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/transport_pb2.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/transport_pb2_grpc.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/transport_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/py.typed +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/client_manager.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/client_proxy.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/compat/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/compat/app.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/compat/app_utils.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/compat/driver_client_proxy.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/compat/legacy_context.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/criterion.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/driver/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/driver/driver.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/driver/grpc_driver.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/driver/inmemory_driver.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/history.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/run_serverapp.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/server.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/server_app.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/server_config.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/serverapp/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/serverapp/app.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/serverapp_components.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/strategy/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/strategy/aggregate.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/strategy/bulyan.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/strategy/dp_adaptive_clipping.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/strategy/dp_fixed_clipping.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/strategy/dpfedavg_adaptive.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/strategy/dpfedavg_fixed.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/strategy/fault_tolerant_fedavg.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/strategy/fedadagrad.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/strategy/fedadam.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/strategy/fedavg.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/strategy/fedavg_android.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/strategy/fedavgm.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/strategy/fedmedian.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/strategy/fedopt.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/strategy/fedprox.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/strategy/fedtrimmedavg.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/strategy/fedxgb_bagging.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/strategy/fedxgb_cyclic.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/strategy/fedxgb_nn_avg.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/strategy/fedyogi.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/strategy/krum.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/strategy/qfedavg.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/strategy/strategy.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/driver/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/driver/serverappio_grpc.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/driver/serverappio_servicer.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/ffs/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/ffs/disk_ffs.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/ffs/ffs.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/ffs/ffs_factory.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/fleet/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/fleet/grpc_adapter/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/fleet/grpc_adapter/grpc_adapter_servicer.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/fleet/grpc_bidi/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/fleet/grpc_bidi/flower_service_servicer.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/fleet/grpc_bidi/grpc_bridge.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/fleet/grpc_bidi/grpc_client_proxy.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/fleet/grpc_bidi/grpc_server.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/fleet/grpc_rere/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/fleet/grpc_rere/fleet_servicer.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/fleet/message_handler/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/fleet/message_handler/message_handler.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/fleet/rest_rere/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/fleet/rest_rere/rest_api.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/fleet/vce/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/fleet/vce/backend/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/fleet/vce/backend/backend.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/fleet/vce/backend/raybackend.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/fleet/vce/vce_api.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/linkstate/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/linkstate/in_memory_linkstate.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/linkstate/linkstate.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/linkstate/linkstate_factory.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/linkstate/utils.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/simulation/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/simulation/simulationio_grpc.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/superlink/simulation/simulationio_servicer.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/typing.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/utils/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/utils/tensorboard.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/utils/validator.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/workflow/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/workflow/constant.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/workflow/default_workflows.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/workflow/secure_aggregation/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/workflow/secure_aggregation/secagg_workflow.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/workflow/secure_aggregation/secaggplus_workflow.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/simulation/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/simulation/app.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/simulation/legacy_app.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/simulation/ray_transport/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/simulation/ray_transport/ray_actor.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/simulation/ray_transport/ray_client_proxy.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/simulation/ray_transport/utils.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/simulation/run_simulation.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/simulation/simulationio_connection.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/superexec/__init__.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/superexec/app.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/superexec/deployment.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/superexec/exec_grpc.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/superexec/exec_servicer.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/superexec/executor.py +0 -0
- {flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/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.14.0.
|
|
7
|
+
version = "1.14.0.dev20241202"
|
|
8
8
|
description = "Flower: A Friendly Federated AI Framework"
|
|
9
9
|
license = "Apache-2.0"
|
|
10
10
|
authors = ["The Flower Authors <hello@flower.ai>"]
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/server/app.py
RENAMED
|
@@ -66,7 +66,6 @@ from flwr.proto.fleet_pb2_grpc import ( # pylint: disable=E0611
|
|
|
66
66
|
from flwr.proto.grpcadapter_pb2_grpc import add_GrpcAdapterServicer_to_server
|
|
67
67
|
from flwr.superexec.app import load_executor
|
|
68
68
|
from flwr.superexec.exec_grpc import run_exec_api_grpc
|
|
69
|
-
from flwr.superexec.simulation import SimulationEngine
|
|
70
69
|
|
|
71
70
|
from .client_manager import ClientManager
|
|
72
71
|
from .history import History
|
|
@@ -269,8 +268,7 @@ def run_superlink() -> None:
|
|
|
269
268
|
|
|
270
269
|
# Determine Exec plugin
|
|
271
270
|
# If simulation is used, don't start ServerAppIo and Fleet APIs
|
|
272
|
-
sim_exec =
|
|
273
|
-
|
|
271
|
+
sim_exec = executor.__class__.__qualname__ == "SimulationEngine"
|
|
274
272
|
bckg_threads = []
|
|
275
273
|
|
|
276
274
|
if sim_exec:
|
|
@@ -362,7 +360,7 @@ def run_superlink() -> None:
|
|
|
362
360
|
"Node authentication enabled with %d known public keys",
|
|
363
361
|
len(node_public_keys),
|
|
364
362
|
)
|
|
365
|
-
interceptors = [AuthenticateServerInterceptor(
|
|
363
|
+
interceptors = [AuthenticateServerInterceptor(state_factory)]
|
|
366
364
|
|
|
367
365
|
fleet_server = _run_fleet_api_grpc_rere(
|
|
368
366
|
address=fleet_address,
|
|
@@ -45,7 +45,7 @@ from flwr.proto.fleet_pb2 import ( # pylint: disable=E0611
|
|
|
45
45
|
)
|
|
46
46
|
from flwr.proto.node_pb2 import Node # pylint: disable=E0611
|
|
47
47
|
from flwr.proto.run_pb2 import GetRunRequest, GetRunResponse # pylint: disable=E0611
|
|
48
|
-
from flwr.server.superlink.linkstate import
|
|
48
|
+
from flwr.server.superlink.linkstate import LinkStateFactory
|
|
49
49
|
|
|
50
50
|
_PUBLIC_KEY_HEADER = "public-key"
|
|
51
51
|
_AUTH_TOKEN_HEADER = "auth-token"
|
|
@@ -84,15 +84,16 @@ def _get_value_from_tuples(
|
|
|
84
84
|
class AuthenticateServerInterceptor(grpc.ServerInterceptor): # type: ignore
|
|
85
85
|
"""Server interceptor for node authentication."""
|
|
86
86
|
|
|
87
|
-
def __init__(self,
|
|
88
|
-
self.
|
|
87
|
+
def __init__(self, state_factory: LinkStateFactory):
|
|
88
|
+
self.state_factory = state_factory
|
|
89
|
+
state = self.state_factory.state()
|
|
89
90
|
|
|
90
91
|
self.node_public_keys = state.get_node_public_keys()
|
|
91
92
|
if len(self.node_public_keys) == 0:
|
|
92
93
|
log(WARNING, "Authentication enabled, but no known public keys configured")
|
|
93
94
|
|
|
94
|
-
private_key =
|
|
95
|
-
public_key =
|
|
95
|
+
private_key = state.get_server_private_key()
|
|
96
|
+
public_key = state.get_server_public_key()
|
|
96
97
|
|
|
97
98
|
if private_key is None or public_key is None:
|
|
98
99
|
raise ValueError("Error loading authentication keys")
|
|
@@ -154,7 +155,7 @@ class AuthenticateServerInterceptor(grpc.ServerInterceptor): # type: ignore
|
|
|
154
155
|
context.abort(grpc.StatusCode.UNAUTHENTICATED, "Access denied")
|
|
155
156
|
|
|
156
157
|
# Verify node_id
|
|
157
|
-
node_id = self.state.get_node_id(node_public_key_bytes)
|
|
158
|
+
node_id = self.state_factory.state().get_node_id(node_public_key_bytes)
|
|
158
159
|
|
|
159
160
|
if not self._verify_node_id(node_id, request):
|
|
160
161
|
context.abort(grpc.StatusCode.UNAUTHENTICATED, "Access denied")
|
|
@@ -186,7 +187,7 @@ class AuthenticateServerInterceptor(grpc.ServerInterceptor): # type: ignore
|
|
|
186
187
|
return False
|
|
187
188
|
return request.task_res_list[0].task.producer.node_id == node_id
|
|
188
189
|
if isinstance(request, GetRunRequest):
|
|
189
|
-
return node_id in self.state.get_nodes(request.run_id)
|
|
190
|
+
return node_id in self.state_factory.state().get_nodes(request.run_id)
|
|
190
191
|
return request.node.node_id == node_id
|
|
191
192
|
|
|
192
193
|
def _verify_hmac(
|
|
@@ -210,17 +211,17 @@ class AuthenticateServerInterceptor(grpc.ServerInterceptor): # type: ignore
|
|
|
210
211
|
),
|
|
211
212
|
)
|
|
212
213
|
)
|
|
213
|
-
|
|
214
|
-
node_id =
|
|
214
|
+
state = self.state_factory.state()
|
|
215
|
+
node_id = state.get_node_id(public_key_bytes)
|
|
215
216
|
|
|
216
217
|
# Handle `CreateNode` here instead of calling the default method handler
|
|
217
218
|
# Return previously assigned `node_id` for the provided `public_key`
|
|
218
219
|
if node_id is not None:
|
|
219
|
-
|
|
220
|
+
state.acknowledge_ping(node_id, request.ping_interval)
|
|
220
221
|
return CreateNodeResponse(node=Node(node_id=node_id, anonymous=False))
|
|
221
222
|
|
|
222
223
|
# No `node_id` exists for the provided `public_key`
|
|
223
224
|
# Handle `CreateNode` here instead of calling the default method handler
|
|
224
225
|
# Note: the innermost `CreateNode` method will never be called
|
|
225
|
-
node_id =
|
|
226
|
+
node_id = state.create_node(request.ping_interval, public_key_bytes)
|
|
226
227
|
return CreateNodeResponse(node=Node(node_id=node_id, anonymous=False))
|
|
@@ -19,7 +19,6 @@
|
|
|
19
19
|
import json
|
|
20
20
|
import re
|
|
21
21
|
import sqlite3
|
|
22
|
-
import threading
|
|
23
22
|
import time
|
|
24
23
|
from collections.abc import Sequence
|
|
25
24
|
from logging import DEBUG, ERROR, WARNING
|
|
@@ -183,7 +182,6 @@ class SqliteLinkState(LinkState): # pylint: disable=R0904
|
|
|
183
182
|
"""
|
|
184
183
|
self.database_path = database_path
|
|
185
184
|
self.conn: Optional[sqlite3.Connection] = None
|
|
186
|
-
self.lock = threading.RLock()
|
|
187
185
|
|
|
188
186
|
def initialize(self, log_queries: bool = False) -> list[tuple[str]]:
|
|
189
187
|
"""Create tables if they don't exist yet.
|
|
@@ -216,7 +214,6 @@ class SqliteLinkState(LinkState): # pylint: disable=R0904
|
|
|
216
214
|
cur.execute(SQL_CREATE_TABLE_PUBLIC_KEY)
|
|
217
215
|
cur.execute(SQL_CREATE_INDEX_ONLINE_UNTIL)
|
|
218
216
|
res = cur.execute("SELECT name FROM sqlite_schema;")
|
|
219
|
-
|
|
220
217
|
return res.fetchall()
|
|
221
218
|
|
|
222
219
|
def query(
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/build.py
RENAMED
|
File without changes
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/config_utils.py
RENAMED
|
File without changes
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/example.py
RENAMED
|
File without changes
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/install.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/new/__init__.py
RENAMED
|
File without changes
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/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
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/run/__init__.py
RENAMED
|
File without changes
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/run/run.py
RENAMED
|
File without changes
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/cli/utils.py
RENAMED
|
File without changes
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/__init__.py
RENAMED
|
File without changes
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/app.py
RENAMED
|
File without changes
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/client.py
RENAMED
|
File without changes
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/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
|
|
File without changes
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/heartbeat.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
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/mod/utils.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
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/client/typing.py
RENAMED
|
File without changes
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/__init__.py
RENAMED
|
File without changes
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/address.py
RENAMED
|
File without changes
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/args.py
RENAMED
|
File without changes
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/config.py
RENAMED
|
File without changes
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/constant.py
RENAMED
|
File without changes
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/context.py
RENAMED
|
File without changes
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/date.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/dp.py
RENAMED
|
File without changes
|
|
File without changes
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/grpc.py
RENAMED
|
File without changes
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/logger.py
RENAMED
|
File without changes
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/message.py
RENAMED
|
File without changes
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/object_ref.py
RENAMED
|
File without changes
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/parameter.py
RENAMED
|
File without changes
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/pyproject.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
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/serde.py
RENAMED
|
File without changes
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/telemetry.py
RENAMED
|
File without changes
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/typing.py
RENAMED
|
File without changes
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/common/version.py
RENAMED
|
File without changes
|
{flwr_nightly-1.14.0.dev20241126 → flwr_nightly-1.14.0.dev20241202}/src/py/flwr/proto/__init__.py
RENAMED
|
File without changes
|