flwr 1.23.0__py3-none-any.whl → 1.25.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (339) hide show
  1. flwr/__init__.py +16 -5
  2. flwr/app/error.py +2 -2
  3. flwr/app/exception.py +3 -3
  4. flwr/cli/app.py +19 -0
  5. flwr/cli/{new/templates → app_cmd}/__init__.py +9 -1
  6. flwr/cli/app_cmd/publish.py +285 -0
  7. flwr/cli/app_cmd/review.py +262 -0
  8. flwr/cli/auth_plugin/auth_plugin.py +4 -5
  9. flwr/cli/auth_plugin/noop_auth_plugin.py +54 -11
  10. flwr/cli/auth_plugin/oidc_cli_plugin.py +32 -9
  11. flwr/cli/build.py +60 -18
  12. flwr/cli/cli_account_auth_interceptor.py +24 -7
  13. flwr/cli/config_utils.py +101 -13
  14. flwr/cli/{new/templates/app/code/flwr_tune → federation}/__init__.py +10 -1
  15. flwr/cli/federation/ls.py +140 -0
  16. flwr/cli/federation/show.py +318 -0
  17. flwr/cli/install.py +91 -13
  18. flwr/cli/log.py +52 -9
  19. flwr/cli/login/login.py +7 -4
  20. flwr/cli/ls.py +211 -130
  21. flwr/cli/new/new.py +123 -331
  22. flwr/cli/pull.py +10 -5
  23. flwr/cli/run/run.py +71 -29
  24. flwr/cli/run_utils.py +148 -0
  25. flwr/cli/stop.py +26 -8
  26. flwr/cli/supernode/ls.py +25 -12
  27. flwr/cli/supernode/register.py +9 -4
  28. flwr/cli/supernode/unregister.py +5 -3
  29. flwr/cli/utils.py +239 -16
  30. flwr/client/__init__.py +1 -1
  31. flwr/client/dpfedavg_numpy_client.py +4 -1
  32. flwr/client/grpc_adapter_client/connection.py +8 -9
  33. flwr/client/grpc_rere_client/connection.py +16 -14
  34. flwr/client/grpc_rere_client/grpc_adapter.py +6 -2
  35. flwr/client/grpc_rere_client/node_auth_client_interceptor.py +2 -1
  36. flwr/client/message_handler/message_handler.py +2 -2
  37. flwr/client/mod/secure_aggregation/secaggplus_mod.py +3 -3
  38. flwr/client/numpy_client.py +1 -1
  39. flwr/client/rest_client/connection.py +18 -18
  40. flwr/client/run_info_store.py +4 -5
  41. flwr/client/typing.py +1 -1
  42. flwr/clientapp/client_app.py +9 -10
  43. flwr/clientapp/mod/centraldp_mods.py +16 -17
  44. flwr/clientapp/mod/localdp_mod.py +8 -9
  45. flwr/clientapp/typing.py +1 -1
  46. flwr/clientapp/utils.py +3 -3
  47. flwr/common/address.py +1 -2
  48. flwr/common/args.py +3 -4
  49. flwr/common/config.py +13 -16
  50. flwr/common/constant.py +5 -2
  51. flwr/common/differential_privacy.py +3 -4
  52. flwr/common/event_log_plugin/event_log_plugin.py +3 -4
  53. flwr/common/exit/exit.py +15 -2
  54. flwr/common/exit/exit_code.py +19 -0
  55. flwr/common/exit/exit_handler.py +6 -2
  56. flwr/common/exit/signal_handler.py +5 -5
  57. flwr/common/grpc.py +6 -6
  58. flwr/common/inflatable_protobuf_utils.py +1 -1
  59. flwr/common/inflatable_utils.py +38 -21
  60. flwr/common/logger.py +19 -19
  61. flwr/common/message.py +4 -4
  62. flwr/common/object_ref.py +7 -7
  63. flwr/common/record/array.py +3 -3
  64. flwr/common/record/arrayrecord.py +18 -30
  65. flwr/common/record/configrecord.py +3 -3
  66. flwr/common/record/recorddict.py +5 -5
  67. flwr/common/record/typeddict.py +9 -2
  68. flwr/common/recorddict_compat.py +7 -10
  69. flwr/common/retry_invoker.py +20 -20
  70. flwr/common/secure_aggregation/ndarrays_arithmetic.py +3 -3
  71. flwr/common/serde.py +11 -4
  72. flwr/common/serde_utils.py +2 -2
  73. flwr/common/telemetry.py +9 -5
  74. flwr/common/typing.py +58 -37
  75. flwr/compat/client/app.py +38 -37
  76. flwr/compat/client/grpc_client/connection.py +11 -11
  77. flwr/compat/server/app.py +5 -6
  78. flwr/proto/appio_pb2.py +13 -3
  79. flwr/proto/appio_pb2.pyi +134 -65
  80. flwr/proto/appio_pb2_grpc.py +20 -0
  81. flwr/proto/appio_pb2_grpc.pyi +27 -0
  82. flwr/proto/clientappio_pb2.py +17 -7
  83. flwr/proto/clientappio_pb2.pyi +15 -0
  84. flwr/proto/clientappio_pb2_grpc.py +206 -40
  85. flwr/proto/clientappio_pb2_grpc.pyi +168 -53
  86. flwr/proto/control_pb2.py +71 -52
  87. flwr/proto/control_pb2.pyi +277 -111
  88. flwr/proto/control_pb2_grpc.py +249 -40
  89. flwr/proto/control_pb2_grpc.pyi +185 -52
  90. flwr/proto/error_pb2.py +13 -3
  91. flwr/proto/error_pb2.pyi +24 -6
  92. flwr/proto/error_pb2_grpc.py +20 -0
  93. flwr/proto/error_pb2_grpc.pyi +27 -0
  94. flwr/proto/fab_pb2.py +14 -4
  95. flwr/proto/fab_pb2.pyi +59 -31
  96. flwr/proto/fab_pb2_grpc.py +20 -0
  97. flwr/proto/fab_pb2_grpc.pyi +27 -0
  98. flwr/proto/federation_pb2.py +38 -0
  99. flwr/proto/federation_pb2.pyi +56 -0
  100. flwr/proto/federation_pb2_grpc.py +24 -0
  101. flwr/proto/federation_pb2_grpc.pyi +31 -0
  102. flwr/proto/fleet_pb2.py +24 -14
  103. flwr/proto/fleet_pb2.pyi +141 -61
  104. flwr/proto/fleet_pb2_grpc.py +189 -48
  105. flwr/proto/fleet_pb2_grpc.pyi +175 -61
  106. flwr/proto/grpcadapter_pb2.py +14 -4
  107. flwr/proto/grpcadapter_pb2.pyi +38 -16
  108. flwr/proto/grpcadapter_pb2_grpc.py +35 -4
  109. flwr/proto/grpcadapter_pb2_grpc.pyi +38 -7
  110. flwr/proto/heartbeat_pb2.py +17 -7
  111. flwr/proto/heartbeat_pb2.pyi +51 -22
  112. flwr/proto/heartbeat_pb2_grpc.py +20 -0
  113. flwr/proto/heartbeat_pb2_grpc.pyi +27 -0
  114. flwr/proto/log_pb2.py +13 -3
  115. flwr/proto/log_pb2.pyi +34 -11
  116. flwr/proto/log_pb2_grpc.py +20 -0
  117. flwr/proto/log_pb2_grpc.pyi +27 -0
  118. flwr/proto/message_pb2.py +15 -5
  119. flwr/proto/message_pb2.pyi +154 -86
  120. flwr/proto/message_pb2_grpc.py +20 -0
  121. flwr/proto/message_pb2_grpc.pyi +27 -0
  122. flwr/proto/node_pb2.py +15 -5
  123. flwr/proto/node_pb2.pyi +50 -25
  124. flwr/proto/node_pb2_grpc.py +20 -0
  125. flwr/proto/node_pb2_grpc.pyi +27 -0
  126. flwr/proto/recorddict_pb2.py +13 -3
  127. flwr/proto/recorddict_pb2.pyi +184 -107
  128. flwr/proto/recorddict_pb2_grpc.py +20 -0
  129. flwr/proto/recorddict_pb2_grpc.pyi +27 -0
  130. flwr/proto/run_pb2.py +40 -31
  131. flwr/proto/run_pb2.pyi +158 -84
  132. flwr/proto/run_pb2_grpc.py +20 -0
  133. flwr/proto/run_pb2_grpc.pyi +27 -0
  134. flwr/proto/serverappio_pb2.py +13 -3
  135. flwr/proto/serverappio_pb2.pyi +32 -8
  136. flwr/proto/serverappio_pb2_grpc.py +246 -65
  137. flwr/proto/serverappio_pb2_grpc.pyi +221 -85
  138. flwr/proto/simulationio_pb2.py +16 -8
  139. flwr/proto/simulationio_pb2.pyi +15 -0
  140. flwr/proto/simulationio_pb2_grpc.py +162 -41
  141. flwr/proto/simulationio_pb2_grpc.pyi +149 -55
  142. flwr/proto/transport_pb2.py +20 -10
  143. flwr/proto/transport_pb2.pyi +249 -160
  144. flwr/proto/transport_pb2_grpc.py +35 -4
  145. flwr/proto/transport_pb2_grpc.pyi +38 -8
  146. flwr/server/app.py +39 -17
  147. flwr/server/client_manager.py +4 -5
  148. flwr/server/client_proxy.py +10 -11
  149. flwr/server/compat/app.py +4 -5
  150. flwr/server/compat/app_utils.py +2 -1
  151. flwr/server/compat/grid_client_proxy.py +10 -12
  152. flwr/server/compat/legacy_context.py +3 -4
  153. flwr/server/fleet_event_log_interceptor.py +2 -1
  154. flwr/server/grid/grid.py +2 -3
  155. flwr/server/grid/grpc_grid.py +10 -8
  156. flwr/server/grid/inmemory_grid.py +4 -4
  157. flwr/server/run_serverapp.py +2 -3
  158. flwr/server/server.py +34 -39
  159. flwr/server/server_app.py +7 -8
  160. flwr/server/server_config.py +1 -2
  161. flwr/server/serverapp/app.py +34 -28
  162. flwr/server/serverapp_components.py +4 -5
  163. flwr/server/strategy/aggregate.py +9 -8
  164. flwr/server/strategy/bulyan.py +13 -11
  165. flwr/server/strategy/dp_adaptive_clipping.py +16 -20
  166. flwr/server/strategy/dp_fixed_clipping.py +12 -17
  167. flwr/server/strategy/dpfedavg_adaptive.py +3 -4
  168. flwr/server/strategy/dpfedavg_fixed.py +6 -10
  169. flwr/server/strategy/fault_tolerant_fedavg.py +14 -13
  170. flwr/server/strategy/fedadagrad.py +18 -14
  171. flwr/server/strategy/fedadam.py +16 -14
  172. flwr/server/strategy/fedavg.py +16 -17
  173. flwr/server/strategy/fedavg_android.py +15 -15
  174. flwr/server/strategy/fedavgm.py +21 -18
  175. flwr/server/strategy/fedmedian.py +2 -3
  176. flwr/server/strategy/fedopt.py +11 -10
  177. flwr/server/strategy/fedprox.py +10 -9
  178. flwr/server/strategy/fedtrimmedavg.py +12 -11
  179. flwr/server/strategy/fedxgb_bagging.py +13 -11
  180. flwr/server/strategy/fedxgb_cyclic.py +6 -6
  181. flwr/server/strategy/fedxgb_nn_avg.py +4 -4
  182. flwr/server/strategy/fedyogi.py +16 -14
  183. flwr/server/strategy/krum.py +12 -11
  184. flwr/server/strategy/qfedavg.py +16 -15
  185. flwr/server/strategy/strategy.py +6 -9
  186. flwr/server/superlink/fleet/grpc_adapter/grpc_adapter_servicer.py +2 -1
  187. flwr/server/superlink/fleet/grpc_bidi/flower_service_servicer.py +1 -2
  188. flwr/server/superlink/fleet/grpc_bidi/grpc_bridge.py +3 -4
  189. flwr/server/superlink/fleet/grpc_bidi/grpc_client_proxy.py +10 -12
  190. flwr/server/superlink/fleet/grpc_bidi/grpc_server.py +1 -3
  191. flwr/server/superlink/fleet/grpc_rere/fleet_servicer.py +4 -4
  192. flwr/server/superlink/fleet/grpc_rere/node_auth_server_interceptor.py +3 -2
  193. flwr/server/superlink/fleet/message_handler/message_handler.py +75 -30
  194. flwr/server/superlink/fleet/rest_rere/rest_api.py +2 -2
  195. flwr/server/superlink/fleet/vce/backend/backend.py +1 -1
  196. flwr/server/superlink/fleet/vce/backend/raybackend.py +5 -5
  197. flwr/server/superlink/fleet/vce/vce_api.py +15 -9
  198. flwr/server/superlink/linkstate/in_memory_linkstate.py +148 -149
  199. flwr/server/superlink/linkstate/linkstate.py +91 -43
  200. flwr/server/superlink/linkstate/linkstate_factory.py +22 -5
  201. flwr/server/superlink/linkstate/sqlite_linkstate.py +502 -436
  202. flwr/server/superlink/linkstate/utils.py +6 -6
  203. flwr/server/superlink/serverappio/serverappio_grpc.py +1 -2
  204. flwr/server/superlink/serverappio/serverappio_servicer.py +26 -21
  205. flwr/server/superlink/simulation/simulationio_grpc.py +1 -2
  206. flwr/server/superlink/simulation/simulationio_servicer.py +18 -13
  207. flwr/server/superlink/utils.py +4 -6
  208. flwr/server/typing.py +1 -1
  209. flwr/server/utils/tensorboard.py +15 -8
  210. flwr/server/workflow/default_workflows.py +5 -5
  211. flwr/server/workflow/secure_aggregation/secagg_workflow.py +2 -4
  212. flwr/server/workflow/secure_aggregation/secaggplus_workflow.py +8 -8
  213. flwr/serverapp/strategy/bulyan.py +16 -15
  214. flwr/serverapp/strategy/dp_adaptive_clipping.py +12 -11
  215. flwr/serverapp/strategy/dp_fixed_clipping.py +11 -14
  216. flwr/serverapp/strategy/fedadagrad.py +10 -11
  217. flwr/serverapp/strategy/fedadam.py +10 -11
  218. flwr/serverapp/strategy/fedavg.py +9 -10
  219. flwr/serverapp/strategy/fedavgm.py +17 -16
  220. flwr/serverapp/strategy/fedmedian.py +2 -2
  221. flwr/serverapp/strategy/fedopt.py +10 -11
  222. flwr/serverapp/strategy/fedprox.py +7 -8
  223. flwr/serverapp/strategy/fedtrimmedavg.py +9 -9
  224. flwr/serverapp/strategy/fedxgb_bagging.py +3 -3
  225. flwr/serverapp/strategy/fedxgb_cyclic.py +9 -9
  226. flwr/serverapp/strategy/fedyogi.py +9 -11
  227. flwr/serverapp/strategy/krum.py +7 -7
  228. flwr/serverapp/strategy/multikrum.py +9 -9
  229. flwr/serverapp/strategy/qfedavg.py +17 -16
  230. flwr/serverapp/strategy/strategy.py +6 -9
  231. flwr/serverapp/strategy/strategy_utils.py +7 -8
  232. flwr/simulation/app.py +46 -42
  233. flwr/simulation/legacy_app.py +12 -12
  234. flwr/simulation/ray_transport/ray_actor.py +10 -11
  235. flwr/simulation/ray_transport/ray_client_proxy.py +11 -12
  236. flwr/simulation/run_simulation.py +43 -43
  237. flwr/simulation/simulationio_connection.py +4 -4
  238. flwr/supercore/cli/flower_superexec.py +3 -4
  239. flwr/supercore/constant.py +34 -1
  240. flwr/supercore/corestate/corestate.py +24 -3
  241. flwr/supercore/corestate/in_memory_corestate.py +138 -0
  242. flwr/supercore/corestate/sqlite_corestate.py +157 -0
  243. flwr/supercore/ffs/disk_ffs.py +1 -2
  244. flwr/supercore/ffs/ffs.py +1 -2
  245. flwr/supercore/ffs/ffs_factory.py +1 -2
  246. flwr/{common → supercore}/heartbeat.py +20 -25
  247. flwr/supercore/object_store/in_memory_object_store.py +1 -2
  248. flwr/supercore/object_store/object_store.py +1 -2
  249. flwr/supercore/object_store/object_store_factory.py +1 -2
  250. flwr/supercore/object_store/sqlite_object_store.py +8 -7
  251. flwr/supercore/primitives/asymmetric.py +1 -1
  252. flwr/supercore/primitives/asymmetric_ed25519.py +11 -1
  253. flwr/supercore/sqlite_mixin.py +37 -34
  254. flwr/supercore/superexec/plugin/base_exec_plugin.py +1 -2
  255. flwr/supercore/superexec/plugin/exec_plugin.py +3 -3
  256. flwr/supercore/superexec/run_superexec.py +9 -13
  257. flwr/supercore/utils.py +190 -0
  258. flwr/superlink/artifact_provider/artifact_provider.py +1 -2
  259. flwr/superlink/auth_plugin/auth_plugin.py +6 -9
  260. flwr/superlink/auth_plugin/noop_auth_plugin.py +6 -9
  261. flwr/{cli/new/templates/app → superlink/federation}/__init__.py +10 -1
  262. flwr/superlink/federation/federation_manager.py +64 -0
  263. flwr/superlink/federation/noop_federation_manager.py +71 -0
  264. flwr/superlink/servicer/control/control_account_auth_interceptor.py +22 -13
  265. flwr/superlink/servicer/control/control_event_log_interceptor.py +7 -7
  266. flwr/superlink/servicer/control/control_grpc.py +7 -6
  267. flwr/superlink/servicer/control/control_license_interceptor.py +3 -3
  268. flwr/superlink/servicer/control/control_servicer.py +190 -23
  269. flwr/supernode/cli/flower_supernode.py +58 -3
  270. flwr/supernode/nodestate/in_memory_nodestate.py +121 -49
  271. flwr/supernode/nodestate/nodestate.py +52 -8
  272. flwr/supernode/nodestate/nodestate_factory.py +7 -4
  273. flwr/supernode/runtime/run_clientapp.py +41 -22
  274. flwr/supernode/servicer/clientappio/clientappio_servicer.py +46 -10
  275. flwr/supernode/start_client_internal.py +165 -46
  276. {flwr-1.23.0.dist-info → flwr-1.25.0.dist-info}/METADATA +9 -11
  277. flwr-1.25.0.dist-info/RECORD +393 -0
  278. flwr/cli/new/templates/app/.gitignore.tpl +0 -163
  279. flwr/cli/new/templates/app/LICENSE.tpl +0 -202
  280. flwr/cli/new/templates/app/README.baseline.md.tpl +0 -127
  281. flwr/cli/new/templates/app/README.flowertune.md.tpl +0 -68
  282. flwr/cli/new/templates/app/README.md.tpl +0 -37
  283. flwr/cli/new/templates/app/code/__init__.baseline.py.tpl +0 -1
  284. flwr/cli/new/templates/app/code/__init__.py +0 -15
  285. flwr/cli/new/templates/app/code/__init__.py.tpl +0 -1
  286. flwr/cli/new/templates/app/code/__init__.pytorch_legacy_api.py.tpl +0 -1
  287. flwr/cli/new/templates/app/code/client.baseline.py.tpl +0 -75
  288. flwr/cli/new/templates/app/code/client.huggingface.py.tpl +0 -93
  289. flwr/cli/new/templates/app/code/client.jax.py.tpl +0 -71
  290. flwr/cli/new/templates/app/code/client.mlx.py.tpl +0 -102
  291. flwr/cli/new/templates/app/code/client.numpy.py.tpl +0 -46
  292. flwr/cli/new/templates/app/code/client.pytorch.py.tpl +0 -80
  293. flwr/cli/new/templates/app/code/client.pytorch_legacy_api.py.tpl +0 -55
  294. flwr/cli/new/templates/app/code/client.sklearn.py.tpl +0 -108
  295. flwr/cli/new/templates/app/code/client.tensorflow.py.tpl +0 -82
  296. flwr/cli/new/templates/app/code/client.xgboost.py.tpl +0 -110
  297. flwr/cli/new/templates/app/code/dataset.baseline.py.tpl +0 -36
  298. flwr/cli/new/templates/app/code/flwr_tune/client_app.py.tpl +0 -92
  299. flwr/cli/new/templates/app/code/flwr_tune/dataset.py.tpl +0 -87
  300. flwr/cli/new/templates/app/code/flwr_tune/models.py.tpl +0 -56
  301. flwr/cli/new/templates/app/code/flwr_tune/server_app.py.tpl +0 -73
  302. flwr/cli/new/templates/app/code/flwr_tune/strategy.py.tpl +0 -78
  303. flwr/cli/new/templates/app/code/model.baseline.py.tpl +0 -66
  304. flwr/cli/new/templates/app/code/server.baseline.py.tpl +0 -43
  305. flwr/cli/new/templates/app/code/server.huggingface.py.tpl +0 -42
  306. flwr/cli/new/templates/app/code/server.jax.py.tpl +0 -39
  307. flwr/cli/new/templates/app/code/server.mlx.py.tpl +0 -41
  308. flwr/cli/new/templates/app/code/server.numpy.py.tpl +0 -38
  309. flwr/cli/new/templates/app/code/server.pytorch.py.tpl +0 -41
  310. flwr/cli/new/templates/app/code/server.pytorch_legacy_api.py.tpl +0 -31
  311. flwr/cli/new/templates/app/code/server.sklearn.py.tpl +0 -44
  312. flwr/cli/new/templates/app/code/server.tensorflow.py.tpl +0 -38
  313. flwr/cli/new/templates/app/code/server.xgboost.py.tpl +0 -56
  314. flwr/cli/new/templates/app/code/strategy.baseline.py.tpl +0 -1
  315. flwr/cli/new/templates/app/code/task.huggingface.py.tpl +0 -98
  316. flwr/cli/new/templates/app/code/task.jax.py.tpl +0 -57
  317. flwr/cli/new/templates/app/code/task.mlx.py.tpl +0 -102
  318. flwr/cli/new/templates/app/code/task.numpy.py.tpl +0 -7
  319. flwr/cli/new/templates/app/code/task.pytorch.py.tpl +0 -98
  320. flwr/cli/new/templates/app/code/task.pytorch_legacy_api.py.tpl +0 -111
  321. flwr/cli/new/templates/app/code/task.sklearn.py.tpl +0 -67
  322. flwr/cli/new/templates/app/code/task.tensorflow.py.tpl +0 -52
  323. flwr/cli/new/templates/app/code/task.xgboost.py.tpl +0 -67
  324. flwr/cli/new/templates/app/code/utils.baseline.py.tpl +0 -1
  325. flwr/cli/new/templates/app/pyproject.baseline.toml.tpl +0 -146
  326. flwr/cli/new/templates/app/pyproject.flowertune.toml.tpl +0 -80
  327. flwr/cli/new/templates/app/pyproject.huggingface.toml.tpl +0 -65
  328. flwr/cli/new/templates/app/pyproject.jax.toml.tpl +0 -52
  329. flwr/cli/new/templates/app/pyproject.mlx.toml.tpl +0 -56
  330. flwr/cli/new/templates/app/pyproject.numpy.toml.tpl +0 -49
  331. flwr/cli/new/templates/app/pyproject.pytorch.toml.tpl +0 -53
  332. flwr/cli/new/templates/app/pyproject.pytorch_legacy_api.toml.tpl +0 -53
  333. flwr/cli/new/templates/app/pyproject.sklearn.toml.tpl +0 -52
  334. flwr/cli/new/templates/app/pyproject.tensorflow.toml.tpl +0 -53
  335. flwr/cli/new/templates/app/pyproject.xgboost.toml.tpl +0 -61
  336. flwr/supercore/object_store/utils.py +0 -43
  337. flwr-1.23.0.dist-info/RECORD +0 -439
  338. {flwr-1.23.0.dist-info → flwr-1.25.0.dist-info}/WHEEL +0 -0
  339. {flwr-1.23.0.dist-info → flwr-1.25.0.dist-info}/entry_points.txt +0 -0
