flwr 1.19.0__py3-none-any.whl → 1.20.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.
- flwr/cli/build.py +15 -5
- flwr/cli/new/new.py +12 -4
- flwr/cli/new/templates/app/README.flowertune.md.tpl +2 -0
- flwr/cli/new/templates/app/README.md.tpl +5 -0
- flwr/cli/new/templates/app/pyproject.baseline.toml.tpl +14 -3
- flwr/cli/new/templates/app/pyproject.flowertune.toml.tpl +13 -1
- flwr/cli/new/templates/app/pyproject.huggingface.toml.tpl +21 -2
- flwr/cli/new/templates/app/pyproject.jax.toml.tpl +18 -1
- flwr/cli/new/templates/app/pyproject.mlx.toml.tpl +19 -2
- flwr/cli/new/templates/app/pyproject.numpy.toml.tpl +18 -1
- flwr/cli/new/templates/app/pyproject.pytorch.toml.tpl +20 -3
- flwr/cli/new/templates/app/pyproject.sklearn.toml.tpl +18 -1
- flwr/cli/new/templates/app/pyproject.tensorflow.toml.tpl +18 -1
- flwr/cli/run/run.py +45 -38
- flwr/cli/utils.py +12 -5
- flwr/client/grpc_adapter_client/connection.py +11 -4
- flwr/client/grpc_rere_client/connection.py +92 -117
- flwr/client/rest_client/connection.py +131 -164
- flwr/common/constant.py +3 -1
- flwr/common/exit/exit_code.py +16 -1
- flwr/common/grpc.py +12 -1
- flwr/common/{inflatable_grpc_utils.py → inflatable_protobuf_utils.py} +52 -10
- flwr/common/inflatable_utils.py +191 -24
- flwr/common/record/array.py +101 -22
- flwr/common/record/arraychunk.py +59 -0
- flwr/common/serde.py +0 -28
- flwr/compat/client/app.py +14 -31
- flwr/proto/appio_pb2.py +43 -0
- flwr/proto/appio_pb2.pyi +151 -0
- flwr/proto/appio_pb2_grpc.py +4 -0
- flwr/proto/appio_pb2_grpc.pyi +4 -0
- flwr/proto/clientappio_pb2.py +12 -19
- flwr/proto/clientappio_pb2.pyi +23 -101
- flwr/proto/clientappio_pb2_grpc.py +269 -28
- flwr/proto/clientappio_pb2_grpc.pyi +114 -20
- flwr/proto/fleet_pb2.py +12 -20
- flwr/proto/fleet_pb2.pyi +6 -36
- flwr/proto/serverappio_pb2.py +8 -31
- flwr/proto/serverappio_pb2.pyi +0 -152
- flwr/proto/serverappio_pb2_grpc.py +39 -38
- flwr/proto/serverappio_pb2_grpc.pyi +21 -20
- flwr/server/app.py +1 -1
- flwr/server/fleet_event_log_interceptor.py +4 -0
- flwr/server/grid/grpc_grid.py +91 -54
- flwr/server/serverapp/app.py +27 -17
- flwr/server/superlink/fleet/grpc_adapter/grpc_adapter_servicer.py +8 -0
- flwr/server/superlink/fleet/grpc_rere/fleet_servicer.py +1 -1
- flwr/server/superlink/fleet/grpc_rere/server_interceptor.py +2 -5
- flwr/server/superlink/fleet/message_handler/message_handler.py +10 -16
- flwr/server/superlink/fleet/rest_rere/rest_api.py +1 -2
- flwr/server/superlink/serverappio/serverappio_grpc.py +1 -1
- flwr/server/superlink/serverappio/serverappio_servicer.py +35 -43
- flwr/server/superlink/simulation/simulationio_grpc.py +1 -1
- flwr/server/superlink/simulation/simulationio_servicer.py +1 -1
- flwr/server/superlink/utils.py +0 -35
- flwr/simulation/app.py +8 -0
- flwr/simulation/run_simulation.py +17 -0
- flwr/{server/superlink → supercore}/ffs/disk_ffs.py +1 -1
- flwr/supercore/grpc_health/__init__.py +22 -0
- flwr/supercore/grpc_health/simple_health_servicer.py +38 -0
- flwr/supercore/license_plugin/__init__.py +22 -0
- flwr/supercore/license_plugin/license_plugin.py +26 -0
- flwr/supercore/object_store/in_memory_object_store.py +31 -31
- flwr/supercore/object_store/object_store.py +20 -42
- flwr/supercore/object_store/utils.py +43 -0
- flwr/supercore/scheduler/__init__.py +22 -0
- flwr/supercore/scheduler/plugin.py +71 -0
- flwr/supercore/utils.py +32 -0
- flwr/superexec/deployment.py +1 -2
- flwr/superexec/exec_event_log_interceptor.py +4 -0
- flwr/superexec/exec_grpc.py +18 -2
- flwr/superexec/exec_license_interceptor.py +82 -0
- flwr/superexec/exec_servicer.py +10 -1
- flwr/superexec/exec_user_auth_interceptor.py +10 -2
- flwr/superexec/executor.py +1 -1
- flwr/superexec/simulation.py +1 -2
- flwr/supernode/cli/flower_supernode.py +0 -7
- flwr/supernode/cli/flwr_clientapp.py +10 -3
- flwr/supernode/nodestate/in_memory_nodestate.py +11 -2
- flwr/supernode/nodestate/nodestate.py +15 -0
- flwr/supernode/runtime/run_clientapp.py +110 -33
- flwr/supernode/scheduler/__init__.py +22 -0
- flwr/supernode/scheduler/simple_clientapp_scheduler_plugin.py +49 -0
- flwr/supernode/servicer/clientappio/__init__.py +1 -3
- flwr/supernode/servicer/clientappio/clientappio_servicer.py +223 -164
- flwr/supernode/start_client_internal.py +202 -104
- {flwr-1.19.0.dist-info → flwr-1.20.0.dist-info}/METADATA +2 -1
- {flwr-1.19.0.dist-info → flwr-1.20.0.dist-info}/RECORD +93 -78
- flwr/common/inflatable_rest_utils.py +0 -99
- /flwr/{server/superlink → supercore}/ffs/__init__.py +0 -0
- /flwr/{server/superlink → supercore}/ffs/ffs.py +0 -0
- /flwr/{server/superlink → supercore}/ffs/ffs_factory.py +0 -0
- {flwr-1.19.0.dist-info → flwr-1.20.0.dist-info}/WHEEL +0 -0
- {flwr-1.19.0.dist-info → flwr-1.20.0.dist-info}/entry_points.txt +0 -0
flwr/proto/appio_pb2.py
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
+
# source: flwr/proto/appio.proto
|
|
4
|
+
# Protobuf Python Version: 4.25.1
|
|
5
|
+
"""Generated protocol buffer code."""
|
|
6
|
+
from google.protobuf import descriptor as _descriptor
|
|
7
|
+
from google.protobuf import descriptor_pool as _descriptor_pool
|
|
8
|
+
from google.protobuf import symbol_database as _symbol_database
|
|
9
|
+
from google.protobuf.internal import builder as _builder
|
|
10
|
+
# @@protoc_insertion_point(imports)
|
|
11
|
+
|
|
12
|
+
_sym_db = _symbol_database.Default()
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from flwr.proto import message_pb2 as flwr_dot_proto_dot_message__pb2
|
|
16
|
+
from flwr.proto import fab_pb2 as flwr_dot_proto_dot_fab__pb2
|
|
17
|
+
from flwr.proto import run_pb2 as flwr_dot_proto_dot_run__pb2
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x16\x66lwr/proto/appio.proto\x12\nflwr.proto\x1a\x18\x66lwr/proto/message.proto\x1a\x14\x66lwr/proto/fab.proto\x1a\x14\x66lwr/proto/run.proto\"\x99\x01\n\x16PushAppMessagesRequest\x12\r\n\x05token\x18\x01 \x01(\t\x12*\n\rmessages_list\x18\x02 \x03(\x0b\x32\x13.flwr.proto.Message\x12\x0e\n\x06run_id\x18\x03 \x01(\x04\x12\x34\n\x14message_object_trees\x18\x04 \x03(\x0b\x32\x16.flwr.proto.ObjectTree\"G\n\x17PushAppMessagesResponse\x12\x13\n\x0bmessage_ids\x18\x01 \x03(\t\x12\x17\n\x0fobjects_to_push\x18\x02 \x03(\t\"L\n\x16PullAppMessagesRequest\x12\r\n\x05token\x18\x01 \x01(\t\x12\x13\n\x0bmessage_ids\x18\x02 \x03(\t\x12\x0e\n\x06run_id\x18\x03 \x01(\x04\"{\n\x17PullAppMessagesResponse\x12*\n\rmessages_list\x18\x01 \x03(\x0b\x32\x13.flwr.proto.Message\x12\x34\n\x14message_object_trees\x18\x02 \x03(\x0b\x32\x16.flwr.proto.ObjectTree\"%\n\x14PullAppInputsRequest\x12\r\n\x05token\x18\x01 \x01(\t\"y\n\x15PullAppInputsResponse\x12$\n\x07\x63ontext\x18\x01 \x01(\x0b\x32\x13.flwr.proto.Context\x12\x1c\n\x03run\x18\x02 \x01(\x0b\x32\x0f.flwr.proto.Run\x12\x1c\n\x03\x66\x61\x62\x18\x03 \x01(\x0b\x32\x0f.flwr.proto.Fab\"\\\n\x15PushAppOutputsRequest\x12\r\n\x05token\x18\x01 \x01(\t\x12\x0e\n\x06run_id\x18\x02 \x01(\x04\x12$\n\x07\x63ontext\x18\x03 \x01(\x0b\x32\x13.flwr.proto.Context\"\x18\n\x16PushAppOutputsResponseb\x06proto3')
|
|
21
|
+
|
|
22
|
+
_globals = globals()
|
|
23
|
+
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
24
|
+
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'flwr.proto.appio_pb2', _globals)
|
|
25
|
+
if _descriptor._USE_C_DESCRIPTORS == False:
|
|
26
|
+
DESCRIPTOR._options = None
|
|
27
|
+
_globals['_PUSHAPPMESSAGESREQUEST']._serialized_start=109
|
|
28
|
+
_globals['_PUSHAPPMESSAGESREQUEST']._serialized_end=262
|
|
29
|
+
_globals['_PUSHAPPMESSAGESRESPONSE']._serialized_start=264
|
|
30
|
+
_globals['_PUSHAPPMESSAGESRESPONSE']._serialized_end=335
|
|
31
|
+
_globals['_PULLAPPMESSAGESREQUEST']._serialized_start=337
|
|
32
|
+
_globals['_PULLAPPMESSAGESREQUEST']._serialized_end=413
|
|
33
|
+
_globals['_PULLAPPMESSAGESRESPONSE']._serialized_start=415
|
|
34
|
+
_globals['_PULLAPPMESSAGESRESPONSE']._serialized_end=538
|
|
35
|
+
_globals['_PULLAPPINPUTSREQUEST']._serialized_start=540
|
|
36
|
+
_globals['_PULLAPPINPUTSREQUEST']._serialized_end=577
|
|
37
|
+
_globals['_PULLAPPINPUTSRESPONSE']._serialized_start=579
|
|
38
|
+
_globals['_PULLAPPINPUTSRESPONSE']._serialized_end=700
|
|
39
|
+
_globals['_PUSHAPPOUTPUTSREQUEST']._serialized_start=702
|
|
40
|
+
_globals['_PUSHAPPOUTPUTSREQUEST']._serialized_end=794
|
|
41
|
+
_globals['_PUSHAPPOUTPUTSRESPONSE']._serialized_start=796
|
|
42
|
+
_globals['_PUSHAPPOUTPUTSRESPONSE']._serialized_end=820
|
|
43
|
+
# @@protoc_insertion_point(module_scope)
|
flwr/proto/appio_pb2.pyi
ADDED
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
"""
|
|
2
|
+
@generated by mypy-protobuf. Do not edit manually!
|
|
3
|
+
isort:skip_file
|
|
4
|
+
"""
|
|
5
|
+
import builtins
|
|
6
|
+
import flwr.proto.fab_pb2
|
|
7
|
+
import flwr.proto.message_pb2
|
|
8
|
+
import flwr.proto.run_pb2
|
|
9
|
+
import google.protobuf.descriptor
|
|
10
|
+
import google.protobuf.internal.containers
|
|
11
|
+
import google.protobuf.message
|
|
12
|
+
import typing
|
|
13
|
+
import typing_extensions
|
|
14
|
+
|
|
15
|
+
DESCRIPTOR: google.protobuf.descriptor.FileDescriptor
|
|
16
|
+
|
|
17
|
+
class PushAppMessagesRequest(google.protobuf.message.Message):
|
|
18
|
+
"""These messages are used by both ServerAppIo and ClientAppIo services
|
|
19
|
+
|
|
20
|
+
PushAppMessages messages
|
|
21
|
+
"""
|
|
22
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
23
|
+
TOKEN_FIELD_NUMBER: builtins.int
|
|
24
|
+
MESSAGES_LIST_FIELD_NUMBER: builtins.int
|
|
25
|
+
RUN_ID_FIELD_NUMBER: builtins.int
|
|
26
|
+
MESSAGE_OBJECT_TREES_FIELD_NUMBER: builtins.int
|
|
27
|
+
token: typing.Text
|
|
28
|
+
@property
|
|
29
|
+
def messages_list(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[flwr.proto.message_pb2.Message]: ...
|
|
30
|
+
run_id: builtins.int
|
|
31
|
+
@property
|
|
32
|
+
def message_object_trees(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[flwr.proto.message_pb2.ObjectTree]: ...
|
|
33
|
+
def __init__(self,
|
|
34
|
+
*,
|
|
35
|
+
token: typing.Text = ...,
|
|
36
|
+
messages_list: typing.Optional[typing.Iterable[flwr.proto.message_pb2.Message]] = ...,
|
|
37
|
+
run_id: builtins.int = ...,
|
|
38
|
+
message_object_trees: typing.Optional[typing.Iterable[flwr.proto.message_pb2.ObjectTree]] = ...,
|
|
39
|
+
) -> None: ...
|
|
40
|
+
def ClearField(self, field_name: typing_extensions.Literal["message_object_trees",b"message_object_trees","messages_list",b"messages_list","run_id",b"run_id","token",b"token"]) -> None: ...
|
|
41
|
+
global___PushAppMessagesRequest = PushAppMessagesRequest
|
|
42
|
+
|
|
43
|
+
class PushAppMessagesResponse(google.protobuf.message.Message):
|
|
44
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
45
|
+
MESSAGE_IDS_FIELD_NUMBER: builtins.int
|
|
46
|
+
OBJECTS_TO_PUSH_FIELD_NUMBER: builtins.int
|
|
47
|
+
@property
|
|
48
|
+
def message_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: ...
|
|
49
|
+
@property
|
|
50
|
+
def objects_to_push(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: ...
|
|
51
|
+
def __init__(self,
|
|
52
|
+
*,
|
|
53
|
+
message_ids: typing.Optional[typing.Iterable[typing.Text]] = ...,
|
|
54
|
+
objects_to_push: typing.Optional[typing.Iterable[typing.Text]] = ...,
|
|
55
|
+
) -> None: ...
|
|
56
|
+
def ClearField(self, field_name: typing_extensions.Literal["message_ids",b"message_ids","objects_to_push",b"objects_to_push"]) -> None: ...
|
|
57
|
+
global___PushAppMessagesResponse = PushAppMessagesResponse
|
|
58
|
+
|
|
59
|
+
class PullAppMessagesRequest(google.protobuf.message.Message):
|
|
60
|
+
"""PullAppMessages messages"""
|
|
61
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
62
|
+
TOKEN_FIELD_NUMBER: builtins.int
|
|
63
|
+
MESSAGE_IDS_FIELD_NUMBER: builtins.int
|
|
64
|
+
RUN_ID_FIELD_NUMBER: builtins.int
|
|
65
|
+
token: typing.Text
|
|
66
|
+
@property
|
|
67
|
+
def message_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: ...
|
|
68
|
+
run_id: builtins.int
|
|
69
|
+
def __init__(self,
|
|
70
|
+
*,
|
|
71
|
+
token: typing.Text = ...,
|
|
72
|
+
message_ids: typing.Optional[typing.Iterable[typing.Text]] = ...,
|
|
73
|
+
run_id: builtins.int = ...,
|
|
74
|
+
) -> None: ...
|
|
75
|
+
def ClearField(self, field_name: typing_extensions.Literal["message_ids",b"message_ids","run_id",b"run_id","token",b"token"]) -> None: ...
|
|
76
|
+
global___PullAppMessagesRequest = PullAppMessagesRequest
|
|
77
|
+
|
|
78
|
+
class PullAppMessagesResponse(google.protobuf.message.Message):
|
|
79
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
80
|
+
MESSAGES_LIST_FIELD_NUMBER: builtins.int
|
|
81
|
+
MESSAGE_OBJECT_TREES_FIELD_NUMBER: builtins.int
|
|
82
|
+
@property
|
|
83
|
+
def messages_list(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[flwr.proto.message_pb2.Message]: ...
|
|
84
|
+
@property
|
|
85
|
+
def message_object_trees(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[flwr.proto.message_pb2.ObjectTree]: ...
|
|
86
|
+
def __init__(self,
|
|
87
|
+
*,
|
|
88
|
+
messages_list: typing.Optional[typing.Iterable[flwr.proto.message_pb2.Message]] = ...,
|
|
89
|
+
message_object_trees: typing.Optional[typing.Iterable[flwr.proto.message_pb2.ObjectTree]] = ...,
|
|
90
|
+
) -> None: ...
|
|
91
|
+
def ClearField(self, field_name: typing_extensions.Literal["message_object_trees",b"message_object_trees","messages_list",b"messages_list"]) -> None: ...
|
|
92
|
+
global___PullAppMessagesResponse = PullAppMessagesResponse
|
|
93
|
+
|
|
94
|
+
class PullAppInputsRequest(google.protobuf.message.Message):
|
|
95
|
+
"""PullAppInputs messages"""
|
|
96
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
97
|
+
TOKEN_FIELD_NUMBER: builtins.int
|
|
98
|
+
token: typing.Text
|
|
99
|
+
def __init__(self,
|
|
100
|
+
*,
|
|
101
|
+
token: typing.Text = ...,
|
|
102
|
+
) -> None: ...
|
|
103
|
+
def ClearField(self, field_name: typing_extensions.Literal["token",b"token"]) -> None: ...
|
|
104
|
+
global___PullAppInputsRequest = PullAppInputsRequest
|
|
105
|
+
|
|
106
|
+
class PullAppInputsResponse(google.protobuf.message.Message):
|
|
107
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
108
|
+
CONTEXT_FIELD_NUMBER: builtins.int
|
|
109
|
+
RUN_FIELD_NUMBER: builtins.int
|
|
110
|
+
FAB_FIELD_NUMBER: builtins.int
|
|
111
|
+
@property
|
|
112
|
+
def context(self) -> flwr.proto.message_pb2.Context: ...
|
|
113
|
+
@property
|
|
114
|
+
def run(self) -> flwr.proto.run_pb2.Run: ...
|
|
115
|
+
@property
|
|
116
|
+
def fab(self) -> flwr.proto.fab_pb2.Fab: ...
|
|
117
|
+
def __init__(self,
|
|
118
|
+
*,
|
|
119
|
+
context: typing.Optional[flwr.proto.message_pb2.Context] = ...,
|
|
120
|
+
run: typing.Optional[flwr.proto.run_pb2.Run] = ...,
|
|
121
|
+
fab: typing.Optional[flwr.proto.fab_pb2.Fab] = ...,
|
|
122
|
+
) -> None: ...
|
|
123
|
+
def HasField(self, field_name: typing_extensions.Literal["context",b"context","fab",b"fab","run",b"run"]) -> builtins.bool: ...
|
|
124
|
+
def ClearField(self, field_name: typing_extensions.Literal["context",b"context","fab",b"fab","run",b"run"]) -> None: ...
|
|
125
|
+
global___PullAppInputsResponse = PullAppInputsResponse
|
|
126
|
+
|
|
127
|
+
class PushAppOutputsRequest(google.protobuf.message.Message):
|
|
128
|
+
"""PushAppInputs messages"""
|
|
129
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
130
|
+
TOKEN_FIELD_NUMBER: builtins.int
|
|
131
|
+
RUN_ID_FIELD_NUMBER: builtins.int
|
|
132
|
+
CONTEXT_FIELD_NUMBER: builtins.int
|
|
133
|
+
token: typing.Text
|
|
134
|
+
run_id: builtins.int
|
|
135
|
+
@property
|
|
136
|
+
def context(self) -> flwr.proto.message_pb2.Context: ...
|
|
137
|
+
def __init__(self,
|
|
138
|
+
*,
|
|
139
|
+
token: typing.Text = ...,
|
|
140
|
+
run_id: builtins.int = ...,
|
|
141
|
+
context: typing.Optional[flwr.proto.message_pb2.Context] = ...,
|
|
142
|
+
) -> None: ...
|
|
143
|
+
def HasField(self, field_name: typing_extensions.Literal["context",b"context"]) -> builtins.bool: ...
|
|
144
|
+
def ClearField(self, field_name: typing_extensions.Literal["context",b"context","run_id",b"run_id","token",b"token"]) -> None: ...
|
|
145
|
+
global___PushAppOutputsRequest = PushAppOutputsRequest
|
|
146
|
+
|
|
147
|
+
class PushAppOutputsResponse(google.protobuf.message.Message):
|
|
148
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
149
|
+
def __init__(self,
|
|
150
|
+
) -> None: ...
|
|
151
|
+
global___PushAppOutputsResponse = PushAppOutputsResponse
|
flwr/proto/clientappio_pb2.py
CHANGED
|
@@ -15,31 +15,24 @@ _sym_db = _symbol_database.Default()
|
|
|
15
15
|
from flwr.proto import fab_pb2 as flwr_dot_proto_dot_fab__pb2
|
|
16
16
|
from flwr.proto import run_pb2 as flwr_dot_proto_dot_run__pb2
|
|
17
17
|
from flwr.proto import message_pb2 as flwr_dot_proto_dot_message__pb2
|
|
18
|
+
from flwr.proto import appio_pb2 as flwr_dot_proto_dot_appio__pb2
|
|
18
19
|
|
|
19
20
|
|
|
20
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1c\x66lwr/proto/clientappio.proto\x12\nflwr.proto\x1a\x14\x66lwr/proto/fab.proto\x1a\x14\x66lwr/proto/run.proto\x1a\x18\x66lwr/proto/message.proto\
|
|
21
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1c\x66lwr/proto/clientappio.proto\x12\nflwr.proto\x1a\x14\x66lwr/proto/fab.proto\x1a\x14\x66lwr/proto/run.proto\x1a\x18\x66lwr/proto/message.proto\x1a\x16\x66lwr/proto/appio.proto\"%\n#GetRunIdsWithPendingMessagesRequest\"7\n$GetRunIdsWithPendingMessagesResponse\x12\x0f\n\x07run_ids\x18\x01 \x03(\x04\"%\n\x13RequestTokenRequest\x12\x0e\n\x06run_id\x18\x01 \x01(\x04\"%\n\x14RequestTokenResponse\x12\r\n\x05token\x18\x01 \x01(\t2\xaf\x07\n\x0b\x43lientAppIo\x12\x83\x01\n\x1cGetRunIdsWithPendingMessages\x12/.flwr.proto.GetRunIdsWithPendingMessagesRequest\x1a\x30.flwr.proto.GetRunIdsWithPendingMessagesResponse\"\x00\x12S\n\x0cRequestToken\x12\x1f.flwr.proto.RequestTokenRequest\x1a .flwr.proto.RequestTokenResponse\"\x00\x12\x41\n\x06GetRun\x12\x19.flwr.proto.GetRunRequest\x1a\x1a.flwr.proto.GetRunResponse\"\x00\x12\\\n\x13PullClientAppInputs\x12 .flwr.proto.PullAppInputsRequest\x1a!.flwr.proto.PullAppInputsResponse\"\x00\x12_\n\x14PushClientAppOutputs\x12!.flwr.proto.PushAppOutputsRequest\x1a\".flwr.proto.PushAppOutputsResponse\"\x00\x12X\n\x0bPushMessage\x12\".flwr.proto.PushAppMessagesRequest\x1a#.flwr.proto.PushAppMessagesResponse\"\x00\x12X\n\x0bPullMessage\x12\".flwr.proto.PullAppMessagesRequest\x1a#.flwr.proto.PullAppMessagesResponse\"\x00\x12M\n\nPushObject\x12\x1d.flwr.proto.PushObjectRequest\x1a\x1e.flwr.proto.PushObjectResponse\"\x00\x12M\n\nPullObject\x12\x1d.flwr.proto.PullObjectRequest\x1a\x1e.flwr.proto.PullObjectResponse\"\x00\x12q\n\x16\x43onfirmMessageReceived\x12).flwr.proto.ConfirmMessageReceivedRequest\x1a*.flwr.proto.ConfirmMessageReceivedResponse\"\x00\x62\x06proto3')
|
|
21
22
|
|
|
22
23
|
_globals = globals()
|
|
23
24
|
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
24
25
|
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'flwr.proto.clientappio_pb2', _globals)
|
|
25
26
|
if _descriptor._USE_C_DESCRIPTORS == False:
|
|
26
27
|
DESCRIPTOR._options = None
|
|
27
|
-
_globals['
|
|
28
|
-
_globals['
|
|
29
|
-
_globals['
|
|
30
|
-
_globals['
|
|
31
|
-
_globals['
|
|
32
|
-
_globals['
|
|
33
|
-
_globals['
|
|
34
|
-
_globals['
|
|
35
|
-
_globals['
|
|
36
|
-
_globals['
|
|
37
|
-
_globals['_PULLCLIENTAPPINPUTSRESPONSE']._serialized_start=303
|
|
38
|
-
_globals['_PULLCLIENTAPPINPUTSRESPONSE']._serialized_end=468
|
|
39
|
-
_globals['_PUSHCLIENTAPPOUTPUTSREQUEST']._serialized_start=470
|
|
40
|
-
_globals['_PUSHCLIENTAPPOUTPUTSREQUEST']._serialized_end=590
|
|
41
|
-
_globals['_PUSHCLIENTAPPOUTPUTSRESPONSE']._serialized_start=592
|
|
42
|
-
_globals['_PUSHCLIENTAPPOUTPUTSRESPONSE']._serialized_end=673
|
|
43
|
-
_globals['_CLIENTAPPIO']._serialized_start=754
|
|
44
|
-
_globals['_CLIENTAPPIO']._serialized_end=1055
|
|
28
|
+
_globals['_GETRUNIDSWITHPENDINGMESSAGESREQUEST']._serialized_start=138
|
|
29
|
+
_globals['_GETRUNIDSWITHPENDINGMESSAGESREQUEST']._serialized_end=175
|
|
30
|
+
_globals['_GETRUNIDSWITHPENDINGMESSAGESRESPONSE']._serialized_start=177
|
|
31
|
+
_globals['_GETRUNIDSWITHPENDINGMESSAGESRESPONSE']._serialized_end=232
|
|
32
|
+
_globals['_REQUESTTOKENREQUEST']._serialized_start=234
|
|
33
|
+
_globals['_REQUESTTOKENREQUEST']._serialized_end=271
|
|
34
|
+
_globals['_REQUESTTOKENRESPONSE']._serialized_start=273
|
|
35
|
+
_globals['_REQUESTTOKENRESPONSE']._serialized_end=310
|
|
36
|
+
_globals['_CLIENTAPPIO']._serialized_start=313
|
|
37
|
+
_globals['_CLIENTAPPIO']._serialized_end=1256
|
|
45
38
|
# @@protoc_insertion_point(module_scope)
|
flwr/proto/clientappio_pb2.pyi
CHANGED
|
@@ -3,130 +3,52 @@
|
|
|
3
3
|
isort:skip_file
|
|
4
4
|
"""
|
|
5
5
|
import builtins
|
|
6
|
-
import flwr.proto.fab_pb2
|
|
7
|
-
import flwr.proto.message_pb2
|
|
8
|
-
import flwr.proto.run_pb2
|
|
9
6
|
import google.protobuf.descriptor
|
|
10
|
-
import google.protobuf.internal.
|
|
7
|
+
import google.protobuf.internal.containers
|
|
11
8
|
import google.protobuf.message
|
|
12
9
|
import typing
|
|
13
10
|
import typing_extensions
|
|
14
11
|
|
|
15
12
|
DESCRIPTOR: google.protobuf.descriptor.FileDescriptor
|
|
16
13
|
|
|
17
|
-
class
|
|
18
|
-
ValueType = typing.NewType('ValueType', builtins.int)
|
|
19
|
-
V: typing_extensions.TypeAlias = ValueType
|
|
20
|
-
class _ClientAppOutputCodeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_ClientAppOutputCode.ValueType], builtins.type):
|
|
21
|
-
DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
|
|
22
|
-
SUCCESS: _ClientAppOutputCode.ValueType # 0
|
|
23
|
-
DEADLINE_EXCEEDED: _ClientAppOutputCode.ValueType # 1
|
|
24
|
-
UNKNOWN_ERROR: _ClientAppOutputCode.ValueType # 2
|
|
25
|
-
class ClientAppOutputCode(_ClientAppOutputCode, metaclass=_ClientAppOutputCodeEnumTypeWrapper):
|
|
26
|
-
pass
|
|
27
|
-
|
|
28
|
-
SUCCESS: ClientAppOutputCode.ValueType # 0
|
|
29
|
-
DEADLINE_EXCEEDED: ClientAppOutputCode.ValueType # 1
|
|
30
|
-
UNKNOWN_ERROR: ClientAppOutputCode.ValueType # 2
|
|
31
|
-
global___ClientAppOutputCode = ClientAppOutputCode
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
class ClientAppOutputStatus(google.protobuf.message.Message):
|
|
35
|
-
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
36
|
-
CODE_FIELD_NUMBER: builtins.int
|
|
37
|
-
MESSAGE_FIELD_NUMBER: builtins.int
|
|
38
|
-
code: global___ClientAppOutputCode.ValueType
|
|
39
|
-
message: typing.Text
|
|
40
|
-
def __init__(self,
|
|
41
|
-
*,
|
|
42
|
-
code: global___ClientAppOutputCode.ValueType = ...,
|
|
43
|
-
message: typing.Text = ...,
|
|
44
|
-
) -> None: ...
|
|
45
|
-
def ClearField(self, field_name: typing_extensions.Literal["code",b"code","message",b"message"]) -> None: ...
|
|
46
|
-
global___ClientAppOutputStatus = ClientAppOutputStatus
|
|
47
|
-
|
|
48
|
-
class GetTokenRequest(google.protobuf.message.Message):
|
|
14
|
+
class GetRunIdsWithPendingMessagesRequest(google.protobuf.message.Message):
|
|
49
15
|
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
50
16
|
def __init__(self,
|
|
51
17
|
) -> None: ...
|
|
52
|
-
|
|
18
|
+
global___GetRunIdsWithPendingMessagesRequest = GetRunIdsWithPendingMessagesRequest
|
|
53
19
|
|
|
54
|
-
class
|
|
20
|
+
class GetRunIdsWithPendingMessagesResponse(google.protobuf.message.Message):
|
|
55
21
|
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
56
|
-
|
|
57
|
-
token: builtins.int
|
|
58
|
-
def __init__(self,
|
|
59
|
-
*,
|
|
60
|
-
token: builtins.int = ...,
|
|
61
|
-
) -> None: ...
|
|
62
|
-
def ClearField(self, field_name: typing_extensions.Literal["token",b"token"]) -> None: ...
|
|
63
|
-
global___GetTokenResponse = GetTokenResponse
|
|
64
|
-
|
|
65
|
-
class PullClientAppInputsRequest(google.protobuf.message.Message):
|
|
66
|
-
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
67
|
-
TOKEN_FIELD_NUMBER: builtins.int
|
|
68
|
-
token: builtins.int
|
|
69
|
-
def __init__(self,
|
|
70
|
-
*,
|
|
71
|
-
token: builtins.int = ...,
|
|
72
|
-
) -> None: ...
|
|
73
|
-
def ClearField(self, field_name: typing_extensions.Literal["token",b"token"]) -> None: ...
|
|
74
|
-
global___PullClientAppInputsRequest = PullClientAppInputsRequest
|
|
75
|
-
|
|
76
|
-
class PullClientAppInputsResponse(google.protobuf.message.Message):
|
|
77
|
-
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
78
|
-
MESSAGE_FIELD_NUMBER: builtins.int
|
|
79
|
-
CONTEXT_FIELD_NUMBER: builtins.int
|
|
80
|
-
RUN_FIELD_NUMBER: builtins.int
|
|
81
|
-
FAB_FIELD_NUMBER: builtins.int
|
|
82
|
-
@property
|
|
83
|
-
def message(self) -> flwr.proto.message_pb2.Message: ...
|
|
84
|
-
@property
|
|
85
|
-
def context(self) -> flwr.proto.message_pb2.Context: ...
|
|
22
|
+
RUN_IDS_FIELD_NUMBER: builtins.int
|
|
86
23
|
@property
|
|
87
|
-
def
|
|
88
|
-
|
|
89
|
-
|
|
24
|
+
def run_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.int]:
|
|
25
|
+
"""List of run IDs"""
|
|
26
|
+
pass
|
|
90
27
|
def __init__(self,
|
|
91
28
|
*,
|
|
92
|
-
|
|
93
|
-
context: typing.Optional[flwr.proto.message_pb2.Context] = ...,
|
|
94
|
-
run: typing.Optional[flwr.proto.run_pb2.Run] = ...,
|
|
95
|
-
fab: typing.Optional[flwr.proto.fab_pb2.Fab] = ...,
|
|
29
|
+
run_ids: typing.Optional[typing.Iterable[builtins.int]] = ...,
|
|
96
30
|
) -> None: ...
|
|
97
|
-
def
|
|
98
|
-
|
|
99
|
-
global___PullClientAppInputsResponse = PullClientAppInputsResponse
|
|
31
|
+
def ClearField(self, field_name: typing_extensions.Literal["run_ids",b"run_ids"]) -> None: ...
|
|
32
|
+
global___GetRunIdsWithPendingMessagesResponse = GetRunIdsWithPendingMessagesResponse
|
|
100
33
|
|
|
101
|
-
class
|
|
34
|
+
class RequestTokenRequest(google.protobuf.message.Message):
|
|
102
35
|
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
CONTEXT_FIELD_NUMBER: builtins.int
|
|
106
|
-
token: builtins.int
|
|
107
|
-
@property
|
|
108
|
-
def message(self) -> flwr.proto.message_pb2.Message: ...
|
|
109
|
-
@property
|
|
110
|
-
def context(self) -> flwr.proto.message_pb2.Context: ...
|
|
36
|
+
RUN_ID_FIELD_NUMBER: builtins.int
|
|
37
|
+
run_id: builtins.int
|
|
111
38
|
def __init__(self,
|
|
112
39
|
*,
|
|
113
|
-
|
|
114
|
-
message: typing.Optional[flwr.proto.message_pb2.Message] = ...,
|
|
115
|
-
context: typing.Optional[flwr.proto.message_pb2.Context] = ...,
|
|
40
|
+
run_id: builtins.int = ...,
|
|
116
41
|
) -> None: ...
|
|
117
|
-
def
|
|
118
|
-
|
|
119
|
-
global___PushClientAppOutputsRequest = PushClientAppOutputsRequest
|
|
42
|
+
def ClearField(self, field_name: typing_extensions.Literal["run_id",b"run_id"]) -> None: ...
|
|
43
|
+
global___RequestTokenRequest = RequestTokenRequest
|
|
120
44
|
|
|
121
|
-
class
|
|
45
|
+
class RequestTokenResponse(google.protobuf.message.Message):
|
|
122
46
|
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
def status(self) -> global___ClientAppOutputStatus: ...
|
|
47
|
+
TOKEN_FIELD_NUMBER: builtins.int
|
|
48
|
+
token: typing.Text
|
|
126
49
|
def __init__(self,
|
|
127
50
|
*,
|
|
128
|
-
|
|
51
|
+
token: typing.Text = ...,
|
|
129
52
|
) -> None: ...
|
|
130
|
-
def
|
|
131
|
-
|
|
132
|
-
global___PushClientAppOutputsResponse = PushClientAppOutputsResponse
|
|
53
|
+
def ClearField(self, field_name: typing_extensions.Literal["token",b"token"]) -> None: ...
|
|
54
|
+
global___RequestTokenResponse = RequestTokenResponse
|