flyte 0.2.0b15__py3-none-any.whl → 0.2.0b17__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 flyte might be problematic. Click here for more details.
- flyte/__init__.py +2 -1
- flyte/_bin/runtime.py +2 -2
- flyte/_deploy.py +13 -2
- flyte/_internal/imagebuild/image_builder.py +14 -0
- flyte/_run.py +4 -6
- flyte/_version.py +2 -2
- flyte/cli/_build.py +117 -0
- flyte/cli/_deploy.py +0 -10
- flyte/cli/main.py +8 -2
- flyte/extras/_container.py +20 -13
- {flyte-0.2.0b15.dist-info → flyte-0.2.0b17.dist-info}/METADATA +1 -1
- {flyte-0.2.0b15.dist-info → flyte-0.2.0b17.dist-info}/RECORD +15 -14
- {flyte-0.2.0b15.dist-info → flyte-0.2.0b17.dist-info}/WHEEL +0 -0
- {flyte-0.2.0b15.dist-info → flyte-0.2.0b17.dist-info}/entry_points.txt +0 -0
- {flyte-0.2.0b15.dist-info → flyte-0.2.0b17.dist-info}/top_level.txt +0 -0
flyte/__init__.py
CHANGED
|
@@ -36,6 +36,7 @@ __all__ = [
|
|
|
36
36
|
"TimeoutType",
|
|
37
37
|
"__version__",
|
|
38
38
|
"build",
|
|
39
|
+
"build_images",
|
|
39
40
|
"ctx",
|
|
40
41
|
"deploy",
|
|
41
42
|
"group",
|
|
@@ -52,7 +53,7 @@ import sys
|
|
|
52
53
|
from ._build import build
|
|
53
54
|
from ._cache import Cache, CachePolicy, CacheRequest
|
|
54
55
|
from ._context import ctx
|
|
55
|
-
from ._deploy import deploy
|
|
56
|
+
from ._deploy import build_images, deploy
|
|
56
57
|
from ._environment import Environment
|
|
57
58
|
from ._excepthook import custom_excepthook
|
|
58
59
|
from ._group import group
|
flyte/_bin/runtime.py
CHANGED
|
@@ -118,9 +118,9 @@ def main(
|
|
|
118
118
|
# File "src/python/grpcio/grpc/_cython/_cygrpc/aio/completion_queue.pyx.pxi", line 147,
|
|
119
119
|
# in grpc._cython.cygrpc.PollerCompletionQueue._handle_events
|
|
120
120
|
# BlockingIOError: [Errno 11] Resource temporarily unavailable
|
|
121
|
-
init(org=org, project=project, domain=domain, **controller_kwargs)
|
|
121
|
+
# init(org=org, project=project, domain=domain, **controller_kwargs)
|
|
122
122
|
# TODO solution is to use a single channel for both controller and reference tasks, but this requires a refactor
|
|
123
|
-
|
|
123
|
+
init()
|
|
124
124
|
# Controller is created with the same kwargs as init, so that it can be used to run tasks
|
|
125
125
|
controller = create_controller(ct="remote", **controller_kwargs)
|
|
126
126
|
|
flyte/_deploy.py
CHANGED
|
@@ -123,7 +123,7 @@ async def _build_image_bg(env_name: str, image: Image) -> Tuple[str, str]:
|
|
|
123
123
|
return env_name, await build.aio(image)
|
|
124
124
|
|
|
125
125
|
|
|
126
|
-
async def
|
|
126
|
+
async def _build_images(deployment: DeploymentPlan) -> ImageCache:
|
|
127
127
|
"""
|
|
128
128
|
Build the images for the given deployment plan and update the environment with the built image.
|
|
129
129
|
"""
|
|
@@ -155,7 +155,7 @@ async def apply(deployment: DeploymentPlan, copy_style: CopyFiles, dryrun: bool
|
|
|
155
155
|
from ._code_bundle import build_code_bundle
|
|
156
156
|
|
|
157
157
|
cfg = get_common_config()
|
|
158
|
-
image_cache = await
|
|
158
|
+
image_cache = await _build_images(deployment)
|
|
159
159
|
|
|
160
160
|
version = deployment.version
|
|
161
161
|
code_bundle = None
|
|
@@ -241,3 +241,14 @@ async def deploy(
|
|
|
241
241
|
raise NotImplementedError("Interactive mode not yet implemented for deployment")
|
|
242
242
|
deployment = plan_deploy(*envs, version=version)
|
|
243
243
|
return await apply(deployment, copy_style=copy_style, dryrun=dryrun)
|
|
244
|
+
|
|
245
|
+
|
|
246
|
+
@syncify
|
|
247
|
+
async def build_images(*envs: Environment) -> ImageCache:
|
|
248
|
+
"""
|
|
249
|
+
Build the images for the given environments.
|
|
250
|
+
:param envs: Environment or list of environments to build images for.
|
|
251
|
+
:return: ImageCache containing the built images.
|
|
252
|
+
"""
|
|
253
|
+
deployment = plan_deploy(*envs)
|
|
254
|
+
return await _build_images(deployment)
|
|
@@ -239,3 +239,17 @@ class ImageCache(BaseModel):
|
|
|
239
239
|
val = cls.model_validate_json(json_str)
|
|
240
240
|
val.serialized_form = s
|
|
241
241
|
return val
|
|
242
|
+
|
|
243
|
+
def repr(self) -> typing.List[typing.List[Tuple[str, str]]]:
|
|
244
|
+
"""
|
|
245
|
+
Returns a detailed representation of the deployed environments.
|
|
246
|
+
"""
|
|
247
|
+
tuples = []
|
|
248
|
+
for k, v in self.image_lookup.items():
|
|
249
|
+
tuples.append(
|
|
250
|
+
[
|
|
251
|
+
("Name", k),
|
|
252
|
+
("image", v),
|
|
253
|
+
]
|
|
254
|
+
)
|
|
255
|
+
return tuples
|
flyte/_run.py
CHANGED
|
@@ -92,7 +92,7 @@ class _Runner:
|
|
|
92
92
|
from flyte.remote._task import LazyEntity
|
|
93
93
|
|
|
94
94
|
from ._code_bundle import build_code_bundle, build_pkl_bundle
|
|
95
|
-
from ._deploy import build_images
|
|
95
|
+
from ._deploy import build_images
|
|
96
96
|
from ._internal.runtime.convert import convert_from_native_to_inputs
|
|
97
97
|
from ._internal.runtime.task_serde import translate_task_to_wire
|
|
98
98
|
from ._protos.common import identifier_pb2
|
|
@@ -110,8 +110,7 @@ class _Runner:
|
|
|
110
110
|
if obj.parent_env is None:
|
|
111
111
|
raise ValueError("Task is not attached to an environment. Please attach the task to an environment")
|
|
112
112
|
|
|
113
|
-
|
|
114
|
-
image_cache = await build_images(deploy_plan)
|
|
113
|
+
image_cache = await build_images.aio(cast(Environment, obj.parent_env()))
|
|
115
114
|
|
|
116
115
|
if self._interactive_mode:
|
|
117
116
|
code_bundle = await build_pkl_bundle(
|
|
@@ -237,7 +236,7 @@ class _Runner:
|
|
|
237
236
|
"""
|
|
238
237
|
import flyte.report
|
|
239
238
|
from flyte._code_bundle import build_code_bundle, build_pkl_bundle
|
|
240
|
-
from flyte._deploy import build_images
|
|
239
|
+
from flyte._deploy import build_images
|
|
241
240
|
from flyte.models import RawDataPath
|
|
242
241
|
from flyte.storage import ABFS, GCS, S3
|
|
243
242
|
|
|
@@ -249,8 +248,7 @@ class _Runner:
|
|
|
249
248
|
if obj.parent_env is None:
|
|
250
249
|
raise ValueError("Task is not attached to an environment. Please attach the task to an environment.")
|
|
251
250
|
|
|
252
|
-
|
|
253
|
-
image_cache = await build_images(deploy_plan)
|
|
251
|
+
image_cache = build_images.aio(cast(Environment, obj.parent_env()))
|
|
254
252
|
|
|
255
253
|
code_bundle = None
|
|
256
254
|
if self._name is not None:
|
flyte/_version.py
CHANGED
|
@@ -17,5 +17,5 @@ __version__: str
|
|
|
17
17
|
__version_tuple__: VERSION_TUPLE
|
|
18
18
|
version_tuple: VERSION_TUPLE
|
|
19
19
|
|
|
20
|
-
__version__ = version = '0.2.
|
|
21
|
-
__version_tuple__ = version_tuple = (0, 2, 0, '
|
|
20
|
+
__version__ = version = '0.2.0b17'
|
|
21
|
+
__version_tuple__ = version_tuple = (0, 2, 0, 'b17')
|
flyte/cli/_build.py
ADDED
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
from dataclasses import dataclass, field, fields
|
|
2
|
+
from pathlib import Path
|
|
3
|
+
from types import ModuleType
|
|
4
|
+
from typing import Any, Dict, List, cast
|
|
5
|
+
|
|
6
|
+
import click
|
|
7
|
+
from click import Context
|
|
8
|
+
|
|
9
|
+
import flyte
|
|
10
|
+
|
|
11
|
+
from . import _common as common
|
|
12
|
+
from ._common import CLIConfig
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
@dataclass
|
|
16
|
+
class BuildArguments:
|
|
17
|
+
noop: bool = field(
|
|
18
|
+
default=False,
|
|
19
|
+
metadata={
|
|
20
|
+
"click.option": click.Option(
|
|
21
|
+
["--noop"],
|
|
22
|
+
type=bool,
|
|
23
|
+
help="Dummy parameter, placeholder for future use. Does not affect the build process.",
|
|
24
|
+
)
|
|
25
|
+
},
|
|
26
|
+
)
|
|
27
|
+
|
|
28
|
+
@classmethod
|
|
29
|
+
def from_dict(cls, d: Dict[str, Any]) -> "BuildArguments":
|
|
30
|
+
return cls(**d)
|
|
31
|
+
|
|
32
|
+
@classmethod
|
|
33
|
+
def options(cls) -> List[click.Option]:
|
|
34
|
+
"""
|
|
35
|
+
Return the set of base parameters added to every flyte run workflow subcommand.
|
|
36
|
+
"""
|
|
37
|
+
return [common.get_option_from_metadata(f.metadata) for f in fields(cls) if f.metadata]
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
class BuildEnvCommand(click.Command):
|
|
41
|
+
def __init__(self, obj_name: str, obj: Any, build_args: BuildArguments, *args, **kwargs):
|
|
42
|
+
self.obj_name = obj_name
|
|
43
|
+
self.obj = obj
|
|
44
|
+
self.build_args = build_args
|
|
45
|
+
super().__init__(*args, **kwargs)
|
|
46
|
+
|
|
47
|
+
def invoke(self, ctx: Context):
|
|
48
|
+
from rich.console import Console
|
|
49
|
+
|
|
50
|
+
console = Console()
|
|
51
|
+
console.print(f"Building Environment: {self.obj_name}")
|
|
52
|
+
obj: CLIConfig = ctx.obj
|
|
53
|
+
obj.init()
|
|
54
|
+
with console.status("Building...", spinner="dots"):
|
|
55
|
+
image_cache = flyte.build_images(self.obj)
|
|
56
|
+
|
|
57
|
+
console.print(common.get_table("Images", image_cache.repr()))
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
class EnvPerFileGroup(common.ObjectsPerFileGroup):
|
|
61
|
+
"""
|
|
62
|
+
Group that creates a command for each task in the current directory that is not `__init__.py`.
|
|
63
|
+
"""
|
|
64
|
+
|
|
65
|
+
def __init__(self, filename: Path, build_args: BuildArguments, *args, **kwargs):
|
|
66
|
+
args = (filename, *args)
|
|
67
|
+
super().__init__(*args, **kwargs)
|
|
68
|
+
self.build_args = build_args
|
|
69
|
+
|
|
70
|
+
def _filter_objects(self, module: ModuleType) -> Dict[str, Any]:
|
|
71
|
+
return {k: v for k, v in module.__dict__.items() if isinstance(v, flyte.Environment)}
|
|
72
|
+
|
|
73
|
+
def _get_command_for_obj(self, ctx: click.Context, obj_name: str, obj: Any) -> click.Command:
|
|
74
|
+
obj = cast(flyte.Environment, obj)
|
|
75
|
+
return BuildEnvCommand(
|
|
76
|
+
name=obj_name,
|
|
77
|
+
obj_name=obj_name,
|
|
78
|
+
obj=obj,
|
|
79
|
+
help=f"{obj.name}" + (f": {obj.description}" if obj.description else ""),
|
|
80
|
+
build_args=self.build_args,
|
|
81
|
+
)
|
|
82
|
+
|
|
83
|
+
|
|
84
|
+
class EnvFiles(common.FileGroup):
|
|
85
|
+
"""
|
|
86
|
+
Group that creates a command for each file in the current directory that is not `__init__.py`.
|
|
87
|
+
"""
|
|
88
|
+
|
|
89
|
+
common_options_enabled = False
|
|
90
|
+
|
|
91
|
+
def __init__(
|
|
92
|
+
self,
|
|
93
|
+
*args,
|
|
94
|
+
**kwargs,
|
|
95
|
+
):
|
|
96
|
+
if "params" not in kwargs:
|
|
97
|
+
kwargs["params"] = []
|
|
98
|
+
kwargs["params"].extend(BuildArguments.options())
|
|
99
|
+
super().__init__(*args, **kwargs)
|
|
100
|
+
|
|
101
|
+
def get_command(self, ctx, filename):
|
|
102
|
+
build_args = BuildArguments.from_dict(ctx.params)
|
|
103
|
+
return EnvPerFileGroup(
|
|
104
|
+
filename=Path(filename),
|
|
105
|
+
build_args=build_args,
|
|
106
|
+
name=filename,
|
|
107
|
+
help=f"Run, functions decorated `env.task` or instances of Tasks in {filename}",
|
|
108
|
+
)
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
build = EnvFiles(
|
|
112
|
+
name="build",
|
|
113
|
+
help="""
|
|
114
|
+
Build the environments defined in a python file or directory. This will build the images associated with the
|
|
115
|
+
environments.
|
|
116
|
+
""",
|
|
117
|
+
)
|
flyte/cli/_deploy.py
CHANGED
|
@@ -32,16 +32,6 @@ class DeployArguments:
|
|
|
32
32
|
},
|
|
33
33
|
)
|
|
34
34
|
dry_run: bool = field(default=False, metadata={"click.option": common.DRY_RUN_OPTION})
|
|
35
|
-
local: bool = field(
|
|
36
|
-
default=False,
|
|
37
|
-
metadata={
|
|
38
|
-
"click.option": click.Option(
|
|
39
|
-
["--local"],
|
|
40
|
-
is_flag=True,
|
|
41
|
-
help="Run the task locally",
|
|
42
|
-
)
|
|
43
|
-
},
|
|
44
|
-
)
|
|
45
35
|
copy_style: CopyFiles = field(
|
|
46
36
|
default="loaded_modules",
|
|
47
37
|
metadata={
|
flyte/cli/main.py
CHANGED
|
@@ -3,6 +3,7 @@ import rich_click as click
|
|
|
3
3
|
from flyte._logging import initialize_logger, logger
|
|
4
4
|
|
|
5
5
|
from ._abort import abort
|
|
6
|
+
from ._build import build
|
|
6
7
|
from ._common import CLIConfig
|
|
7
8
|
from ._create import create
|
|
8
9
|
from ._delete import delete
|
|
@@ -21,8 +22,12 @@ help_config = click.RichHelpConfiguration(
|
|
|
21
22
|
"commands": ["run", "abort"],
|
|
22
23
|
},
|
|
23
24
|
{
|
|
24
|
-
"name": "Management",
|
|
25
|
-
"commands": ["create", "
|
|
25
|
+
"name": "Management of various objects.",
|
|
26
|
+
"commands": ["create", "get", "delete"],
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"name": "Build and deploy environments, tasks and images.",
|
|
30
|
+
"commands": ["build", "deploy"],
|
|
26
31
|
},
|
|
27
32
|
{
|
|
28
33
|
"name": "Documentation generation",
|
|
@@ -164,3 +169,4 @@ main.add_command(create) # type: ignore
|
|
|
164
169
|
main.add_command(abort) # type: ignore
|
|
165
170
|
main.add_command(gen) # type: ignore
|
|
166
171
|
main.add_command(delete) # type: ignore
|
|
172
|
+
main.add_command(build)
|
flyte/extras/_container.py
CHANGED
|
@@ -27,8 +27,9 @@ def _extract_path_command_key(cmd: str, input_data_dir: Optional[str]) -> Option
|
|
|
27
27
|
import re
|
|
28
28
|
|
|
29
29
|
input_data_dir = input_data_dir or ""
|
|
30
|
-
input_regex = rf"{re.escape(input_data_dir)}/(
|
|
31
|
-
|
|
30
|
+
input_regex = rf"{re.escape(input_data_dir)}/([\w\-.]+)" # captures file or dir names
|
|
31
|
+
|
|
32
|
+
match = re.search(input_regex, cmd)
|
|
32
33
|
if match:
|
|
33
34
|
return match.group(1)
|
|
34
35
|
return None
|
|
@@ -105,13 +106,15 @@ class ContainerTask(TaskTemplate):
|
|
|
105
106
|
|
|
106
107
|
volume_binding: Dict[str, Dict[str, str]] = {}
|
|
107
108
|
path_k = _extract_path_command_key(cmd, str(self._input_data_dir))
|
|
108
|
-
keys = path_k if path_k else _extract_command_key(cmd)
|
|
109
|
+
keys = [path_k] if path_k else _extract_command_key(cmd)
|
|
110
|
+
|
|
111
|
+
command = cmd
|
|
109
112
|
|
|
110
113
|
if keys:
|
|
111
114
|
for k in keys:
|
|
112
115
|
input_val = kwargs.get(k)
|
|
113
116
|
# TODO: Add support file and directory transformer first
|
|
114
|
-
if type(input_val) in [File, Dir]:
|
|
117
|
+
if input_val and type(input_val) in [File, Dir]:
|
|
115
118
|
if not path_k:
|
|
116
119
|
raise AssertionError(
|
|
117
120
|
"File and Directory commands should not use the template syntax "
|
|
@@ -119,15 +122,16 @@ class ContainerTask(TaskTemplate):
|
|
|
119
122
|
"Please use a path-like syntax, such as: /var/inputs/infile.\n"
|
|
120
123
|
"This requirement is due to how Flyte Propeller processes template syntax inputs."
|
|
121
124
|
)
|
|
122
|
-
local_flyte_file_or_dir_path =
|
|
125
|
+
local_flyte_file_or_dir_path = input_val.path
|
|
123
126
|
remote_flyte_file_or_dir_path = os.path.join(self._input_data_dir, k) # type: ignore
|
|
124
127
|
volume_binding[local_flyte_file_or_dir_path] = {
|
|
125
128
|
"bind": remote_flyte_file_or_dir_path,
|
|
126
129
|
"mode": "rw",
|
|
127
130
|
}
|
|
128
|
-
command = remote_flyte_file_or_dir_path
|
|
129
131
|
else:
|
|
130
|
-
command =
|
|
132
|
+
command = command.replace(f"{{{{.inputs.{k}}}}}", str(input_val))
|
|
133
|
+
else:
|
|
134
|
+
command = cmd
|
|
131
135
|
|
|
132
136
|
return command, volume_binding
|
|
133
137
|
|
|
@@ -199,15 +203,18 @@ class ContainerTask(TaskTemplate):
|
|
|
199
203
|
else:
|
|
200
204
|
return output_type(output_val)
|
|
201
205
|
|
|
202
|
-
def
|
|
203
|
-
|
|
206
|
+
def _get_output(self, output_directory: pathlib.Path) -> Tuple[Any]:
|
|
207
|
+
output_items = []
|
|
204
208
|
if self._outputs:
|
|
205
209
|
for k, output_type in self._outputs.items():
|
|
206
210
|
output_path = output_directory / k
|
|
207
211
|
with output_path.open("r") as f:
|
|
208
212
|
output_val = f.read()
|
|
209
|
-
|
|
210
|
-
return
|
|
213
|
+
output_items.append(self._convert_output_val_to_correct_type(output_val, output_type))
|
|
214
|
+
# return a tuple so that each element is treated as a separate output.
|
|
215
|
+
# this allows flyte to map the user-defined output types (dict) to individual values.
|
|
216
|
+
# if we returned a list instead, it would be treated as a single output.
|
|
217
|
+
return tuple(output_items)
|
|
211
218
|
|
|
212
219
|
async def execute(self, **kwargs) -> Any:
|
|
213
220
|
try:
|
|
@@ -242,8 +249,8 @@ class ContainerTask(TaskTemplate):
|
|
|
242
249
|
|
|
243
250
|
container.wait()
|
|
244
251
|
|
|
245
|
-
|
|
246
|
-
return
|
|
252
|
+
output = self._get_output(output_directory)
|
|
253
|
+
return output
|
|
247
254
|
|
|
248
255
|
def data_loading_config(self, sctx: SerializationContext) -> tasks_pb2.DataLoadingConfig:
|
|
249
256
|
literal_to_protobuf = {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
flyte/__init__.py,sha256=
|
|
1
|
+
flyte/__init__.py,sha256=VjIdD4AyX7mYNoWDSqZ6tmNKo14ZFwfToKeb49SB60U,1733
|
|
2
2
|
flyte/_build.py,sha256=MkgfLAPeL56YeVrGRNZUCZgbwzlEzVP3wLbl5Qru4yk,578
|
|
3
3
|
flyte/_context.py,sha256=K0-TCt-_pHOoE5Xni87_8uIe2vCBOhfNQEtjGT4Hu4k,5239
|
|
4
|
-
flyte/_deploy.py,sha256=
|
|
4
|
+
flyte/_deploy.py,sha256=HcLv3JSVAVogQoV9QICMlwYHr6FZ2XPq1AkqmFhCt38,9622
|
|
5
5
|
flyte/_doc.py,sha256=_OPCf3t_git6UT7kSJISFaWO9cfNzJhhoe6JjVdyCJo,706
|
|
6
6
|
flyte/_docstring.py,sha256=SsG0Ab_YMAwy2ABJlEo3eBKlyC3kwPdnDJ1FIms-ZBQ,1127
|
|
7
7
|
flyte/_environment.py,sha256=dmIFmFLRIklOEYL9gsP2IH3-MYcjHYyyOlqlcf3E6_A,2924
|
|
@@ -17,19 +17,19 @@ flyte/_pod.py,sha256=lNaQuWX22QG6Xji7-8GpuKUkqCmVFaRxOVU-eUEa-Vk,637
|
|
|
17
17
|
flyte/_resources.py,sha256=UOLyEVhdxolvrHhddiBbYdJuE1RkM_l7xeS9G1abe6M,7583
|
|
18
18
|
flyte/_retry.py,sha256=rfLv0MvWxzPByKESTglEmjPsytEAKiIvvmzlJxXwsfE,941
|
|
19
19
|
flyte/_reusable_environment.py,sha256=P4FBATVKAYcIKpdFN98sI8acPyKy8eIGx6V0kUb9YdM,1289
|
|
20
|
-
flyte/_run.py,sha256=
|
|
20
|
+
flyte/_run.py,sha256=pR5JpxXFGZtxmBQXIydUdI6j5pHDhFLNiDQcKs4UyRw,20078
|
|
21
21
|
flyte/_secret.py,sha256=SqIHs6mi8hEkIIBZe3bI9jJsPt65Mt6dV5uh9_op1ME,2392
|
|
22
22
|
flyte/_task.py,sha256=-3VLSROj8g3-ZWzV272Ww7mt5yIeA753kmpNyr75I58,18087
|
|
23
23
|
flyte/_task_environment.py,sha256=1PIuRQ6inH0vMw89iutWKAyPff9qaTEcjk6UR1Gl0cg,6861
|
|
24
24
|
flyte/_timeout.py,sha256=zx5sFcbYmjJAJbZWSGzzX-BpC9HC7Jfs35T7vVhKwkk,1571
|
|
25
25
|
flyte/_tools.py,sha256=JewkQZBR_M85tS6QY8e4xXue75jbOE48nID4ZHnc9jY,632
|
|
26
26
|
flyte/_trace.py,sha256=C788bgoSc3st8kE8Cae2xegnLx2CT6uuRKKfaDrDUys,5122
|
|
27
|
-
flyte/_version.py,sha256=
|
|
27
|
+
flyte/_version.py,sha256=2e2m6j7tL3Ebu8vRSSFdddz0gdOkgUI__sFESTmhDUA,521
|
|
28
28
|
flyte/errors.py,sha256=skXcdexLisFZFcTnUmMvMmuh4Ty96oJkyLKaipzkyeI,4954
|
|
29
29
|
flyte/models.py,sha256=my7Vxo-NK6gHGahyqtHr42wYjPGw0nl2SGBBoSb6hIc,14733
|
|
30
30
|
flyte/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
31
31
|
flyte/_bin/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
32
|
-
flyte/_bin/runtime.py,sha256=
|
|
32
|
+
flyte/_bin/runtime.py,sha256=09OKQeUwyEDkXF2HtzHeYVJsIMkEzLIO2tVCARvPGJE,5783
|
|
33
33
|
flyte/_cache/__init__.py,sha256=zhdO5UuHQRdzn8GHmSN40nrxfAmI4ihDRuHZM11U84Y,305
|
|
34
34
|
flyte/_cache/cache.py,sha256=ErhWzzJdEjTIuEF4f-r6IBgko-3Al9iUs1Eq4O42TUE,5021
|
|
35
35
|
flyte/_cache/defaults.py,sha256=gzJZW0QJPUfd2OPnGpv3tzIfwPtgFjAKoie3NP1P97U,217
|
|
@@ -52,7 +52,7 @@ flyte/_internal/controllers/remote/_informer.py,sha256=StiPcQLLW0h36uEBhKsupMY79
|
|
|
52
52
|
flyte/_internal/controllers/remote/_service_protocol.py,sha256=B9qbIg6DiGeac-iSccLmX_AL2xUgX4ezNUOiAbSy4V0,1357
|
|
53
53
|
flyte/_internal/imagebuild/__init__.py,sha256=cLXVxkAyFpbdC1y-k3Rb6FRW9f_xpoRQWVn__G9IqKs,354
|
|
54
54
|
flyte/_internal/imagebuild/docker_builder.py,sha256=cvJ_e2hDvLS9SBvdzgNwvSvkQORP6m-_mjMBHZf-m8I,14479
|
|
55
|
-
flyte/_internal/imagebuild/image_builder.py,sha256=
|
|
55
|
+
flyte/_internal/imagebuild/image_builder.py,sha256=fP70cm-yRwQu3zTb2D_LL1gIsoSY-FlHzILgFcgtb1U,10180
|
|
56
56
|
flyte/_internal/imagebuild/remote_builder.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
57
57
|
flyte/_internal/resolvers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
58
58
|
flyte/_internal/resolvers/_task_module.py,sha256=jwy1QYygUK7xmpCZLt1SPTfJCkfox3Ck3mTlTsm66UI,1973
|
|
@@ -143,22 +143,23 @@ flyte/_utils/org_discovery.py,sha256=C7aJa0LfnWBkDtSU9M7bE60zp27qEhJC58piqOErZ94
|
|
|
143
143
|
flyte/_utils/uv_script_parser.py,sha256=PxqD8lSMi6xv0uDd1s8LKB2IPZr4ttZJCUweqlyMTKk,1483
|
|
144
144
|
flyte/cli/__init__.py,sha256=M02O-UGqQlA8JJ_jyWRiwQhTNc5CJJ7x9J7fNxTxBT0,52
|
|
145
145
|
flyte/cli/_abort.py,sha256=Ty-63Gtd2PUn6lCuL5AaasfBoPu7TDSU5EQKVbkF4qw,661
|
|
146
|
+
flyte/cli/_build.py,sha256=oCbokuIN9_fCtjbhvmJbxHbyLpHirY6vqhxEyFFv8js,3524
|
|
146
147
|
flyte/cli/_common.py,sha256=QphqiND3LkF3bngngtArZWqdLMe1uiG5K9XRCHwRdhA,10973
|
|
147
148
|
flyte/cli/_create.py,sha256=a75II-xT71SpdopNY14rPuidO5qL0mH1UAwf205sVzQ,4313
|
|
148
149
|
flyte/cli/_delete.py,sha256=VTmXv09PBjkdtyl23mbSjIQQlN7Y1AI_bO0GkHP-f9E,546
|
|
149
|
-
flyte/cli/_deploy.py,sha256=
|
|
150
|
+
flyte/cli/_deploy.py,sha256=WUJDAb8qeJBj_mT1yh9v7QjCnC7C-5sMv9ZZZvCNcUc,4597
|
|
150
151
|
flyte/cli/_gen.py,sha256=vlE5l8UR1zz4RSdaRyUfYFvGR0TLxGcTYcP4dhA3Pvg,5458
|
|
151
152
|
flyte/cli/_get.py,sha256=UBh82YQ3WZF7WPZjW3l3RQG97JZYlgHMzpuiVdtJseg,9896
|
|
152
153
|
flyte/cli/_params.py,sha256=cDeTvjOQP8EydVJUrncLeAxUaHvGorJyDvMSrAxapmM,19466
|
|
153
154
|
flyte/cli/_run.py,sha256=a8Y1XLhti6kaaibcN2AZHjxIauHeXqT9wnXWDKee2ew,7733
|
|
154
|
-
flyte/cli/main.py,sha256=
|
|
155
|
+
flyte/cli/main.py,sha256=Tz9FuNa7MaKpG7LkxytRU8lGgC--LQ8ardTWEoj9CLE,4596
|
|
155
156
|
flyte/config/__init__.py,sha256=MiwEYK5Iv7MRR22z61nzbsbvZ9Q6MdmAU_g9If1Pmb8,144
|
|
156
157
|
flyte/config/_config.py,sha256=QE3T0W8xOULjJaqDMdMF90f9gFVjGR6h8QPOLsyqjYw,9831
|
|
157
158
|
flyte/config/_internal.py,sha256=Bj0uzn3PYgxKbzM-q2GKXxp7Y6cyzhPzUB-Y2i6cQKo,2836
|
|
158
159
|
flyte/config/_reader.py,sha256=c16jm0_IYxwEAjXENtllLeO_sT5Eg2RNLG4UjnAv_x4,7157
|
|
159
160
|
flyte/connectors/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
160
161
|
flyte/extras/__init__.py,sha256=FhB0uK7H1Yo5De9vOuF7UGnezTKncj3u2Wo5uQdWN0g,74
|
|
161
|
-
flyte/extras/_container.py,sha256=
|
|
162
|
+
flyte/extras/_container.py,sha256=TwYBgo7-mSi4urXFHr8dkDnYUUg--tQLqd-TOvd5Xxg,11298
|
|
162
163
|
flyte/io/__init__.py,sha256=F7hlpin_1JJjsdFZSn7_jQgltPzsjETX1DCYGz-ELqI,629
|
|
163
164
|
flyte/io/_dir.py,sha256=rih9CY1YjNX05bcAu5LG62Xoyij5GXAlv7jLyVF0je8,15310
|
|
164
165
|
flyte/io/_file.py,sha256=kp5700SKPy5htmMhm4hE2ybb99Ykny1b0Kwm3huCWXs,15572
|
|
@@ -211,8 +212,8 @@ flyte/types/_renderer.py,sha256=ygcCo5l60lHufyQISFddZfWwLlQ8kJAKxUT_XnR_6dY,4818
|
|
|
211
212
|
flyte/types/_string_literals.py,sha256=NlG1xV8RSA-sZ-n-IFQCAsdB6jXJOAKkHWtnopxVVDk,4231
|
|
212
213
|
flyte/types/_type_engine.py,sha256=Kk5g1nZubh2A4KWbvGBf5A-aZTvbTtjrY1Bg1_GOPV4,96643
|
|
213
214
|
flyte/types/_utils.py,sha256=pbts9E1_2LTdLygAY0UYTLYJ8AsN3BZyviSXvrtcutc,2626
|
|
214
|
-
flyte-0.2.
|
|
215
|
-
flyte-0.2.
|
|
216
|
-
flyte-0.2.
|
|
217
|
-
flyte-0.2.
|
|
218
|
-
flyte-0.2.
|
|
215
|
+
flyte-0.2.0b17.dist-info/METADATA,sha256=1YonrUOjdoOg1arAfsZNEdKxBy6VBjI5WlW9QJYHd68,5850
|
|
216
|
+
flyte-0.2.0b17.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
217
|
+
flyte-0.2.0b17.dist-info/entry_points.txt,sha256=MIq2z5dBurdCJfpXfMKzgBv7sJOakKRYxr8G0cMiTrg,75
|
|
218
|
+
flyte-0.2.0b17.dist-info/top_level.txt,sha256=7dkyFbikvA12LEZEqawx8oDG1CMod6hTliPj7iWzgYo,6
|
|
219
|
+
flyte-0.2.0b17.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|