@@ -1,8 +1,24 @@
1
1
  """
2
2
  @generated by mypy-protobuf. Do not edit manually!
3
3
  isort:skip_file
4
+ Copyright 2022 Flower Labs GmbH. All Rights Reserved.
5
+
6
+ Licensed under the Apache License, Version 2.0 (the "License");
7
+ you may not use this file except in compliance with the License.
8
+ You may obtain a copy of the License at
9
+
10
+ http://www.apache.org/licenses/LICENSE-2.0
11
+
12
+ Unless required by applicable law or agreed to in writing, software
13
+ distributed under the License is distributed on an "AS IS" BASIS,
14
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ See the License for the specific language governing permissions and
16
+ limitations under the License.
17
+ ==============================================================================
4
18
  """
19
+
5
20
  import abc
21
+ import collections.abc
6
22
  import flwr.proto.appio_pb2
7
23
  import flwr.proto.fab_pb2
8
24
  import flwr.proto.heartbeat_pb2
@@ -11,218 +27,338 @@ import flwr.proto.message_pb2
11
27
  import flwr.proto.run_pb2
12
28
  import flwr.proto.serverappio_pb2
13
29
  import grpc
30
+ import grpc.aio
31
+ import typing
32
+
33
+ _T = typing.TypeVar("_T")
34
+
35
+ class _MaybeAsyncIterator(collections.abc.AsyncIterator[_T], collections.abc.Iterator[_T], metaclass=abc.ABCMeta): ...
36
+
37
+ class _ServicerContext(grpc.ServicerContext, grpc.aio.ServicerContext): # type: ignore[misc, type-arg]
38
+ ...
14
39
 
