metaflow 2.13.2__py2.py3-none-any.whl → 2.13.4__py2.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.
- metaflow/cards.py +1 -0
- metaflow/cli.py +5 -0
- metaflow/cli_components/run_cmds.py +2 -0
- metaflow/cli_components/step_cmd.py +0 -13
- metaflow/decorators.py +2 -2
- metaflow/parameters.py +3 -1
- metaflow/plugins/cards/card_cli.py +7 -2
- metaflow/plugins/cards/card_decorator.py +53 -20
- metaflow/plugins/cards/card_modules/basic.py +56 -5
- metaflow/plugins/cards/card_modules/card.py +16 -1
- metaflow/plugins/cards/card_modules/components.py +64 -16
- metaflow/plugins/cards/card_modules/main.js +27 -25
- metaflow/plugins/cards/card_modules/test_cards.py +4 -4
- metaflow/plugins/cards/component_serializer.py +1 -1
- metaflow/plugins/events_decorator.py +41 -7
- metaflow/plugins/project_decorator.py +33 -5
- metaflow/user_configs/config_parameters.py +23 -9
- metaflow/version.py +1 -1
- {metaflow-2.13.2.dist-info → metaflow-2.13.4.dist-info}/METADATA +13 -3
- {metaflow-2.13.2.dist-info → metaflow-2.13.4.dist-info}/RECORD +24 -24
- {metaflow-2.13.2.dist-info → metaflow-2.13.4.dist-info}/WHEEL +1 -1
- {metaflow-2.13.2.dist-info → metaflow-2.13.4.dist-info}/LICENSE +0 -0
- {metaflow-2.13.2.dist-info → metaflow-2.13.4.dist-info}/entry_points.txt +0 -0
- {metaflow-2.13.2.dist-info → metaflow-2.13.4.dist-info}/top_level.txt +0 -0
@@ -38,7 +38,7 @@ class TestEditableCard(MetaflowCard):
|
|
38
38
|
|
39
39
|
ALLOW_USER_COMPONENTS = True
|
40
40
|
|
41
|
-
def __init__(self,
|
41
|
+
def __init__(self, components=[], **kwargs):
|
42
42
|
self._components = components
|
43
43
|
|
44
44
|
def render(self, task):
|
@@ -52,7 +52,7 @@ class TestEditableCard2(MetaflowCard):
|
|
52
52
|
|
53
53
|
ALLOW_USER_COMPONENTS = True
|
54
54
|
|
55
|
-
def __init__(self,
|
55
|
+
def __init__(self, components=[], **kwargs):
|
56
56
|
self._components = components
|
57
57
|
|
58
58
|
def render(self, task):
|
@@ -64,7 +64,7 @@ class TestNonEditableCard(MetaflowCard):
|
|
64
64
|
|
65
65
|
seperator = "$&#!!@*"
|
66
66
|
|
67
|
-
def __init__(self,
|
67
|
+
def __init__(self, components=[], **kwargs):
|
68
68
|
self._components = components
|
69
69
|
|
70
70
|
def render(self, task):
|
@@ -193,7 +193,7 @@ class TestRefreshComponentCard(MetaflowCard):
|
|
193
193
|
|
194
194
|
type = "test_component_refresh_card"
|
195
195
|
|
196
|
-
def __init__(self,
|
196
|
+
def __init__(self, components=[], **kwargs):
|
197
197
|
self._components = components
|
198
198
|
|
199
199
|
def render(self, task) -> str:
|
@@ -1,8 +1,8 @@
|
|
1
1
|
from .card_modules import MetaflowCardComponent
|
2
|
+
from .card_modules.card import create_component_id
|
2
3
|
from .card_modules.basic import ErrorComponent, SectionComponent
|
3
4
|
from .card_modules.components import (
|
4
5
|
UserComponent,
|
5
|
-
create_component_id,
|
6
6
|
StubComponent,
|
7
7
|
)
|
8
8
|
from .exception import ComponentOverwriteNotSupportedException
|
@@ -362,11 +362,7 @@ class TriggerOnFinishDecorator(FlowDecorator):
|
|
362
362
|
"""
|
363
363
|
|
364
364
|
name = "trigger_on_finish"
|
365
|
-
|
366
|
-
"flow": None, # flow_name or project_flow_name
|
367
|
-
"flows": [], # flow_names or project_flow_names
|
368
|
-
"options": {},
|
369
|
-
}
|
365
|
+
|
370
366
|
options = {
|
371
367
|
"trigger": dict(
|
372
368
|
multiple=True,
|
@@ -374,6 +370,14 @@ class TriggerOnFinishDecorator(FlowDecorator):
|
|
374
370
|
help="Specify run pathspec for testing @trigger_on_finish locally.",
|
375
371
|
),
|
376
372
|
}
|
373
|
+
defaults = {
|
374
|
+
"flow": None, # flow_name or project_flow_name
|
375
|
+
"flows": [], # flow_names or project_flow_names
|
376
|
+
"options": {},
|
377
|
+
# Re-enable if you want to support TL options directly in the decorator like
|
378
|
+
# for @project decorator
|
379
|
+
# **{k: v["default"] for k, v in options.items()},
|
380
|
+
}
|
377
381
|
|
378
382
|
def flow_init(
|
379
383
|
self,
|
@@ -539,13 +543,43 @@ class TriggerOnFinishDecorator(FlowDecorator):
|
|
539
543
|
self.options = self.attributes["options"]
|
540
544
|
|
541
545
|
# Handle scenario for local testing using --trigger.
|
546
|
+
|
547
|
+
# Re-enable this code if you want to support passing trigger directly in the
|
548
|
+
# decorator in a way similar to how production and branch are passed in the
|
549
|
+
# project decorator.
|
550
|
+
|
551
|
+
# # This is overkill since default is None for all options but adding this code
|
552
|
+
# # to make it safe if other non None-default options are added in the future.
|
553
|
+
# for op in options:
|
554
|
+
# if (
|
555
|
+
# op in self._user_defined_attributes
|
556
|
+
# and options[op] != self.defaults[op]
|
557
|
+
# and self.attributes[op] != options[op]
|
558
|
+
# ):
|
559
|
+
# # Exception if:
|
560
|
+
# # - the user provides a value in the attributes field
|
561
|
+
# # - AND the user provided a value in the command line (non default)
|
562
|
+
# # - AND the values are different
|
563
|
+
# # Note that this won't raise an error if the user provided the default
|
564
|
+
# # value in the command line and provided one in attribute but although
|
565
|
+
# # slightly inconsistent, it is not incorrect.
|
566
|
+
# raise MetaflowException(
|
567
|
+
# "You cannot pass %s as both a command-line argument and an attribute "
|
568
|
+
# "of the @trigger_on_finish decorator." % op
|
569
|
+
# )
|
570
|
+
|
571
|
+
# if "trigger" in self._user_defined_attributes:
|
572
|
+
# trigger_option = self.attributes["trigger"]
|
573
|
+
# else:
|
574
|
+
trigger_option = options["trigger"]
|
575
|
+
|
542
576
|
self._option_values = options
|
543
|
-
if
|
577
|
+
if trigger_option:
|
544
578
|
from metaflow import Run
|
545
579
|
from metaflow.events import Trigger
|
546
580
|
|
547
581
|
run_objs = []
|
548
|
-
for run_pathspec in
|
582
|
+
for run_pathspec in trigger_option:
|
549
583
|
if len(run_pathspec.split("/")) != 2:
|
550
584
|
raise MetaflowException(
|
551
585
|
"Incorrect format for run pathspec for *--trigger*. "
|
@@ -72,7 +72,6 @@ class ProjectDecorator(FlowDecorator):
|
|
72
72
|
"""
|
73
73
|
|
74
74
|
name = "project"
|
75
|
-
defaults = {"name": None}
|
76
75
|
|
77
76
|
options = {
|
78
77
|
"production": dict(
|
@@ -91,19 +90,48 @@ class ProjectDecorator(FlowDecorator):
|
|
91
90
|
),
|
92
91
|
}
|
93
92
|
|
93
|
+
defaults = {"name": None, **{k: v["default"] for k, v in options.items()}}
|
94
|
+
|
94
95
|
def flow_init(
|
95
96
|
self, flow, graph, environment, flow_datastore, metadata, logger, echo, options
|
96
97
|
):
|
97
98
|
self._option_values = options
|
98
99
|
project_name = self.attributes.get("name")
|
100
|
+
for op in options:
|
101
|
+
if (
|
102
|
+
op in self._user_defined_attributes
|
103
|
+
and options[op] != self.defaults[op]
|
104
|
+
and self.attributes[op] != options[op]
|
105
|
+
):
|
106
|
+
# Exception if:
|
107
|
+
# - the user provides a value in the attributes field
|
108
|
+
# - AND the user provided a value in the command line (non default)
|
109
|
+
# - AND the values are different
|
110
|
+
# Note that this won't raise an error if the user provided the default
|
111
|
+
# value in the command line and provided one in attribute but although
|
112
|
+
# slightly inconsistent, it is not incorrect.
|
113
|
+
raise MetaflowException(
|
114
|
+
"You cannot pass %s as both a command-line argument and an attribute "
|
115
|
+
"of the @project decorator." % op
|
116
|
+
)
|
117
|
+
if "branch" in self._user_defined_attributes:
|
118
|
+
project_branch = self.attributes["branch"]
|
119
|
+
else:
|
120
|
+
project_branch = options["branch"]
|
121
|
+
|
122
|
+
if "production" in self._user_defined_attributes:
|
123
|
+
project_production = self.attributes["production"]
|
124
|
+
else:
|
125
|
+
project_production = options["production"]
|
126
|
+
|
99
127
|
project_flow_name, branch_name = format_name(
|
100
128
|
flow.name,
|
101
129
|
project_name,
|
102
|
-
|
103
|
-
|
130
|
+
project_production,
|
131
|
+
project_branch,
|
104
132
|
get_username(),
|
105
133
|
)
|
106
|
-
is_user_branch =
|
134
|
+
is_user_branch = project_branch is None and not project_production
|
107
135
|
echo(
|
108
136
|
"Project: *%s*, Branch: *%s*" % (project_name, branch_name),
|
109
137
|
fg="magenta",
|
@@ -114,7 +142,7 @@ class ProjectDecorator(FlowDecorator):
|
|
114
142
|
"project_name": project_name,
|
115
143
|
"branch_name": branch_name,
|
116
144
|
"is_user_branch": is_user_branch,
|
117
|
-
"is_production":
|
145
|
+
"is_production": project_production,
|
118
146
|
"project_flow_name": project_flow_name,
|
119
147
|
}
|
120
148
|
)
|
@@ -3,7 +3,7 @@ import json
|
|
3
3
|
import os
|
4
4
|
import re
|
5
5
|
|
6
|
-
from typing import Any, Callable, Dict, Optional, TYPE_CHECKING, Union
|
6
|
+
from typing import Any, Callable, Dict, List, Optional, Tuple, TYPE_CHECKING, Union
|
7
7
|
|
8
8
|
|
9
9
|
from ..exception import MetaflowException
|
@@ -171,7 +171,7 @@ class DelayEvaluator(collections.abc.Mapping):
|
|
171
171
|
yield "%s%d" % (UNPACK_KEY, id(self))
|
172
172
|
|
173
173
|
def __getitem__(self, key):
|
174
|
-
if key == "%s%d" % (UNPACK_KEY, id(self)):
|
174
|
+
if isinstance(key, str) and key == "%s%d" % (UNPACK_KEY, id(self)):
|
175
175
|
return self
|
176
176
|
if self._access is None:
|
177
177
|
raise KeyError(key)
|
@@ -196,12 +196,23 @@ class DelayEvaluator(collections.abc.Mapping):
|
|
196
196
|
if flow_cls is None:
|
197
197
|
# We are not executing inside a flow (ie: not the CLI)
|
198
198
|
raise MetaflowException(
|
199
|
-
"Config object can only be used directly in the FlowSpec defining them
|
200
|
-
"
|
199
|
+
"Config object can only be used directly in the FlowSpec defining them "
|
200
|
+
"(or their flow decorators)."
|
201
201
|
)
|
202
202
|
if self._access is not None:
|
203
203
|
# Build the final expression by adding all the fields in access as . fields
|
204
|
-
|
204
|
+
access_list = [self._config_expr]
|
205
|
+
for a in self._access:
|
206
|
+
if isinstance(a, str):
|
207
|
+
access_list.append(a)
|
208
|
+
elif isinstance(a, DelayEvaluator):
|
209
|
+
# Supports things like config[other_config.selector].var
|
210
|
+
access_list.append(a())
|
211
|
+
else:
|
212
|
+
raise MetaflowException(
|
213
|
+
"Field '%s' of type '%s' is not supported" % (str(a), type(a))
|
214
|
+
)
|
215
|
+
self._config_expr = ".".join(access_list)
|
205
216
|
# Evaluate the expression setting the config values as local variables
|
206
217
|
try:
|
207
218
|
return eval(
|
@@ -369,7 +380,7 @@ class Config(Parameter, collections.abc.Mapping):
|
|
369
380
|
|
370
381
|
def __getitem__(self, key):
|
371
382
|
self._init_delayed_evaluator()
|
372
|
-
if key.startswith(UNPACK_KEY):
|
383
|
+
if isinstance(key, str) and key.startswith(UNPACK_KEY):
|
373
384
|
return self._delayed_evaluator[key]
|
374
385
|
return DelayEvaluator(self.name.lower())[key]
|
375
386
|
|
@@ -406,17 +417,20 @@ def resolve_delayed_evaluator(v: Any, ignore_errors: bool = False) -> Any:
|
|
406
417
|
|
407
418
|
def unpack_delayed_evaluator(
|
408
419
|
to_unpack: Dict[str, Any], ignore_errors: bool = False
|
409
|
-
) -> Dict[str, Any]:
|
420
|
+
) -> Tuple[Dict[str, Any], List[str]]:
|
410
421
|
result = {}
|
422
|
+
new_keys = []
|
411
423
|
for k, v in to_unpack.items():
|
412
424
|
if not isinstance(k, str) or not k.startswith(UNPACK_KEY):
|
413
425
|
result[k] = v
|
414
426
|
else:
|
415
427
|
# k.startswith(UNPACK_KEY)
|
416
428
|
try:
|
417
|
-
|
429
|
+
new_vals = resolve_delayed_evaluator(v)
|
430
|
+
new_keys.extend(new_vals.keys())
|
431
|
+
result.update(new_vals)
|
418
432
|
except Exception as e:
|
419
433
|
if ignore_errors:
|
420
434
|
continue
|
421
435
|
raise e
|
422
|
-
return result
|
436
|
+
return result, new_keys
|
metaflow/version.py
CHANGED
@@ -1 +1 @@
|
|
1
|
-
metaflow_version = "2.13.
|
1
|
+
metaflow_version = "2.13.4"
|
@@ -1,6 +1,6 @@
|
|
1
|
-
Metadata-Version: 2.
|
1
|
+
Metadata-Version: 2.2
|
2
2
|
Name: metaflow
|
3
|
-
Version: 2.13.
|
3
|
+
Version: 2.13.4
|
4
4
|
Summary: Metaflow: More Data Science, Less Engineering
|
5
5
|
Author: Metaflow Developers
|
6
6
|
Author-email: help@metaflow.org
|
@@ -26,7 +26,17 @@ License-File: LICENSE
|
|
26
26
|
Requires-Dist: requests
|
27
27
|
Requires-Dist: boto3
|
28
28
|
Provides-Extra: stubs
|
29
|
-
Requires-Dist: metaflow-stubs==2.13.
|
29
|
+
Requires-Dist: metaflow-stubs==2.13.4; extra == "stubs"
|
30
|
+
Dynamic: author
|
31
|
+
Dynamic: author-email
|
32
|
+
Dynamic: classifier
|
33
|
+
Dynamic: description
|
34
|
+
Dynamic: description-content-type
|
35
|
+
Dynamic: license
|
36
|
+
Dynamic: project-url
|
37
|
+
Dynamic: provides-extra
|
38
|
+
Dynamic: requires-dist
|
39
|
+
Dynamic: summary
|
30
40
|
|
31
41
|

|
32
42
|
|
@@ -1,12 +1,12 @@
|
|
1
1
|
metaflow/R.py,sha256=CqVfIatvmjciuICNnoyyNGrwE7Va9iXfLdFbQa52hwA,3958
|
2
2
|
metaflow/__init__.py,sha256=fbhdWiWnEoAX4KnzRHMY_iQcT-uYlMWhzrXPKvK0i5g,5832
|
3
|
-
metaflow/cards.py,sha256=
|
4
|
-
metaflow/cli.py,sha256=
|
3
|
+
metaflow/cards.py,sha256=IbRmredvmFEU0V6JL7DR8wCESwVmmZJubr6x24bo7U4,442
|
4
|
+
metaflow/cli.py,sha256=zTXaVpfAa0NBvAbBe7trS1kMRkzOIdt7_Vi1q6J1FGQ,21877
|
5
5
|
metaflow/cli_args.py,sha256=muIh9pdVqMRG09uAYFKcAcUKFyDE4N3Wm6YahWRaUNI,3594
|
6
6
|
metaflow/clone_util.py,sha256=LSuVbFpPUh92UW32DBcnZbL0FFw-4w3CLa0tpEbCkzk,2066
|
7
7
|
metaflow/cmd_with_io.py,sha256=kl53HkAIyv0ecpItv08wZYczv7u3msD1VCcciqigqf0,588
|
8
8
|
metaflow/debug.py,sha256=HEmt_16tJtqHXQXsqD9pqOFe3CWR5GZ7VwpaYQgnRdU,1466
|
9
|
-
metaflow/decorators.py,sha256=
|
9
|
+
metaflow/decorators.py,sha256=5xgIUuIcO52dKGUQ8fe-pmULdXIUwwMy86Uz2OZxOkw,23929
|
10
10
|
metaflow/event_logger.py,sha256=joTVRqZPL87nvah4ZOwtqWX8NeraM_CXKXXGVpKGD8o,780
|
11
11
|
metaflow/events.py,sha256=ahjzkSbSnRCK9RZ-9vTfUviz_6gMvSO9DGkJ86X80-k,5300
|
12
12
|
metaflow/exception.py,sha256=_m9ZBJM0cooHRslDqfxCPQmkChqaTh6fGxp7HvISnYI,5161
|
@@ -25,7 +25,7 @@ metaflow/metaflow_version.py,sha256=duhIzfKZtcxMVMs2uiBqBvUarSHJqyWDwMhaBOQd_g0,
|
|
25
25
|
metaflow/monitor.py,sha256=T0NMaBPvXynlJAO_avKtk8OIIRMyEuMAyF8bIp79aZU,5323
|
26
26
|
metaflow/multicore_utils.py,sha256=yEo5T6Gemn4_vl8b6IOz7fsTUYtEyqa3AaKZgJY96Wc,4974
|
27
27
|
metaflow/package.py,sha256=yfwVMVB1mD-Sw94KwXNK3N-26YHoKMn6btrcgd67Izs,7845
|
28
|
-
metaflow/parameters.py,sha256=
|
28
|
+
metaflow/parameters.py,sha256=ycSTJzQc3rOburSl9prD__qgCxlPU0Cx8ntdEYuzoYU,18621
|
29
29
|
metaflow/procpoll.py,sha256=U2tE4iK_Mwj2WDyVTx_Uglh6xZ-jixQOo4wrM9OOhxg,2859
|
30
30
|
metaflow/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
31
31
|
metaflow/pylint_wrapper.py,sha256=zzBY9YaSUZOGH-ypDKAv2B_7XcoyMZj-zCoCrmYqNRc,2865
|
@@ -36,7 +36,7 @@ metaflow/tuple_util.py,sha256=_G5YIEhuugwJ_f6rrZoelMFak3DqAR2tt_5CapS1XTY,830
|
|
36
36
|
metaflow/unbounded_foreach.py,sha256=p184WMbrMJ3xKYHwewj27ZhRUsSj_kw1jlye5gA9xJk,387
|
37
37
|
metaflow/util.py,sha256=hKjHl6NYJkKBSU2tzdVbddfOX1zWK73T4GCO42A0XB4,14666
|
38
38
|
metaflow/vendor.py,sha256=FchtA9tH22JM-eEtJ2c9FpUdMn8sSb1VHuQS56EcdZk,5139
|
39
|
-
metaflow/version.py,sha256=
|
39
|
+
metaflow/version.py,sha256=drr-g04woqZf71pNYGX7pz8CSPausyn9M8cgyFIvKlE,28
|
40
40
|
metaflow/_vendor/__init__.py,sha256=y_CiwUD3l4eAKvTVDZeqgVujMy31cAM1qjAB-HfI-9s,353
|
41
41
|
metaflow/_vendor/typing_extensions.py,sha256=0nUs5p1A_UrZigrAVBoOEM6TxU37zzPDUtiij1ZwpNc,110417
|
42
42
|
metaflow/_vendor/zipp.py,sha256=ajztOH-9I7KA_4wqDYygtHa6xUBVZgFpmZ8FE74HHHI,8425
|
@@ -113,8 +113,8 @@ metaflow/_vendor/v3_6/importlib_metadata/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCe
|
|
113
113
|
metaflow/cli_components/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
114
114
|
metaflow/cli_components/dump_cmd.py,sha256=SZEX51BWNd1o3H2uHDkYA8KRvou5X8g5rTwpdu5vnNQ,2704
|
115
115
|
metaflow/cli_components/init_cmd.py,sha256=Er-BO59UEUV1HIsg81bRtZWT2D2IZNMp93l-AoZLCls,1519
|
116
|
-
metaflow/cli_components/run_cmds.py,sha256=
|
117
|
-
metaflow/cli_components/step_cmd.py,sha256=
|
116
|
+
metaflow/cli_components/run_cmds.py,sha256=BMkki6gwtJw0ULLP0XkrwZvxWDE5BV10KCfZn6-gIEo,10562
|
117
|
+
metaflow/cli_components/step_cmd.py,sha256=oIkJRdCzXTPmSPEuCHYfjp7Cat_3jBY2StbuEkTPH2I,4706
|
118
118
|
metaflow/cli_components/utils.py,sha256=gpoDociadjnJD7MuiJup_MDR02ZJjjleejr0jPBu29c,6057
|
119
119
|
metaflow/client/__init__.py,sha256=1GtQB4Y_CBkzaxg32L1syNQSlfj762wmLrfrDxGi1b8,226
|
120
120
|
metaflow/client/core.py,sha256=Ka6G12h6pS_046cej0c8npvaBGpiKyvJ1bGbRFZL6Kg,75437
|
@@ -154,11 +154,11 @@ metaflow/plugins/catch_decorator.py,sha256=UOM2taN_OL2RPpuJhwEOA9ZALm0-hHD0XS2Hn
|
|
154
154
|
metaflow/plugins/debug_logger.py,sha256=mcF5HYzJ0NQmqCMjyVUk3iAP-heroHRIiVWQC6Ha2-I,879
|
155
155
|
metaflow/plugins/debug_monitor.py,sha256=Md5X_sDOSssN9pt2D8YcaIjTK5JaQD55UAYTcF6xYF0,1099
|
156
156
|
metaflow/plugins/environment_decorator.py,sha256=6m9j2B77d-Ja_l_9CTJ__0O6aB2a8Qt_lAZu6UjAcUA,587
|
157
|
-
metaflow/plugins/events_decorator.py,sha256=
|
157
|
+
metaflow/plugins/events_decorator.py,sha256=WsLcuy-FmXpQ6mvm431deTB2hE-fPYILgbVSWHRXslQ,28121
|
158
158
|
metaflow/plugins/logs_cli.py,sha256=77W5UNagU2mOKSMMvrQxQmBLRzvmjK-c8dWxd-Ygbqs,11410
|
159
159
|
metaflow/plugins/package_cli.py,sha256=-J6D4cupHfWSZ4GEFo2yy9Je9oL3owRWm5pEJwaiqd4,1649
|
160
160
|
metaflow/plugins/parallel_decorator.py,sha256=GR6LKIW7_S7AoU50Ar2_0nndVtO2epdn3LuthE0vKMQ,9127
|
161
|
-
metaflow/plugins/project_decorator.py,sha256=
|
161
|
+
metaflow/plugins/project_decorator.py,sha256=_hMh1-wEGQxckBYw3020auPccGkIaCXvqdT8kGrEJLU,6630
|
162
162
|
metaflow/plugins/resources_decorator.py,sha256=AtoOwg4mHYHYthg-CAfbfam-QiT0ViuDLDoukoDvF6Q,1347
|
163
163
|
metaflow/plugins/retry_decorator.py,sha256=tz_2Tq6GLg3vjDBZp0KKVTk3ADlCvqaWTSf7blmFdUw,1548
|
164
164
|
metaflow/plugins/storage_executor.py,sha256=FqAgR0-L9MuqN8fRtTe4jjUfJL9lqt6fQkYaglAjRbk,6137
|
@@ -220,25 +220,25 @@ metaflow/plugins/azure/azure_utils.py,sha256=j3kAxi2oC-fMpw8YegJvqsAwxi_m7jGPxCa
|
|
220
220
|
metaflow/plugins/azure/blob_service_client_factory.py,sha256=MtyPftBxrXdXMxwhKgLepG6mtlb_2BhJLG_fvbO6D14,6527
|
221
221
|
metaflow/plugins/azure/includefile_support.py,sha256=2kBnjR-Rl1cSoZsrgvl3t4tf1qsVqnYk0LJ6ZsSLzTo,4726
|
222
222
|
metaflow/plugins/cards/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
223
|
-
metaflow/plugins/cards/card_cli.py,sha256=
|
223
|
+
metaflow/plugins/cards/card_cli.py,sha256=XyiU5f6i_xjFHPyowWGs9mKQm9fm3dK6id-IKsoe9cY,35177
|
224
224
|
metaflow/plugins/cards/card_client.py,sha256=30dFBoC3axc261GeV7QCIs_V1OHhRtS31S0wEWsjw90,9501
|
225
225
|
metaflow/plugins/cards/card_creator.py,sha256=vRz1EUFa4xQ1fUIWzqyACViC6D7KGFaq5XlLIEssXTI,7741
|
226
226
|
metaflow/plugins/cards/card_datastore.py,sha256=3K19wE0CZVvOpuYUytftIYYnHHn3pMZJE87FMD6OYlM,14244
|
227
|
-
metaflow/plugins/cards/card_decorator.py,sha256=
|
227
|
+
metaflow/plugins/cards/card_decorator.py,sha256=nU-uZ4_ubU7bCsSb6uT61YnN8ruo43_FzqZ24MsZpKg,12070
|
228
228
|
metaflow/plugins/cards/card_resolver.py,sha256=bjyujYpGUFbLJNwXNGHlHhL4f-gVdVKebl7XW1vWDtE,717
|
229
229
|
metaflow/plugins/cards/card_server.py,sha256=DHv0RcepaPULWbkDahiEMrU5A281Cfb0DvHLUYd8JsU,11772
|
230
|
-
metaflow/plugins/cards/component_serializer.py,sha256=
|
230
|
+
metaflow/plugins/cards/component_serializer.py,sha256=gxG5leRVJEzMqRYKs3vIzy2ijFNEI3fX1AzHgfX-D8A,37249
|
231
231
|
metaflow/plugins/cards/exception.py,sha256=2UqlNb-Kxpg6cuLu2sBEIPTIElwlVBsSpeCgDYKTxWg,5222
|
232
232
|
metaflow/plugins/cards/card_modules/__init__.py,sha256=WI2IAsFiKGyqPrHtO9S9-MbyVtUTgWJNL4xjJaBErRo,3437
|
233
233
|
metaflow/plugins/cards/card_modules/base.html,sha256=Y208ZKIZqEWWUcoBFTLTdWKAG0C8xH5lmyCRSjaN2FY,21004
|
234
|
-
metaflow/plugins/cards/card_modules/basic.py,sha256=
|
234
|
+
metaflow/plugins/cards/card_modules/basic.py,sha256=oton1WXN59LPB_08_EA9LYgyNQmQjFHlLJuTWDqmHkM,25354
|
235
235
|
metaflow/plugins/cards/card_modules/bundle.css,sha256=ms2wOKftlPM_i6bC_4BkrmqCOj8mYw9OFvRCJF9FSV4,11981
|
236
|
-
metaflow/plugins/cards/card_modules/card.py,sha256=
|
237
|
-
metaflow/plugins/cards/card_modules/components.py,sha256=
|
236
|
+
metaflow/plugins/cards/card_modules/card.py,sha256=6sbqP5mwf7QWvQvX2N_bC78H9ixuI5sQ8612Q5islys,4627
|
237
|
+
metaflow/plugins/cards/card_modules/components.py,sha256=Y-Yo7UgSOyTB3zs-wDfUqUKl0PI_BzeY1QGcy2fqE2M,26752
|
238
238
|
metaflow/plugins/cards/card_modules/convert_to_native_type.py,sha256=eGaQ8BabJ489a8AiyhXFy1pWJZl99gH0FQzwsNVxAGQ,15782
|
239
|
-
metaflow/plugins/cards/card_modules/main.js,sha256=
|
239
|
+
metaflow/plugins/cards/card_modules/main.js,sha256=K_ZO41THtbjZC3hNSQn2rG5UUbubFgkgU6RxBjMmApk,1028430
|
240
240
|
metaflow/plugins/cards/card_modules/renderer_tools.py,sha256=uiTdKHWFInWgtfWArOUSQLnTwqVd4hAw49jfOfg8rGA,1642
|
241
|
-
metaflow/plugins/cards/card_modules/test_cards.py,sha256=
|
241
|
+
metaflow/plugins/cards/card_modules/test_cards.py,sha256=74H0JdWrcoc5eITxCLSUwwa1kJZ3YMteynaKsCBihXE,5361
|
242
242
|
metaflow/plugins/cards/card_modules/chevron/__init__.py,sha256=SicpH_1eT76HUTA8aMuiGLRNKTqgYD1Qfutt2NdTL0E,156
|
243
243
|
metaflow/plugins/cards/card_modules/chevron/main.py,sha256=FKpDW4PS2dYshgkm6yIxrBnzkhquZ4gg2dmUxrBbNTQ,3222
|
244
244
|
metaflow/plugins/cards/card_modules/chevron/metadata.py,sha256=gQDpB9KezW9Mcv-n9K2Pt1akjiPGG1zYB5YPdQ0FlNc,19
|
@@ -357,10 +357,10 @@ metaflow/tutorials/08-autopilot/autopilot.ipynb,sha256=DQoJlILV7Mq9vfPBGW-QV_kNh
|
|
357
357
|
metaflow/user_configs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
358
358
|
metaflow/user_configs/config_decorators.py,sha256=Tj0H88UT8Q6pylXxHXgiA6cqnNlw4d3mR7M8J9g3ZUg,20139
|
359
359
|
metaflow/user_configs/config_options.py,sha256=Knpiax_YGmYAdR3zKmaepN8puW1MyL9g6-eMGAkcylo,20942
|
360
|
-
metaflow/user_configs/config_parameters.py,sha256=
|
361
|
-
metaflow-2.13.
|
362
|
-
metaflow-2.13.
|
363
|
-
metaflow-2.13.
|
364
|
-
metaflow-2.13.
|
365
|
-
metaflow-2.13.
|
366
|
-
metaflow-2.13.
|
360
|
+
metaflow/user_configs/config_parameters.py,sha256=T0Zz18o9zKEV7mMcKotFWvXixhJpotLRBVrKx6ENErQ,15416
|
361
|
+
metaflow-2.13.4.dist-info/LICENSE,sha256=nl_Lt5v9VvJ-5lWJDT4ddKAG-VZ-2IaLmbzpgYDz2hU,11343
|
362
|
+
metaflow-2.13.4.dist-info/METADATA,sha256=PBmkd2ZuaamBlNTJCyBWZWWVO8xs8J1anqV4YV_P4kQ,6121
|
363
|
+
metaflow-2.13.4.dist-info/WHEEL,sha256=9Hm2OB-j1QcCUq9Jguht7ayGIIZBRTdOXD1qg9cCgPM,109
|
364
|
+
metaflow-2.13.4.dist-info/entry_points.txt,sha256=IKwTN1T3I5eJL3uo_vnkyxVffcgnRdFbKwlghZfn27k,57
|
365
|
+
metaflow-2.13.4.dist-info/top_level.txt,sha256=v1pDHoWaSaKeuc5fKTRSfsXCKSdW1zvNVmvA-i0if3o,9
|
366
|
+
metaflow-2.13.4.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|