flyte 0.2.0b17__py3-none-any.whl → 0.2.0b19__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/_bin/runtime.py +10 -2
- flyte/_code_bundle/bundle.py +2 -2
- flyte/_deploy.py +2 -3
- flyte/_image.py +100 -64
- flyte/_initialize.py +9 -1
- flyte/_internal/imagebuild/__init__.py +4 -0
- flyte/_internal/imagebuild/docker_builder.py +57 -24
- flyte/_internal/imagebuild/image_builder.py +69 -42
- flyte/_internal/imagebuild/remote_builder.py +259 -0
- flyte/_protos/imagebuilder/definition_pb2.py +59 -0
- flyte/_protos/imagebuilder/definition_pb2.pyi +140 -0
- flyte/_protos/imagebuilder/definition_pb2_grpc.py +4 -0
- flyte/_protos/imagebuilder/payload_pb2.py +32 -0
- flyte/_protos/imagebuilder/payload_pb2.pyi +21 -0
- flyte/_protos/imagebuilder/payload_pb2_grpc.py +4 -0
- flyte/_protos/imagebuilder/service_pb2.py +29 -0
- flyte/_protos/imagebuilder/service_pb2.pyi +5 -0
- flyte/_protos/imagebuilder/service_pb2_grpc.py +66 -0
- flyte/_run.py +71 -8
- flyte/_task_environment.py +1 -0
- flyte/_version.py +2 -2
- flyte/cli/__init__.py +9 -0
- flyte/cli/_build.py +1 -1
- flyte/cli/_common.py +14 -11
- flyte/cli/_create.py +15 -0
- flyte/cli/_deploy.py +2 -2
- flyte/cli/_get.py +9 -6
- flyte/cli/_run.py +1 -0
- flyte/cli/main.py +8 -0
- flyte/config/_config.py +30 -2
- flyte/config/_internal.py +8 -0
- flyte/config/_reader.py +0 -3
- flyte/extras/_container.py +2 -2
- flyte/remote/_data.py +2 -0
- flyte/remote/_run.py +10 -4
- flyte/remote/_task.py +35 -7
- flyte/types/_type_engine.py +2 -4
- {flyte-0.2.0b17.dist-info → flyte-0.2.0b19.dist-info}/METADATA +1 -1
- {flyte-0.2.0b17.dist-info → flyte-0.2.0b19.dist-info}/RECORD +42 -33
- {flyte-0.2.0b17.dist-info → flyte-0.2.0b19.dist-info}/WHEEL +0 -0
- {flyte-0.2.0b17.dist-info → flyte-0.2.0b19.dist-info}/entry_points.txt +0 -0
- {flyte-0.2.0b17.dist-info → flyte-0.2.0b19.dist-info}/top_level.txt +0 -0
flyte/cli/_get.py
CHANGED
|
@@ -46,7 +46,7 @@ def project(cfg: common.CLIConfig, name: str | None = None):
|
|
|
46
46
|
if name:
|
|
47
47
|
console.print(pretty_repr(Project.get(name)))
|
|
48
48
|
else:
|
|
49
|
-
console.print(common.get_table("Projects", Project.listall()))
|
|
49
|
+
console.print(common.get_table("Projects", Project.listall(), simple=cfg.simple))
|
|
50
50
|
|
|
51
51
|
|
|
52
52
|
@get.command(cls=common.CommandBase)
|
|
@@ -69,7 +69,7 @@ def run(cfg: common.CLIConfig, name: str | None = None, project: str | None = No
|
|
|
69
69
|
details = RunDetails.get(name=name)
|
|
70
70
|
console.print(pretty_repr(details))
|
|
71
71
|
else:
|
|
72
|
-
console.print(common.get_table("Runs", Run.listall()))
|
|
72
|
+
console.print(common.get_table("Runs", Run.listall(), simple=cfg.simple))
|
|
73
73
|
|
|
74
74
|
|
|
75
75
|
@get.command(cls=common.CommandBase)
|
|
@@ -103,9 +103,9 @@ def task(
|
|
|
103
103
|
t = v.fetch()
|
|
104
104
|
console.print(pretty_repr(t))
|
|
105
105
|
else:
|
|
106
|
-
console.print(common.get_table("Tasks", Task.listall(by_task_name=name, limit=limit)))
|
|
106
|
+
console.print(common.get_table("Tasks", Task.listall(by_task_name=name, limit=limit), simple=cfg.simple))
|
|
107
107
|
else:
|
|
108
|
-
console.print(common.get_table("Tasks", Task.listall(limit=limit)))
|
|
108
|
+
console.print(common.get_table("Tasks", Task.listall(limit=limit), simple=cfg.simple))
|
|
109
109
|
|
|
110
110
|
|
|
111
111
|
@get.command(cls=common.CommandBase)
|
|
@@ -131,7 +131,9 @@ def action(
|
|
|
131
131
|
console.print(pretty_repr(remote.Action.get(run_name=run_name, name=action_name)))
|
|
132
132
|
else:
|
|
133
133
|
# List all actions for the run
|
|
134
|
-
console.print(
|
|
134
|
+
console.print(
|
|
135
|
+
common.get_table(f"Actions for {run_name}", remote.Action.listall(for_run_name=run_name), simple=cfg.simple)
|
|
136
|
+
)
|
|
135
137
|
|
|
136
138
|
|
|
137
139
|
@get.command(cls=common.CommandBase)
|
|
@@ -225,7 +227,7 @@ def secret(
|
|
|
225
227
|
if name:
|
|
226
228
|
console.print(pretty_repr(remote.Secret.get(name)))
|
|
227
229
|
else:
|
|
228
|
-
console.print(common.get_table("Secrets", remote.Secret.listall()))
|
|
230
|
+
console.print(common.get_table("Secrets", remote.Secret.listall(), simple=cfg.simple))
|
|
229
231
|
|
|
230
232
|
|
|
231
233
|
@get.command(cls=common.CommandBase)
|
|
@@ -294,6 +296,7 @@ def io(
|
|
|
294
296
|
common.get_panel(
|
|
295
297
|
"Inputs & Outputs",
|
|
296
298
|
f"[green bold]Inputs[/green bold]\n{inputs}\n\n[blue bold]Outputs[/blue bold]\n{outputs}",
|
|
299
|
+
simple=cfg.simple,
|
|
297
300
|
)
|
|
298
301
|
)
|
|
299
302
|
|
flyte/cli/_run.py
CHANGED
|
@@ -117,6 +117,7 @@ class RunTaskCommand(click.Command):
|
|
|
117
117
|
f"[green bold]Created Run: {r.name} [/green bold] "
|
|
118
118
|
f"(Project: {r.action.action_id.run.project}, Domain: {r.action.action_id.run.domain})\n"
|
|
119
119
|
f"➡️ [blue bold]{r.url}[/blue bold]",
|
|
120
|
+
simple=obj.simple,
|
|
120
121
|
)
|
|
121
122
|
)
|
|
122
123
|
if self.run_args.follow:
|
flyte/cli/main.py
CHANGED
|
@@ -97,6 +97,12 @@ def _verbosity_to_loglevel(verbosity: int) -> int | None:
|
|
|
97
97
|
type=click.Path(exists=True),
|
|
98
98
|
help="Path to the configuration file to use. If not specified, the default configuration file is used.",
|
|
99
99
|
)
|
|
100
|
+
@click.option(
|
|
101
|
+
"--simple",
|
|
102
|
+
is_flag=True,
|
|
103
|
+
default=False,
|
|
104
|
+
help="Use a simple output format for commands that support it. This is useful for copying, pasting, and scripting.",
|
|
105
|
+
)
|
|
100
106
|
@click.rich_config(help_config=help_config)
|
|
101
107
|
@click.pass_context
|
|
102
108
|
def main(
|
|
@@ -106,6 +112,7 @@ def main(
|
|
|
106
112
|
verbose: int,
|
|
107
113
|
org: str | None,
|
|
108
114
|
config_file: str | None,
|
|
115
|
+
simple: bool = False,
|
|
109
116
|
):
|
|
110
117
|
"""
|
|
111
118
|
The Flyte CLI is the command line interface for working with the Flyte SDK and backend.
|
|
@@ -159,6 +166,7 @@ def main(
|
|
|
159
166
|
org=org,
|
|
160
167
|
config=cfg,
|
|
161
168
|
ctx=ctx,
|
|
169
|
+
simple=simple,
|
|
162
170
|
)
|
|
163
171
|
|
|
164
172
|
|
flyte/config/_config.py
CHANGED
|
@@ -13,7 +13,7 @@ from flyte._logging import logger
|
|
|
13
13
|
from flyte.config import _internal
|
|
14
14
|
from flyte.config._reader import ConfigFile, get_config_file, read_file_if_exists
|
|
15
15
|
|
|
16
|
-
_all__ = ["ConfigFile", "PlatformConfig", "TaskConfig"]
|
|
16
|
+
_all__ = ["ConfigFile", "PlatformConfig", "TaskConfig", "ImageConfig"]
|
|
17
17
|
|
|
18
18
|
if TYPE_CHECKING:
|
|
19
19
|
from flyte.remote._client.auth import AuthType
|
|
@@ -140,6 +140,28 @@ class TaskConfig(object):
|
|
|
140
140
|
return TaskConfig(**kwargs)
|
|
141
141
|
|
|
142
142
|
|
|
143
|
+
@rich.repr.auto
|
|
144
|
+
@dataclass(init=True, repr=True, eq=True, frozen=True)
|
|
145
|
+
class ImageConfig(object):
|
|
146
|
+
"""
|
|
147
|
+
Configuration for Docker image settings.
|
|
148
|
+
"""
|
|
149
|
+
|
|
150
|
+
builder: str | None = None
|
|
151
|
+
|
|
152
|
+
@classmethod
|
|
153
|
+
def auto(cls, config_file: typing.Optional[typing.Union[str, ConfigFile]] = None) -> "ImageConfig":
|
|
154
|
+
"""
|
|
155
|
+
Reads from a config file, and overrides from Environment variables. Refer to ConfigEntry for details
|
|
156
|
+
:param config_file:
|
|
157
|
+
:return:
|
|
158
|
+
"""
|
|
159
|
+
config_file = get_config_file(config_file)
|
|
160
|
+
kwargs: typing.Dict[str, typing.Any] = {}
|
|
161
|
+
kwargs = set_if_exists(kwargs, "builder", _internal.Image.BUILDER.read(config_file))
|
|
162
|
+
return ImageConfig(**kwargs)
|
|
163
|
+
|
|
164
|
+
|
|
143
165
|
@rich.repr.auto
|
|
144
166
|
@dataclass(init=True, repr=True, eq=True, frozen=True)
|
|
145
167
|
class Config(object):
|
|
@@ -154,16 +176,19 @@ class Config(object):
|
|
|
154
176
|
|
|
155
177
|
platform: PlatformConfig = field(default=PlatformConfig())
|
|
156
178
|
task: TaskConfig = field(default=TaskConfig())
|
|
179
|
+
image: ImageConfig = field(default=ImageConfig())
|
|
157
180
|
source: pathlib.Path | None = None
|
|
158
181
|
|
|
159
182
|
def with_params(
|
|
160
183
|
self,
|
|
161
184
|
platform: PlatformConfig | None = None,
|
|
162
185
|
task: TaskConfig | None = None,
|
|
186
|
+
image: ImageConfig | None = None,
|
|
163
187
|
) -> "Config":
|
|
164
188
|
return Config(
|
|
165
189
|
platform=platform or self.platform,
|
|
166
190
|
task=task or self.task,
|
|
191
|
+
image=image or self.image,
|
|
167
192
|
)
|
|
168
193
|
|
|
169
194
|
@classmethod
|
|
@@ -182,7 +207,10 @@ class Config(object):
|
|
|
182
207
|
logger.debug("No config file found, using default values")
|
|
183
208
|
return Config()
|
|
184
209
|
return Config(
|
|
185
|
-
platform=PlatformConfig.auto(config_file),
|
|
210
|
+
platform=PlatformConfig.auto(config_file),
|
|
211
|
+
task=TaskConfig.auto(config_file),
|
|
212
|
+
image=ImageConfig.auto(config_file),
|
|
213
|
+
source=config_file.path,
|
|
186
214
|
)
|
|
187
215
|
|
|
188
216
|
|
flyte/config/_internal.py
CHANGED
|
@@ -62,3 +62,11 @@ class Task(object):
|
|
|
62
62
|
ORG = ConfigEntry(YamlConfigEntry("task.org"))
|
|
63
63
|
PROJECT = ConfigEntry(YamlConfigEntry("task.project"))
|
|
64
64
|
DOMAIN = ConfigEntry(YamlConfigEntry("task.domain"))
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
class Image(object):
|
|
68
|
+
"""
|
|
69
|
+
Defines the configuration for the image builder.
|
|
70
|
+
"""
|
|
71
|
+
|
|
72
|
+
BUILDER = ConfigEntry(YamlConfigEntry("image.builder"))
|
flyte/config/_reader.py
CHANGED
|
@@ -177,9 +177,6 @@ def get_config_file(c: typing.Union[str, ConfigFile, None]) -> ConfigFile | None
|
|
|
177
177
|
"""
|
|
178
178
|
Checks if the given argument is a file or a configFile and returns a loaded configFile else returns None
|
|
179
179
|
"""
|
|
180
|
-
if "PYTEST_VERSION" in os.environ:
|
|
181
|
-
# Use default local config in the pytest environment
|
|
182
|
-
return None
|
|
183
180
|
if isinstance(c, str):
|
|
184
181
|
logger.debug(f"Using specified config file at {c}")
|
|
185
182
|
return ConfigFile(c)
|
flyte/extras/_container.py
CHANGED
|
@@ -260,8 +260,8 @@ class ContainerTask(TaskTemplate):
|
|
|
260
260
|
}
|
|
261
261
|
|
|
262
262
|
return tasks_pb2.DataLoadingConfig(
|
|
263
|
-
input_path=str(self._input_data_dir),
|
|
264
|
-
output_path=str(self._output_data_dir),
|
|
263
|
+
input_path=str(self._input_data_dir) if self._input_data_dir else None,
|
|
264
|
+
output_path=str(self._output_data_dir) if self._output_data_dir else None,
|
|
265
265
|
enabled=True,
|
|
266
266
|
format=literal_to_protobuf.get(self._metadata_format, "JSON"),
|
|
267
267
|
)
|
flyte/remote/_data.py
CHANGED
|
@@ -18,6 +18,7 @@ from google.protobuf import duration_pb2
|
|
|
18
18
|
from flyte._initialize import CommonInit, ensure_client, get_client, get_common_config
|
|
19
19
|
from flyte._logging import make_hyperlink
|
|
20
20
|
from flyte.errors import InitializationError, RuntimeSystemError
|
|
21
|
+
from flyte.syncify import syncify
|
|
21
22
|
|
|
22
23
|
_UPLOAD_EXPIRES_IN = timedelta(seconds=60)
|
|
23
24
|
|
|
@@ -113,6 +114,7 @@ async def _upload_single_file(
|
|
|
113
114
|
return str_digest, resp.native_url
|
|
114
115
|
|
|
115
116
|
|
|
117
|
+
@syncify
|
|
116
118
|
async def upload_file(fp: Path, verify: bool = True) -> Tuple[str, str]:
|
|
117
119
|
"""
|
|
118
120
|
Uploads a file to a remote location and returns the remote URI.
|
flyte/remote/_run.py
CHANGED
|
@@ -226,12 +226,13 @@ class Run:
|
|
|
226
226
|
):
|
|
227
227
|
await self.action.show_logs(attempt, max_lines, show_ts, raw, filter_system=filter_system)
|
|
228
228
|
|
|
229
|
+
@syncify
|
|
229
230
|
async def details(self) -> RunDetails:
|
|
230
231
|
"""
|
|
231
232
|
Get the details of the run. This is a placeholder for getting the run details.
|
|
232
233
|
"""
|
|
233
234
|
if self._details is None:
|
|
234
|
-
self._details = await RunDetails.get_details(
|
|
235
|
+
self._details = await RunDetails.get_details.aio(self.pb2.action.id.run)
|
|
235
236
|
return self._details
|
|
236
237
|
|
|
237
238
|
@property
|
|
@@ -387,6 +388,11 @@ class RunDetails:
|
|
|
387
388
|
"""
|
|
388
389
|
Rich representation of the Run object.
|
|
389
390
|
"""
|
|
391
|
+
yield "labels", str(self.pb2.run_spec.labels)
|
|
392
|
+
yield "annotations", str(self.pb2.run_spec.annotations)
|
|
393
|
+
yield "env-vars", str(self.pb2.run_spec.envs)
|
|
394
|
+
yield "is-interruptible", str(self.pb2.run_spec.interruptible)
|
|
395
|
+
yield "cache-overwrite", self.pb2.run_spec.overwrite_cache
|
|
390
396
|
yield from _action_details_rich_repr(self.pb2.action)
|
|
391
397
|
|
|
392
398
|
def __repr__(self) -> str:
|
|
@@ -631,7 +637,7 @@ class Action:
|
|
|
631
637
|
# Update progress description with the current phase
|
|
632
638
|
progress.update(
|
|
633
639
|
task_id,
|
|
634
|
-
description=f"Run: {self.
|
|
640
|
+
description=f"Run: {self.run_name} in {ad.phase}, Runtime: {ad.runtime} secs "
|
|
635
641
|
f"Attempts[{ad.attempts}]",
|
|
636
642
|
)
|
|
637
643
|
|
|
@@ -639,10 +645,10 @@ class Action:
|
|
|
639
645
|
if ad.done():
|
|
640
646
|
progress.stop_task(task_id)
|
|
641
647
|
if ad.pb2.status.phase == run_definition_pb2.PHASE_SUCCEEDED:
|
|
642
|
-
console.print(f"[bold green]Run '{self.
|
|
648
|
+
console.print(f"[bold green]Run '{self.run_name}' completed successfully.[/bold green]")
|
|
643
649
|
else:
|
|
644
650
|
console.print(
|
|
645
|
-
f"[bold red]Run '{self.
|
|
651
|
+
f"[bold red]Run '{self.run_name}' exited unsuccessfully in state {ad.phase}"
|
|
646
652
|
f"with error: {ad.error_info}[/bold red]"
|
|
647
653
|
)
|
|
648
654
|
break
|
flyte/remote/_task.py
CHANGED
|
@@ -13,7 +13,7 @@ import flyte.errors
|
|
|
13
13
|
from flyte._context import internal_ctx
|
|
14
14
|
from flyte._initialize import ensure_client, get_client, get_common_config
|
|
15
15
|
from flyte._logging import logger
|
|
16
|
-
from flyte._protos.common import list_pb2
|
|
16
|
+
from flyte._protos.common import identifier_pb2, list_pb2
|
|
17
17
|
from flyte._protos.workflow import task_definition_pb2, task_service_pb2
|
|
18
18
|
from flyte.models import NativeInterface
|
|
19
19
|
from flyte.syncify import syncify
|
|
@@ -83,14 +83,22 @@ class TaskDetails:
|
|
|
83
83
|
pb2: task_definition_pb2.TaskDetails
|
|
84
84
|
|
|
85
85
|
@classmethod
|
|
86
|
-
def get(
|
|
86
|
+
def get(
|
|
87
|
+
cls,
|
|
88
|
+
name: str,
|
|
89
|
+
project: str | None,
|
|
90
|
+
domain: str | None,
|
|
91
|
+
version: str | None = None,
|
|
92
|
+
auto_version: AutoVersioning | None = None,
|
|
93
|
+
) -> LazyEntity:
|
|
87
94
|
"""
|
|
88
95
|
Get a task by its ID or name. If both are provided, the ID will take precedence.
|
|
89
96
|
|
|
90
97
|
Either version or auto_version are required parameters.
|
|
91
98
|
|
|
92
|
-
:param uri: The URI of the task. If provided, do not provide the rest of the parameters.
|
|
93
99
|
:param name: The name of the task.
|
|
100
|
+
:param project: The project of the task.
|
|
101
|
+
:param domain: The domain of the task.
|
|
94
102
|
:param version: The version of the task.
|
|
95
103
|
:param auto_version: If set to "latest", the latest-by-time ordered from now, version of the task will be used.
|
|
96
104
|
If set to "current", the version will be derived from the callee tasks context. This is useful if you are
|
|
@@ -110,6 +118,8 @@ class TaskDetails:
|
|
|
110
118
|
tasks = []
|
|
111
119
|
async for x in Task.listall.aio(
|
|
112
120
|
by_task_name=name,
|
|
121
|
+
project=project,
|
|
122
|
+
domain=domain,
|
|
113
123
|
sort_by=("created_at", "desc"),
|
|
114
124
|
limit=1,
|
|
115
125
|
):
|
|
@@ -125,8 +135,8 @@ class TaskDetails:
|
|
|
125
135
|
cfg = get_common_config()
|
|
126
136
|
task_id = task_definition_pb2.TaskIdentifier(
|
|
127
137
|
org=cfg.org,
|
|
128
|
-
project=cfg.project,
|
|
129
|
-
domain=cfg.domain,
|
|
138
|
+
project=project or cfg.project,
|
|
139
|
+
domain=domain or cfg.domain,
|
|
130
140
|
name=name,
|
|
131
141
|
version=_version,
|
|
132
142
|
)
|
|
@@ -303,26 +313,37 @@ class Task:
|
|
|
303
313
|
return self.pb2.task_id.version
|
|
304
314
|
|
|
305
315
|
@classmethod
|
|
306
|
-
def get(
|
|
316
|
+
def get(
|
|
317
|
+
cls,
|
|
318
|
+
name: str,
|
|
319
|
+
project: str | None = None,
|
|
320
|
+
domain: str | None = None,
|
|
321
|
+
version: str | None = None,
|
|
322
|
+
auto_version: AutoVersioning | None = None,
|
|
323
|
+
) -> LazyEntity:
|
|
307
324
|
"""
|
|
308
325
|
Get a task by its ID or name. If both are provided, the ID will take precedence.
|
|
309
326
|
|
|
310
327
|
Either version or auto_version are required parameters.
|
|
311
328
|
|
|
312
329
|
:param name: The name of the task.
|
|
330
|
+
:param project: The project of the task.
|
|
331
|
+
:param domain: The domain of the task.
|
|
313
332
|
:param version: The version of the task.
|
|
314
333
|
:param auto_version: If set to "latest", the latest-by-time ordered from now, version of the task will be used.
|
|
315
334
|
If set to "current", the version will be derived from the callee tasks context. This is useful if you are
|
|
316
335
|
deploying all environments with the same version. If auto_version is current, you can only access the task from
|
|
317
336
|
within a task context.
|
|
318
337
|
"""
|
|
319
|
-
return TaskDetails.get(name, version=version, auto_version=auto_version)
|
|
338
|
+
return TaskDetails.get(name, project=project, domain=domain, version=version, auto_version=auto_version)
|
|
320
339
|
|
|
321
340
|
@syncify
|
|
322
341
|
@classmethod
|
|
323
342
|
async def listall(
|
|
324
343
|
cls,
|
|
325
344
|
by_task_name: str | None = None,
|
|
345
|
+
project: str | None = None,
|
|
346
|
+
domain: str | None = None,
|
|
326
347
|
sort_by: Tuple[str, Literal["asc", "desc"]] | None = None,
|
|
327
348
|
limit: int = 100,
|
|
328
349
|
) -> Union[AsyncIterator[Task], Iterator[Task]]:
|
|
@@ -330,6 +351,8 @@ class Task:
|
|
|
330
351
|
Get all runs for the current project and domain.
|
|
331
352
|
|
|
332
353
|
:param by_task_name: If provided, only tasks with this name will be returned.
|
|
354
|
+
:param project: The project to filter tasks by. If None, the current project will be used.
|
|
355
|
+
:param domain: The domain to filter tasks by. If None, the current domain will be used.
|
|
333
356
|
:param sort_by: The sorting criteria for the project list, in the format (field, order).
|
|
334
357
|
:param limit: The maximum number of tasks to return.
|
|
335
358
|
:return: An iterator of runs.
|
|
@@ -358,6 +381,11 @@ class Task:
|
|
|
358
381
|
resp = await get_client().task_service.ListTasks(
|
|
359
382
|
task_service_pb2.ListTasksRequest(
|
|
360
383
|
org=cfg.org,
|
|
384
|
+
project_id=identifier_pb2.ProjectIdentifier(
|
|
385
|
+
organization=cfg.org,
|
|
386
|
+
domain=domain or cfg.domain,
|
|
387
|
+
name=project or cfg.project,
|
|
388
|
+
),
|
|
361
389
|
request=list_pb2.ListRequest(
|
|
362
390
|
sort_by=sort_pb2,
|
|
363
391
|
filters=filters,
|
flyte/types/_type_engine.py
CHANGED
|
@@ -628,10 +628,8 @@ class DataclassTransformer(TypeTransformer[object]):
|
|
|
628
628
|
python_type = hints.get(name, field.type)
|
|
629
629
|
literal_type[name] = TypeEngine.to_literal_type(python_type)
|
|
630
630
|
except Exception as e:
|
|
631
|
-
logger.
|
|
632
|
-
"Field {} of type {} cannot be converted to a literal type. Error: {}"
|
|
633
|
-
field.name, field.type, e
|
|
634
|
-
)
|
|
631
|
+
logger.debug(
|
|
632
|
+
f"Field {field.name} of type {field.type} cannot be converted to a literal type. Error: {e}"
|
|
635
633
|
)
|
|
636
634
|
|
|
637
635
|
# This is for attribute access in FlytePropeller.
|
|
@@ -1,15 +1,15 @@
|
|
|
1
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=HU2ksZUvHj77DrJm7MryN0n26DUJqo4h7-op4fUTBUg,9593
|
|
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
|
|
8
8
|
flyte/_excepthook.py,sha256=nXts84rzEg6-7RtFarbKzOsRZTQR4plnbWVIFMAEprs,1310
|
|
9
9
|
flyte/_group.py,sha256=7o1j16sZyUmYB50mOiq1ui4TBAKhRpDqLakV8Ya1kw4,803
|
|
10
10
|
flyte/_hash.py,sha256=Of_Zl_DzzzF2jp4ZsLm-3o-xJFCCJ8_GubmLI1htx78,504
|
|
11
|
-
flyte/_image.py,sha256=
|
|
12
|
-
flyte/_initialize.py,sha256=
|
|
11
|
+
flyte/_image.py,sha256=bnbJ9K-41nBNs8Izm9nmsIjiJuCo2Xtfqs-2hWracgU,29723
|
|
12
|
+
flyte/_initialize.py,sha256=xKl_LYMluRt21wWqa6RTKuLo0_DCbSaTfUk27_brtNk,18232
|
|
13
13
|
flyte/_interface.py,sha256=1B9zIwFDjiVp_3l_mk8EpA4g3Re-6DUBEBi9z9vDvPs,3504
|
|
14
14
|
flyte/_logging.py,sha256=_yNo-Nx2yzh0MLoZGbnIYHGKei4wtQmSGM0lE30Ev7w,3662
|
|
15
15
|
flyte/_map.py,sha256=efPd8O-JKUg1OY3_MzU3KGbhsGYDVRNBwWr0ceNIXhQ,7444
|
|
@@ -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=HDObXGfZKBafebuh1OR5e1NWLUSbBDcceIz3kX2GMss,22828
|
|
21
21
|
flyte/_secret.py,sha256=SqIHs6mi8hEkIIBZe3bI9jJsPt65Mt6dV5uh9_op1ME,2392
|
|
22
22
|
flyte/_task.py,sha256=-3VLSROj8g3-ZWzV272Ww7mt5yIeA753kmpNyr75I58,18087
|
|
23
|
-
flyte/_task_environment.py,sha256=
|
|
23
|
+
flyte/_task_environment.py,sha256=B493b54xpnNFNtHek3cmT4XuNiPNVf2gx9Yylyb1ncw,6905
|
|
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=lLSH9VnhVbr8iiWziUI8I52uyc9JpXJ8faNOzpZKfEE,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=_ADnpWY4nVvjaujfcx2pBpOskAvnm0WtXBf1uPnZIAQ,6230
|
|
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
|
|
@@ -38,7 +38,7 @@ flyte/_code_bundle/__init__.py,sha256=G7DJTQ0UN_ETvdh55pYcWsTrZJKXEcyQl9iQQNQOBX
|
|
|
38
38
|
flyte/_code_bundle/_ignore.py,sha256=Tfaoa62CQVTH17kBHD6Xv6xEh1FhcAyvXivl9m-MEE0,3853
|
|
39
39
|
flyte/_code_bundle/_packaging.py,sha256=5QUuea6kg9s-ebBg7gFAHaxOMchxR5MhTQ8KohWsjPk,6909
|
|
40
40
|
flyte/_code_bundle/_utils.py,sha256=b0s3ZVKSRwaa_2CMTCqt2iRrUvTTW3FmlyqCD9k5BS0,12028
|
|
41
|
-
flyte/_code_bundle/bundle.py,sha256=
|
|
41
|
+
flyte/_code_bundle/bundle.py,sha256=nUAwYTVAE3Z9dfgkBtsqCoKJImjSl4AicG36yweWHLc,8797
|
|
42
42
|
flyte/_internal/__init__.py,sha256=vjXgGzAAjy609YFkAy9_RVPuUlslsHSJBXCLNTVnqOY,136
|
|
43
43
|
flyte/_internal/controllers/__init__.py,sha256=5CBnS9lb1VFMzZuRXUiaPhlN3G9qh7Aq9kTwxW5hsRw,4301
|
|
44
44
|
flyte/_internal/controllers/_local_controller.py,sha256=Wpgtd50C_ovIHpQSZC6asQc7iKyKIraEf-MAHCwcNJI,7124
|
|
@@ -50,10 +50,10 @@ flyte/_internal/controllers/remote/_controller.py,sha256=G4gEUl-2f4FqACz3IK7sK0-
|
|
|
50
50
|
flyte/_internal/controllers/remote/_core.py,sha256=UKjiL3dGidXcR1dPzJswn67g38HQmVXV7n0zoX_8AZY,18422
|
|
51
51
|
flyte/_internal/controllers/remote/_informer.py,sha256=StiPcQLLW0h36uEBhKsupMY79EeFCKA3QQzvv2IyvRo,14188
|
|
52
52
|
flyte/_internal/controllers/remote/_service_protocol.py,sha256=B9qbIg6DiGeac-iSccLmX_AL2xUgX4ezNUOiAbSy4V0,1357
|
|
53
|
-
flyte/_internal/imagebuild/__init__.py,sha256=
|
|
54
|
-
flyte/_internal/imagebuild/docker_builder.py,sha256=
|
|
55
|
-
flyte/_internal/imagebuild/image_builder.py,sha256=
|
|
56
|
-
flyte/_internal/imagebuild/remote_builder.py,sha256=
|
|
53
|
+
flyte/_internal/imagebuild/__init__.py,sha256=4fPz5RN3QB1DGw5O2sZo7x71F3EWhyE1jmCCqy4iezk,573
|
|
54
|
+
flyte/_internal/imagebuild/docker_builder.py,sha256=LIfqtLQ4NVxkjgWlASiIi_xqvxhztlUDTVt4P7McLDo,15946
|
|
55
|
+
flyte/_internal/imagebuild/image_builder.py,sha256=dXBXl62qcPabus6dR3eP8P9mBGNhpZHZ2Xm12AymKkk,11150
|
|
56
|
+
flyte/_internal/imagebuild/remote_builder.py,sha256=wm-D3xhdrk8OSQxeyI0nfMpw3P1gW7mqDKAOKOnwY6o,10089
|
|
57
57
|
flyte/_internal/resolvers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
58
58
|
flyte/_internal/resolvers/_task_module.py,sha256=jwy1QYygUK7xmpCZLt1SPTfJCkfox3Ck3mTlTsm66UI,1973
|
|
59
59
|
flyte/_internal/resolvers/common.py,sha256=ADQLRoyGsJ4vuUkitffMGrMKKjy0vpk6X53g4FuKDLc,993
|
|
@@ -88,6 +88,15 @@ flyte/_protos/common/role_pb2_grpc.py,sha256=1oboBPFxaTEXt9Aw7EAj8gXHDCNMhZD2VXq
|
|
|
88
88
|
flyte/_protos/common/runtime_version_pb2.py,sha256=djTmB3fRv2V0IV6Jzz4mtmHvEuEK4KPCkJWdRcW3DUQ,2012
|
|
89
89
|
flyte/_protos/common/runtime_version_pb2.pyi,sha256=pPQ9qVtfvE1sGhdZo47aThk2quLtXOOywRhYXFp-Kzg,1132
|
|
90
90
|
flyte/_protos/common/runtime_version_pb2_grpc.py,sha256=1oboBPFxaTEXt9Aw7EAj8gXHDCNMhZD2VXqocC9l_gk,159
|
|
91
|
+
flyte/_protos/imagebuilder/definition_pb2.py,sha256=F5ZuNWfj4pV4m32eXQvRAeCtKCYyiOIiu8P9foRgJe0,6204
|
|
92
|
+
flyte/_protos/imagebuilder/definition_pb2.pyi,sha256=XFqU2GiajohvO8UlbFdTyXedK7MzeOPC1dXEVTqDnHE,6368
|
|
93
|
+
flyte/_protos/imagebuilder/definition_pb2_grpc.py,sha256=1oboBPFxaTEXt9Aw7EAj8gXHDCNMhZD2VXqocC9l_gk,159
|
|
94
|
+
flyte/_protos/imagebuilder/payload_pb2.py,sha256=CwlIgDS3aP-9fcNPnkLBhGvHMvy14YJahrlAx1DY6M0,2411
|
|
95
|
+
flyte/_protos/imagebuilder/payload_pb2.pyi,sha256=67PTfjzvozDcLDeE4aFdUf27CmHiKKc9FlI_RW0G94A,1002
|
|
96
|
+
flyte/_protos/imagebuilder/payload_pb2_grpc.py,sha256=1oboBPFxaTEXt9Aw7EAj8gXHDCNMhZD2VXqocC9l_gk,159
|
|
97
|
+
flyte/_protos/imagebuilder/service_pb2.py,sha256=mDmwsjYZAP_TQisdRQOq3hu1CtdjyqqHpIwvh96o0uI,2003
|
|
98
|
+
flyte/_protos/imagebuilder/service_pb2.pyi,sha256=VtgJsGavjjVjxdMJQ2OiA2EckDOoPn1DSzKZ-Nfgzf4,202
|
|
99
|
+
flyte/_protos/imagebuilder/service_pb2_grpc.py,sha256=zAmG2jku0e_uRzjcncuy49-7qOZQTxcPCJYJLHD9BSU,2620
|
|
91
100
|
flyte/_protos/logs/dataplane/payload_pb2.py,sha256=3AqZl3EzNtGZcc5hDxPoP_QQRz1pbCeI-vCcoUyT_U4,12114
|
|
92
101
|
flyte/_protos/logs/dataplane/payload_pb2.pyi,sha256=KuuIIpTUpXR-HVwKc9kqUvs1cRyMQzFhERdr3GUGTeA,9714
|
|
93
102
|
flyte/_protos/logs/dataplane/payload_pb2_grpc.py,sha256=1oboBPFxaTEXt9Aw7EAj8gXHDCNMhZD2VXqocC9l_gk,159
|
|
@@ -141,25 +150,25 @@ flyte/_utils/helpers.py,sha256=9N70yzfLF4lLGEEdOv5OcweEpYtrCvZqqhtzkjZUXNY,4779
|
|
|
141
150
|
flyte/_utils/lazy_module.py,sha256=fvXPjvZLzCfcI8Vzs4pKedUDdY0U_RQ1ZVrp9b8qBQY,1994
|
|
142
151
|
flyte/_utils/org_discovery.py,sha256=C7aJa0LfnWBkDtSU9M7bE60zp27qEhJC58piqOErZ94,2088
|
|
143
152
|
flyte/_utils/uv_script_parser.py,sha256=PxqD8lSMi6xv0uDd1s8LKB2IPZr4ttZJCUweqlyMTKk,1483
|
|
144
|
-
flyte/cli/__init__.py,sha256=
|
|
153
|
+
flyte/cli/__init__.py,sha256=aeCcumeP9xD_5aCmaRYUPCe2QRJSGCaxcUbTZ3co768,341
|
|
145
154
|
flyte/cli/_abort.py,sha256=Ty-63Gtd2PUn6lCuL5AaasfBoPu7TDSU5EQKVbkF4qw,661
|
|
146
|
-
flyte/cli/_build.py,sha256=
|
|
147
|
-
flyte/cli/_common.py,sha256=
|
|
148
|
-
flyte/cli/_create.py,sha256=
|
|
155
|
+
flyte/cli/_build.py,sha256=SBgybTVWOZ22VBHFL8CVFB_oo34lF9wvlwNirYFFyk0,3543
|
|
156
|
+
flyte/cli/_common.py,sha256=CFBmdc0c59XqWb7PuZfLr7Z55HXnlqKaxDCq1sgY9MU,11115
|
|
157
|
+
flyte/cli/_create.py,sha256=8U4kePYmfW02j54184IurNYiTGvjdr3J-ERQM9goHdg,4715
|
|
149
158
|
flyte/cli/_delete.py,sha256=VTmXv09PBjkdtyl23mbSjIQQlN7Y1AI_bO0GkHP-f9E,546
|
|
150
|
-
flyte/cli/_deploy.py,sha256=
|
|
159
|
+
flyte/cli/_deploy.py,sha256=Zxm7vn1zrqmll73CJTiVGYJI95P-XBI1AlhOlmbmkD0,4635
|
|
151
160
|
flyte/cli/_gen.py,sha256=vlE5l8UR1zz4RSdaRyUfYFvGR0TLxGcTYcP4dhA3Pvg,5458
|
|
152
|
-
flyte/cli/_get.py,sha256=
|
|
161
|
+
flyte/cli/_get.py,sha256=fRLXefcF_fgJ7TgmaF06gdscOvLDamNvO0TpveqHDAQ,10063
|
|
153
162
|
flyte/cli/_params.py,sha256=cDeTvjOQP8EydVJUrncLeAxUaHvGorJyDvMSrAxapmM,19466
|
|
154
|
-
flyte/cli/_run.py,sha256=
|
|
155
|
-
flyte/cli/main.py,sha256=
|
|
163
|
+
flyte/cli/_run.py,sha256=fyxGt5ZbW84EcjPVJq5ADK4254kzYHUa2ggp7MRKarI,7776
|
|
164
|
+
flyte/cli/main.py,sha256=7P8nBWvme7beBola5Oo-tHgn9ydWIA-J3w5XH_ORImM,4836
|
|
156
165
|
flyte/config/__init__.py,sha256=MiwEYK5Iv7MRR22z61nzbsbvZ9Q6MdmAU_g9If1Pmb8,144
|
|
157
|
-
flyte/config/_config.py,sha256=
|
|
158
|
-
flyte/config/_internal.py,sha256=
|
|
159
|
-
flyte/config/_reader.py,sha256=
|
|
166
|
+
flyte/config/_config.py,sha256=WElU--Kw4MM9zx1v-rLD8qYu2T5Zk0-1QbTpkEc27bc,10779
|
|
167
|
+
flyte/config/_internal.py,sha256=LMcAtDjvTjf5bGlsJVxPuLxQQ82mLd00xK5-JlYGCi8,2989
|
|
168
|
+
flyte/config/_reader.py,sha256=K_ZAxSbXVmswMmMtObQWnTw398r6EcwyHOg2i7bp2Cs,7037
|
|
160
169
|
flyte/connectors/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
161
170
|
flyte/extras/__init__.py,sha256=FhB0uK7H1Yo5De9vOuF7UGnezTKncj3u2Wo5uQdWN0g,74
|
|
162
|
-
flyte/extras/_container.py,sha256=
|
|
171
|
+
flyte/extras/_container.py,sha256=kxwiMltfMizjOKmsXYQ-rLOCHmX-TCCeJRM7ukuHoOg,11367
|
|
163
172
|
flyte/io/__init__.py,sha256=F7hlpin_1JJjsdFZSn7_jQgltPzsjETX1DCYGz-ELqI,629
|
|
164
173
|
flyte/io/_dir.py,sha256=rih9CY1YjNX05bcAu5LG62Xoyij5GXAlv7jLyVF0je8,15310
|
|
165
174
|
flyte/io/_file.py,sha256=kp5700SKPy5htmMhm4hE2ybb99Ykny1b0Kwm3huCWXs,15572
|
|
@@ -168,12 +177,12 @@ flyte/io/_structured_dataset/basic_dfs.py,sha256=D0QzcaMBO_R2s9Oi9mDqiykkBp0kgi-
|
|
|
168
177
|
flyte/io/_structured_dataset/structured_dataset.py,sha256=ddRjz36RhNxIy0gakzdLStBzoo4cAOgXbNqiqt5YhMI,52645
|
|
169
178
|
flyte/remote/__init__.py,sha256=h0J9W1yWbvPq2R9HXa_HezJtxHoWl6d9QKQbuuKDMnU,597
|
|
170
179
|
flyte/remote/_console.py,sha256=avmELJPx8nQMAVPrHlh6jEIRPjrMwFpdZjJsWOOa9rE,660
|
|
171
|
-
flyte/remote/_data.py,sha256=
|
|
180
|
+
flyte/remote/_data.py,sha256=h3oR2ZmwOEg6HpWyYVbVcHBs8_LX2RmRolHxgwBjlQE,6121
|
|
172
181
|
flyte/remote/_logs.py,sha256=EOXg4OS8yYclsT6NASgOLMo0TA2sZpKb2MWZXpWBPuI,6404
|
|
173
182
|
flyte/remote/_project.py,sha256=dTBYqORDAbLvh9WnPO1Ytuzw2vxNYZwwNsKE2_b0o14,2807
|
|
174
|
-
flyte/remote/_run.py,sha256=
|
|
183
|
+
flyte/remote/_run.py,sha256=yIFMydcZu57sTZ45_MKJBK_igvmZ_T50j65WCL_0lCw,31573
|
|
175
184
|
flyte/remote/_secret.py,sha256=l5xeMS83uMcWWeSSTRsSZUNhS0N--1Dze09C-thSOQs,4341
|
|
176
|
-
flyte/remote/_task.py,sha256=
|
|
185
|
+
flyte/remote/_task.py,sha256=pIQ2pIIcaEaOo5J1ua3eRlj9NAue9WOSyw64f1-A2oY,15183
|
|
177
186
|
flyte/remote/_client/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
178
187
|
flyte/remote/_client/_protocols.py,sha256=JyBWHs5WsVOxEDUyG9X7wPLDzzzjkoaNhJlU-X4YlN0,5599
|
|
179
188
|
flyte/remote/_client/controlplane.py,sha256=FsOfj4rO4MIMnYrpAT53F8q588VVf5t4sDuwoPuc840,3102
|
|
@@ -210,10 +219,10 @@ flyte/types/_interface.py,sha256=5y9EC5r897xz03Hh0ltF8QVGKMfMfAznws-hKSEO4Go,167
|
|
|
210
219
|
flyte/types/_pickle.py,sha256=PjdR66OTDMZ3OYq6GvM_Ua0cIo5t2XQaIjmpJ9xo4Ys,4050
|
|
211
220
|
flyte/types/_renderer.py,sha256=ygcCo5l60lHufyQISFddZfWwLlQ8kJAKxUT_XnR_6dY,4818
|
|
212
221
|
flyte/types/_string_literals.py,sha256=NlG1xV8RSA-sZ-n-IFQCAsdB6jXJOAKkHWtnopxVVDk,4231
|
|
213
|
-
flyte/types/_type_engine.py,sha256=
|
|
222
|
+
flyte/types/_type_engine.py,sha256=CCjpqXNX2BMza2cKq42hJXwabWy8GWsimsgiGZJ_00M,96583
|
|
214
223
|
flyte/types/_utils.py,sha256=pbts9E1_2LTdLygAY0UYTLYJ8AsN3BZyviSXvrtcutc,2626
|
|
215
|
-
flyte-0.2.
|
|
216
|
-
flyte-0.2.
|
|
217
|
-
flyte-0.2.
|
|
218
|
-
flyte-0.2.
|
|
219
|
-
flyte-0.2.
|
|
224
|
+
flyte-0.2.0b19.dist-info/METADATA,sha256=CA-imLK_aWownDK2aSjTFveyezSzr-divP6xIUBRQNY,5850
|
|
225
|
+
flyte-0.2.0b19.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
226
|
+
flyte-0.2.0b19.dist-info/entry_points.txt,sha256=MIq2z5dBurdCJfpXfMKzgBv7sJOakKRYxr8G0cMiTrg,75
|
|
227
|
+
flyte-0.2.0b19.dist-info/top_level.txt,sha256=7dkyFbikvA12LEZEqawx8oDG1CMod6hTliPj7iWzgYo,6
|
|
228
|
+
flyte-0.2.0b19.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|