15
40
  class ServerAppIoStub:
16
- def __init__(self, channel: grpc.Channel) -> None: ...
41
+ def __init__(self, channel: typing.Union[grpc.Channel, grpc.aio.Channel]) -> None: ...
17
42
  ListAppsToLaunch: grpc.UnaryUnaryMultiCallable[
18
43
  flwr.proto.appio_pb2.ListAppsToLaunchRequest,
19
- flwr.proto.appio_pb2.ListAppsToLaunchResponse]
44
+ flwr.proto.appio_pb2.ListAppsToLaunchResponse,
45
+ ]
20
46
  """List runs to launch"""
21
47
 
22
48
  RequestToken: grpc.UnaryUnaryMultiCallable[
23
49
  flwr.proto.appio_pb2.RequestTokenRequest,
24
- flwr.proto.appio_pb2.RequestTokenResponse]
50
+ flwr.proto.appio_pb2.RequestTokenResponse,
51
+ ]
25
52
  """Request token for a run"""
26
53
 
27
54
  GetNodes: grpc.UnaryUnaryMultiCallable[
28
55
  flwr.proto.serverappio_pb2.GetNodesRequest,
29
- flwr.proto.serverappio_pb2.GetNodesResponse]
56
+ flwr.proto.serverappio_pb2.GetNodesResponse,
57
+ ]
30
58
  """Return a set of nodes"""
