metaflow 2.16.0__py2.py3-none-any.whl → 2.16.1__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/cli.py +5 -2
- metaflow/cli_components/run_cmds.py +2 -0
- metaflow/decorators.py +7 -1
- metaflow/flowspec.py +12 -7
- metaflow/packaging_sys/v1.py +5 -1
- metaflow/plugins/airflow/airflow_cli.py +1 -1
- metaflow/plugins/argo/argo_workflows_cli.py +1 -0
- metaflow/plugins/aws/step_functions/step_functions_cli.py +1 -0
- metaflow/plugins/uv/bootstrap.py +1 -1
- metaflow/task.py +5 -4
- metaflow/user_decorators/mutable_step.py +1 -1
- metaflow/user_decorators/user_flow_decorator.py +2 -1
- metaflow/user_decorators/user_step_decorator.py +1 -1
- metaflow/version.py +1 -1
- {metaflow-2.16.0.dist-info → metaflow-2.16.1.dist-info}/METADATA +2 -2
- {metaflow-2.16.0.dist-info → metaflow-2.16.1.dist-info}/RECORD +23 -23
- {metaflow-2.16.0.data → metaflow-2.16.1.data}/data/share/metaflow/devtools/Makefile +0 -0
- {metaflow-2.16.0.data → metaflow-2.16.1.data}/data/share/metaflow/devtools/Tiltfile +0 -0
- {metaflow-2.16.0.data → metaflow-2.16.1.data}/data/share/metaflow/devtools/pick_services.sh +0 -0
- {metaflow-2.16.0.dist-info → metaflow-2.16.1.dist-info}/WHEEL +0 -0
- {metaflow-2.16.0.dist-info → metaflow-2.16.1.dist-info}/entry_points.txt +0 -0
- {metaflow-2.16.0.dist-info → metaflow-2.16.1.dist-info}/licenses/LICENSE +0 -0
- {metaflow-2.16.0.dist-info → metaflow-2.16.1.dist-info}/top_level.txt +0 -0
metaflow/cli.py
CHANGED
@@ -447,8 +447,8 @@ def start(
|
|
447
447
|
# be raised. For resume, since we ignore those options, we ignore the error.
|
448
448
|
raise ctx.obj.delayed_config_exception
|
449
449
|
|
450
|
-
# Init all values in the
|
451
|
-
for decorator in ctx.obj.flow._flow_state.get(_FlowState.
|
450
|
+
# Init all values in the flow mutators and then process them
|
451
|
+
for decorator in ctx.obj.flow._flow_state.get(_FlowState.FLOW_MUTATORS, []):
|
452
452
|
decorator.external_init()
|
453
453
|
|
454
454
|
new_cls = ctx.obj.flow._process_config_decorators(config_options)
|
@@ -562,6 +562,9 @@ def start(
|
|
562
562
|
ctx.obj.logger,
|
563
563
|
)
|
564
564
|
|
565
|
+
# Check the graph again (mutators may have changed it)
|
566
|
+
ctx.obj.graph = ctx.obj.flow._graph
|
567
|
+
|
565
568
|
# TODO (savin): Enable lazy instantiation of package
|
566
569
|
ctx.obj.package = None
|
567
570
|
|
@@ -54,6 +54,8 @@ def before_run(obj, tags, decospecs):
|
|
54
54
|
decorators._init_step_decorators(
|
55
55
|
obj.flow, obj.graph, obj.environment, obj.flow_datastore, obj.logger
|
56
56
|
)
|
57
|
+
# Re-read graph since it may have been modified by mutators
|
58
|
+
obj.graph = obj.flow._graph
|
57
59
|
|
58
60
|
obj.metadata.add_sticky_tags(tags=tags)
|
59
61
|
|
metaflow/decorators.py
CHANGED
@@ -715,13 +715,16 @@ def _init_flow_decorators(
|
|
715
715
|
|
716
716
|
|
717
717
|
def _init_step_decorators(flow, graph, environment, flow_datastore, logger):
|
718
|
+
# NOTE: We don't need graph but keeping it for backwards compatibility with
|
719
|
+
# extensions that use it directly. We will remove it at some point.
|
720
|
+
|
718
721
|
# We call the mutate method for both the flow and step mutators.
|
719
722
|
cls = flow.__class__
|
720
723
|
# Run all the decorators. We first run the flow-level decorators
|
721
724
|
# and then the step level ones to maintain a consistent order with how
|
722
725
|
# other decorators are run.
|
723
726
|
|
724
|
-
for deco in cls._flow_state.get(_FlowState.
|
727
|
+
for deco in cls._flow_state.get(_FlowState.FLOW_MUTATORS, []):
|
725
728
|
if isinstance(deco, FlowMutator):
|
726
729
|
inserted_by_value = [deco.decorator_name] + (deco.inserted_by or [])
|
727
730
|
mutable_flow = MutableFlow(
|
@@ -777,6 +780,9 @@ def _init_step_decorators(flow, graph, environment, flow_datastore, logger):
|
|
777
780
|
# We remove all mention of the custom step decorator
|
778
781
|
setattr(cls, step.name, step)
|
779
782
|
|
783
|
+
cls._init_graph()
|
784
|
+
graph = flow._graph
|
785
|
+
|
780
786
|
for step in flow:
|
781
787
|
for deco in step.decorators:
|
782
788
|
deco.step_init(
|
metaflow/flowspec.py
CHANGED
@@ -78,7 +78,7 @@ class ParallelUBF(UnboundedForeachInput):
|
|
78
78
|
|
79
79
|
class _FlowState(Enum):
|
80
80
|
CONFIGS = 1
|
81
|
-
|
81
|
+
FLOW_MUTATORS = 2
|
82
82
|
CACHED_PARAMETERS = 3
|
83
83
|
SET_CONFIG_PARAMETERS = (
|
84
84
|
4 # These are Parameters that now have a ConfigValue (converted)
|
@@ -135,12 +135,17 @@ class FlowSpecMeta(type):
|
|
135
135
|
raise DuplicateFlowDecoratorException(deco_name)
|
136
136
|
cls._flow_decorators.setdefault(deco_name, []).extend(deco)
|
137
137
|
|
138
|
-
# Take care of configs and
|
139
|
-
base_configs = base._flow_state.get(_FlowState.
|
138
|
+
# Take care of configs and flow mutators
|
139
|
+
base_configs = base._flow_state.get(_FlowState.CONFIGS)
|
140
140
|
if base_configs:
|
141
|
-
cls._flow_state.setdefault(_FlowState.
|
141
|
+
cls._flow_state.setdefault(_FlowState.CONFIGS, {}).update(
|
142
142
|
base_configs
|
143
143
|
)
|
144
|
+
base_mutators = base._flow_state.get(_FlowState.FLOW_MUTATORS)
|
145
|
+
if base_mutators:
|
146
|
+
cls._flow_state.setdefault(_FlowState.FLOW_MUTATORS, []).extend(
|
147
|
+
base_mutators
|
148
|
+
)
|
144
149
|
|
145
150
|
cls._init_graph()
|
146
151
|
|
@@ -245,7 +250,7 @@ class FlowSpec(metaclass=FlowSpecMeta):
|
|
245
250
|
|
246
251
|
# Fast path for no user configurations
|
247
252
|
if not process_configs or (
|
248
|
-
not cls._flow_state.get(_FlowState.
|
253
|
+
not cls._flow_state.get(_FlowState.FLOW_MUTATORS)
|
249
254
|
and all(len(step.config_decorators) == 0 for step in cls._steps)
|
250
255
|
):
|
251
256
|
# Process parameters to allow them to also use config values easily
|
@@ -284,7 +289,7 @@ class FlowSpec(metaclass=FlowSpecMeta):
|
|
284
289
|
# and then the step level ones to maintain a consistent order with how
|
285
290
|
# other decorators are run.
|
286
291
|
|
287
|
-
for deco in cls._flow_state.get(_FlowState.
|
292
|
+
for deco in cls._flow_state.get(_FlowState.FLOW_MUTATORS, []):
|
288
293
|
if isinstance(deco, FlowMutator):
|
289
294
|
inserted_by_value = [deco.decorator_name] + (deco.inserted_by or [])
|
290
295
|
mutable_flow = MutableFlow(
|
@@ -423,7 +428,7 @@ class FlowSpec(metaclass=FlowSpecMeta):
|
|
423
428
|
"statically_defined": deco.statically_defined,
|
424
429
|
"inserted_by": deco.inserted_by,
|
425
430
|
}
|
426
|
-
for deco in self._flow_state.get(_FlowState.
|
431
|
+
for deco in self._flow_state.get(_FlowState.FLOW_MUTATORS, [])
|
427
432
|
],
|
428
433
|
"extensions": extension_info(),
|
429
434
|
}
|
metaflow/packaging_sys/v1.py
CHANGED
@@ -41,7 +41,11 @@ class MetaflowCodeContentV1(MetaflowCodeContentV1Base):
|
|
41
41
|
# We try to find the modules we need to package. We will first look at all modules
|
42
42
|
# and apply the criteria to them. Then we will use the most parent module that
|
43
43
|
# fits the criteria as the module to package
|
44
|
-
|
44
|
+
|
45
|
+
# Make a copy since sys.modules could be modified while we load other
|
46
|
+
# modules. See https://github.com/Netflix/metaflow/issues/2489
|
47
|
+
all_modules = dict(sys.modules)
|
48
|
+
modules = filter(lambda x: criteria(x[1]), all_modules.items())
|
45
49
|
# Ensure that we see the parent modules first
|
46
50
|
modules = sorted(modules, key=lambda x: x[0])
|
47
51
|
if modules:
|
@@ -289,7 +289,7 @@ def make_flow(
|
|
289
289
|
decorators._init_step_decorators(
|
290
290
|
obj.flow, obj.graph, obj.environment, obj.flow_datastore, obj.logger
|
291
291
|
)
|
292
|
-
|
292
|
+
obj.graph = obj.flow._graph
|
293
293
|
# Save the code package in the flow datastore so that both user code and
|
294
294
|
# metaflow package can be retrieved during workflow execution.
|
295
295
|
obj.package = MetaflowPackage(
|
@@ -515,6 +515,7 @@ def make_flow(
|
|
515
515
|
decorators._init_step_decorators(
|
516
516
|
obj.flow, obj.graph, obj.environment, obj.flow_datastore, obj.logger
|
517
517
|
)
|
518
|
+
obj.graph = obj.flow._graph
|
518
519
|
|
519
520
|
# Save the code package in the flow datastore so that both user code and
|
520
521
|
# metaflow package can be retrieved during workflow execution.
|
metaflow/plugins/uv/bootstrap.py
CHANGED
@@ -5,7 +5,7 @@ import sys
|
|
5
5
|
import time
|
6
6
|
|
7
7
|
from metaflow.util import which
|
8
|
-
from metaflow.
|
8
|
+
from metaflow.meta_files import read_info_file
|
9
9
|
from metaflow.metaflow_config import get_pinned_conda_libs
|
10
10
|
from metaflow.packaging_sys import MetaflowCodeContent, ContentType
|
11
11
|
from urllib.request import Request, urlopen
|
metaflow/task.py
CHANGED
@@ -106,14 +106,15 @@ class MetaflowTask(object):
|
|
106
106
|
except Exception as ex:
|
107
107
|
raised_exception = ex
|
108
108
|
|
109
|
-
if do_next:
|
109
|
+
if do_next or raised_exception:
|
110
110
|
# If we are skipping the step, or executed a wrapped function,
|
111
111
|
# we need to set the transition variables
|
112
112
|
# properly. We call the next function as needed
|
113
|
-
|
113
|
+
# We also do this in case we want to gobble the exception.
|
114
|
+
graph_node = self.flow._graph[orig_step_func.name]
|
114
115
|
out_funcs = [getattr(self.flow, f) for f in graph_node.out_funcs]
|
115
116
|
if out_funcs:
|
116
|
-
if isinstance(do_next, bool):
|
117
|
+
if isinstance(do_next, bool) or raised_exception:
|
117
118
|
# We need to extract things from the self.next. This is not possible
|
118
119
|
# in the case where there was a num_parallel.
|
119
120
|
if graph_node.parallel_foreach:
|
@@ -137,7 +138,7 @@ class MetaflowTask(object):
|
|
137
138
|
# We back out of the stack of generators
|
138
139
|
for w in reversed(wrappers_stack):
|
139
140
|
raised_exception = w.post_step(
|
140
|
-
|
141
|
+
orig_step_func.name, self.flow, raised_exception
|
141
142
|
)
|
142
143
|
if raised_exception:
|
143
144
|
# We have an exception that we need to propagate
|
@@ -368,7 +368,6 @@ class MutableStep:
|
|
368
368
|
if issubclass(canonical_deco_type, UserStepDecoratorBase):
|
369
369
|
for attr in ["config_decorators", "wrappers"]:
|
370
370
|
new_deco_list = []
|
371
|
-
|
372
371
|
for deco in getattr(self._my_step, attr):
|
373
372
|
if deco.decorator_name == canonical_deco_type.decorator_name:
|
374
373
|
if do_all:
|
@@ -396,6 +395,7 @@ class MutableStep:
|
|
396
395
|
|
397
396
|
if did_remove:
|
398
397
|
return True
|
398
|
+
new_deco_list = []
|
399
399
|
for deco in self._my_step.decorators:
|
400
400
|
if deco.name == deco_name:
|
401
401
|
if do_all:
|
@@ -190,7 +190,7 @@ class FlowMutator(metaclass=FlowMutatorMeta):
|
|
190
190
|
) -> "metaflow.flowspec.FlowSpecMeta":
|
191
191
|
from ..flowspec import _FlowState
|
192
192
|
|
193
|
-
flow_spec._flow_state.setdefault(_FlowState.
|
193
|
+
flow_spec._flow_state.setdefault(_FlowState.FLOW_MUTATORS, []).append(self)
|
194
194
|
self._flow_cls = flow_spec
|
195
195
|
return flow_spec
|
196
196
|
|
@@ -225,6 +225,7 @@ class FlowMutator(metaclass=FlowMutatorMeta):
|
|
225
225
|
raise MetaflowException(
|
226
226
|
"%s is used with arguments but does not implement init" % self
|
227
227
|
)
|
228
|
+
if "init" in self.__class__.__dict__:
|
228
229
|
self.init(*self._args, **self._kwargs)
|
229
230
|
|
230
231
|
def pre_mutate(
|
@@ -393,7 +393,7 @@ class UserStepDecoratorBase(metaclass=UserStepDecoratorMeta):
|
|
393
393
|
raise MetaflowException(
|
394
394
|
"%s is used with arguments but does not implement init" % self
|
395
395
|
)
|
396
|
-
|
396
|
+
if "init" in self.__class__.__dict__:
|
397
397
|
self.init(*self._args, **self._kwargs)
|
398
398
|
|
399
399
|
|
metaflow/version.py
CHANGED
@@ -1 +1 @@
|
|
1
|
-
metaflow_version = "2.16.
|
1
|
+
metaflow_version = "2.16.1"
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: metaflow
|
3
|
-
Version: 2.16.
|
3
|
+
Version: 2.16.1
|
4
4
|
Summary: Metaflow: More AI and ML, Less Engineering
|
5
5
|
Author: Metaflow Developers
|
6
6
|
Author-email: help@metaflow.org
|
@@ -26,7 +26,7 @@ License-File: LICENSE
|
|
26
26
|
Requires-Dist: requests
|
27
27
|
Requires-Dist: boto3
|
28
28
|
Provides-Extra: stubs
|
29
|
-
Requires-Dist: metaflow-stubs==2.16.
|
29
|
+
Requires-Dist: metaflow-stubs==2.16.1; extra == "stubs"
|
30
30
|
Dynamic: author
|
31
31
|
Dynamic: author-email
|
32
32
|
Dynamic: classifier
|
@@ -1,16 +1,16 @@
|
|
1
1
|
metaflow/R.py,sha256=CqVfIatvmjciuICNnoyyNGrwE7Va9iXfLdFbQa52hwA,3958
|
2
2
|
metaflow/__init__.py,sha256=8V_NsmWtat2FnIUp5GenscY0vz4egOkIlpNjqwtTJnY,6051
|
3
3
|
metaflow/cards.py,sha256=IbRmredvmFEU0V6JL7DR8wCESwVmmZJubr6x24bo7U4,442
|
4
|
-
metaflow/cli.py,sha256=
|
4
|
+
metaflow/cli.py,sha256=WG_2HjYM5ETGl_Vw6nQmFxROKXHH3ZqK1WVmFbGp4r4,22453
|
5
5
|
metaflow/cli_args.py,sha256=hDsdWdRmfXYifVGq6b6FDfgoWxtIG2nr_lU6EBV0Pnk,3584
|
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=DDUYLWLAZ4Shg_uXz67BD2nRt8Gilemhlbv9YccKVt4,1656
|
9
|
-
metaflow/decorators.py,sha256=
|
9
|
+
metaflow/decorators.py,sha256=HXfD7NIm5WED7aziq8ul3-lkFgzf7BVVQ3PmocAs8Mw,30835
|
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
|
13
|
-
metaflow/flowspec.py,sha256=
|
13
|
+
metaflow/flowspec.py,sha256=hCONv0wlC-MgxNUDWzDtS_4ayr-0sqPNUdnpXJ75b1Y,37944
|
14
14
|
metaflow/graph.py,sha256=alPCQPexm-0hjquQgLYNhoe6PbXL_LXMg1L__G1DxYw,13183
|
15
15
|
metaflow/includefile.py,sha256=RtISGl1V48qjkJBakUZ9yPpHV102h7pOIFiKP8PLHpc,20927
|
16
16
|
metaflow/integrations.py,sha256=LlsaoePRg03DjENnmLxZDYto3NwWc9z_PtU6nJxLldg,1480
|
@@ -31,12 +31,12 @@ metaflow/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
31
31
|
metaflow/pylint_wrapper.py,sha256=tJjmdsgtbHTCqg_oA6fV6SbWq_3V5XUgE9xH0zJ1CGU,3004
|
32
32
|
metaflow/runtime.py,sha256=KwHKZ6kNZuC8HgL_r0-gTi9Y-GPAhTz0tNXydQFjZO4,77617
|
33
33
|
metaflow/tagging_util.py,sha256=ctyf0Q1gBi0RyZX6J0e9DQGNkNHblV_CITfy66axXB4,2346
|
34
|
-
metaflow/task.py,sha256=
|
34
|
+
metaflow/task.py,sha256=1DslU1CHoEeFIilABQvk4Zbpl-yCdZMEkECnv2LQAZg,34356
|
35
35
|
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=g2SOU_CRzJLgDM_UGF9QDMANMAIHAsDRXE6S76_YzsY,14594
|
38
38
|
metaflow/vendor.py,sha256=EDZokNMrx1PU07jNMiWFMFtC7TL03pMXZ1kKn13k-2g,5139
|
39
|
-
metaflow/version.py,sha256=
|
39
|
+
metaflow/version.py,sha256=UyMOYxhUmaZP3zt8IK5HPTbd1c0Z1QPVTghR2Ezbjr4,28
|
40
40
|
metaflow/_vendor/__init__.py,sha256=y_CiwUD3l4eAKvTVDZeqgVujMy31cAM1qjAB-HfI-9s,353
|
41
41
|
metaflow/_vendor/typing_extensions.py,sha256=q9zxWa6p6CzF1zZvSkygSlklduHf_b3K7MCxGz7MJRc,134519
|
42
42
|
metaflow/_vendor/zipp.py,sha256=ajztOH-9I7KA_4wqDYygtHa6xUBVZgFpmZ8FE74HHHI,8425
|
@@ -136,7 +136,7 @@ metaflow/_vendor/v3_7/typeguard/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NM
|
|
136
136
|
metaflow/cli_components/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
137
137
|
metaflow/cli_components/dump_cmd.py,sha256=SZEX51BWNd1o3H2uHDkYA8KRvou5X8g5rTwpdu5vnNQ,2704
|
138
138
|
metaflow/cli_components/init_cmd.py,sha256=AIkQHNlMRsmf8fxXwXQSEWTuv_9nxNY82-IdWsgGjEs,1554
|
139
|
-
metaflow/cli_components/run_cmds.py,sha256=
|
139
|
+
metaflow/cli_components/run_cmds.py,sha256=xULZQ2UrxLNsWjQIZd38EbOGNBw8UJT7w_T19UbS_fg,11555
|
140
140
|
metaflow/cli_components/step_cmd.py,sha256=zGJgTv7wxrv34nWDi__CHaC2eS6kItR95EdVGJX803w,4766
|
141
141
|
metaflow/cli_components/utils.py,sha256=gpoDociadjnJD7MuiJup_MDR02ZJjjleejr0jPBu29c,6057
|
142
142
|
metaflow/client/__init__.py,sha256=1GtQB4Y_CBkzaxg32L1syNQSlfj762wmLrfrDxGi1b8,226
|
@@ -180,7 +180,7 @@ metaflow/packaging_sys/backend.py,sha256=b3OX42Io8xP5l56zhXZxi-VLqXBr-B2q8AM7cWZ
|
|
180
180
|
metaflow/packaging_sys/distribution_support.py,sha256=VvikZBCH8N1TBZZ2Twk8jH1brmiinKWCD3y_aFqBsIw,4937
|
181
181
|
metaflow/packaging_sys/tar_backend.py,sha256=EYZD5iGEzPoO4L6IQhmrZC1QlaOPV471SBKyOYBS2XU,2593
|
182
182
|
metaflow/packaging_sys/utils.py,sha256=x8SVglJvY5mIAilS7MqZi2PpMr6IEyi6RCg3l8hN3G0,2972
|
183
|
-
metaflow/packaging_sys/v1.py,sha256=
|
183
|
+
metaflow/packaging_sys/v1.py,sha256=_YlVPR7oSYt7B8dHOS0Fb6ZPrxaSZMSQyRhdN8CL8ZY,20483
|
184
184
|
metaflow/plugins/__init__.py,sha256=yFxjJOlnfap7tQMNgSgaso2tl_zr1BcWL7KoUKk4c9Y,8617
|
185
185
|
metaflow/plugins/catch_decorator.py,sha256=UOM2taN_OL2RPpuJhwEOA9ZALm0-hHD0XS2Hn2GUev0,4061
|
186
186
|
metaflow/plugins/debug_logger.py,sha256=mcF5HYzJ0NQmqCMjyVUk3iAP-heroHRIiVWQC6Ha2-I,879
|
@@ -199,7 +199,7 @@ metaflow/plugins/test_unbounded_foreach_decorator.py,sha256=4FA7IFSJgyf4yAyEre7y
|
|
199
199
|
metaflow/plugins/timeout_decorator.py,sha256=tKTUn9pUdX7l_AC7gydtBho0W2NfHdvFq6HUbxB0bHo,3563
|
200
200
|
metaflow/plugins/airflow/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
201
201
|
metaflow/plugins/airflow/airflow.py,sha256=EEbQZk451p8ksvCiYjAUWg3d0h6Dm3N53Yhok0a2WgE,32778
|
202
|
-
metaflow/plugins/airflow/airflow_cli.py,sha256=
|
202
|
+
metaflow/plugins/airflow/airflow_cli.py,sha256=qOWmHAe4Z5KKp-5EX-qtSh9lWNF6mB0Ze7lA_LqRaCg,15188
|
203
203
|
metaflow/plugins/airflow/airflow_decorator.py,sha256=IWT6M9gga8t65FR4Wi7pIZvOupk3hE75B5NRg9tMEps,1781
|
204
204
|
metaflow/plugins/airflow/airflow_utils.py,sha256=dvRllfQeOWfDUseFnOocIGaL3gRI_A7cEHnC1w01vfk,28905
|
205
205
|
metaflow/plugins/airflow/dag.py,sha256=zYV3QsyqGIOxgipbiEb4dX-r6aippNbXjuT6Jt2s4xI,129
|
@@ -214,7 +214,7 @@ metaflow/plugins/argo/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3h
|
|
214
214
|
metaflow/plugins/argo/argo_client.py,sha256=A1kI9rjVjCadDsBscZ2Wk8xRBI6GNgWV6SU7TyrdfrI,16530
|
215
215
|
metaflow/plugins/argo/argo_events.py,sha256=_C1KWztVqgi3zuH57pInaE9OzABc2NnncC-zdwOMZ-w,5909
|
216
216
|
metaflow/plugins/argo/argo_workflows.py,sha256=v2_FiimUW-qSG_IBMhJjdtrguHsRCCTz6i-qEJ7-Ysc,187152
|
217
|
-
metaflow/plugins/argo/argo_workflows_cli.py,sha256=
|
217
|
+
metaflow/plugins/argo/argo_workflows_cli.py,sha256=pfqYH0nqkgmkDcz3EPIz5yR_PSdd3CfLb92wzplS8fY,38810
|
218
218
|
metaflow/plugins/argo/argo_workflows_decorator.py,sha256=ogCSBmwsC2C3eusydrgjuAJd4qK18f1sI4jJwA4Fd-o,7800
|
219
219
|
metaflow/plugins/argo/argo_workflows_deployer.py,sha256=6kHxEnYXJwzNCM9swI8-0AckxtPWqwhZLerYkX8fxUM,4444
|
220
220
|
metaflow/plugins/argo/argo_workflows_deployer_objects.py,sha256=7OiapcIM_r-aBkuIobhofgLC5NRJHC-p9bvBmxvhqoM,12500
|
@@ -239,7 +239,7 @@ metaflow/plugins/aws/step_functions/production_token.py,sha256=rREx9djJzKYDiGhPC
|
|
239
239
|
metaflow/plugins/aws/step_functions/schedule_decorator.py,sha256=Ab1rW8O_no4HNZm4__iBmFDCDW0Z8-TgK4lnxHHA6HI,1940
|
240
240
|
metaflow/plugins/aws/step_functions/set_batch_environment.py,sha256=ibiGWFHDjKcLfprH3OsX-g2M9lUsh6J-bp7v2cdLhD4,1294
|
241
241
|
metaflow/plugins/aws/step_functions/step_functions.py,sha256=Svz232OA5UewY5W9gfDk-xGqiWyCNPkuUwlPxe9g5j8,53577
|
242
|
-
metaflow/plugins/aws/step_functions/step_functions_cli.py,sha256=
|
242
|
+
metaflow/plugins/aws/step_functions/step_functions_cli.py,sha256=tLIfDwgdcfBjkjmQMNgVjXY85HoDZNA6lNcOtZZZA1A,26495
|
243
243
|
metaflow/plugins/aws/step_functions/step_functions_client.py,sha256=DKpNwAIWElvWjFANs5Ku3rgzjxFoqAD6k-EF8Xhkg3Q,4754
|
244
244
|
metaflow/plugins/aws/step_functions/step_functions_decorator.py,sha256=jzDHYmgU_XvLffZDazR_1viow_1qQFblx9UKyjtoM_0,3788
|
245
245
|
metaflow/plugins/aws/step_functions/step_functions_deployer.py,sha256=JKYtDhKivtXUWPklprZFzkqezh14loGDmk8mNk6QtpI,3714
|
@@ -353,7 +353,7 @@ metaflow/plugins/secrets/secrets_func.py,sha256=zjDJdJLiKJfcvKzzkDbnbQCPUoCmr8q4
|
|
353
353
|
metaflow/plugins/secrets/secrets_spec.py,sha256=rZCBd7Til5laiXCaYLz4izwvM8aQ3__wgBkB-c8X4fA,4251
|
354
354
|
metaflow/plugins/secrets/utils.py,sha256=Pxx1iiYRitKQIwJeCnTtV4-IrACMI5aSaUkefKF9E7Y,2669
|
355
355
|
metaflow/plugins/uv/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
356
|
-
metaflow/plugins/uv/bootstrap.py,sha256=
|
356
|
+
metaflow/plugins/uv/bootstrap.py,sha256=awFHAiZANkAlvHWCm3G1UbhVxEjJB8buoZoBa5GiKJc,4365
|
357
357
|
metaflow/plugins/uv/uv_environment.py,sha256=AYZICrBEq3Bv-taXktJwu9DhKFxNooPFwlcH379EYMs,2719
|
358
358
|
metaflow/runner/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
359
359
|
metaflow/runner/click_api.py,sha256=DSxa5A0C_IHNug7fZlLpD_N99F_skDcAjTRx5YRMylY,23756
|
@@ -406,15 +406,15 @@ metaflow/user_configs/config_parameters.py,sha256=Loa5wu3vIs0SLyGhbOo8b88nWgCuZ0
|
|
406
406
|
metaflow/user_decorators/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
407
407
|
metaflow/user_decorators/common.py,sha256=0u9NRLQ95TfJCjWVEOGT4MJ9WoQgAMBM9kJ2gJGlVjk,5362
|
408
408
|
metaflow/user_decorators/mutable_flow.py,sha256=y2FCTQVjTTeiptsztD26jdkU_LY_Z_kzMjTkDajo2rc,19303
|
409
|
-
metaflow/user_decorators/mutable_step.py,sha256
|
410
|
-
metaflow/user_decorators/user_flow_decorator.py,sha256=
|
411
|
-
metaflow/user_decorators/user_step_decorator.py,sha256=
|
412
|
-
metaflow-2.16.
|
413
|
-
metaflow-2.16.
|
414
|
-
metaflow-2.16.
|
415
|
-
metaflow-2.16.
|
416
|
-
metaflow-2.16.
|
417
|
-
metaflow-2.16.
|
418
|
-
metaflow-2.16.
|
419
|
-
metaflow-2.16.
|
420
|
-
metaflow-2.16.
|
409
|
+
metaflow/user_decorators/mutable_step.py,sha256=-BY0UDXf_RCAEnC5JlLzEXGdiw1KD9oSrSxS_SWaB9Y,16791
|
410
|
+
metaflow/user_decorators/user_flow_decorator.py,sha256=2yDwZq9QGv9W-7kEuKwa8o4ZkTvuHJ5ESz7VVrGViAI,9890
|
411
|
+
metaflow/user_decorators/user_step_decorator.py,sha256=JYNGXONWCpzwn-_bF5WiAkof4Ii9tRS4xdK8ojSxG6M,26007
|
412
|
+
metaflow-2.16.1.data/data/share/metaflow/devtools/Makefile,sha256=5n89OGIC_kE4wxtEI66VCucN-b-1w5bqvGeZYmeRGz8,13737
|
413
|
+
metaflow-2.16.1.data/data/share/metaflow/devtools/Tiltfile,sha256=I55XTG4RBnrMfDcYRtREXqqS8T9bF8agkZq0DlvdFLk,21404
|
414
|
+
metaflow-2.16.1.data/data/share/metaflow/devtools/pick_services.sh,sha256=DCnrMXwtApfx3B4S-YiZESMyAFHbXa3VuNL0MxPLyiE,2196
|
415
|
+
metaflow-2.16.1.dist-info/licenses/LICENSE,sha256=nl_Lt5v9VvJ-5lWJDT4ddKAG-VZ-2IaLmbzpgYDz2hU,11343
|
416
|
+
metaflow-2.16.1.dist-info/METADATA,sha256=juqAkLZQtmv1VhBrGrFeunOHFyoVK9rUyLQyCNDNdvw,6740
|
417
|
+
metaflow-2.16.1.dist-info/WHEEL,sha256=JNWh1Fm1UdwIQV075glCn4MVuCRs0sotJIq-J6rbxCU,109
|
418
|
+
metaflow-2.16.1.dist-info/entry_points.txt,sha256=RvEq8VFlgGe_FfqGOZi0D7ze1hLD0pAtXeNyGfzc_Yc,103
|
419
|
+
metaflow-2.16.1.dist-info/top_level.txt,sha256=v1pDHoWaSaKeuc5fKTRSfsXCKSdW1zvNVmvA-i0if3o,9
|
420
|
+
metaflow-2.16.1.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|