zenml-nightly 0.73.0.dev20250128__py3-none-any.whl → 0.73.0.dev20250129__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.
- zenml/VERSION +1 -1
- zenml/client.py +8 -1
- zenml/constants.py +2 -0
- zenml/entrypoints/base_entrypoint_configuration.py +42 -1
- zenml/exceptions.py +4 -0
- zenml/logger.py +15 -2
- zenml/models/v2/base/scoped.py +3 -2
- zenml/models/v2/core/pipeline_run.py +6 -6
- zenml/stack/flavor.py +27 -1
- zenml/stack/stack_component.py +3 -9
- zenml/utils/code_utils.py +17 -13
- zenml/utils/dashboard_utils.py +24 -3
- zenml/utils/pipeline_docker_image_builder.py +1 -1
- {zenml_nightly-0.73.0.dev20250128.dist-info → zenml_nightly-0.73.0.dev20250129.dist-info}/METADATA +1 -1
- {zenml_nightly-0.73.0.dev20250128.dist-info → zenml_nightly-0.73.0.dev20250129.dist-info}/RECORD +18 -18
- {zenml_nightly-0.73.0.dev20250128.dist-info → zenml_nightly-0.73.0.dev20250129.dist-info}/LICENSE +0 -0
- {zenml_nightly-0.73.0.dev20250128.dist-info → zenml_nightly-0.73.0.dev20250129.dist-info}/WHEEL +0 -0
- {zenml_nightly-0.73.0.dev20250128.dist-info → zenml_nightly-0.73.0.dev20250129.dist-info}/entry_points.txt +0 -0
zenml/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.73.0.
|
1
|
+
0.73.0.dev20250129
|
zenml/client.py
CHANGED
@@ -2453,7 +2453,9 @@ class Client(metaclass=ClientMetaClass):
|
|
2453
2453
|
def trigger_pipeline(
|
2454
2454
|
self,
|
2455
2455
|
pipeline_name_or_id: Union[str, UUID, None] = None,
|
2456
|
-
run_configuration:
|
2456
|
+
run_configuration: Union[
|
2457
|
+
PipelineRunConfiguration, Dict[str, Any], None
|
2458
|
+
] = None,
|
2457
2459
|
config_path: Optional[str] = None,
|
2458
2460
|
template_id: Optional[UUID] = None,
|
2459
2461
|
stack_name_or_id: Union[str, UUID, None] = None,
|
@@ -2524,6 +2526,11 @@ class Client(metaclass=ClientMetaClass):
|
|
2524
2526
|
if config_path:
|
2525
2527
|
run_configuration = PipelineRunConfiguration.from_yaml(config_path)
|
2526
2528
|
|
2529
|
+
if isinstance(run_configuration, Dict):
|
2530
|
+
run_configuration = PipelineRunConfiguration.model_validate(
|
2531
|
+
run_configuration
|
2532
|
+
)
|
2533
|
+
|
2527
2534
|
if run_configuration:
|
2528
2535
|
validate_run_config_is_runnable_from_server(run_configuration)
|
2529
2536
|
|
zenml/constants.py
CHANGED
@@ -138,6 +138,7 @@ ENV_ZENML_USER_ID = "ZENML_USER_ID"
|
|
138
138
|
ENV_ZENML_CONFIG_PATH = "ZENML_CONFIG_PATH"
|
139
139
|
ENV_ZENML_DEBUG = "ZENML_DEBUG"
|
140
140
|
ENV_ZENML_LOGGING_VERBOSITY = "ZENML_LOGGING_VERBOSITY"
|
141
|
+
ENV_ZENML_LOGGING_FORMAT = "ZENML_LOGGING_FORMAT"
|
141
142
|
ENV_ZENML_REPOSITORY_PATH = "ZENML_REPOSITORY_PATH"
|
142
143
|
ENV_ZENML_PREVENT_PIPELINE_EXECUTION = "ZENML_PREVENT_PIPELINE_EXECUTION"
|
143
144
|
ENV_ZENML_ENABLE_RICH_TRACEBACK = "ZENML_ENABLE_RICH_TRACEBACK"
|
@@ -154,6 +155,7 @@ ENV_ZENML_SECRETS_STORE_PREFIX = "ZENML_SECRETS_STORE_"
|
|
154
155
|
ENV_ZENML_BACKUP_SECRETS_STORE_PREFIX = "ZENML_BACKUP_SECRETS_STORE_"
|
155
156
|
ENV_ZENML_SKIP_PIPELINE_REGISTRATION = "ZENML_SKIP_PIPELINE_REGISTRATION"
|
156
157
|
ENV_AUTO_OPEN_DASHBOARD = "AUTO_OPEN_DASHBOARD"
|
158
|
+
ENV_ZENML_AUTO_OPEN_DASHBOARD = "ZENML_AUTO_OPEN_DASHBOARD"
|
157
159
|
ENV_ZENML_DISABLE_DATABASE_MIGRATION = "DISABLE_DATABASE_MIGRATION"
|
158
160
|
ENV_ZENML_LOCAL_STORES_PATH = "ZENML_LOCAL_STORES_PATH"
|
159
161
|
ENV_ZENML_CONTAINER = "ZENML_CONTAINER"
|
@@ -22,6 +22,8 @@ from uuid import UUID
|
|
22
22
|
|
23
23
|
from zenml.client import Client
|
24
24
|
from zenml.code_repositories import BaseCodeRepository
|
25
|
+
from zenml.enums import StackComponentType
|
26
|
+
from zenml.exceptions import CustomFlavorImportError
|
25
27
|
from zenml.logger import get_logger
|
26
28
|
from zenml.utils import (
|
27
29
|
code_repository_utils,
|
@@ -31,6 +33,7 @@ from zenml.utils import (
|
|
31
33
|
)
|
32
34
|
|
33
35
|
if TYPE_CHECKING:
|
36
|
+
from zenml.artifact_stores import BaseArtifactStore
|
34
37
|
from zenml.models import CodeReferenceResponse, PipelineDeploymentResponse
|
35
38
|
|
36
39
|
logger = get_logger(__name__)
|
@@ -204,6 +207,8 @@ class BaseEntrypointConfiguration(ABC):
|
|
204
207
|
decision instead.
|
205
208
|
|
206
209
|
Raises:
|
210
|
+
CustomFlavorImportError: If the artifact store flavor can't be
|
211
|
+
imported.
|
207
212
|
RuntimeError: If the current environment requires code download
|
208
213
|
but the deployment does not have a reference to any code.
|
209
214
|
"""
|
@@ -215,7 +220,27 @@ class BaseEntrypointConfiguration(ABC):
|
|
215
220
|
return
|
216
221
|
|
217
222
|
if code_path := deployment.code_path:
|
218
|
-
|
223
|
+
# Load the artifact store not from the active stack but separately.
|
224
|
+
# This is required in case the stack has custom flavor components
|
225
|
+
# (other than the artifact store) for which the flavor
|
226
|
+
# implementations will only be available once the download finishes.
|
227
|
+
try:
|
228
|
+
artifact_store = self._load_active_artifact_store()
|
229
|
+
except CustomFlavorImportError as e:
|
230
|
+
raise CustomFlavorImportError(
|
231
|
+
"Failed to import custom artifact store flavor. The "
|
232
|
+
"artifact store flavor is needed to download your code, "
|
233
|
+
"but it looks like it might be part of the files "
|
234
|
+
"that we're trying to download. If this is the case, you "
|
235
|
+
"should disable downloading code from the artifact store "
|
236
|
+
"using `DockerSettings(allow_download_from_artifact_store=False)` "
|
237
|
+
"or make sure the artifact flavor files are included in "
|
238
|
+
"Docker image by using a custom parent image or installing "
|
239
|
+
"them as part of a pip dependency."
|
240
|
+
) from e
|
241
|
+
code_utils.download_code_from_artifact_store(
|
242
|
+
code_path=code_path, artifact_store=artifact_store
|
243
|
+
)
|
219
244
|
elif code_reference := deployment.code_reference:
|
220
245
|
# TODO: This might fail if the code repository had unpushed changes
|
221
246
|
# at the time the pipeline run was started.
|
@@ -300,6 +325,22 @@ class BaseEntrypointConfiguration(ABC):
|
|
300
325
|
|
301
326
|
return False
|
302
327
|
|
328
|
+
def _load_active_artifact_store(self) -> "BaseArtifactStore":
|
329
|
+
"""Load the active artifact store.
|
330
|
+
|
331
|
+
Returns:
|
332
|
+
The active artifact store.
|
333
|
+
"""
|
334
|
+
from zenml.artifact_stores import BaseArtifactStore
|
335
|
+
|
336
|
+
artifact_store_model = Client().active_stack_model.components[
|
337
|
+
StackComponentType.ARTIFACT_STORE
|
338
|
+
][0]
|
339
|
+
artifact_store = BaseArtifactStore.from_model(artifact_store_model)
|
340
|
+
assert isinstance(artifact_store, BaseArtifactStore)
|
341
|
+
|
342
|
+
return artifact_store
|
343
|
+
|
303
344
|
@abstractmethod
|
304
345
|
def run(self) -> None:
|
305
346
|
"""Runs the entrypoint configuration."""
|
zenml/exceptions.py
CHANGED
@@ -314,3 +314,7 @@ class SecretsStoreNotConfiguredError(NotImplementedError):
|
|
314
314
|
|
315
315
|
class BackupSecretsStoreNotConfiguredError(NotImplementedError):
|
316
316
|
"""Raised when a backup secrets store is not configured."""
|
317
|
+
|
318
|
+
|
319
|
+
class CustomFlavorImportError(ImportError):
|
320
|
+
"""Raised when failing to import a custom flavor."""
|
zenml/logger.py
CHANGED
@@ -24,6 +24,7 @@ from rich.traceback import install as rich_tb_install
|
|
24
24
|
from zenml.constants import (
|
25
25
|
ENABLE_RICH_TRACEBACK,
|
26
26
|
ENV_ZENML_LOGGING_COLORS_DISABLED,
|
27
|
+
ENV_ZENML_LOGGING_FORMAT,
|
27
28
|
ENV_ZENML_SUPPRESS_LOGS,
|
28
29
|
ZENML_LOGGING_VERBOSITY,
|
29
30
|
handle_bool_env_var,
|
@@ -144,6 +145,18 @@ def set_root_verbosity() -> None:
|
|
144
145
|
get_logger(__name__).debug("Logging NOTSET")
|
145
146
|
|
146
147
|
|
148
|
+
def get_formatter() -> logging.Formatter:
|
149
|
+
"""Get a configured logging formatter.
|
150
|
+
|
151
|
+
Returns:
|
152
|
+
The formatter.
|
153
|
+
"""
|
154
|
+
if log_format := os.environ.get(ENV_ZENML_LOGGING_FORMAT, None):
|
155
|
+
return logging.Formatter(fmt=log_format)
|
156
|
+
else:
|
157
|
+
return CustomFormatter()
|
158
|
+
|
159
|
+
|
147
160
|
def get_console_handler() -> Any:
|
148
161
|
"""Get console handler for logging.
|
149
162
|
|
@@ -151,7 +164,7 @@ def get_console_handler() -> Any:
|
|
151
164
|
A console handler.
|
152
165
|
"""
|
153
166
|
console_handler = logging.StreamHandler(sys.stdout)
|
154
|
-
console_handler.setFormatter(
|
167
|
+
console_handler.setFormatter(get_formatter())
|
155
168
|
return console_handler
|
156
169
|
|
157
170
|
|
@@ -179,7 +192,7 @@ def init_logging() -> None:
|
|
179
192
|
set_root_verbosity()
|
180
193
|
|
181
194
|
console_handler = logging.StreamHandler(sys.stdout)
|
182
|
-
console_handler.setFormatter(
|
195
|
+
console_handler.setFormatter(get_formatter())
|
183
196
|
logging.root.addHandler(console_handler)
|
184
197
|
|
185
198
|
# Enable logs if environment variable SUPPRESS_ZENML_LOGS is not set to True
|
zenml/models/v2/base/scoped.py
CHANGED
@@ -241,8 +241,9 @@ class UserScopedFilter(BaseFilter):
|
|
241
241
|
if sort_by == "user":
|
242
242
|
column = UserSchema.name
|
243
243
|
|
244
|
-
query = query.
|
245
|
-
UserSchema,
|
244
|
+
query = query.outerjoin(
|
245
|
+
UserSchema,
|
246
|
+
getattr(table, "user_id") == UserSchema.id,
|
246
247
|
)
|
247
248
|
|
248
249
|
query = query.add_columns(UserSchema.name)
|
@@ -950,31 +950,31 @@ class PipelineRunFilter(WorkspaceScopedTaggableFilter):
|
|
950
950
|
sort_by, operand = self.sorting_params
|
951
951
|
|
952
952
|
if sort_by == "pipeline":
|
953
|
-
query = query.
|
953
|
+
query = query.outerjoin(
|
954
954
|
PipelineSchema,
|
955
955
|
PipelineRunSchema.pipeline_id == PipelineSchema.id,
|
956
956
|
)
|
957
957
|
column = PipelineSchema.name
|
958
958
|
elif sort_by == "stack":
|
959
|
-
query = query.
|
959
|
+
query = query.outerjoin(
|
960
960
|
PipelineDeploymentSchema,
|
961
961
|
PipelineRunSchema.deployment_id == PipelineDeploymentSchema.id,
|
962
|
-
).
|
962
|
+
).outerjoin(
|
963
963
|
StackSchema,
|
964
964
|
PipelineDeploymentSchema.stack_id == StackSchema.id,
|
965
965
|
)
|
966
966
|
column = StackSchema.name
|
967
967
|
elif sort_by == "model":
|
968
|
-
query = query.
|
968
|
+
query = query.outerjoin(
|
969
969
|
ModelVersionSchema,
|
970
970
|
PipelineRunSchema.model_version_id == ModelVersionSchema.id,
|
971
|
-
).
|
971
|
+
).outerjoin(
|
972
972
|
ModelSchema,
|
973
973
|
ModelVersionSchema.model_id == ModelSchema.id,
|
974
974
|
)
|
975
975
|
column = ModelSchema.name
|
976
976
|
elif sort_by == "model_version":
|
977
|
-
query = query.
|
977
|
+
query = query.outerjoin(
|
978
978
|
ModelVersionSchema,
|
979
979
|
PipelineRunSchema.model_version_id == ModelVersionSchema.id,
|
980
980
|
)
|
zenml/stack/flavor.py
CHANGED
@@ -13,11 +13,13 @@
|
|
13
13
|
# permissions and limitations under the License.
|
14
14
|
"""Base ZenML Flavor implementation."""
|
15
15
|
|
16
|
+
import os
|
16
17
|
from abc import abstractmethod
|
17
18
|
from typing import Any, Dict, Optional, Type, cast
|
18
19
|
|
19
20
|
from zenml.client import Client
|
20
21
|
from zenml.enums import StackComponentType
|
22
|
+
from zenml.exceptions import CustomFlavorImportError
|
21
23
|
from zenml.models import (
|
22
24
|
FlavorRequest,
|
23
25
|
FlavorResponse,
|
@@ -126,10 +128,34 @@ class Flavor:
|
|
126
128
|
Args:
|
127
129
|
flavor_model: The model to load from.
|
128
130
|
|
131
|
+
Raises:
|
132
|
+
CustomFlavorImportError: If the custom flavor can't be imported.
|
133
|
+
ImportError: If the flavor can't be imported.
|
134
|
+
|
129
135
|
Returns:
|
130
136
|
The loaded flavor.
|
131
137
|
"""
|
132
|
-
|
138
|
+
try:
|
139
|
+
flavor = source_utils.load(flavor_model.source)()
|
140
|
+
except (ModuleNotFoundError, ImportError, NotImplementedError) as err:
|
141
|
+
if flavor_model.is_custom:
|
142
|
+
flavor_module, _ = flavor_model.source.rsplit(".")
|
143
|
+
expected_file_path = os.path.join(
|
144
|
+
source_utils.get_source_root(),
|
145
|
+
flavor_module.replace(".", os.path.sep),
|
146
|
+
)
|
147
|
+
raise CustomFlavorImportError(
|
148
|
+
f"Couldn't import custom flavor {flavor_model.name}: "
|
149
|
+
f"{err}. Make sure the custom flavor class "
|
150
|
+
f"`{flavor_model.source}` is importable. If it is part of "
|
151
|
+
"a library, make sure it is installed. If "
|
152
|
+
"it is a local code file, make sure it exists at "
|
153
|
+
f"`{expected_file_path}.py`."
|
154
|
+
)
|
155
|
+
else:
|
156
|
+
raise ImportError(
|
157
|
+
f"Couldn't import flavor {flavor_model.name}: {err}"
|
158
|
+
)
|
133
159
|
return cast(Flavor, flavor)
|
134
160
|
|
135
161
|
def to_model(
|
zenml/stack/stack_component.py
CHANGED
@@ -402,16 +402,10 @@ class StackComponent:
|
|
402
402
|
Raises:
|
403
403
|
ImportError: If the flavor can't be imported.
|
404
404
|
"""
|
405
|
-
|
406
|
-
|
407
|
-
try:
|
408
|
-
from zenml.stack import Flavor
|
405
|
+
from zenml.stack import Flavor
|
409
406
|
|
410
|
-
|
411
|
-
|
412
|
-
raise ImportError(
|
413
|
-
f"Couldn't import flavor {flavor_model.name}: {err}"
|
414
|
-
)
|
407
|
+
flavor_model = component_model.flavor
|
408
|
+
flavor = Flavor.from_model(flavor_model)
|
415
409
|
|
416
410
|
configuration = flavor.config_class(**component_model.configuration)
|
417
411
|
|
zenml/utils/code_utils.py
CHANGED
@@ -249,16 +249,7 @@ def download_and_extract_code(code_path: str, extract_dir: str) -> None:
|
|
249
249
|
Args:
|
250
250
|
code_path: Path where the code is uploaded.
|
251
251
|
extract_dir: Directory where to code should be extracted to.
|
252
|
-
|
253
|
-
Raises:
|
254
|
-
RuntimeError: If the code is stored in an artifact store which is
|
255
|
-
not active.
|
256
252
|
"""
|
257
|
-
artifact_store = Client().active_stack.artifact_store
|
258
|
-
|
259
|
-
if not code_path.startswith(artifact_store.path):
|
260
|
-
raise RuntimeError("Code stored in different artifact store.")
|
261
|
-
|
262
253
|
download_path = os.path.basename(code_path)
|
263
254
|
fileio.copy(code_path, download_path)
|
264
255
|
|
@@ -266,17 +257,30 @@ def download_and_extract_code(code_path: str, extract_dir: str) -> None:
|
|
266
257
|
os.remove(download_path)
|
267
258
|
|
268
259
|
|
269
|
-
def download_code_from_artifact_store(
|
260
|
+
def download_code_from_artifact_store(
|
261
|
+
code_path: str, artifact_store: "BaseArtifactStore"
|
262
|
+
) -> None:
|
270
263
|
"""Download code from the artifact store.
|
271
264
|
|
272
265
|
Args:
|
273
266
|
code_path: Path where the code is stored.
|
267
|
+
artifact_store: The artifact store to use for the download.
|
268
|
+
|
269
|
+
Raises:
|
270
|
+
RuntimeError: If the code is stored in an artifact store which is
|
271
|
+
not active.
|
274
272
|
"""
|
275
273
|
logger.info("Downloading code from artifact store path `%s`.", code_path)
|
276
274
|
|
277
|
-
|
278
|
-
|
279
|
-
|
275
|
+
if not code_path.startswith(artifact_store.path):
|
276
|
+
raise RuntimeError(
|
277
|
+
"The code is not stored in the artifact store "
|
278
|
+
f"{artifact_store.name} that was passed to download it."
|
279
|
+
)
|
280
|
+
|
281
|
+
# Make sure we register the artifact store filesystem here so the
|
282
|
+
# fileio.copy call will pick up the right credentials
|
283
|
+
artifact_store._register()
|
280
284
|
|
281
285
|
extract_dir = os.path.abspath("code")
|
282
286
|
os.makedirs(extract_dir)
|
zenml/utils/dashboard_utils.py
CHANGED
@@ -13,6 +13,7 @@
|
|
13
13
|
# permissions and limitations under the License.
|
14
14
|
"""Utility class to help with interacting with the dashboard."""
|
15
15
|
|
16
|
+
import os
|
16
17
|
from typing import Optional
|
17
18
|
from uuid import UUID
|
18
19
|
|
@@ -156,9 +157,27 @@ def show_dashboard(url: str) -> None:
|
|
156
157
|
display(IFrame(src=url, width="100%", height=720))
|
157
158
|
|
158
159
|
elif environment in (EnvironmentType.NATIVE, EnvironmentType.WSL):
|
159
|
-
|
160
|
+
open_dashboard = True
|
161
|
+
|
162
|
+
if constants.ENV_AUTO_OPEN_DASHBOARD in os.environ:
|
163
|
+
logger.warning(
|
164
|
+
"The `%s` environment variable is deprecated, use the `%s` "
|
165
|
+
"environment variable instead.",
|
166
|
+
constants.ENV_AUTO_OPEN_DASHBOARD,
|
167
|
+
constants.ENV_ZENML_AUTO_OPEN_DASHBOARD,
|
168
|
+
)
|
169
|
+
|
170
|
+
if not constants.handle_bool_env_var(
|
160
171
|
constants.ENV_AUTO_OPEN_DASHBOARD, default=True
|
161
172
|
):
|
173
|
+
open_dashboard = False
|
174
|
+
|
175
|
+
if not constants.handle_bool_env_var(
|
176
|
+
constants.ENV_ZENML_AUTO_OPEN_DASHBOARD, default=True
|
177
|
+
):
|
178
|
+
open_dashboard = False
|
179
|
+
|
180
|
+
if open_dashboard:
|
162
181
|
try:
|
163
182
|
import webbrowser
|
164
183
|
|
@@ -169,14 +188,16 @@ def show_dashboard(url: str) -> None:
|
|
169
188
|
logger.info(
|
170
189
|
"Automatically opening the dashboard in your "
|
171
190
|
"browser. To disable this, set the env variable "
|
172
|
-
"
|
191
|
+
"`%s=false`.",
|
192
|
+
constants.ENV_ZENML_AUTO_OPEN_DASHBOARD,
|
173
193
|
)
|
174
194
|
except Exception as e:
|
175
195
|
logger.error(e)
|
176
196
|
else:
|
177
197
|
logger.info(
|
178
198
|
"To open the dashboard in a browser automatically, "
|
179
|
-
"set the env variable
|
199
|
+
"set the env variable `%s=true`.",
|
200
|
+
constants.ENV_ZENML_AUTO_OPEN_DASHBOARD,
|
180
201
|
)
|
181
202
|
|
182
203
|
else:
|
@@ -587,7 +587,7 @@ class PipelineDockerImageBuilder:
|
|
587
587
|
f"ENV {ENV_ZENML_LOGGING_COLORS_DISABLED}={str(handle_bool_env_var(ENV_ZENML_LOGGING_COLORS_DISABLED, False))}"
|
588
588
|
)
|
589
589
|
for key, value in docker_settings.environment.items():
|
590
|
-
lines.append(f"ENV {key.upper()}={value}")
|
590
|
+
lines.append(f"ENV {key.upper()}='{value}'")
|
591
591
|
|
592
592
|
if apt_packages:
|
593
593
|
apt_packages = " ".join(f"'{p}'" for p in apt_packages)
|
{zenml_nightly-0.73.0.dev20250128.dist-info → zenml_nightly-0.73.0.dev20250129.dist-info}/RECORD
RENAMED
@@ -1,5 +1,5 @@
|
|
1
1
|
zenml/README.md,sha256=827dekbOWAs1BpW7VF1a4d7EbwPbjwccX-2zdXBENZo,1777
|
2
|
-
zenml/VERSION,sha256=
|
2
|
+
zenml/VERSION,sha256=m7fStD0xiuH4dw-kOqiEMQA7qag3b71Ugj8OUtU2CGM,19
|
3
3
|
zenml/__init__.py,sha256=SkMObQA41ajqdZqGErN00S1Vf3KAxpLvbZ-OBy5uYoo,2130
|
4
4
|
zenml/actions/__init__.py,sha256=mrt6wPo73iKRxK754_NqsGyJ3buW7RnVeIGXr1xEw8Y,681
|
5
5
|
zenml/actions/base_action.py,sha256=UcaHev6BTuLDwuswnyaPjdA8AgUqB5xPZ-lRtuvf2FU,25553
|
@@ -55,7 +55,7 @@ zenml/cli/user_management.py,sha256=fTuRworQahst_j78qPYTtgciUeUOxwo7efiyPwmj2tI,
|
|
55
55
|
zenml/cli/utils.py,sha256=aCSQFjfaLtBt4OYzYDwO2Rmdmn-b5AVBqpBGvv7OT7E,86420
|
56
56
|
zenml/cli/version.py,sha256=nm1iSU_1V6-MUwpMKeXcwFhLYGUMLswvQL67cEuCpxA,3635
|
57
57
|
zenml/cli/workspace.py,sha256=bp02aXou574ToWPD8OAIB_cg3mvpE011H8aMKegT-nU,2970
|
58
|
-
zenml/client.py,sha256=
|
58
|
+
zenml/client.py,sha256=Aj3-Ofz9t0MltZarqdgb4fSFqhrl6SWC5VjEoHkcCdU,283629
|
59
59
|
zenml/client_lazy_loader.py,sha256=MOBgS1ITYqGvPUnWQ6edn9s8Hr_72YfWbwEIfHKUr9g,7104
|
60
60
|
zenml/code_repositories/__init__.py,sha256=W5bDfzAG8OXIKZSV1L-VHuzMcSCYa9qzTdPb3jqfyYw,920
|
61
61
|
zenml/code_repositories/base_code_repository.py,sha256=_DbxIBxvJlN0PFhST0vlTIQ26Q6V3Nar0kYdeGaJrk8,4386
|
@@ -85,7 +85,7 @@ zenml/config/step_run_info.py,sha256=KiVRSTtKmZ1GbvseDTap2imr7XwMHD3jSFVpyLNEK1I
|
|
85
85
|
zenml/config/store_config.py,sha256=Cla5p5dTB6nNlo8_OZDs9hod5hspi64vxwtZj882XgU,3559
|
86
86
|
zenml/config/strict_base_model.py,sha256=iHnO9qOmLUP_eiy9IjRr3JjIs1l1I_CsRQ76EyAneYU,860
|
87
87
|
zenml/console.py,sha256=hj_KerPQKwnyKACj0ehSqUQX0mGVCJBKE1QvCt6ik3A,1160
|
88
|
-
zenml/constants.py,sha256=
|
88
|
+
zenml/constants.py,sha256=d6RrpS0nni9bAHa2BR6R8bzXiRe9ELKCYVZcKUAE9tE,15749
|
89
89
|
zenml/container_registries/__init__.py,sha256=ZSPbBIOnzhg88kQSpYgKe_POLuru14m629665-kAVAA,2200
|
90
90
|
zenml/container_registries/azure_container_registry.py,sha256=t1sfDa94Vzbyqtb1iPFNutJ2EXV5_p9CUNITasoiQ70,2667
|
91
91
|
zenml/container_registries/base_container_registry.py,sha256=6c2e32wuqxYHJXm5OV2LY1MtX9yopB7WZtes9fmTAz0,7625
|
@@ -96,7 +96,7 @@ zenml/container_registries/github_container_registry.py,sha256=rbcGkFfPDk-Il0T9F
|
|
96
96
|
zenml/data_validators/__init__.py,sha256=9Fa0jiUSQ_JsLMHYjqDayWQl4m_uuai9tQjIP60OTk8,886
|
97
97
|
zenml/data_validators/base_data_validator.py,sha256=reGUJ6NEFfd_wocrcYBSU5QHCSBOll-pP_suTP_bfv0,9839
|
98
98
|
zenml/entrypoints/__init__.py,sha256=2CMemOrHIJauxAss6k7dKFtsCFqgYR-JbAx4REoCaE8,946
|
99
|
-
zenml/entrypoints/base_entrypoint_configuration.py,sha256
|
99
|
+
zenml/entrypoints/base_entrypoint_configuration.py,sha256=5GY0W-29pabMmtb8WlnEKtg3H-ywFEpXzpud3hC12_o,12516
|
100
100
|
zenml/entrypoints/entrypoint.py,sha256=XNgXBCMKoidmP0_AYgMpqo-neG8Y8jG0rj43ofTDZ9E,2033
|
101
101
|
zenml/entrypoints/pipeline_entrypoint_configuration.py,sha256=To-vTP29qAE36ndJDF1fRw9wL2Nk2bsBuO-ayAwvSmo,1646
|
102
102
|
zenml/entrypoints/step_entrypoint_configuration.py,sha256=fETr5E7eH8QEWYqgaarIrLQzrPrdLEr194xhd3H5yU4,7206
|
@@ -110,7 +110,7 @@ zenml/event_sources/base_event.py,sha256=irrpiYi4fDYewzaXtb6_gPsqyFlYYLSap2BTGQz
|
|
110
110
|
zenml/event_sources/base_event_source.py,sha256=04ramQhcPhGD9Mo9BcJZR-b9fJb8a4wzvlPVMAb9Dyk,25893
|
111
111
|
zenml/event_sources/webhooks/__init__.py,sha256=VsHzSn1oKFaUs495ZqsKCfXiYxtaeGsnSGuvuqbGXCg,658
|
112
112
|
zenml/event_sources/webhooks/base_webhook_event_source.py,sha256=2zADrL3cNpD-akZRdemUePUnTl8pPMPVX6eFQgWeUSo,7371
|
113
|
-
zenml/exceptions.py,sha256=
|
113
|
+
zenml/exceptions.py,sha256=PcWF8BWbOgET5YUIzGMviYgHw7htspL98XovWCGS72M,9790
|
114
114
|
zenml/experiment_trackers/__init__.py,sha256=b5XlKoRtMR1WBQVEiItolkpsa0iJ1IqxTmmRatr4YDw,1119
|
115
115
|
zenml/experiment_trackers/base_experiment_tracker.py,sha256=K92w7c0r45qLPIsA3YmwPflaIl_WTK8-_Hh_1MQiLkE,2218
|
116
116
|
zenml/feature_stores/__init__.py,sha256=tSW7YnDa3NDnlkX3yA_CTdX7ocWB9gsfF-7X9sc6i8Y,1415
|
@@ -574,7 +574,7 @@ zenml/io/fileio.py,sha256=6Z4ywg-1X49Xemf22sm7r9Z603kqUSpQAkw46UDBTyk,8758
|
|
574
574
|
zenml/io/filesystem.py,sha256=3z13GIQpEVmatGXzrTZj8nIsaYb_N3bHwmgH_FKrMiA,6580
|
575
575
|
zenml/io/filesystem_registry.py,sha256=stujDg4a5k983WMwp3rj4Z4puiUco4REyVoIoMIpIII,4541
|
576
576
|
zenml/io/local_filesystem.py,sha256=xQTZPT5cpooptUV8KiifxZojS6pWCv1-6UUxitUYb_E,7386
|
577
|
-
zenml/logger.py,sha256=
|
577
|
+
zenml/logger.py,sha256=LMV2sMFQ-6JK9xEn6kEt1C9vAoQ0lwuHVM5XHIeKubE,6966
|
578
578
|
zenml/logging/__init__.py,sha256=lnqbOa31wAHwPP5f8vZazOrUwnP2QviLiIVwxoAefD8,975
|
579
579
|
zenml/logging/step_logging.py,sha256=L8Kruo9HfVoSIhHEjN6ls3Ywd6wk4w9rTvFipTWkkGA,17606
|
580
580
|
zenml/login/__init__.py,sha256=Evi7hq8tpUn57IM3iX3hYP0r8oIeEWUhS471TAOyVGs,644
|
@@ -622,7 +622,7 @@ zenml/models/v2/base/base.py,sha256=tXzNTIwGNz7MEgfii3-6ASBNFg4SkR9D9ZM48tlNr84,
|
|
622
622
|
zenml/models/v2/base/base_plugin_flavor.py,sha256=BfPL4gm5i7ad7_vuRmPtC-rE2kl0W_8SmpWme8Akv1c,2608
|
623
623
|
zenml/models/v2/base/filter.py,sha256=uCZa3MFdEmUL91DYa43vZVuHYBQDC-z3gZWUzzqd63U,36990
|
624
624
|
zenml/models/v2/base/page.py,sha256=yBpWB-8iUmyRwXKSJvX3v9SB7WOnyRa25O8SAss24xk,2601
|
625
|
-
zenml/models/v2/base/scoped.py,sha256=
|
625
|
+
zenml/models/v2/base/scoped.py,sha256=fOZpuTTUjkg2xE8LvPFUP8lpU9HC-chSQ8xNpmWAW-c,17578
|
626
626
|
zenml/models/v2/core/__init__.py,sha256=LGMIUJi19sOsvo54roZSQwDp_czNQYtenqd_frTLIhU,613
|
627
627
|
zenml/models/v2/core/action.py,sha256=6n6Lep_2-OVUDCWs6eKiUHFKLvcoMjHWP4ZSbua1JRY,7911
|
628
628
|
zenml/models/v2/core/action_flavor.py,sha256=DlGlJTOcgLSDYAsrbAyXOJVdo7X2GYTFQTTEG5BEf-Q,1718
|
@@ -645,7 +645,7 @@ zenml/models/v2/core/model_version_pipeline_run.py,sha256=JbPZZEQvOK9I32htkWdAON
|
|
645
645
|
zenml/models/v2/core/pipeline.py,sha256=TGsxPvFzGwHebEVNyNc2kHCQQlMB8CCWWveKXDkACYY,11817
|
646
646
|
zenml/models/v2/core/pipeline_build.py,sha256=bjSvmNnTF9xAycYfmTHO2wzgR-ZVWyy5V5-9ajZUxag,16399
|
647
647
|
zenml/models/v2/core/pipeline_deployment.py,sha256=6PbpnEUAbTT-_jPmyNtKuTJHFGdGLD2h5Zu_pXIHW1I,12108
|
648
|
-
zenml/models/v2/core/pipeline_run.py,sha256=
|
648
|
+
zenml/models/v2/core/pipeline_run.py,sha256=HwZtUGDdjfxUmlbTdkI6Fnvlt0jiLk2aatwYwbhjonI,32699
|
649
649
|
zenml/models/v2/core/run_metadata.py,sha256=YDiPVRzTUMVHqW4T_Ke4GJMdscp0aS_g8I4P8n70szc,2436
|
650
650
|
zenml/models/v2/core/run_template.py,sha256=A_dezNA9o1uJW-o1B9fYaSSWHwwglJYP3jvhWhGcJK4,12971
|
651
651
|
zenml/models/v2/core/schedule.py,sha256=JNYTGPXDPMz7A9OjhnHIXyOLQuoFnrzOwChGibz2xQY,10774
|
@@ -729,10 +729,10 @@ zenml/services/service_status.py,sha256=-Y1uH43l1VuuvReETCKCBAdYOE0KZeANJ021xyNw
|
|
729
729
|
zenml/services/service_type.py,sha256=3MVWQu7AgsDyxOIKA79_kkgoBWPri3aJRbZlz2T6NBo,1202
|
730
730
|
zenml/stack/__init__.py,sha256=vfHzaoRhPtS-XSlM8Vx1noJZDHF1Pj6LDz2knpn_QBg,1236
|
731
731
|
zenml/stack/authentication_mixin.py,sha256=sg7GkpB-Ao9Gsa7Po0jxMn-_mVYUB42etmspZ6dk8cI,3982
|
732
|
-
zenml/stack/flavor.py,sha256=
|
732
|
+
zenml/stack/flavor.py,sha256=8vcaGCwHOyLG3LIaKQxS12N5uSFFLYyNhrHdb5WOE2w,10988
|
733
733
|
zenml/stack/flavor_registry.py,sha256=IL0fRrxxQJ9YkCYCeADP7nwWEQo4XBElJY4owMjKGbQ,6108
|
734
734
|
zenml/stack/stack.py,sha256=ytt38mBjG3an8FTK5-59k0kXMo-QRX-OhaSNmdvXK80,32906
|
735
|
-
zenml/stack/stack_component.py,sha256=
|
735
|
+
zenml/stack/stack_component.py,sha256=w9GUnlYG89gH0t-Nq3ZM2lVcgFBSzPtdQhYZ9yF4f9o,29424
|
736
736
|
zenml/stack/stack_validator.py,sha256=hWbvvGIeWLj6NwSsF4GCc6RAxAWvxHXTcBZL9nJvcak,3111
|
737
737
|
zenml/stack/utils.py,sha256=qHMFi8SVMSDFeZTFO4KkvaLUbF-l3B0_JZ5SSMxYrwI,6406
|
738
738
|
zenml/stack_deployments/__init__.py,sha256=-7593cQ_ZgRn774Ol-8AKXXQquIU4DSiaThVEr6TfWM,644
|
@@ -757,10 +757,10 @@ zenml/utils/__init__.py,sha256=jaMTbjm8tLYkaRoxlZ0Em4ye_ZHOHKgP2goPTTiYGUQ,797
|
|
757
757
|
zenml/utils/archivable.py,sha256=QuLe1IhyABTrE6Y0hAT3tKjaUCpcze5ffZ_RKoKtJwY,6549
|
758
758
|
zenml/utils/callback_registry.py,sha256=QBWdaraLAxBxi8DKbv9X1SUpTKDhhj-XE0JomB2Ax2Y,2411
|
759
759
|
zenml/utils/code_repository_utils.py,sha256=f_VaN-QaCd66xVJJjM4mIo6Heu96-c9qdWh5XUjGpMY,4950
|
760
|
-
zenml/utils/code_utils.py,sha256=
|
760
|
+
zenml/utils/code_utils.py,sha256=SsfE4sHcBX3yPyrk3QWZXpXfsTcjycbVIuqVV6zKPDY,11463
|
761
761
|
zenml/utils/cuda_utils.py,sha256=RR21m__Zs-OnI5n-veFUzWniZjwLSbalHE5QV3jK1Hw,1624
|
762
762
|
zenml/utils/daemon.py,sha256=GZ7Dx6GLHK04SR50wBxpKYmFhxPBfdLWxJiAWzJC6cM,11863
|
763
|
-
zenml/utils/dashboard_utils.py,sha256=
|
763
|
+
zenml/utils/dashboard_utils.py,sha256=fV1U0KeQEmipVRfrhkgXFVenWiz2qctm0kx7aaI5Aww,6073
|
764
764
|
zenml/utils/deprecation_utils.py,sha256=QcWkOnzIRDKPOfkr523n3l2MoY2wE0LIPfbx99t4Gmg,6343
|
765
765
|
zenml/utils/dict_utils.py,sha256=i7KAaKrkaWA_cG5IvVfMnr0CwWlBJ7KAsGvP2wxjZI8,2667
|
766
766
|
zenml/utils/docker_utils.py,sha256=QvkKnvIYSKAhW7mErXwSaQ432-q1LAsLjo2YWSXD8Bk,13889
|
@@ -779,7 +779,7 @@ zenml/utils/networking_utils.py,sha256=zTDbOMkMPRWiWLZ2ccchd37rvvZWIIh0Kr9dZE-VJ
|
|
779
779
|
zenml/utils/notebook_utils.py,sha256=VBMU9Qnx_NdpB1TQtnej56L0hRr11fwniOva3ltUT90,4113
|
780
780
|
zenml/utils/package_utils.py,sha256=wy0Mh8hHhOX2z1JfGN5lifG9yEsBQGLwNfur0M3J2tQ,2730
|
781
781
|
zenml/utils/pagination_utils.py,sha256=TufckOqOKeDPwE3ySefL05zOzGUUA2Fqx_QFVhE2so0,1445
|
782
|
-
zenml/utils/pipeline_docker_image_builder.py,sha256=
|
782
|
+
zenml/utils/pipeline_docker_image_builder.py,sha256=QOZV_AYFbUtcfJZGNO7pH2_EoXyRqs9GZF_hTeoqW5E,25036
|
783
783
|
zenml/utils/proxy_utils.py,sha256=fgRlLa9pfXJDoxtB31_YP7DClOMQLek_nMmM0et6i3w,7241
|
784
784
|
zenml/utils/pydantic_utils.py,sha256=oQcxY4VXuVY3n632atlvdmi12EYcSQ1xZuQJY3Je-sA,16592
|
785
785
|
zenml/utils/requirements_utils.py,sha256=pUVlQpEtLfz7lLJEUN-t7oHKLzdZZdgHoMzv0V5WXZI,2250
|
@@ -1292,8 +1292,8 @@ zenml/zen_stores/secrets_stores/sql_secrets_store.py,sha256=Bq1djrUP9saoD7vECjS7
|
|
1292
1292
|
zenml/zen_stores/sql_zen_store.py,sha256=AaPwO6R_2QVsI_PmDktVTF-Fx6VzR64j-1oU7cJwVxI,416486
|
1293
1293
|
zenml/zen_stores/template_utils.py,sha256=EKYBgmDLTS_PSMWaIO5yvHPLiQvMqHcsAe6NUCrv-i4,9068
|
1294
1294
|
zenml/zen_stores/zen_store_interface.py,sha256=vf2gKBWfUUPtcGZC35oQB6pPNVzWVyQC8nWxVLjfrxM,92692
|
1295
|
-
zenml_nightly-0.73.0.
|
1296
|
-
zenml_nightly-0.73.0.
|
1297
|
-
zenml_nightly-0.73.0.
|
1298
|
-
zenml_nightly-0.73.0.
|
1299
|
-
zenml_nightly-0.73.0.
|
1295
|
+
zenml_nightly-0.73.0.dev20250129.dist-info/LICENSE,sha256=wbnfEnXnafPbqwANHkV6LUsPKOtdpsd-SNw37rogLtc,11359
|
1296
|
+
zenml_nightly-0.73.0.dev20250129.dist-info/METADATA,sha256=Sj8b5ZZPRCly5rFuLA5H0Zm9k5iUgThskLgRkmPYazU,21355
|
1297
|
+
zenml_nightly-0.73.0.dev20250129.dist-info/WHEEL,sha256=IYZQI976HJqqOpQU6PHkJ8fb3tMNBFjg-Cn-pwAbaFM,88
|
1298
|
+
zenml_nightly-0.73.0.dev20250129.dist-info/entry_points.txt,sha256=QK3ETQE0YswAM2mWypNMOv8TLtr7EjnqAFq1br_jEFE,43
|
1299
|
+
zenml_nightly-0.73.0.dev20250129.dist-info/RECORD,,
|
{zenml_nightly-0.73.0.dev20250128.dist-info → zenml_nightly-0.73.0.dev20250129.dist-info}/LICENSE
RENAMED
File without changes
|
{zenml_nightly-0.73.0.dev20250128.dist-info → zenml_nightly-0.73.0.dev20250129.dist-info}/WHEEL
RENAMED
File without changes
|
File without changes
|