31
59
 
32
60
  PushMessages: grpc.UnaryUnaryMultiCallable[
33
61
  flwr.proto.appio_pb2.PushAppMessagesRequest,
34
- flwr.proto.appio_pb2.PushAppMessagesResponse]
62
+ flwr.proto.appio_pb2.PushAppMessagesResponse,
63
+ ]
35
64
  """Create one or more messages"""
36
65
 
37
66
  PullMessages: grpc.UnaryUnaryMultiCallable[
38
67
  flwr.proto.appio_pb2.PullAppMessagesRequest,
39
- flwr.proto.appio_pb2.PullAppMessagesResponse]
68
+ flwr.proto.appio_pb2.PullAppMessagesResponse,
69
+ ]
40
70
  """Get message results"""
41
71
 
42
72
  GetRun: grpc.UnaryUnaryMultiCallable[
43
73
  flwr.proto.run_pb2.GetRunRequest,
44
- flwr.proto.run_pb2.GetRunResponse]
74
+ flwr.proto.run_pb2.GetRunResponse,
75
+ ]
45
76
  """Get run details"""
46
77
 
47
78
  GetFab: grpc.UnaryUnaryMultiCallable[
48
79
  flwr.proto.fab_pb2.GetFabRequest,
49
- flwr.proto.fab_pb2.GetFabResponse]
80
+ flwr.proto.fab_pb2.GetFabResponse,
81
+ ]
50
82
  """Get FAB"""
