isolate 0.15.0__py3-none-any.whl → 0.16.1__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 isolate might be problematic. Click here for more details.
- isolate/_isolate_version.py +2 -2
- isolate/backends/common.py +1 -1
- isolate/backends/remote.py +1 -0
- isolate/connections/grpc/definitions/agent_pb2.py +3 -3
- isolate/connections/grpc/definitions/agent_pb2_grpc.py +4 -40
- isolate/connections/grpc/definitions/common_pb2.py +3 -3
- isolate/connections/grpc/definitions/common_pb2_grpc.py +0 -25
- isolate/logger.py +0 -3
- isolate/server/definitions/server.proto +1 -0
- isolate/server/definitions/server_pb2.py +32 -32
- isolate/server/definitions/server_pb2.pyi +4 -1
- isolate/server/definitions/server_pb2_grpc.py +20 -96
- isolate/server/health/health_pb2.py +3 -3
- isolate/server/health/health_pb2_grpc.py +8 -54
- isolate/server/server.py +22 -17
- {isolate-0.15.0.dist-info → isolate-0.16.1.dist-info}/METADATA +3 -3
- {isolate-0.15.0.dist-info → isolate-0.16.1.dist-info}/RECORD +21 -21
- {isolate-0.15.0.dist-info → isolate-0.16.1.dist-info}/WHEEL +1 -1
- {isolate-0.15.0.dist-info → isolate-0.16.1.dist-info}/LICENSE +0 -0
- {isolate-0.15.0.dist-info → isolate-0.16.1.dist-info}/entry_points.txt +0 -0
- {isolate-0.15.0.dist-info → isolate-0.16.1.dist-info}/top_level.txt +0 -0
isolate/_isolate_version.py
CHANGED
isolate/backends/common.py
CHANGED
|
@@ -110,7 +110,7 @@ def _io_observer(
|
|
|
110
110
|
|
|
111
111
|
def forward_lines(fd: int) -> None:
|
|
112
112
|
hook = hooks[fd]
|
|
113
|
-
with open(fd, closefd=False) as stream:
|
|
113
|
+
with open(fd, closefd=False, errors="backslashreplace") as stream:
|
|
114
114
|
# TODO: we probably should pass the real line endings
|
|
115
115
|
raw_data = stream.read()
|
|
116
116
|
if not raw_data:
|
isolate/backends/remote.py
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# -*- coding: utf-8 -*-
|
|
2
2
|
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
3
|
# source: agent.proto
|
|
4
|
-
# Protobuf Python Version:
|
|
4
|
+
# Protobuf Python Version: 4.25.1
|
|
5
5
|
"""Generated protocol buffer code."""
|
|
6
6
|
from google.protobuf import descriptor as _descriptor
|
|
7
7
|
from google.protobuf import descriptor_pool as _descriptor_pool
|
|
@@ -20,8 +20,8 @@ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0b\x61gent.proto
|
|
|
20
20
|
_globals = globals()
|
|
21
21
|
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
22
22
|
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'agent_pb2', _globals)
|
|
23
|
-
if
|
|
24
|
-
DESCRIPTOR.
|
|
23
|
+
if _descriptor._USE_C_DESCRIPTORS == False:
|
|
24
|
+
DESCRIPTOR._options = None
|
|
25
25
|
_globals['_FUNCTIONCALL']._serialized_start=29
|
|
26
26
|
_globals['_FUNCTIONCALL']._serialized_end=139
|
|
27
27
|
_globals['_AGENT']._serialized_start=141
|
|
@@ -1,35 +1,10 @@
|
|
|
1
1
|
# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
|
|
2
2
|
"""Client and server classes corresponding to protobuf-defined services."""
|
|
3
3
|
import grpc
|
|
4
|
-
import warnings
|
|
5
4
|
|
|
6
5
|
from isolate.connections.grpc.definitions import agent_pb2 as agent__pb2
|
|
7
6
|
from isolate.connections.grpc.definitions import common_pb2 as common__pb2
|
|
8
7
|
|
|
9
|
-
GRPC_GENERATED_VERSION = '1.64.0'
|
|
10
|
-
GRPC_VERSION = grpc.__version__
|
|
11
|
-
EXPECTED_ERROR_RELEASE = '1.65.0'
|
|
12
|
-
SCHEDULED_RELEASE_DATE = 'June 25, 2024'
|
|
13
|
-
_version_not_supported = False
|
|
14
|
-
|
|
15
|
-
try:
|
|
16
|
-
from grpc._utilities import first_version_is_lower
|
|
17
|
-
_version_not_supported = first_version_is_lower(GRPC_VERSION, GRPC_GENERATED_VERSION)
|
|
18
|
-
except ImportError:
|
|
19
|
-
_version_not_supported = True
|
|
20
|
-
|
|
21
|
-
if _version_not_supported:
|
|
22
|
-
warnings.warn(
|
|
23
|
-
f'The grpc package installed is at version {GRPC_VERSION},'
|
|
24
|
-
+ f' but the generated code in agent_pb2_grpc.py depends on'
|
|
25
|
-
+ f' grpcio>={GRPC_GENERATED_VERSION}.'
|
|
26
|
-
+ f' Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}'
|
|
27
|
-
+ f' or downgrade your generated code using grpcio-tools<={GRPC_VERSION}.'
|
|
28
|
-
+ f' This warning will become an error in {EXPECTED_ERROR_RELEASE},'
|
|
29
|
-
+ f' scheduled for release on {SCHEDULED_RELEASE_DATE}.',
|
|
30
|
-
RuntimeWarning
|
|
31
|
-
)
|
|
32
|
-
|
|
33
8
|
|
|
34
9
|
class AgentStub(object):
|
|
35
10
|
"""Missing associated documentation comment in .proto file."""
|
|
@@ -44,7 +19,7 @@ class AgentStub(object):
|
|
|
44
19
|
'/Agent/Run',
|
|
45
20
|
request_serializer=agent__pb2.FunctionCall.SerializeToString,
|
|
46
21
|
response_deserializer=common__pb2.PartialRunResult.FromString,
|
|
47
|
-
|
|
22
|
+
)
|
|
48
23
|
|
|
49
24
|
|
|
50
25
|
class AgentServicer(object):
|
|
@@ -69,7 +44,6 @@ def add_AgentServicer_to_server(servicer, server):
|
|
|
69
44
|
generic_handler = grpc.method_handlers_generic_handler(
|
|
70
45
|
'Agent', rpc_method_handlers)
|
|
71
46
|
server.add_generic_rpc_handlers((generic_handler,))
|
|
72
|
-
server.add_registered_method_handlers('Agent', rpc_method_handlers)
|
|
73
47
|
|
|
74
48
|
|
|
75
49
|
# This class is part of an EXPERIMENTAL API.
|
|
@@ -87,18 +61,8 @@ class Agent(object):
|
|
|
87
61
|
wait_for_ready=None,
|
|
88
62
|
timeout=None,
|
|
89
63
|
metadata=None):
|
|
90
|
-
return grpc.experimental.unary_stream(
|
|
91
|
-
request,
|
|
92
|
-
target,
|
|
93
|
-
'/Agent/Run',
|
|
64
|
+
return grpc.experimental.unary_stream(request, target, '/Agent/Run',
|
|
94
65
|
agent__pb2.FunctionCall.SerializeToString,
|
|
95
66
|
common__pb2.PartialRunResult.FromString,
|
|
96
|
-
options,
|
|
97
|
-
|
|
98
|
-
insecure,
|
|
99
|
-
call_credentials,
|
|
100
|
-
compression,
|
|
101
|
-
wait_for_ready,
|
|
102
|
-
timeout,
|
|
103
|
-
metadata,
|
|
104
|
-
_registered_method=True)
|
|
67
|
+
options, channel_credentials,
|
|
68
|
+
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# -*- coding: utf-8 -*-
|
|
2
2
|
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
3
|
# source: common.proto
|
|
4
|
-
# Protobuf Python Version:
|
|
4
|
+
# Protobuf Python Version: 4.25.1
|
|
5
5
|
"""Generated protocol buffer code."""
|
|
6
6
|
from google.protobuf import descriptor as _descriptor
|
|
7
7
|
from google.protobuf import descriptor_pool as _descriptor_pool
|
|
@@ -20,8 +20,8 @@ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0c\x63ommon.prot
|
|
|
20
20
|
_globals = globals()
|
|
21
21
|
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
22
22
|
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'common_pb2', _globals)
|
|
23
|
-
if
|
|
24
|
-
DESCRIPTOR.
|
|
23
|
+
if _descriptor._USE_C_DESCRIPTORS == False:
|
|
24
|
+
DESCRIPTOR._options = None
|
|
25
25
|
_globals['_LOGSOURCE']._serialized_start=426
|
|
26
26
|
_globals['_LOGSOURCE']._serialized_end=472
|
|
27
27
|
_globals['_LOGLEVEL']._serialized_start=474
|
|
@@ -1,29 +1,4 @@
|
|
|
1
1
|
# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
|
|
2
2
|
"""Client and server classes corresponding to protobuf-defined services."""
|
|
3
3
|
import grpc
|
|
4
|
-
import warnings
|
|
5
4
|
|
|
6
|
-
|
|
7
|
-
GRPC_GENERATED_VERSION = '1.64.0'
|
|
8
|
-
GRPC_VERSION = grpc.__version__
|
|
9
|
-
EXPECTED_ERROR_RELEASE = '1.65.0'
|
|
10
|
-
SCHEDULED_RELEASE_DATE = 'June 25, 2024'
|
|
11
|
-
_version_not_supported = False
|
|
12
|
-
|
|
13
|
-
try:
|
|
14
|
-
from grpc._utilities import first_version_is_lower
|
|
15
|
-
_version_not_supported = first_version_is_lower(GRPC_VERSION, GRPC_GENERATED_VERSION)
|
|
16
|
-
except ImportError:
|
|
17
|
-
_version_not_supported = True
|
|
18
|
-
|
|
19
|
-
if _version_not_supported:
|
|
20
|
-
warnings.warn(
|
|
21
|
-
f'The grpc package installed is at version {GRPC_VERSION},'
|
|
22
|
-
+ f' but the generated code in common_pb2_grpc.py depends on'
|
|
23
|
-
+ f' grpcio>={GRPC_GENERATED_VERSION}.'
|
|
24
|
-
+ f' Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}'
|
|
25
|
-
+ f' or downgrade your generated code using grpcio-tools<={GRPC_VERSION}.'
|
|
26
|
-
+ f' This warning will become an error in {EXPECTED_ERROR_RELEASE},'
|
|
27
|
-
+ f' scheduled for release on {SCHEDULED_RELEASE_DATE}.',
|
|
28
|
-
RuntimeWarning
|
|
29
|
-
)
|
isolate/logger.py
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# -*- coding: utf-8 -*-
|
|
2
2
|
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
3
|
# source: server.proto
|
|
4
|
-
# Protobuf Python Version:
|
|
4
|
+
# Protobuf Python Version: 4.25.1
|
|
5
5
|
"""Generated protocol buffer code."""
|
|
6
6
|
from google.protobuf import descriptor as _descriptor
|
|
7
7
|
from google.protobuf import descriptor_pool as _descriptor_pool
|
|
@@ -16,41 +16,41 @@ from isolate.connections.grpc.definitions import common_pb2 as common__pb2
|
|
|
16
16
|
from google.protobuf import struct_pb2 as google_dot_protobuf_dot_struct__pb2
|
|
17
17
|
|
|
18
18
|
|
|
19
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0cserver.proto\x1a\x0c\x63ommon.proto\x1a\x1cgoogle/protobuf/struct.proto\"\
|
|
19
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0cserver.proto\x1a\x0c\x63ommon.proto\x1a\x1cgoogle/protobuf/struct.proto\"\xb2\x01\n\rBoundFunction\x12,\n\x0c\x65nvironments\x18\x01 \x03(\x0b\x32\x16.EnvironmentDefinition\x12#\n\x08\x66unction\x18\x02 \x01(\x0b\x32\x11.SerializedObject\x12*\n\nsetup_func\x18\x03 \x01(\x0b\x32\x11.SerializedObjectH\x00\x88\x01\x01\x12\x13\n\x0bstream_logs\x18\x04 \x01(\x08\x42\r\n\x0b_setup_func\"d\n\x15\x45nvironmentDefinition\x12\x0c\n\x04kind\x18\x01 \x01(\t\x12.\n\rconfiguration\x18\x02 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\r\n\x05\x66orce\x18\x03 \x01(\x08\"R\n\rSubmitRequest\x12 \n\x08\x66unction\x18\x01 \x01(\x0b\x32\x0e.BoundFunction\x12\x1f\n\x08metadata\x18\x02 \x01(\x0b\x32\r.TaskMetadata\"{\n\x0cTaskMetadata\x12\x36\n\rlogger_labels\x18\x01 \x03(\x0b\x32\x1f.TaskMetadata.LoggerLabelsEntry\x1a\x33\n\x11LoggerLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"!\n\x0eSubmitResponse\x12\x0f\n\x07task_id\x18\x01 \x01(\t\"F\n\x12SetMetadataRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x1f\n\x08metadata\x18\x02 \x01(\x0b\x32\r.TaskMetadata\"\x15\n\x13SetMetadataResponse\"\r\n\x0bListRequest\"\x1b\n\x08TaskInfo\x12\x0f\n\x07task_id\x18\x01 \x01(\t\"(\n\x0cListResponse\x12\x18\n\x05tasks\x18\x01 \x03(\x0b\x32\t.TaskInfo\" \n\rCancelRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\"\x10\n\x0e\x43\x61ncelResponse2\xf4\x01\n\x07Isolate\x12,\n\x03Run\x12\x0e.BoundFunction\x1a\x11.PartialRunResult\"\x00\x30\x01\x12+\n\x06Submit\x12\x0e.SubmitRequest\x1a\x0f.SubmitResponse\"\x00\x12:\n\x0bSetMetadata\x12\x13.SetMetadataRequest\x1a\x14.SetMetadataResponse\"\x00\x12%\n\x04List\x12\x0c.ListRequest\x1a\r.ListResponse\"\x00\x12+\n\x06\x43\x61ncel\x12\x0e.CancelRequest\x1a\x0f.CancelResponse\"\x00\x62\x06proto3')
|
|
20
20
|
|
|
21
21
|
_globals = globals()
|
|
22
22
|
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
23
23
|
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'server_pb2', _globals)
|
|
24
|
-
if
|
|
25
|
-
DESCRIPTOR.
|
|
26
|
-
_globals['_TASKMETADATA_LOGGERLABELSENTRY'].
|
|
24
|
+
if _descriptor._USE_C_DESCRIPTORS == False:
|
|
25
|
+
DESCRIPTOR._options = None
|
|
26
|
+
_globals['_TASKMETADATA_LOGGERLABELSENTRY']._options = None
|
|
27
27
|
_globals['_TASKMETADATA_LOGGERLABELSENTRY']._serialized_options = b'8\001'
|
|
28
28
|
_globals['_BOUNDFUNCTION']._serialized_start=61
|
|
29
|
-
_globals['_BOUNDFUNCTION']._serialized_end=
|
|
30
|
-
_globals['_ENVIRONMENTDEFINITION']._serialized_start=
|
|
31
|
-
_globals['_ENVIRONMENTDEFINITION']._serialized_end=
|
|
32
|
-
_globals['_SUBMITREQUEST']._serialized_start=
|
|
33
|
-
_globals['_SUBMITREQUEST']._serialized_end=
|
|
34
|
-
_globals['_TASKMETADATA']._serialized_start=
|
|
35
|
-
_globals['_TASKMETADATA']._serialized_end=
|
|
36
|
-
_globals['_TASKMETADATA_LOGGERLABELSENTRY']._serialized_start=
|
|
37
|
-
_globals['_TASKMETADATA_LOGGERLABELSENTRY']._serialized_end=
|
|
38
|
-
_globals['_SUBMITRESPONSE']._serialized_start=
|
|
39
|
-
_globals['_SUBMITRESPONSE']._serialized_end=
|
|
40
|
-
_globals['_SETMETADATAREQUEST']._serialized_start=
|
|
41
|
-
_globals['_SETMETADATAREQUEST']._serialized_end=
|
|
42
|
-
_globals['_SETMETADATARESPONSE']._serialized_start=
|
|
43
|
-
_globals['_SETMETADATARESPONSE']._serialized_end=
|
|
44
|
-
_globals['_LISTREQUEST']._serialized_start=
|
|
45
|
-
_globals['_LISTREQUEST']._serialized_end=
|
|
46
|
-
_globals['_TASKINFO']._serialized_start=
|
|
47
|
-
_globals['_TASKINFO']._serialized_end=
|
|
48
|
-
_globals['_LISTRESPONSE']._serialized_start=
|
|
49
|
-
_globals['_LISTRESPONSE']._serialized_end=
|
|
50
|
-
_globals['_CANCELREQUEST']._serialized_start=
|
|
51
|
-
_globals['_CANCELREQUEST']._serialized_end=
|
|
52
|
-
_globals['_CANCELRESPONSE']._serialized_start=
|
|
53
|
-
_globals['_CANCELRESPONSE']._serialized_end=
|
|
54
|
-
_globals['_ISOLATE']._serialized_start=
|
|
55
|
-
_globals['_ISOLATE']._serialized_end=
|
|
29
|
+
_globals['_BOUNDFUNCTION']._serialized_end=239
|
|
30
|
+
_globals['_ENVIRONMENTDEFINITION']._serialized_start=241
|
|
31
|
+
_globals['_ENVIRONMENTDEFINITION']._serialized_end=341
|
|
32
|
+
_globals['_SUBMITREQUEST']._serialized_start=343
|
|
33
|
+
_globals['_SUBMITREQUEST']._serialized_end=425
|
|
34
|
+
_globals['_TASKMETADATA']._serialized_start=427
|
|
35
|
+
_globals['_TASKMETADATA']._serialized_end=550
|
|
36
|
+
_globals['_TASKMETADATA_LOGGERLABELSENTRY']._serialized_start=499
|
|
37
|
+
_globals['_TASKMETADATA_LOGGERLABELSENTRY']._serialized_end=550
|
|
38
|
+
_globals['_SUBMITRESPONSE']._serialized_start=552
|
|
39
|
+
_globals['_SUBMITRESPONSE']._serialized_end=585
|
|
40
|
+
_globals['_SETMETADATAREQUEST']._serialized_start=587
|
|
41
|
+
_globals['_SETMETADATAREQUEST']._serialized_end=657
|
|
42
|
+
_globals['_SETMETADATARESPONSE']._serialized_start=659
|
|
43
|
+
_globals['_SETMETADATARESPONSE']._serialized_end=680
|
|
44
|
+
_globals['_LISTREQUEST']._serialized_start=682
|
|
45
|
+
_globals['_LISTREQUEST']._serialized_end=695
|
|
46
|
+
_globals['_TASKINFO']._serialized_start=697
|
|
47
|
+
_globals['_TASKINFO']._serialized_end=724
|
|
48
|
+
_globals['_LISTRESPONSE']._serialized_start=726
|
|
49
|
+
_globals['_LISTRESPONSE']._serialized_end=766
|
|
50
|
+
_globals['_CANCELREQUEST']._serialized_start=768
|
|
51
|
+
_globals['_CANCELREQUEST']._serialized_end=800
|
|
52
|
+
_globals['_CANCELRESPONSE']._serialized_start=802
|
|
53
|
+
_globals['_CANCELRESPONSE']._serialized_end=818
|
|
54
|
+
_globals['_ISOLATE']._serialized_start=821
|
|
55
|
+
_globals['_ISOLATE']._serialized_end=1065
|
|
56
56
|
# @@protoc_insertion_point(module_scope)
|
|
@@ -25,21 +25,24 @@ class BoundFunction(google.protobuf.message.Message):
|
|
|
25
25
|
ENVIRONMENTS_FIELD_NUMBER: builtins.int
|
|
26
26
|
FUNCTION_FIELD_NUMBER: builtins.int
|
|
27
27
|
SETUP_FUNC_FIELD_NUMBER: builtins.int
|
|
28
|
+
STREAM_LOGS_FIELD_NUMBER: builtins.int
|
|
28
29
|
@property
|
|
29
30
|
def environments(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___EnvironmentDefinition]: ...
|
|
30
31
|
@property
|
|
31
32
|
def function(self) -> common_pb2.SerializedObject: ...
|
|
32
33
|
@property
|
|
33
34
|
def setup_func(self) -> common_pb2.SerializedObject: ...
|
|
35
|
+
stream_logs: builtins.bool
|
|
34
36
|
def __init__(
|
|
35
37
|
self,
|
|
36
38
|
*,
|
|
37
39
|
environments: collections.abc.Iterable[global___EnvironmentDefinition] | None = ...,
|
|
38
40
|
function: common_pb2.SerializedObject | None = ...,
|
|
39
41
|
setup_func: common_pb2.SerializedObject | None = ...,
|
|
42
|
+
stream_logs: builtins.bool = ...,
|
|
40
43
|
) -> None: ...
|
|
41
44
|
def HasField(self, field_name: typing_extensions.Literal["_setup_func", b"_setup_func", "function", b"function", "setup_func", b"setup_func"]) -> builtins.bool: ...
|
|
42
|
-
def ClearField(self, field_name: typing_extensions.Literal["_setup_func", b"_setup_func", "environments", b"environments", "function", b"function", "setup_func", b"setup_func"]) -> None: ...
|
|
45
|
+
def ClearField(self, field_name: typing_extensions.Literal["_setup_func", b"_setup_func", "environments", b"environments", "function", b"function", "setup_func", b"setup_func", "stream_logs", b"stream_logs"]) -> None: ...
|
|
43
46
|
def WhichOneof(self, oneof_group: typing_extensions.Literal["_setup_func", b"_setup_func"]) -> typing_extensions.Literal["setup_func"] | None: ...
|
|
44
47
|
|
|
45
48
|
global___BoundFunction = BoundFunction
|
|
@@ -1,35 +1,10 @@
|
|
|
1
1
|
# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
|
|
2
2
|
"""Client and server classes corresponding to protobuf-defined services."""
|
|
3
3
|
import grpc
|
|
4
|
-
import warnings
|
|
5
4
|
|
|
6
5
|
from isolate.connections.grpc.definitions import common_pb2 as common__pb2
|
|
7
6
|
from isolate.server.definitions import server_pb2 as server__pb2
|
|
8
7
|
|
|
9
|
-
GRPC_GENERATED_VERSION = '1.64.0'
|
|
10
|
-
GRPC_VERSION = grpc.__version__
|
|
11
|
-
EXPECTED_ERROR_RELEASE = '1.65.0'
|
|
12
|
-
SCHEDULED_RELEASE_DATE = 'June 25, 2024'
|
|
13
|
-
_version_not_supported = False
|
|
14
|
-
|
|
15
|
-
try:
|
|
16
|
-
from grpc._utilities import first_version_is_lower
|
|
17
|
-
_version_not_supported = first_version_is_lower(GRPC_VERSION, GRPC_GENERATED_VERSION)
|
|
18
|
-
except ImportError:
|
|
19
|
-
_version_not_supported = True
|
|
20
|
-
|
|
21
|
-
if _version_not_supported:
|
|
22
|
-
warnings.warn(
|
|
23
|
-
f'The grpc package installed is at version {GRPC_VERSION},'
|
|
24
|
-
+ f' but the generated code in server_pb2_grpc.py depends on'
|
|
25
|
-
+ f' grpcio>={GRPC_GENERATED_VERSION}.'
|
|
26
|
-
+ f' Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}'
|
|
27
|
-
+ f' or downgrade your generated code using grpcio-tools<={GRPC_VERSION}.'
|
|
28
|
-
+ f' This warning will become an error in {EXPECTED_ERROR_RELEASE},'
|
|
29
|
-
+ f' scheduled for release on {SCHEDULED_RELEASE_DATE}.',
|
|
30
|
-
RuntimeWarning
|
|
31
|
-
)
|
|
32
|
-
|
|
33
8
|
|
|
34
9
|
class IsolateStub(object):
|
|
35
10
|
"""Missing associated documentation comment in .proto file."""
|
|
@@ -44,27 +19,27 @@ class IsolateStub(object):
|
|
|
44
19
|
'/Isolate/Run',
|
|
45
20
|
request_serializer=server__pb2.BoundFunction.SerializeToString,
|
|
46
21
|
response_deserializer=common__pb2.PartialRunResult.FromString,
|
|
47
|
-
|
|
22
|
+
)
|
|
48
23
|
self.Submit = channel.unary_unary(
|
|
49
24
|
'/Isolate/Submit',
|
|
50
25
|
request_serializer=server__pb2.SubmitRequest.SerializeToString,
|
|
51
26
|
response_deserializer=server__pb2.SubmitResponse.FromString,
|
|
52
|
-
|
|
27
|
+
)
|
|
53
28
|
self.SetMetadata = channel.unary_unary(
|
|
54
29
|
'/Isolate/SetMetadata',
|
|
55
30
|
request_serializer=server__pb2.SetMetadataRequest.SerializeToString,
|
|
56
31
|
response_deserializer=server__pb2.SetMetadataResponse.FromString,
|
|
57
|
-
|
|
32
|
+
)
|
|
58
33
|
self.List = channel.unary_unary(
|
|
59
34
|
'/Isolate/List',
|
|
60
35
|
request_serializer=server__pb2.ListRequest.SerializeToString,
|
|
61
36
|
response_deserializer=server__pb2.ListResponse.FromString,
|
|
62
|
-
|
|
37
|
+
)
|
|
63
38
|
self.Cancel = channel.unary_unary(
|
|
64
39
|
'/Isolate/Cancel',
|
|
65
40
|
request_serializer=server__pb2.CancelRequest.SerializeToString,
|
|
66
41
|
response_deserializer=server__pb2.CancelResponse.FromString,
|
|
67
|
-
|
|
42
|
+
)
|
|
68
43
|
|
|
69
44
|
|
|
70
45
|
class IsolateServicer(object):
|
|
@@ -138,7 +113,6 @@ def add_IsolateServicer_to_server(servicer, server):
|
|
|
138
113
|
generic_handler = grpc.method_handlers_generic_handler(
|
|
139
114
|
'Isolate', rpc_method_handlers)
|
|
140
115
|
server.add_generic_rpc_handlers((generic_handler,))
|
|
141
|
-
server.add_registered_method_handlers('Isolate', rpc_method_handlers)
|
|
142
116
|
|
|
143
117
|
|
|
144
118
|
# This class is part of an EXPERIMENTAL API.
|
|
@@ -156,21 +130,11 @@ class Isolate(object):
|
|
|
156
130
|
wait_for_ready=None,
|
|
157
131
|
timeout=None,
|
|
158
132
|
metadata=None):
|
|
159
|
-
return grpc.experimental.unary_stream(
|
|
160
|
-
request,
|
|
161
|
-
target,
|
|
162
|
-
'/Isolate/Run',
|
|
133
|
+
return grpc.experimental.unary_stream(request, target, '/Isolate/Run',
|
|
163
134
|
server__pb2.BoundFunction.SerializeToString,
|
|
164
135
|
common__pb2.PartialRunResult.FromString,
|
|
165
|
-
options,
|
|
166
|
-
|
|
167
|
-
insecure,
|
|
168
|
-
call_credentials,
|
|
169
|
-
compression,
|
|
170
|
-
wait_for_ready,
|
|
171
|
-
timeout,
|
|
172
|
-
metadata,
|
|
173
|
-
_registered_method=True)
|
|
136
|
+
options, channel_credentials,
|
|
137
|
+
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
|
174
138
|
|
|
175
139
|
@staticmethod
|
|
176
140
|
def Submit(request,
|
|
@@ -183,21 +147,11 @@ class Isolate(object):
|
|
|
183
147
|
wait_for_ready=None,
|
|
184
148
|
timeout=None,
|
|
185
149
|
metadata=None):
|
|
186
|
-
return grpc.experimental.unary_unary(
|
|
187
|
-
request,
|
|
188
|
-
target,
|
|
189
|
-
'/Isolate/Submit',
|
|
150
|
+
return grpc.experimental.unary_unary(request, target, '/Isolate/Submit',
|
|
190
151
|
server__pb2.SubmitRequest.SerializeToString,
|
|
191
152
|
server__pb2.SubmitResponse.FromString,
|
|
192
|
-
options,
|
|
193
|
-
|
|
194
|
-
insecure,
|
|
195
|
-
call_credentials,
|
|
196
|
-
compression,
|
|
197
|
-
wait_for_ready,
|
|
198
|
-
timeout,
|
|
199
|
-
metadata,
|
|
200
|
-
_registered_method=True)
|
|
153
|
+
options, channel_credentials,
|
|
154
|
+
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
|
201
155
|
|
|
202
156
|
@staticmethod
|
|
203
157
|
def SetMetadata(request,
|
|
@@ -210,21 +164,11 @@ class Isolate(object):
|
|
|
210
164
|
wait_for_ready=None,
|
|
211
165
|
timeout=None,
|
|
212
166
|
metadata=None):
|
|
213
|
-
return grpc.experimental.unary_unary(
|
|
214
|
-
request,
|
|
215
|
-
target,
|
|
216
|
-
'/Isolate/SetMetadata',
|
|
167
|
+
return grpc.experimental.unary_unary(request, target, '/Isolate/SetMetadata',
|
|
217
168
|
server__pb2.SetMetadataRequest.SerializeToString,
|
|
218
169
|
server__pb2.SetMetadataResponse.FromString,
|
|
219
|
-
options,
|
|
220
|
-
|
|
221
|
-
insecure,
|
|
222
|
-
call_credentials,
|
|
223
|
-
compression,
|
|
224
|
-
wait_for_ready,
|
|
225
|
-
timeout,
|
|
226
|
-
metadata,
|
|
227
|
-
_registered_method=True)
|
|
170
|
+
options, channel_credentials,
|
|
171
|
+
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
|
228
172
|
|
|
229
173
|
@staticmethod
|
|
230
174
|
def List(request,
|
|
@@ -237,21 +181,11 @@ class Isolate(object):
|
|
|
237
181
|
wait_for_ready=None,
|
|
238
182
|
timeout=None,
|
|
239
183
|
metadata=None):
|
|
240
|
-
return grpc.experimental.unary_unary(
|
|
241
|
-
request,
|
|
242
|
-
target,
|
|
243
|
-
'/Isolate/List',
|
|
184
|
+
return grpc.experimental.unary_unary(request, target, '/Isolate/List',
|
|
244
185
|
server__pb2.ListRequest.SerializeToString,
|
|
245
186
|
server__pb2.ListResponse.FromString,
|
|
246
|
-
options,
|
|
247
|
-
|
|
248
|
-
insecure,
|
|
249
|
-
call_credentials,
|
|
250
|
-
compression,
|
|
251
|
-
wait_for_ready,
|
|
252
|
-
timeout,
|
|
253
|
-
metadata,
|
|
254
|
-
_registered_method=True)
|
|
187
|
+
options, channel_credentials,
|
|
188
|
+
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
|
255
189
|
|
|
256
190
|
@staticmethod
|
|
257
191
|
def Cancel(request,
|
|
@@ -264,18 +198,8 @@ class Isolate(object):
|
|
|
264
198
|
wait_for_ready=None,
|
|
265
199
|
timeout=None,
|
|
266
200
|
metadata=None):
|
|
267
|
-
return grpc.experimental.unary_unary(
|
|
268
|
-
request,
|
|
269
|
-
target,
|
|
270
|
-
'/Isolate/Cancel',
|
|
201
|
+
return grpc.experimental.unary_unary(request, target, '/Isolate/Cancel',
|
|
271
202
|
server__pb2.CancelRequest.SerializeToString,
|
|
272
203
|
server__pb2.CancelResponse.FromString,
|
|
273
|
-
options,
|
|
274
|
-
|
|
275
|
-
insecure,
|
|
276
|
-
call_credentials,
|
|
277
|
-
compression,
|
|
278
|
-
wait_for_ready,
|
|
279
|
-
timeout,
|
|
280
|
-
metadata,
|
|
281
|
-
_registered_method=True)
|
|
204
|
+
options, channel_credentials,
|
|
205
|
+
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# -*- coding: utf-8 -*-
|
|
2
2
|
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
3
|
# source: health.proto
|
|
4
|
-
# Protobuf Python Version:
|
|
4
|
+
# Protobuf Python Version: 4.25.1
|
|
5
5
|
"""Generated protocol buffer code."""
|
|
6
6
|
from google.protobuf import descriptor as _descriptor
|
|
7
7
|
from google.protobuf import descriptor_pool as _descriptor_pool
|
|
@@ -19,8 +19,8 @@ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0chealth.proto\x
|
|
|
19
19
|
_globals = globals()
|
|
20
20
|
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
21
21
|
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'health_pb2', _globals)
|
|
22
|
-
if
|
|
23
|
-
DESCRIPTOR.
|
|
22
|
+
if _descriptor._USE_C_DESCRIPTORS == False:
|
|
23
|
+
DESCRIPTOR._options = None
|
|
24
24
|
_globals['_HEALTHCHECKREQUEST']._serialized_start=32
|
|
25
25
|
_globals['_HEALTHCHECKREQUEST']._serialized_end=69
|
|
26
26
|
_globals['_HEALTHCHECKRESPONSE']._serialized_start=72
|
|
@@ -1,34 +1,9 @@
|
|
|
1
1
|
# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
|
|
2
2
|
"""Client and server classes corresponding to protobuf-defined services."""
|
|
3
3
|
import grpc
|
|
4
|
-
import warnings
|
|
5
4
|
|
|
6
5
|
from isolate.server.health import health_pb2 as health__pb2
|
|
7
6
|
|
|
8
|
-
GRPC_GENERATED_VERSION = '1.64.0'
|
|
9
|
-
GRPC_VERSION = grpc.__version__
|
|
10
|
-
EXPECTED_ERROR_RELEASE = '1.65.0'
|
|
11
|
-
SCHEDULED_RELEASE_DATE = 'June 25, 2024'
|
|
12
|
-
_version_not_supported = False
|
|
13
|
-
|
|
14
|
-
try:
|
|
15
|
-
from grpc._utilities import first_version_is_lower
|
|
16
|
-
_version_not_supported = first_version_is_lower(GRPC_VERSION, GRPC_GENERATED_VERSION)
|
|
17
|
-
except ImportError:
|
|
18
|
-
_version_not_supported = True
|
|
19
|
-
|
|
20
|
-
if _version_not_supported:
|
|
21
|
-
warnings.warn(
|
|
22
|
-
f'The grpc package installed is at version {GRPC_VERSION},'
|
|
23
|
-
+ f' but the generated code in health_pb2_grpc.py depends on'
|
|
24
|
-
+ f' grpcio>={GRPC_GENERATED_VERSION}.'
|
|
25
|
-
+ f' Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}'
|
|
26
|
-
+ f' or downgrade your generated code using grpcio-tools<={GRPC_VERSION}.'
|
|
27
|
-
+ f' This warning will become an error in {EXPECTED_ERROR_RELEASE},'
|
|
28
|
-
+ f' scheduled for release on {SCHEDULED_RELEASE_DATE}.',
|
|
29
|
-
RuntimeWarning
|
|
30
|
-
)
|
|
31
|
-
|
|
32
7
|
|
|
33
8
|
class HealthStub(object):
|
|
34
9
|
"""Missing associated documentation comment in .proto file."""
|
|
@@ -43,12 +18,12 @@ class HealthStub(object):
|
|
|
43
18
|
'/grpc.health.v1.Health/Check',
|
|
44
19
|
request_serializer=health__pb2.HealthCheckRequest.SerializeToString,
|
|
45
20
|
response_deserializer=health__pb2.HealthCheckResponse.FromString,
|
|
46
|
-
|
|
21
|
+
)
|
|
47
22
|
self.Watch = channel.unary_stream(
|
|
48
23
|
'/grpc.health.v1.Health/Watch',
|
|
49
24
|
request_serializer=health__pb2.HealthCheckRequest.SerializeToString,
|
|
50
25
|
response_deserializer=health__pb2.HealthCheckResponse.FromString,
|
|
51
|
-
|
|
26
|
+
)
|
|
52
27
|
|
|
53
28
|
|
|
54
29
|
class HealthServicer(object):
|
|
@@ -83,7 +58,6 @@ def add_HealthServicer_to_server(servicer, server):
|
|
|
83
58
|
generic_handler = grpc.method_handlers_generic_handler(
|
|
84
59
|
'grpc.health.v1.Health', rpc_method_handlers)
|
|
85
60
|
server.add_generic_rpc_handlers((generic_handler,))
|
|
86
|
-
server.add_registered_method_handlers('grpc.health.v1.Health', rpc_method_handlers)
|
|
87
61
|
|
|
88
62
|
|
|
89
63
|
# This class is part of an EXPERIMENTAL API.
|
|
@@ -101,21 +75,11 @@ class Health(object):
|
|
|
101
75
|
wait_for_ready=None,
|
|
102
76
|
timeout=None,
|
|
103
77
|
metadata=None):
|
|
104
|
-
return grpc.experimental.unary_unary(
|
|
105
|
-
request,
|
|
106
|
-
target,
|
|
107
|
-
'/grpc.health.v1.Health/Check',
|
|
78
|
+
return grpc.experimental.unary_unary(request, target, '/grpc.health.v1.Health/Check',
|
|
108
79
|
health__pb2.HealthCheckRequest.SerializeToString,
|
|
109
80
|
health__pb2.HealthCheckResponse.FromString,
|
|
110
|
-
options,
|
|
111
|
-
|
|
112
|
-
insecure,
|
|
113
|
-
call_credentials,
|
|
114
|
-
compression,
|
|
115
|
-
wait_for_ready,
|
|
116
|
-
timeout,
|
|
117
|
-
metadata,
|
|
118
|
-
_registered_method=True)
|
|
81
|
+
options, channel_credentials,
|
|
82
|
+
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
|
119
83
|
|
|
120
84
|
@staticmethod
|
|
121
85
|
def Watch(request,
|
|
@@ -128,18 +92,8 @@ class Health(object):
|
|
|
128
92
|
wait_for_ready=None,
|
|
129
93
|
timeout=None,
|
|
130
94
|
metadata=None):
|
|
131
|
-
return grpc.experimental.unary_stream(
|
|
132
|
-
request,
|
|
133
|
-
target,
|
|
134
|
-
'/grpc.health.v1.Health/Watch',
|
|
95
|
+
return grpc.experimental.unary_stream(request, target, '/grpc.health.v1.Health/Watch',
|
|
135
96
|
health__pb2.HealthCheckRequest.SerializeToString,
|
|
136
97
|
health__pb2.HealthCheckResponse.FromString,
|
|
137
|
-
options,
|
|
138
|
-
|
|
139
|
-
insecure,
|
|
140
|
-
call_credentials,
|
|
141
|
-
compression,
|
|
142
|
-
wait_for_ready,
|
|
143
|
-
timeout,
|
|
144
|
-
metadata,
|
|
145
|
-
_registered_method=True)
|
|
98
|
+
options, channel_credentials,
|
|
99
|
+
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
isolate/server/server.py
CHANGED
|
@@ -29,7 +29,7 @@ from isolate.backends.local import LocalPythonEnvironment
|
|
|
29
29
|
from isolate.backends.virtualenv import VirtualPythonEnvironment
|
|
30
30
|
from isolate.connections.grpc import AgentError, LocalPythonGRPC
|
|
31
31
|
from isolate.connections.grpc.configuration import get_default_options
|
|
32
|
-
from isolate.logger import
|
|
32
|
+
from isolate.logger import IsolateLogger
|
|
33
33
|
from isolate.logs import Log, LogLevel, LogSource
|
|
34
34
|
from isolate.server import definitions, health
|
|
35
35
|
from isolate.server.health_server import HealthServicer
|
|
@@ -72,7 +72,7 @@ class GRPCException(Exception):
|
|
|
72
72
|
@dataclass
|
|
73
73
|
class RunnerAgent:
|
|
74
74
|
stub: definitions.AgentStub
|
|
75
|
-
message_queue: Queue
|
|
75
|
+
message_queue: Queue[definitions.PartialRunResult]
|
|
76
76
|
_bound_context: ExitStack
|
|
77
77
|
_channel_state_history: list[grpc.ChannelConnectivity] = field(default_factory=list)
|
|
78
78
|
|
|
@@ -175,7 +175,7 @@ class RunTask:
|
|
|
175
175
|
request: definitions.BoundFunction
|
|
176
176
|
future: futures.Future | None = None
|
|
177
177
|
agent: RunnerAgent | None = None
|
|
178
|
-
logger: IsolateLogger =
|
|
178
|
+
logger: IsolateLogger = field(default_factory=IsolateLogger.from_env)
|
|
179
179
|
|
|
180
180
|
def cancel(self):
|
|
181
181
|
while True:
|
|
@@ -188,6 +188,10 @@ class RunTask:
|
|
|
188
188
|
except futures.TimeoutError:
|
|
189
189
|
pass
|
|
190
190
|
|
|
191
|
+
@property
|
|
192
|
+
def stream_logs(self) -> bool:
|
|
193
|
+
return self.request.stream_logs
|
|
194
|
+
|
|
191
195
|
|
|
192
196
|
@dataclass
|
|
193
197
|
class IsolateServicer(definitions.IsolateServicer):
|
|
@@ -277,6 +281,7 @@ class IsolateServicer(definitions.IsolateServicer):
|
|
|
277
281
|
|
|
278
282
|
future = local_pool.submit(
|
|
279
283
|
_proxy_to_queue,
|
|
284
|
+
# The agent may have been cached, so use the agent's message queue
|
|
280
285
|
queue=agent.message_queue,
|
|
281
286
|
bridge=agent.stub,
|
|
282
287
|
input=function_call,
|
|
@@ -324,16 +329,9 @@ class IsolateServicer(definitions.IsolateServicer):
|
|
|
324
329
|
request: definitions.SubmitRequest,
|
|
325
330
|
context: ServicerContext,
|
|
326
331
|
) -> definitions.SubmitResponse:
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
logger_labels_dict = dict(request.metadata.logger_labels)
|
|
330
|
-
try:
|
|
331
|
-
logger = IsolateLogger.with_env_expanded(logger_labels_dict)
|
|
332
|
-
except BaseException:
|
|
333
|
-
# Ignore the error if the logger couldn't be created.
|
|
334
|
-
pass
|
|
332
|
+
task = RunTask(request=request.function)
|
|
333
|
+
self.set_metadata(task, request.metadata)
|
|
335
334
|
|
|
336
|
-
task = RunTask(request=request.function, logger=logger)
|
|
337
335
|
task.future = RUNNER_THREAD_POOL.submit(self._run_task_in_background, task)
|
|
338
336
|
task_id = str(uuid.uuid4())
|
|
339
337
|
|
|
@@ -365,21 +363,23 @@ class IsolateServicer(definitions.IsolateServicer):
|
|
|
365
363
|
StatusCode.NOT_FOUND,
|
|
366
364
|
)
|
|
367
365
|
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
task.logger.extra_labels = dict(request.metadata.logger_labels)
|
|
366
|
+
self.set_metadata(self.background_tasks[request.task_id], request.metadata)
|
|
371
367
|
|
|
372
368
|
return definitions.SetMetadataResponse()
|
|
373
369
|
|
|
370
|
+
def set_metadata(self, task: RunTask, metadata: definitions.TaskMetadata) -> None:
|
|
371
|
+
task.logger.extra_labels = dict(metadata.logger_labels)
|
|
372
|
+
|
|
374
373
|
def Run(
|
|
375
374
|
self,
|
|
376
375
|
request: definitions.BoundFunction,
|
|
377
376
|
context: ServicerContext,
|
|
378
377
|
) -> Iterator[definitions.PartialRunResult]:
|
|
379
378
|
try:
|
|
380
|
-
# HACK: we can support only one task at a time for Run
|
|
381
|
-
# TODO: move away from this when we use submit for env-aware tasks
|
|
382
379
|
task = RunTask(request=request)
|
|
380
|
+
|
|
381
|
+
# HACK: we can support only one task at a time
|
|
382
|
+
# TODO: move away from this when we use submit for env-aware tasks
|
|
383
383
|
self.background_tasks["RUN"] = task
|
|
384
384
|
yield from self._run_task(task)
|
|
385
385
|
except GRPCException as exc:
|
|
@@ -495,6 +495,11 @@ class LogHandler:
|
|
|
495
495
|
self._add_log_to_queue(log)
|
|
496
496
|
|
|
497
497
|
def _add_log_to_queue(self, log: Log) -> None:
|
|
498
|
+
if not self.task.stream_logs:
|
|
499
|
+
# We do not queue the logs if the stream_logs is disabled
|
|
500
|
+
# but still log them to the logger.
|
|
501
|
+
return
|
|
502
|
+
|
|
498
503
|
grpc_log = cast(definitions.Log, to_grpc(log))
|
|
499
504
|
grpc_result = definitions.PartialRunResult(
|
|
500
505
|
is_complete=False,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.2
|
|
2
2
|
Name: isolate
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.16.1
|
|
4
4
|
Summary: Managed isolated environments for Python
|
|
5
5
|
Author-email: Features & Labels <hello@fal.ai>
|
|
6
6
|
Project-URL: Issues, https://github.com/fal-ai/isolate/issues
|
|
@@ -21,7 +21,7 @@ Requires-Dist: isolate[build]; extra == "test"
|
|
|
21
21
|
Requires-Dist: pytest; extra == "test"
|
|
22
22
|
Requires-Dist: cloudpickle>=2.2.0; extra == "test"
|
|
23
23
|
Requires-Dist: dill>=0.3.5.1; extra == "test"
|
|
24
|
-
Requires-Dist:
|
|
24
|
+
Requires-Dist: flaky; extra == "test"
|
|
25
25
|
Provides-Extra: dev
|
|
26
26
|
Requires-Dist: isolate[test]; extra == "dev"
|
|
27
27
|
Requires-Dist: grpcio-tools==1.64.0; extra == "dev"
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
isolate/__init__.py,sha256=uXOKnONs7sXgARNgElwr4_A1sKoA6ACHVEvs3IDiX1M,127
|
|
2
|
-
isolate/_isolate_version.py,sha256=
|
|
2
|
+
isolate/_isolate_version.py,sha256=djn14s8hpDNt1rX_1-rosukF6WH__dfZ71HDUa63720,413
|
|
3
3
|
isolate/_version.py,sha256=05pXvy-yr5t3I1m9JMn42Ilzpg7fa8IB2J8a3G7t1cU,274
|
|
4
|
-
isolate/logger.py,sha256=
|
|
4
|
+
isolate/logger.py,sha256=IXPebob_fV8bl8HAyKcheXcTJocfdWk-v-ujSl13oVA,1718
|
|
5
5
|
isolate/logs.py,sha256=R_AHUVYD18z_PhtK_mDWi9Gch79CxmwHY09hUDShtwg,2079
|
|
6
6
|
isolate/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
7
7
|
isolate/registry.py,sha256=hpzv4HI7iihG5I7i5r8Pb257ibhEKY18xQcG-w1-BgI,1590
|
|
8
8
|
isolate/backends/__init__.py,sha256=LLrSM7UnDFW8tIT5oYlE1wVJrxKcaj_v7cFwvTjQTlc,119
|
|
9
9
|
isolate/backends/_base.py,sha256=Kt5pkhDzXZblq4vxaM3DQTo-Bj-7pIRZFlqJR7OfejY,4112
|
|
10
|
-
isolate/backends/common.py,sha256=
|
|
10
|
+
isolate/backends/common.py,sha256=PEOcOK38nX1sIZzfF2m8kdZi8a31kpIoWr8mamTmj30,8594
|
|
11
11
|
isolate/backends/conda.py,sha256=S5q5bdY787AMTck2iMGtwu-LHMH4a1qCIjNHDKTkqok,7649
|
|
12
12
|
isolate/backends/container.py,sha256=MCQJbcmQvRUS-tTgTW_pKYBMKwSJO2KZsLeaBMXpPC0,1645
|
|
13
13
|
isolate/backends/local.py,sha256=woxe4dmXuEHxWKsGNndoRA1_sP6yG-dg6tlFZni0mZc,1360
|
|
14
14
|
isolate/backends/pyenv.py,sha256=ZwTYoVPIWhS3Y4hN51x95aIOHi15GF7kEDdKTNhlMTE,5434
|
|
15
|
-
isolate/backends/remote.py,sha256=
|
|
15
|
+
isolate/backends/remote.py,sha256=z6QyBiCt8ltv4Zm8IYX3zyMkBH1k8lTowhnD92-Ed2M,4293
|
|
16
16
|
isolate/backends/settings.py,sha256=LvYn4ox9pyFs7bO7WMpDdQHjGOrMn6bdDrHnpfOJyAQ,4443
|
|
17
17
|
isolate/backends/virtualenv.py,sha256=CdzDO4stxNCMbBsNnR1agwyu2FDBDx9UwJWI7bv010k,6992
|
|
18
18
|
isolate/common/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -29,33 +29,33 @@ isolate/connections/grpc/configuration.py,sha256=50YvGGHA9uyKg74xU_gc73j7bsFk973
|
|
|
29
29
|
isolate/connections/grpc/interface.py,sha256=yt63kytgXRXrTnjePGJVdXz4LJJVSSrNkJCF1yz6FIE,2270
|
|
30
30
|
isolate/connections/grpc/definitions/__init__.py,sha256=Z0453Bbjoq-Oxm2Wfi9fae-BFf8YsZwmuh88strmvxo,459
|
|
31
31
|
isolate/connections/grpc/definitions/agent.proto,sha256=Hx11hHc8PKwhWzyasViLeq7JL33KsRex2-iibfWruTw,568
|
|
32
|
-
isolate/connections/grpc/definitions/agent_pb2.py,sha256=
|
|
32
|
+
isolate/connections/grpc/definitions/agent_pb2.py,sha256=zNosgecB47QO57T-RXd2PKbKsXMVXboVW8598Egwvk8,1422
|
|
33
33
|
isolate/connections/grpc/definitions/agent_pb2.pyi,sha256=IKJHEq01DZRIy4xrtpHalJmM56IQCZRxFEOZEs7hCUw,1744
|
|
34
|
-
isolate/connections/grpc/definitions/agent_pb2_grpc.py,sha256=
|
|
34
|
+
isolate/connections/grpc/definitions/agent_pb2_grpc.py,sha256=lmtOSyea6ferlWQi9sZFix9Xua9ejThWUE61i3DAh3A,2428
|
|
35
35
|
isolate/connections/grpc/definitions/common.proto,sha256=4W1upvDIPezNj-Ab6FVNa-7cA9_N-2xJMJpwytRhpCw,1260
|
|
36
|
-
isolate/connections/grpc/definitions/common_pb2.py,sha256=
|
|
36
|
+
isolate/connections/grpc/definitions/common_pb2.py,sha256=PuKLZTnl63Kc6kdp9Gkf5IoTp4iH-pNodS0Ng33Yg3M,2462
|
|
37
37
|
isolate/connections/grpc/definitions/common_pb2.pyi,sha256=J3av86ZHoHR28_5zshqCJ0I7v9WCxuQsvOAin-zig9w,6222
|
|
38
|
-
isolate/connections/grpc/definitions/common_pb2_grpc.py,sha256=
|
|
38
|
+
isolate/connections/grpc/definitions/common_pb2_grpc.py,sha256=1oboBPFxaTEXt9Aw7EAj8gXHDCNMhZD2VXqocC9l_gk,159
|
|
39
39
|
isolate/connections/ipc/__init__.py,sha256=j2Mbsph2mRhAWmkMyrtPOz0VG-e75h1OOZLwzs6pXUo,131
|
|
40
40
|
isolate/connections/ipc/_base.py,sha256=ZhMvOPRGwzuUIWSKGOjbUdj4y22jAc2qG8EuQYfgRVI,8026
|
|
41
41
|
isolate/connections/ipc/agent.py,sha256=hGlL4x78FhRvMZ4DkVh3dk-EmWQqxHW4LIipgyOkw08,7069
|
|
42
42
|
isolate/server/__init__.py,sha256=7R3GuWmxuqe0q28rVqETJN9OCrP_-Svjv9h0NR1GFL0,79
|
|
43
43
|
isolate/server/health_server.py,sha256=yN7F1Q28DdX8-Zk3gef7XcQEE25XwlHwzV5GBM75aQM,1249
|
|
44
44
|
isolate/server/interface.py,sha256=nGbjdxrN0p9m1LNdeds8NIoJOwPYW2NM6ktmbhfG4_s,687
|
|
45
|
-
isolate/server/server.py,sha256=
|
|
45
|
+
isolate/server/server.py,sha256=azbV2yJqX8gOC6p2DIfzQl30pgQg2BePG71I_9Q9qvc,23660
|
|
46
46
|
isolate/server/definitions/__init__.py,sha256=f_Q3pdjMuZrjgNlbM60btFKiB1Vg8cnVyKEbp0RmU0A,572
|
|
47
|
-
isolate/server/definitions/server.proto,sha256=
|
|
48
|
-
isolate/server/definitions/server_pb2.py,sha256=
|
|
49
|
-
isolate/server/definitions/server_pb2.pyi,sha256=
|
|
50
|
-
isolate/server/definitions/server_pb2_grpc.py,sha256
|
|
47
|
+
isolate/server/definitions/server.proto,sha256=_xAqGR2te_EQ8Z95aqRmXL_4Xtcj_LHcnPEI8-FO54o,1787
|
|
48
|
+
isolate/server/definitions/server_pb2.py,sha256=Iu5pAGN89MOponRnTW8FrUkuxEEYvdldUxLuUFJ74zU,4338
|
|
49
|
+
isolate/server/definitions/server_pb2.pyi,sha256=R4m1YE2v_Vrw1FFMbkQBJ4sLM8YkxUxsvFzngqt6JJg,8499
|
|
50
|
+
isolate/server/definitions/server_pb2_grpc.py,sha256=-Whn1yUXWQ4EjfRm6IvyO_Iv0v7fseS0Vv1LbI5dURw,8224
|
|
51
51
|
isolate/server/health/__init__.py,sha256=sy349GRK2YGX9KFKqDxM-jdYtBpMXjZu1QwBkjn0SsM,337
|
|
52
52
|
isolate/server/health/health.proto,sha256=wE2_QD0OQAblKkEBG7sALLXEOj1mOLKG-FbC4tFopWE,455
|
|
53
|
-
isolate/server/health/health_pb2.py,sha256
|
|
53
|
+
isolate/server/health/health_pb2.py,sha256=-fd91wiaZOSJj_zeo55IqxMBsQGuGF-yjZS-Wc1RaS0,1897
|
|
54
54
|
isolate/server/health/health_pb2.pyi,sha256=AK-DPCpJzoYhU6DydD856c0Ywx84x6k-Cs4m6HpNv5A,2459
|
|
55
|
-
isolate/server/health/health_pb2_grpc.py,sha256=
|
|
56
|
-
isolate-0.
|
|
57
|
-
isolate-0.
|
|
58
|
-
isolate-0.
|
|
59
|
-
isolate-0.
|
|
60
|
-
isolate-0.
|
|
61
|
-
isolate-0.
|
|
55
|
+
isolate/server/health/health_pb2_grpc.py,sha256=BrwuS8t4w6K-XVxIdrUQj5Rn0FAMXrYB2iFgUfeXGMM,3913
|
|
56
|
+
isolate-0.16.1.dist-info/LICENSE,sha256=427vuyirL5scgBLqA9UWcdnxKrtSGc0u_JfUupk6lAA,11359
|
|
57
|
+
isolate-0.16.1.dist-info/METADATA,sha256=TJzljjq6ChuaMHUzmTBqYqEJezUkSwtNMsoPlxdM708,3176
|
|
58
|
+
isolate-0.16.1.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
|
|
59
|
+
isolate-0.16.1.dist-info/entry_points.txt,sha256=s3prh2EERaVCbL8R45tfY5WFPZ1TsYOsz305YR7s-Pc,360
|
|
60
|
+
isolate-0.16.1.dist-info/top_level.txt,sha256=W9QJBHcq5WXRkbOXf25bvftzFsOZZN4n1DAatdroZrs,8
|
|
61
|
+
isolate-0.16.1.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|