wool 0.1rc9__py3-none-any.whl → 0.1rc10__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.
Potentially problematic release.
This version of wool might be problematic. Click here for more details.
- wool/__init__.py +71 -50
- wool/_protobuf/__init__.py +12 -5
- wool/_protobuf/exception.py +3 -0
- wool/_protobuf/task.py +11 -0
- wool/_protobuf/task_pb2.py +42 -0
- wool/_protobuf/task_pb2.pyi +43 -0
- wool/_protobuf/{mempool/metadata_pb2_grpc.py → task_pb2_grpc.py} +2 -2
- wool/_protobuf/worker.py +24 -0
- wool/_protobuf/worker_pb2.py +47 -0
- wool/_protobuf/worker_pb2.pyi +39 -0
- wool/_protobuf/worker_pb2_grpc.py +141 -0
- wool/_resource_pool.py +376 -0
- wool/_typing.py +0 -10
- wool/_work.py +553 -0
- wool/_worker.py +843 -169
- wool/_worker_discovery.py +1223 -0
- wool/_worker_pool.py +331 -0
- wool/_worker_proxy.py +515 -0
- {wool-0.1rc9.dist-info → wool-0.1rc10.dist-info}/METADATA +7 -7
- wool-0.1rc10.dist-info/RECORD +22 -0
- wool-0.1rc10.dist-info/entry_points.txt +2 -0
- wool/_cli.py +0 -262
- wool/_event.py +0 -109
- wool/_future.py +0 -171
- wool/_logging.py +0 -44
- wool/_manager.py +0 -181
- wool/_mempool/__init__.py +0 -4
- wool/_mempool/_client.py +0 -167
- wool/_mempool/_mempool.py +0 -311
- wool/_mempool/_metadata.py +0 -35
- wool/_mempool/_service.py +0 -227
- wool/_pool.py +0 -524
- wool/_protobuf/mempool/metadata_pb2.py +0 -36
- wool/_protobuf/mempool/metadata_pb2.pyi +0 -17
- wool/_protobuf/mempool/service_pb2.py +0 -66
- wool/_protobuf/mempool/service_pb2.pyi +0 -108
- wool/_protobuf/mempool/service_pb2_grpc.py +0 -355
- wool/_queue.py +0 -32
- wool/_session.py +0 -429
- wool/_task.py +0 -366
- wool/_utils.py +0 -63
- wool-0.1rc9.dist-info/RECORD +0 -29
- wool-0.1rc9.dist-info/entry_points.txt +0 -2
- {wool-0.1rc9.dist-info → wool-0.1rc10.dist-info}/WHEEL +0 -0
|
@@ -1,108 +0,0 @@
|
|
|
1
|
-
from google.protobuf import descriptor as _descriptor
|
|
2
|
-
from google.protobuf import message as _message
|
|
3
|
-
from collections.abc import Mapping as _Mapping
|
|
4
|
-
from typing import ClassVar as _ClassVar, Optional as _Optional, Union as _Union
|
|
5
|
-
|
|
6
|
-
DESCRIPTOR: _descriptor.FileDescriptor
|
|
7
|
-
|
|
8
|
-
class SessionRequest(_message.Message):
|
|
9
|
-
__slots__ = ()
|
|
10
|
-
def __init__(self) -> None: ...
|
|
11
|
-
|
|
12
|
-
class SessionResponse(_message.Message):
|
|
13
|
-
__slots__ = ("session", "event")
|
|
14
|
-
SESSION_FIELD_NUMBER: _ClassVar[int]
|
|
15
|
-
EVENT_FIELD_NUMBER: _ClassVar[int]
|
|
16
|
-
session: Session
|
|
17
|
-
event: Event
|
|
18
|
-
def __init__(self, session: _Optional[_Union[Session, _Mapping]] = ..., event: _Optional[_Union[Event, _Mapping]] = ...) -> None: ...
|
|
19
|
-
|
|
20
|
-
class AcquireRequest(_message.Message):
|
|
21
|
-
__slots__ = ("reference", "session")
|
|
22
|
-
REFERENCE_FIELD_NUMBER: _ClassVar[int]
|
|
23
|
-
SESSION_FIELD_NUMBER: _ClassVar[int]
|
|
24
|
-
reference: Reference
|
|
25
|
-
session: Session
|
|
26
|
-
def __init__(self, reference: _Optional[_Union[Reference, _Mapping]] = ..., session: _Optional[_Union[Session, _Mapping]] = ...) -> None: ...
|
|
27
|
-
|
|
28
|
-
class AcquireResponse(_message.Message):
|
|
29
|
-
__slots__ = ()
|
|
30
|
-
def __init__(self) -> None: ...
|
|
31
|
-
|
|
32
|
-
class PutRequest(_message.Message):
|
|
33
|
-
__slots__ = ("session", "mutable", "dump")
|
|
34
|
-
SESSION_FIELD_NUMBER: _ClassVar[int]
|
|
35
|
-
MUTABLE_FIELD_NUMBER: _ClassVar[int]
|
|
36
|
-
DUMP_FIELD_NUMBER: _ClassVar[int]
|
|
37
|
-
session: Session
|
|
38
|
-
mutable: bool
|
|
39
|
-
dump: bytes
|
|
40
|
-
def __init__(self, session: _Optional[_Union[Session, _Mapping]] = ..., mutable: bool = ..., dump: _Optional[bytes] = ...) -> None: ...
|
|
41
|
-
|
|
42
|
-
class PutResponse(_message.Message):
|
|
43
|
-
__slots__ = ("reference",)
|
|
44
|
-
REFERENCE_FIELD_NUMBER: _ClassVar[int]
|
|
45
|
-
reference: Reference
|
|
46
|
-
def __init__(self, reference: _Optional[_Union[Reference, _Mapping]] = ...) -> None: ...
|
|
47
|
-
|
|
48
|
-
class PostRequest(_message.Message):
|
|
49
|
-
__slots__ = ("session", "reference", "dump")
|
|
50
|
-
SESSION_FIELD_NUMBER: _ClassVar[int]
|
|
51
|
-
REFERENCE_FIELD_NUMBER: _ClassVar[int]
|
|
52
|
-
DUMP_FIELD_NUMBER: _ClassVar[int]
|
|
53
|
-
session: Session
|
|
54
|
-
reference: Reference
|
|
55
|
-
dump: bytes
|
|
56
|
-
def __init__(self, session: _Optional[_Union[Session, _Mapping]] = ..., reference: _Optional[_Union[Reference, _Mapping]] = ..., dump: _Optional[bytes] = ...) -> None: ...
|
|
57
|
-
|
|
58
|
-
class PostResponse(_message.Message):
|
|
59
|
-
__slots__ = ("updated",)
|
|
60
|
-
UPDATED_FIELD_NUMBER: _ClassVar[int]
|
|
61
|
-
updated: bool
|
|
62
|
-
def __init__(self, updated: bool = ...) -> None: ...
|
|
63
|
-
|
|
64
|
-
class GetRequest(_message.Message):
|
|
65
|
-
__slots__ = ("reference", "session")
|
|
66
|
-
REFERENCE_FIELD_NUMBER: _ClassVar[int]
|
|
67
|
-
SESSION_FIELD_NUMBER: _ClassVar[int]
|
|
68
|
-
reference: Reference
|
|
69
|
-
session: Session
|
|
70
|
-
def __init__(self, reference: _Optional[_Union[Reference, _Mapping]] = ..., session: _Optional[_Union[Session, _Mapping]] = ...) -> None: ...
|
|
71
|
-
|
|
72
|
-
class GetResponse(_message.Message):
|
|
73
|
-
__slots__ = ("dump",)
|
|
74
|
-
DUMP_FIELD_NUMBER: _ClassVar[int]
|
|
75
|
-
dump: bytes
|
|
76
|
-
def __init__(self, dump: _Optional[bytes] = ...) -> None: ...
|
|
77
|
-
|
|
78
|
-
class ReleaseRequest(_message.Message):
|
|
79
|
-
__slots__ = ("reference", "session")
|
|
80
|
-
REFERENCE_FIELD_NUMBER: _ClassVar[int]
|
|
81
|
-
SESSION_FIELD_NUMBER: _ClassVar[int]
|
|
82
|
-
reference: Reference
|
|
83
|
-
session: Session
|
|
84
|
-
def __init__(self, reference: _Optional[_Union[Reference, _Mapping]] = ..., session: _Optional[_Union[Session, _Mapping]] = ...) -> None: ...
|
|
85
|
-
|
|
86
|
-
class ReleaseResponse(_message.Message):
|
|
87
|
-
__slots__ = ()
|
|
88
|
-
def __init__(self) -> None: ...
|
|
89
|
-
|
|
90
|
-
class Reference(_message.Message):
|
|
91
|
-
__slots__ = ("id",)
|
|
92
|
-
ID_FIELD_NUMBER: _ClassVar[int]
|
|
93
|
-
id: str
|
|
94
|
-
def __init__(self, id: _Optional[str] = ...) -> None: ...
|
|
95
|
-
|
|
96
|
-
class Session(_message.Message):
|
|
97
|
-
__slots__ = ("id",)
|
|
98
|
-
ID_FIELD_NUMBER: _ClassVar[int]
|
|
99
|
-
id: str
|
|
100
|
-
def __init__(self, id: _Optional[str] = ...) -> None: ...
|
|
101
|
-
|
|
102
|
-
class Event(_message.Message):
|
|
103
|
-
__slots__ = ("reference", "event_type")
|
|
104
|
-
REFERENCE_FIELD_NUMBER: _ClassVar[int]
|
|
105
|
-
EVENT_TYPE_FIELD_NUMBER: _ClassVar[int]
|
|
106
|
-
reference: Reference
|
|
107
|
-
event_type: str
|
|
108
|
-
def __init__(self, reference: _Optional[_Union[Reference, _Mapping]] = ..., event_type: _Optional[str] = ...) -> None: ...
|
|
@@ -1,355 +0,0 @@
|
|
|
1
|
-
# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
|
|
2
|
-
"""Client and server classes corresponding to protobuf-defined services."""
|
|
3
|
-
import grpc
|
|
4
|
-
import warnings
|
|
5
|
-
|
|
6
|
-
from mempool import service_pb2 as mempool_dot_service__pb2
|
|
7
|
-
|
|
8
|
-
GRPC_GENERATED_VERSION = '1.73.1'
|
|
9
|
-
GRPC_VERSION = grpc.__version__
|
|
10
|
-
_version_not_supported = False
|
|
11
|
-
|
|
12
|
-
try:
|
|
13
|
-
from grpc._utilities import first_version_is_lower
|
|
14
|
-
_version_not_supported = first_version_is_lower(GRPC_VERSION, GRPC_GENERATED_VERSION)
|
|
15
|
-
except ImportError:
|
|
16
|
-
_version_not_supported = True
|
|
17
|
-
|
|
18
|
-
if _version_not_supported:
|
|
19
|
-
raise RuntimeError(
|
|
20
|
-
f'The grpc package installed is at version {GRPC_VERSION},'
|
|
21
|
-
+ f' but the generated code in mempool/service_pb2_grpc.py depends on'
|
|
22
|
-
+ f' grpcio>={GRPC_GENERATED_VERSION}.'
|
|
23
|
-
+ f' Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}'
|
|
24
|
-
+ f' or downgrade your generated code using grpcio-tools<={GRPC_VERSION}.'
|
|
25
|
-
)
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
class MemoryPoolStub(object):
|
|
29
|
-
"""Missing associated documentation comment in .proto file."""
|
|
30
|
-
|
|
31
|
-
def __init__(self, channel):
|
|
32
|
-
"""Constructor.
|
|
33
|
-
|
|
34
|
-
Args:
|
|
35
|
-
channel: A grpc.Channel.
|
|
36
|
-
"""
|
|
37
|
-
self.session = channel.unary_stream(
|
|
38
|
-
'/wool._protobuf.mempool.MemoryPool/session',
|
|
39
|
-
request_serializer=mempool_dot_service__pb2.SessionRequest.SerializeToString,
|
|
40
|
-
response_deserializer=mempool_dot_service__pb2.SessionResponse.FromString,
|
|
41
|
-
_registered_method=True)
|
|
42
|
-
self.acquire = channel.unary_unary(
|
|
43
|
-
'/wool._protobuf.mempool.MemoryPool/acquire',
|
|
44
|
-
request_serializer=mempool_dot_service__pb2.AcquireRequest.SerializeToString,
|
|
45
|
-
response_deserializer=mempool_dot_service__pb2.AcquireResponse.FromString,
|
|
46
|
-
_registered_method=True)
|
|
47
|
-
self.map = channel.unary_unary(
|
|
48
|
-
'/wool._protobuf.mempool.MemoryPool/map',
|
|
49
|
-
request_serializer=mempool_dot_service__pb2.AcquireRequest.SerializeToString,
|
|
50
|
-
response_deserializer=mempool_dot_service__pb2.AcquireResponse.FromString,
|
|
51
|
-
_registered_method=True)
|
|
52
|
-
self.put = channel.unary_unary(
|
|
53
|
-
'/wool._protobuf.mempool.MemoryPool/put',
|
|
54
|
-
request_serializer=mempool_dot_service__pb2.PutRequest.SerializeToString,
|
|
55
|
-
response_deserializer=mempool_dot_service__pb2.PutResponse.FromString,
|
|
56
|
-
_registered_method=True)
|
|
57
|
-
self.post = channel.unary_unary(
|
|
58
|
-
'/wool._protobuf.mempool.MemoryPool/post',
|
|
59
|
-
request_serializer=mempool_dot_service__pb2.PostRequest.SerializeToString,
|
|
60
|
-
response_deserializer=mempool_dot_service__pb2.PostResponse.FromString,
|
|
61
|
-
_registered_method=True)
|
|
62
|
-
self.get = channel.unary_unary(
|
|
63
|
-
'/wool._protobuf.mempool.MemoryPool/get',
|
|
64
|
-
request_serializer=mempool_dot_service__pb2.GetRequest.SerializeToString,
|
|
65
|
-
response_deserializer=mempool_dot_service__pb2.GetResponse.FromString,
|
|
66
|
-
_registered_method=True)
|
|
67
|
-
self.release = channel.unary_unary(
|
|
68
|
-
'/wool._protobuf.mempool.MemoryPool/release',
|
|
69
|
-
request_serializer=mempool_dot_service__pb2.ReleaseRequest.SerializeToString,
|
|
70
|
-
response_deserializer=mempool_dot_service__pb2.ReleaseResponse.FromString,
|
|
71
|
-
_registered_method=True)
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
class MemoryPoolServicer(object):
|
|
75
|
-
"""Missing associated documentation comment in .proto file."""
|
|
76
|
-
|
|
77
|
-
def session(self, request, context):
|
|
78
|
-
"""Missing associated documentation comment in .proto file."""
|
|
79
|
-
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
|
80
|
-
context.set_details('Method not implemented!')
|
|
81
|
-
raise NotImplementedError('Method not implemented!')
|
|
82
|
-
|
|
83
|
-
def acquire(self, request, context):
|
|
84
|
-
"""Missing associated documentation comment in .proto file."""
|
|
85
|
-
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
|
86
|
-
context.set_details('Method not implemented!')
|
|
87
|
-
raise NotImplementedError('Method not implemented!')
|
|
88
|
-
|
|
89
|
-
def map(self, request, context):
|
|
90
|
-
"""Missing associated documentation comment in .proto file."""
|
|
91
|
-
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
|
92
|
-
context.set_details('Method not implemented!')
|
|
93
|
-
raise NotImplementedError('Method not implemented!')
|
|
94
|
-
|
|
95
|
-
def put(self, request, context):
|
|
96
|
-
"""Missing associated documentation comment in .proto file."""
|
|
97
|
-
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
|
98
|
-
context.set_details('Method not implemented!')
|
|
99
|
-
raise NotImplementedError('Method not implemented!')
|
|
100
|
-
|
|
101
|
-
def post(self, request, context):
|
|
102
|
-
"""Missing associated documentation comment in .proto file."""
|
|
103
|
-
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
|
104
|
-
context.set_details('Method not implemented!')
|
|
105
|
-
raise NotImplementedError('Method not implemented!')
|
|
106
|
-
|
|
107
|
-
def get(self, request, context):
|
|
108
|
-
"""Missing associated documentation comment in .proto file."""
|
|
109
|
-
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
|
110
|
-
context.set_details('Method not implemented!')
|
|
111
|
-
raise NotImplementedError('Method not implemented!')
|
|
112
|
-
|
|
113
|
-
def release(self, request, context):
|
|
114
|
-
"""Missing associated documentation comment in .proto file."""
|
|
115
|
-
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
|
116
|
-
context.set_details('Method not implemented!')
|
|
117
|
-
raise NotImplementedError('Method not implemented!')
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
def add_MemoryPoolServicer_to_server(servicer, server):
|
|
121
|
-
rpc_method_handlers = {
|
|
122
|
-
'session': grpc.unary_stream_rpc_method_handler(
|
|
123
|
-
servicer.session,
|
|
124
|
-
request_deserializer=mempool_dot_service__pb2.SessionRequest.FromString,
|
|
125
|
-
response_serializer=mempool_dot_service__pb2.SessionResponse.SerializeToString,
|
|
126
|
-
),
|
|
127
|
-
'acquire': grpc.unary_unary_rpc_method_handler(
|
|
128
|
-
servicer.acquire,
|
|
129
|
-
request_deserializer=mempool_dot_service__pb2.AcquireRequest.FromString,
|
|
130
|
-
response_serializer=mempool_dot_service__pb2.AcquireResponse.SerializeToString,
|
|
131
|
-
),
|
|
132
|
-
'map': grpc.unary_unary_rpc_method_handler(
|
|
133
|
-
servicer.map,
|
|
134
|
-
request_deserializer=mempool_dot_service__pb2.AcquireRequest.FromString,
|
|
135
|
-
response_serializer=mempool_dot_service__pb2.AcquireResponse.SerializeToString,
|
|
136
|
-
),
|
|
137
|
-
'put': grpc.unary_unary_rpc_method_handler(
|
|
138
|
-
servicer.put,
|
|
139
|
-
request_deserializer=mempool_dot_service__pb2.PutRequest.FromString,
|
|
140
|
-
response_serializer=mempool_dot_service__pb2.PutResponse.SerializeToString,
|
|
141
|
-
),
|
|
142
|
-
'post': grpc.unary_unary_rpc_method_handler(
|
|
143
|
-
servicer.post,
|
|
144
|
-
request_deserializer=mempool_dot_service__pb2.PostRequest.FromString,
|
|
145
|
-
response_serializer=mempool_dot_service__pb2.PostResponse.SerializeToString,
|
|
146
|
-
),
|
|
147
|
-
'get': grpc.unary_unary_rpc_method_handler(
|
|
148
|
-
servicer.get,
|
|
149
|
-
request_deserializer=mempool_dot_service__pb2.GetRequest.FromString,
|
|
150
|
-
response_serializer=mempool_dot_service__pb2.GetResponse.SerializeToString,
|
|
151
|
-
),
|
|
152
|
-
'release': grpc.unary_unary_rpc_method_handler(
|
|
153
|
-
servicer.release,
|
|
154
|
-
request_deserializer=mempool_dot_service__pb2.ReleaseRequest.FromString,
|
|
155
|
-
response_serializer=mempool_dot_service__pb2.ReleaseResponse.SerializeToString,
|
|
156
|
-
),
|
|
157
|
-
}
|
|
158
|
-
generic_handler = grpc.method_handlers_generic_handler(
|
|
159
|
-
'wool._protobuf.mempool.MemoryPool', rpc_method_handlers)
|
|
160
|
-
server.add_generic_rpc_handlers((generic_handler,))
|
|
161
|
-
server.add_registered_method_handlers('wool._protobuf.mempool.MemoryPool', rpc_method_handlers)
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
# This class is part of an EXPERIMENTAL API.
|
|
165
|
-
class MemoryPool(object):
|
|
166
|
-
"""Missing associated documentation comment in .proto file."""
|
|
167
|
-
|
|
168
|
-
@staticmethod
|
|
169
|
-
def session(request,
|
|
170
|
-
target,
|
|
171
|
-
options=(),
|
|
172
|
-
channel_credentials=None,
|
|
173
|
-
call_credentials=None,
|
|
174
|
-
insecure=False,
|
|
175
|
-
compression=None,
|
|
176
|
-
wait_for_ready=None,
|
|
177
|
-
timeout=None,
|
|
178
|
-
metadata=None):
|
|
179
|
-
return grpc.experimental.unary_stream(
|
|
180
|
-
request,
|
|
181
|
-
target,
|
|
182
|
-
'/wool._protobuf.mempool.MemoryPool/session',
|
|
183
|
-
mempool_dot_service__pb2.SessionRequest.SerializeToString,
|
|
184
|
-
mempool_dot_service__pb2.SessionResponse.FromString,
|
|
185
|
-
options,
|
|
186
|
-
channel_credentials,
|
|
187
|
-
insecure,
|
|
188
|
-
call_credentials,
|
|
189
|
-
compression,
|
|
190
|
-
wait_for_ready,
|
|
191
|
-
timeout,
|
|
192
|
-
metadata,
|
|
193
|
-
_registered_method=True)
|
|
194
|
-
|
|
195
|
-
@staticmethod
|
|
196
|
-
def acquire(request,
|
|
197
|
-
target,
|
|
198
|
-
options=(),
|
|
199
|
-
channel_credentials=None,
|
|
200
|
-
call_credentials=None,
|
|
201
|
-
insecure=False,
|
|
202
|
-
compression=None,
|
|
203
|
-
wait_for_ready=None,
|
|
204
|
-
timeout=None,
|
|
205
|
-
metadata=None):
|
|
206
|
-
return grpc.experimental.unary_unary(
|
|
207
|
-
request,
|
|
208
|
-
target,
|
|
209
|
-
'/wool._protobuf.mempool.MemoryPool/acquire',
|
|
210
|
-
mempool_dot_service__pb2.AcquireRequest.SerializeToString,
|
|
211
|
-
mempool_dot_service__pb2.AcquireResponse.FromString,
|
|
212
|
-
options,
|
|
213
|
-
channel_credentials,
|
|
214
|
-
insecure,
|
|
215
|
-
call_credentials,
|
|
216
|
-
compression,
|
|
217
|
-
wait_for_ready,
|
|
218
|
-
timeout,
|
|
219
|
-
metadata,
|
|
220
|
-
_registered_method=True)
|
|
221
|
-
|
|
222
|
-
@staticmethod
|
|
223
|
-
def map(request,
|
|
224
|
-
target,
|
|
225
|
-
options=(),
|
|
226
|
-
channel_credentials=None,
|
|
227
|
-
call_credentials=None,
|
|
228
|
-
insecure=False,
|
|
229
|
-
compression=None,
|
|
230
|
-
wait_for_ready=None,
|
|
231
|
-
timeout=None,
|
|
232
|
-
metadata=None):
|
|
233
|
-
return grpc.experimental.unary_unary(
|
|
234
|
-
request,
|
|
235
|
-
target,
|
|
236
|
-
'/wool._protobuf.mempool.MemoryPool/map',
|
|
237
|
-
mempool_dot_service__pb2.AcquireRequest.SerializeToString,
|
|
238
|
-
mempool_dot_service__pb2.AcquireResponse.FromString,
|
|
239
|
-
options,
|
|
240
|
-
channel_credentials,
|
|
241
|
-
insecure,
|
|
242
|
-
call_credentials,
|
|
243
|
-
compression,
|
|
244
|
-
wait_for_ready,
|
|
245
|
-
timeout,
|
|
246
|
-
metadata,
|
|
247
|
-
_registered_method=True)
|
|
248
|
-
|
|
249
|
-
@staticmethod
|
|
250
|
-
def put(request,
|
|
251
|
-
target,
|
|
252
|
-
options=(),
|
|
253
|
-
channel_credentials=None,
|
|
254
|
-
call_credentials=None,
|
|
255
|
-
insecure=False,
|
|
256
|
-
compression=None,
|
|
257
|
-
wait_for_ready=None,
|
|
258
|
-
timeout=None,
|
|
259
|
-
metadata=None):
|
|
260
|
-
return grpc.experimental.unary_unary(
|
|
261
|
-
request,
|
|
262
|
-
target,
|
|
263
|
-
'/wool._protobuf.mempool.MemoryPool/put',
|
|
264
|
-
mempool_dot_service__pb2.PutRequest.SerializeToString,
|
|
265
|
-
mempool_dot_service__pb2.PutResponse.FromString,
|
|
266
|
-
options,
|
|
267
|
-
channel_credentials,
|
|
268
|
-
insecure,
|
|
269
|
-
call_credentials,
|
|
270
|
-
compression,
|
|
271
|
-
wait_for_ready,
|
|
272
|
-
timeout,
|
|
273
|
-
metadata,
|
|
274
|
-
_registered_method=True)
|
|
275
|
-
|
|
276
|
-
@staticmethod
|
|
277
|
-
def post(request,
|
|
278
|
-
target,
|
|
279
|
-
options=(),
|
|
280
|
-
channel_credentials=None,
|
|
281
|
-
call_credentials=None,
|
|
282
|
-
insecure=False,
|
|
283
|
-
compression=None,
|
|
284
|
-
wait_for_ready=None,
|
|
285
|
-
timeout=None,
|
|
286
|
-
metadata=None):
|
|
287
|
-
return grpc.experimental.unary_unary(
|
|
288
|
-
request,
|
|
289
|
-
target,
|
|
290
|
-
'/wool._protobuf.mempool.MemoryPool/post',
|
|
291
|
-
mempool_dot_service__pb2.PostRequest.SerializeToString,
|
|
292
|
-
mempool_dot_service__pb2.PostResponse.FromString,
|
|
293
|
-
options,
|
|
294
|
-
channel_credentials,
|
|
295
|
-
insecure,
|
|
296
|
-
call_credentials,
|
|
297
|
-
compression,
|
|
298
|
-
wait_for_ready,
|
|
299
|
-
timeout,
|
|
300
|
-
metadata,
|
|
301
|
-
_registered_method=True)
|
|
302
|
-
|
|
303
|
-
@staticmethod
|
|
304
|
-
def get(request,
|
|
305
|
-
target,
|
|
306
|
-
options=(),
|
|
307
|
-
channel_credentials=None,
|
|
308
|
-
call_credentials=None,
|
|
309
|
-
insecure=False,
|
|
310
|
-
compression=None,
|
|
311
|
-
wait_for_ready=None,
|
|
312
|
-
timeout=None,
|
|
313
|
-
metadata=None):
|
|
314
|
-
return grpc.experimental.unary_unary(
|
|
315
|
-
request,
|
|
316
|
-
target,
|
|
317
|
-
'/wool._protobuf.mempool.MemoryPool/get',
|
|
318
|
-
mempool_dot_service__pb2.GetRequest.SerializeToString,
|
|
319
|
-
mempool_dot_service__pb2.GetResponse.FromString,
|
|
320
|
-
options,
|
|
321
|
-
channel_credentials,
|
|
322
|
-
insecure,
|
|
323
|
-
call_credentials,
|
|
324
|
-
compression,
|
|
325
|
-
wait_for_ready,
|
|
326
|
-
timeout,
|
|
327
|
-
metadata,
|
|
328
|
-
_registered_method=True)
|
|
329
|
-
|
|
330
|
-
@staticmethod
|
|
331
|
-
def release(request,
|
|
332
|
-
target,
|
|
333
|
-
options=(),
|
|
334
|
-
channel_credentials=None,
|
|
335
|
-
call_credentials=None,
|
|
336
|
-
insecure=False,
|
|
337
|
-
compression=None,
|
|
338
|
-
wait_for_ready=None,
|
|
339
|
-
timeout=None,
|
|
340
|
-
metadata=None):
|
|
341
|
-
return grpc.experimental.unary_unary(
|
|
342
|
-
request,
|
|
343
|
-
target,
|
|
344
|
-
'/wool._protobuf.mempool.MemoryPool/release',
|
|
345
|
-
mempool_dot_service__pb2.ReleaseRequest.SerializeToString,
|
|
346
|
-
mempool_dot_service__pb2.ReleaseResponse.FromString,
|
|
347
|
-
options,
|
|
348
|
-
channel_credentials,
|
|
349
|
-
insecure,
|
|
350
|
-
call_credentials,
|
|
351
|
-
compression,
|
|
352
|
-
wait_for_ready,
|
|
353
|
-
timeout,
|
|
354
|
-
metadata,
|
|
355
|
-
_registered_method=True)
|
wool/_queue.py
DELETED
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
from queue import Queue
|
|
2
|
-
from time import time
|
|
3
|
-
from typing import Generic
|
|
4
|
-
from typing import TypeVar
|
|
5
|
-
|
|
6
|
-
T = TypeVar("T")
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
class TaskQueue(Queue, Generic[T]):
|
|
10
|
-
def __init__(self, maxsize: int = 0, maxidle: int | None = None) -> None:
|
|
11
|
-
if maxidle is not None:
|
|
12
|
-
if maxidle <= -1:
|
|
13
|
-
raise ValueError(f"Max idle must be positive, got {maxidle}")
|
|
14
|
-
super().__init__(maxsize)
|
|
15
|
-
self.last_cleared: float | None = time()
|
|
16
|
-
self.maxidle: int | None = maxidle
|
|
17
|
-
|
|
18
|
-
def put(self, item: T, *args, **kwargs) -> None:
|
|
19
|
-
return super().put(item, *args, **kwargs)
|
|
20
|
-
|
|
21
|
-
def get(self, *args, **kwargs) -> T:
|
|
22
|
-
result = super().get(*args, **kwargs)
|
|
23
|
-
if self.empty():
|
|
24
|
-
self.last_cleared = time()
|
|
25
|
-
return result
|
|
26
|
-
|
|
27
|
-
def idle(self) -> bool:
|
|
28
|
-
return (
|
|
29
|
-
self.last_cleared is not None
|
|
30
|
-
and self.maxidle is not None
|
|
31
|
-
and (time() - self.last_cleared) >= self.maxidle
|
|
32
|
-
)
|