51
83
 
52
84
  PullAppInputs: grpc.UnaryUnaryMultiCallable[
53
85
  flwr.proto.appio_pb2.PullAppInputsRequest,
54
- flwr.proto.appio_pb2.PullAppInputsResponse]
86
+ flwr.proto.appio_pb2.PullAppInputsResponse,
87
+ ]
55
88
  """Pull ServerApp inputs"""
56
89
 
57
90
  PushAppOutputs: grpc.UnaryUnaryMultiCallable[
58
91
  flwr.proto.appio_pb2.PushAppOutputsRequest,
59
- flwr.proto.appio_pb2.PushAppOutputsResponse]
92
+ flwr.proto.appio_pb2.PushAppOutputsResponse,
93
+ ]
60
94
  """Push ServerApp outputs"""
61
95
 
62
96
  UpdateRunStatus: grpc.UnaryUnaryMultiCallable[
63
97
  flwr.proto.run_pb2.UpdateRunStatusRequest,
64
- flwr.proto.run_pb2.UpdateRunStatusResponse]
98
+ flwr.proto.run_pb2.UpdateRunStatusResponse,
99
+ ]
65
100
  """Update the status of a given run"""
66
101
 
67
102
  GetRunStatus: grpc.UnaryUnaryMultiCallable[
68
103
  flwr.proto.run_pb2.GetRunStatusRequest,
69
- flwr.proto.run_pb2.GetRunStatusResponse]
104
+ flwr.proto.run_pb2.GetRunStatusResponse,
105
+ ]
70
106
  """Get the status of a given run"""
71
107
 
72
108
  PushLogs: grpc.UnaryUnaryMultiCallable[
73
109
  flwr.proto.log_pb2.PushLogsRequest,
74
- flwr.proto.log_pb2.PushLogsResponse]
110
+ flwr.proto.log_pb2.PushLogsResponse,
111
+ ]
75
112
  """Push ServerApp logs"""
76
113
 
77
114
  SendAppHeartbeat: grpc.UnaryUnaryMultiCallable[
78
115
  flwr.proto.heartbeat_pb2.SendAppHeartbeatRequest,
79
- flwr.proto.heartbeat_pb2.SendAppHeartbeatResponse]
80
- """Heartbeat"""
116
+ flwr.proto.heartbeat_pb2.SendAppHeartbeatResponse,
117
+ ]
118
+ """App heartbeat"""
81
119
 
82
120
  PushObject: grpc.UnaryUnaryMultiCallable[
83
121
  flwr.proto.message_pb2.PushObjectRequest,
84
- flwr.proto.message_pb2.PushObjectResponse]
122
+ flwr.proto.message_pb2.PushObjectResponse,
123
+ ]
85
124
  """Push Object"""
86
125
 
87
126
  PullObject: grpc.UnaryUnaryMultiCallable[
88
127
  flwr.proto.message_pb2.PullObjectRequest,
89
- flwr.proto.message_pb2.PullObjectResponse]
128
+ flwr.proto.message_pb2.PullObjectResponse,
129
+ ]
90
130
  """Pull Object"""
91
131
 
92
132
  ConfirmMessageReceived: grpc.UnaryUnaryMultiCallable[
93
133
  flwr.proto.message_pb2.ConfirmMessageReceivedRequest,
94
- flwr.proto.message_pb2.ConfirmMessageReceivedResponse]
134
+ flwr.proto.message_pb2.ConfirmMessageReceivedResponse,
135
+ ]
95
136
  """Confirm Message Received"""
96
137
 
138
+ class ServerAppIoAsyncStub:
139
+ ListAppsToLaunch: grpc.aio.UnaryUnaryMultiCallable[
140
+ flwr.proto.appio_pb2.ListAppsToLaunchRequest,
141
+ flwr.proto.appio_pb2.ListAppsToLaunchResponse,
142
+ ]
143
+ """List runs to launch"""
144
+
145
+ RequestToken: grpc.aio.UnaryUnaryMultiCallable[
146
+ flwr.proto.appio_pb2.RequestTokenRequest,
147
+ flwr.proto.appio_pb2.RequestTokenResponse,
148
+ ]
149
+ """Request token for a run"""
150
+
151
+ GetNodes: grpc.aio.UnaryUnaryMultiCallable[
152
+ flwr.proto.serverappio_pb2.GetNodesRequest,
153
+ flwr.proto.serverappio_pb2.GetNodesResponse,
154
+ ]
155
+ """Return a set of nodes"""
156
+
157
+ PushMessages: grpc.aio.UnaryUnaryMultiCallable[
158
+ flwr.proto.appio_pb2.PushAppMessagesRequest,
159
+ flwr.proto.appio_pb2.PushAppMessagesResponse,
160
+ ]
161
+ """Create one or more messages"""
162
+
163
+ PullMessages: grpc.aio.UnaryUnaryMultiCallable[
164
+ flwr.proto.appio_pb2.PullAppMessagesRequest,
165
+ flwr.proto.appio_pb2.PullAppMessagesResponse,
166
+ ]
167
+ """Get message results"""
168
+
169
+ GetRun: grpc.aio.UnaryUnaryMultiCallable[
170
+ flwr.proto.run_pb2.GetRunRequest,
171
+ flwr.proto.run_pb2.GetRunResponse,
172
+ ]
173
+ """Get run details"""
174
+
175
+ GetFab: grpc.aio.UnaryUnaryMultiCallable[
176
+ flwr.proto.fab_pb2.GetFabRequest,
177
+ flwr.proto.fab_pb2.GetFabResponse,
178
+ ]
179
+ """Get FAB"""
180
+
181
+ PullAppInputs: grpc.aio.UnaryUnaryMultiCallable[
182
+ flwr.proto.appio_pb2.PullAppInputsRequest,
183
+ flwr.proto.appio_pb2.PullAppInputsResponse,
184
+ ]
185
+ """Pull ServerApp inputs"""
186
+
187
+ PushAppOutputs: grpc.aio.UnaryUnaryMultiCallable[
188
+ flwr.proto.appio_pb2.PushAppOutputsRequest,
189
+ flwr.proto.appio_pb2.PushAppOutputsResponse,
190
+ ]
191
+ """Push ServerApp outputs"""
192
+
193
+ UpdateRunStatus: grpc.aio.UnaryUnaryMultiCallable[
194
+ flwr.proto.run_pb2.UpdateRunStatusRequest,
195
+ flwr.proto.run_pb2.UpdateRunStatusResponse,
196
+ ]
197
+ """Update the status of a given run"""
198
+
199
+ GetRunStatus: grpc.aio.UnaryUnaryMultiCallable[
200
+ flwr.proto.run_pb2.GetRunStatusRequest,
201
+ flwr.proto.run_pb2.GetRunStatusResponse,
202
+ ]
203
+ """Get the status of a given run"""
204
+
205
+ PushLogs: grpc.aio.UnaryUnaryMultiCallable[
206
+ flwr.proto.log_pb2.PushLogsRequest,
207
+ flwr.proto.log_pb2.PushLogsResponse,
208
+ ]
209
+ """Push ServerApp logs"""
210
+
211
+ SendAppHeartbeat: grpc.aio.UnaryUnaryMultiCallable[
212
+ flwr.proto.heartbeat_pb2.SendAppHeartbeatRequest,
213
+ flwr.proto.heartbeat_pb2.SendAppHeartbeatResponse,
214
+ ]
215
+ """App heartbeat"""
216
+
217
+ PushObject: grpc.aio.UnaryUnaryMultiCallable[
218
+ flwr.proto.message_pb2.PushObjectRequest,
219
+ flwr.proto.message_pb2.PushObjectResponse,
220
+ ]
221
+ """Push Object"""
222
+
223
+ PullObject: grpc.aio.UnaryUnaryMultiCallable[
224
+ flwr.proto.message_pb2.PullObjectRequest,
225
+ flwr.proto.message_pb2.PullObjectResponse,
226
+ ]
227
+ """Pull Object"""
228
+
229
+ ConfirmMessageReceived: grpc.aio.UnaryUnaryMultiCallable[
230
+ flwr.proto.message_pb2.ConfirmMessageReceivedRequest,
231
+ flwr.proto.message_pb2.ConfirmMessageReceivedResponse,
232
+ ]
233
+ """Confirm Message Received"""
97
234
 
98
235
  class ServerAppIoServicer(metaclass=abc.ABCMeta):
99
236
  @abc.abstractmethod
100
- def ListAppsToLaunch(self,
237
+ def ListAppsToLaunch(
238
+ self,
101
239
  request: flwr.proto.appio_pb2.ListAppsToLaunchRequest,
102
- context: grpc.ServicerContext,
103
- ) -> flwr.proto.appio_pb2.ListAppsToLaunchResponse:
240
+ context: _ServicerContext,
241
+ ) -> typing.Union[flwr.proto.appio_pb2.ListAppsToLaunchResponse, collections.abc.Awaitable[flwr.proto.appio_pb2.ListAppsToLaunchResponse]]:
104
242
  """List runs to launch"""
105
- pass
106
243
 
107
244
  @abc.abstractmethod
108
- def RequestToken(self,
245
+ def RequestToken(
246
+ self,
109
247
  request: flwr.proto.appio_pb2.RequestTokenRequest,
110
- context: grpc.ServicerContext,
111
- ) -> flwr.proto.appio_pb2.RequestTokenResponse:
248
+ context: _ServicerContext,
249
+ ) -> typing.Union[flwr.proto.appio_pb2.RequestTokenResponse, collections.abc.Awaitable[flwr.proto.appio_pb2.RequestTokenResponse]]:
112
250
  """Request token for a run"""
113
- pass
114
251
 
115
252
  @abc.abstractmethod
116
- def GetNodes(self,
253
+ def GetNodes(
254
+ self,
117
255
  request: flwr.proto.serverappio_pb2.GetNodesRequest,
118
- context: grpc.ServicerContext,
119
- ) -> flwr.proto.serverappio_pb2.GetNodesResponse:
256
+ context: _ServicerContext,
257
+ ) -> typing.Union[flwr.proto.serverappio_pb2.GetNodesResponse, collections.abc.Awaitable[flwr.proto.serverappio_pb2.GetNodesResponse]]:
120
258
  """Return a set of nodes"""
121
- pass
122
259
 
123
260
  @abc.abstractmethod
124
- def PushMessages(self,
261
+ def PushMessages(
262
+ self,
125
263
  request: flwr.proto.appio_pb2.PushAppMessagesRequest,
126
- context: grpc.ServicerContext,
127
- ) -> flwr.proto.appio_pb2.PushAppMessagesResponse:
264
+ context: _ServicerContext,
265
+ ) -> typing.Union[flwr.proto.appio_pb2.PushAppMessagesResponse, collections.abc.Awaitable[flwr.proto.appio_pb2.PushAppMessagesResponse]]:
128
266
  """Create one or more messages"""
129
- pass
130
267
 
131
268
  @abc.abstractmethod
132
- def PullMessages(self,
269
+ def PullMessages(
270
+ self,
133
271
  request: flwr.proto.appio_pb2.PullAppMessagesRequest,
134
- context: grpc.ServicerContext,
135
- ) -> flwr.proto.appio_pb2.PullAppMessagesResponse:
272
+ context: _ServicerContext,
273
+ ) -> typing.Union[flwr.proto.appio_pb2.PullAppMessagesResponse, collections.abc.Awaitable[flwr.proto.appio_pb2.PullAppMessagesResponse]]:
136
274
  """Get message results"""
137
- pass
138
275
 
139
276
  @abc.abstractmethod
140
- def GetRun(self,
277
+ def GetRun(
278
+ self,
141
279
  request: flwr.proto.run_pb2.GetRunRequest,
142
- context: grpc.ServicerContext,
143
- ) -> flwr.proto.run_pb2.GetRunResponse:
280
+ context: _ServicerContext,
281
+ ) -> typing.Union[flwr.proto.run_pb2.GetRunResponse, collections.abc.Awaitable[flwr.proto.run_pb2.GetRunResponse]]:
144
282
  """Get run details"""
145
- pass
146
283
 
147
284
  @abc.abstractmethod
148
- def GetFab(self,
285
+ def GetFab(
286
+ self,
149
287
  request: flwr.proto.fab_pb2.GetFabRequest,
150
- context: grpc.ServicerContext,
151
- ) -> flwr.proto.fab_pb2.GetFabResponse:
288
+ context: _ServicerContext,
289
+ ) -> typing.Union[flwr.proto.fab_pb2.GetFabResponse, collections.abc.Awaitable[flwr.proto.fab_pb2.GetFabResponse]]:
152
290
  """Get FAB"""
153
- pass
154
291
 
155
292
  @abc.abstractmethod
156
- def PullAppInputs(self,
293
+ def PullAppInputs(
294
+ self,
157
295
  request: flwr.proto.appio_pb2.PullAppInputsRequest,
158
- context: grpc.ServicerContext,
159
- ) -> flwr.proto.appio_pb2.PullAppInputsResponse:
296
+ context: _ServicerContext,
297
+ ) -> typing.Union[flwr.proto.appio_pb2.PullAppInputsResponse, collections.abc.Awaitable[flwr.proto.appio_pb2.PullAppInputsResponse]]:
160
298
  """Pull ServerApp inputs"""
161
- pass
162
299
 
163
300
  @abc.abstractmethod
164
- def PushAppOutputs(self,
301
+ def PushAppOutputs(
302
+ self,
165
303
  request: flwr.proto.appio_pb2.PushAppOutputsRequest,
166
- context: grpc.ServicerContext,
167
- ) -> flwr.proto.appio_pb2.PushAppOutputsResponse:
304
+ context: _ServicerContext,
305
+ ) -> typing.Union[flwr.proto.appio_pb2.PushAppOutputsResponse, collections.abc.Awaitable[flwr.proto.appio_pb2.PushAppOutputsResponse]]:
168
306
  """Push ServerApp outputs"""
169
- pass
170
307
 
171
308
  @abc.abstractmethod
172
- def UpdateRunStatus(self,
309
+ def UpdateRunStatus(
310
+ self,
173
311
  request: flwr.proto.run_pb2.UpdateRunStatusRequest,
174
- context: grpc.ServicerContext,
175
- ) -> flwr.proto.run_pb2.UpdateRunStatusResponse:
312
+ context: _ServicerContext,
313
+ ) -> typing.Union[flwr.proto.run_pb2.UpdateRunStatusResponse, collections.abc.Awaitable[flwr.proto.run_pb2.UpdateRunStatusResponse]]:
176
314
  """Update the status of a given run"""
177
- pass
178
315
 
179
316
  @abc.abstractmethod
180
- def GetRunStatus(self,
317
+ def GetRunStatus(
318
+ self,
181
319
  request: flwr.proto.run_pb2.GetRunStatusRequest,
182
- context: grpc.ServicerContext,
183
- ) -> flwr.proto.run_pb2.GetRunStatusResponse:
320
+ context: _ServicerContext,
321
+ ) -> typing.Union[flwr.proto.run_pb2.GetRunStatusResponse, collections.abc.Awaitable[flwr.proto.run_pb2.GetRunStatusResponse]]:
184
322
  """Get the status of a given run"""
185
- pass
186
323
 
187
324
  @abc.abstractmethod
188
- def PushLogs(self,
325
+ def PushLogs(
326
+ self,
189
327
  request: flwr.proto.log_pb2.PushLogsRequest,
190
- context: grpc.ServicerContext,
191
- ) -> flwr.proto.log_pb2.PushLogsResponse:
328
+ context: _ServicerContext,
329
+ ) -> typing.Union[flwr.proto.log_pb2.PushLogsResponse, collections.abc.Awaitable[flwr.proto.log_pb2.PushLogsResponse]]:
192
330
  """Push ServerApp logs"""
193
- pass
194
331
 
195
332
  @abc.abstractmethod
196
- def SendAppHeartbeat(self,
333
+ def SendAppHeartbeat(
334
+ self,
197
335
  request: flwr.proto.heartbeat_pb2.SendAppHeartbeatRequest,
198
- context: grpc.ServicerContext,
199
- ) -> flwr.proto.heartbeat_pb2.SendAppHeartbeatResponse:
200
- """Heartbeat"""
201
- pass
336
+ context: _ServicerContext,
337
+ ) -> typing.Union[flwr.proto.heartbeat_pb2.SendAppHeartbeatResponse, collections.abc.Awaitable[flwr.proto.heartbeat_pb2.SendAppHeartbeatResponse]]:
338
+ """App heartbeat"""
202
339
 
203
340
  @abc.abstractmethod
204
- def PushObject(self,
341
+ def PushObject(
342
+ self,
205
343
  request: flwr.proto.message_pb2.PushObjectRequest,
206
- context: grpc.ServicerContext,
207
- ) -> flwr.proto.message_pb2.PushObjectResponse:
344
+ context: _ServicerContext,
345
+ ) -> typing.Union[flwr.proto.message_pb2.PushObjectResponse, collections.abc.Awaitable[flwr.proto.message_pb2.PushObjectResponse]]:
208
346
  """Push Object"""
209
- pass
210
347
 
211
348
  @abc.abstractmethod
212
- def PullObject(self,
349
+ def PullObject(
350
+ self,
213
351
  request: flwr.proto.message_pb2.PullObjectRequest,
214
- context: grpc.ServicerContext,
215
- ) -> flwr.proto.message_pb2.PullObjectResponse:
352
+ context: _ServicerContext,
353
+ ) -> typing.Union[flwr.proto.message_pb2.PullObjectResponse, collections.abc.Awaitable[flwr.proto.message_pb2.PullObjectResponse]]:
216
354
  """Pull Object"""
217
- pass
218
355
 
219
356
  @abc.abstractmethod
220
- def ConfirmMessageReceived(self,
357
+ def ConfirmMessageReceived(
358
+ self,
221
359
  request: flwr.proto.message_pb2.ConfirmMessageReceivedRequest,
222
- context: grpc.ServicerContext,
223
- ) -> flwr.proto.message_pb2.ConfirmMessageReceivedResponse:
360
+ context: _ServicerContext,
361
+ ) -> typing.Union[flwr.proto.message_pb2.ConfirmMessageReceivedResponse, collections.abc.Awaitable[flwr.proto.message_pb2.ConfirmMessageReceivedResponse]]:
224
362
  """Confirm Message Received"""
225
- pass
226
-
227
363
 
228
- def add_ServerAppIoServicer_to_server(servicer: ServerAppIoServicer, server: grpc.Server) -> None: ...
364
+ def add_ServerAppIoServicer_to_server(servicer: ServerAppIoServicer, server: typing.Union[grpc.Server, grpc.aio.Server]) -> None: ...
@@ -1,12 +1,22 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # NO CHECKED-IN PROTOBUF GENCODE
3
4
  # source: flwr/proto/simulationio.proto
4
- # Protobuf Python Version: 4.25.1
5
+ # Protobuf Python Version: 5.29.0
5
6
  """Generated protocol buffer code."""
6
7
  from google.protobuf import descriptor as _descriptor
7
8
  from google.protobuf import descriptor_pool as _descriptor_pool
9
+ from google.protobuf import runtime_version as _runtime_version
8
10
  from google.protobuf import symbol_database as _symbol_database
9
11
  from google.protobuf.internal import builder as _builder
12
+ _runtime_version.ValidateProtobufRuntimeVersion(
13
+ _runtime_version.Domain.PUBLIC,
14
+ 5,
15
+ 29,
16
+ 0,
17
+ '',
18
+ 'flwr/proto/simulationio.proto'
19
+ )
10
20
  # @@protoc_insertion_point(imports)
11
21
 
12
22
  _sym_db = _symbol_database.Default()
@@ -14,19 +24,17 @@ _sym_db = _symbol_database.Default()
14
24
 
15
25
  from flwr.proto import heartbeat_pb2 as flwr_dot_proto_dot_heartbeat__pb2
16
26
  from flwr.proto import log_pb2 as flwr_dot_proto_dot_log__pb2
17
- from flwr.proto import message_pb2 as flwr_dot_proto_dot_message__pb2
18
27
  from flwr.proto import run_pb2 as flwr_dot_proto_dot_run__pb2
19
- from flwr.proto import fab_pb2 as flwr_dot_proto_dot_fab__pb2
20
28
  from flwr.proto import appio_pb2 as flwr_dot_proto_dot_appio__pb2
21
29
 
22
30
 
23
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1d\x66lwr/proto/simulationio.proto\x12\nflwr.proto\x1a\x1a\x66lwr/proto/heartbeat.proto\x1a\x14\x66lwr/proto/log.proto\x1a\x18\x66lwr/proto/message.proto\x1a\x14\x66lwr/proto/run.proto\x1a\x14\x66lwr/proto/fab.proto\x1a\x16\x66lwr/proto/appio.proto2\x84\x07\n\x0cSimulationIo\x12_\n\x10ListAppsToLaunch\x12#.flwr.proto.ListAppsToLaunchRequest\x1a$.flwr.proto.ListAppsToLaunchResponse\"\x00\x12S\n\x0cRequestToken\x12\x1f.flwr.proto.RequestTokenRequest\x1a .flwr.proto.RequestTokenResponse\"\x00\x12\x41\n\x06GetRun\x12\x19.flwr.proto.GetRunRequest\x1a\x1a.flwr.proto.GetRunResponse\"\x00\x12V\n\rPullAppInputs\x12 .flwr.proto.PullAppInputsRequest\x1a!.flwr.proto.PullAppInputsResponse\"\x00\x12Y\n\x0ePushAppOutputs\x12!.flwr.proto.PushAppOutputsRequest\x1a\".flwr.proto.PushAppOutputsResponse\"\x00\x12\\\n\x0fUpdateRunStatus\x12\".flwr.proto.UpdateRunStatusRequest\x1a#.flwr.proto.UpdateRunStatusResponse\"\x00\x12G\n\x08PushLogs\x12\x1b.flwr.proto.PushLogsRequest\x1a\x1c.flwr.proto.PushLogsResponse\"\x00\x12k\n\x14GetFederationOptions\x12\'.flwr.proto.GetFederationOptionsRequest\x1a(.flwr.proto.GetFederationOptionsResponse\"\x00\x12S\n\x0cGetRunStatus\x12\x1f.flwr.proto.GetRunStatusRequest\x1a .flwr.proto.GetRunStatusResponse\"\x00\x12_\n\x10SendAppHeartbeat\x12#.flwr.proto.SendAppHeartbeatRequest\x1a$.flwr.proto.SendAppHeartbeatResponse\"\x00\x62\x06proto3')
31
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1d\x66lwr/proto/simulationio.proto\x12\nflwr.proto\x1a\x1a\x66lwr/proto/heartbeat.proto\x1a\x14\x66lwr/proto/log.proto\x1a\x14\x66lwr/proto/run.proto\x1a\x16\x66lwr/proto/appio.proto2\x84\x07\n\x0cSimulationIo\x12_\n\x10ListAppsToLaunch\x12#.flwr.proto.ListAppsToLaunchRequest\x1a$.flwr.proto.ListAppsToLaunchResponse\"\x00\x12S\n\x0cRequestToken\x12\x1f.flwr.proto.RequestTokenRequest\x1a .flwr.proto.RequestTokenResponse\"\x00\x12\x41\n\x06GetRun\x12\x19.flwr.proto.GetRunRequest\x1a\x1a.flwr.proto.GetRunResponse\"\x00\x12V\n\rPullAppInputs\x12 .flwr.proto.PullAppInputsRequest\x1a!.flwr.proto.PullAppInputsResponse\"\x00\x12Y\n\x0ePushAppOutputs\x12!.flwr.proto.PushAppOutputsRequest\x1a\".flwr.proto.PushAppOutputsResponse\"\x00\x12\\\n\x0fUpdateRunStatus\x12\".flwr.proto.UpdateRunStatusRequest\x1a#.flwr.proto.UpdateRunStatusResponse\"\x00\x12G\n\x08PushLogs\x12\x1b.flwr.proto.PushLogsRequest\x1a\x1c.flwr.proto.PushLogsResponse\"\x00\x12k\n\x14GetFederationOptions\x12\'.flwr.proto.GetFederationOptionsRequest\x1a(.flwr.proto.GetFederationOptionsResponse\"\x00\x12S\n\x0cGetRunStatus\x12\x1f.flwr.proto.GetRunStatusRequest\x1a .flwr.proto.GetRunStatusResponse\"\x00\x12_\n\x10SendAppHeartbeat\x12#.flwr.proto.SendAppHeartbeatRequest\x1a$.flwr.proto.SendAppHeartbeatResponse\"\x00\x62\x06proto3')
24
32
 
25
33
  _globals = globals()
26
34
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
27
35
  _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'flwr.proto.simulationio_pb2', _globals)
28
- if _descriptor._USE_C_DESCRIPTORS == False:
29
- DESCRIPTOR._options = None
30
- _globals['_SIMULATIONIO']._serialized_start=190
31
- _globals['_SIMULATIONIO']._serialized_end=1090
36
+ if not _descriptor._USE_C_DESCRIPTORS:
37
+ DESCRIPTOR._loaded_options = None
38
+ _globals['_SIMULATIONIO']._serialized_start=142
39
+ _globals['_SIMULATIONIO']._serialized_end=1042
32
40
  # @@protoc_insertion_point(module_scope)
@@ -1,7 +1,22 @@
1
1
  """
2
2
  @generated by mypy-protobuf. Do not edit manually!
3
3
  isort:skip_file
4
+ Copyright 2024 Flower Labs GmbH. All Rights Reserved.
5
+
6
+ Licensed under the Apache License, Version 2.0 (the "License");
7
+ you may not use this file except in compliance with the License.
8
+ You may obtain a copy of the License at
9
+
10
+ http://www.apache.org/licenses/LICENSE-2.0
11
+
12
+ Unless required by applicable law or agreed to in writing, software
13
+ distributed under the License is distributed on an "AS IS" BASIS,
14
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ See the License for the specific language governing permissions and
16
+ limitations under the License.
17
+ ==============================================================================
4
18
  """
19
+
5
20
  import google.protobuf.descriptor
6
21
 
7
22
  DESCRIPTOR: google.protobuf.descriptor.FileDescriptor