ob-metaflow 2.18.13.1__py2.py3-none-any.whl → 2.19.0.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.
Potentially problematic release.
This version of ob-metaflow might be problematic. Click here for more details.
- metaflow/__init__.py +1 -0
- metaflow/cli.py +78 -13
- metaflow/cli_components/run_cmds.py +182 -39
- metaflow/cli_components/step_cmd.py +160 -4
- metaflow/client/__init__.py +1 -0
- metaflow/client/core.py +162 -99
- metaflow/client/filecache.py +59 -32
- metaflow/cmd/code/__init__.py +2 -1
- metaflow/datastore/__init__.py +1 -0
- metaflow/datastore/content_addressed_store.py +40 -9
- metaflow/datastore/datastore_set.py +10 -1
- metaflow/datastore/flow_datastore.py +123 -4
- metaflow/datastore/spin_datastore.py +91 -0
- metaflow/datastore/task_datastore.py +86 -2
- metaflow/decorators.py +75 -6
- metaflow/extension_support/__init__.py +372 -305
- metaflow/flowspec.py +3 -2
- metaflow/metaflow_config.py +41 -0
- metaflow/metaflow_profile.py +18 -0
- metaflow/packaging_sys/utils.py +2 -39
- metaflow/packaging_sys/v1.py +63 -16
- metaflow/plugins/__init__.py +2 -0
- metaflow/plugins/cards/card_datastore.py +9 -3
- metaflow/plugins/cards/card_decorator.py +1 -0
- metaflow/plugins/cards/card_modules/basic.py +9 -3
- metaflow/plugins/datastores/local_storage.py +12 -6
- metaflow/plugins/datastores/spin_storage.py +12 -0
- metaflow/plugins/datatools/s3/s3.py +29 -10
- metaflow/plugins/datatools/s3/s3op.py +90 -62
- metaflow/plugins/metadata_providers/local.py +76 -82
- metaflow/plugins/metadata_providers/spin.py +16 -0
- metaflow/runner/metaflow_runner.py +210 -19
- metaflow/runtime.py +348 -21
- metaflow/task.py +61 -12
- metaflow/user_configs/config_parameters.py +2 -4
- metaflow/user_decorators/mutable_flow.py +1 -1
- metaflow/user_decorators/user_step_decorator.py +10 -1
- metaflow/util.py +191 -1
- metaflow/version.py +1 -1
- {ob_metaflow-2.18.13.1.data → ob_metaflow-2.19.0.1.data}/data/share/metaflow/devtools/Makefile +10 -0
- {ob_metaflow-2.18.13.1.dist-info → ob_metaflow-2.19.0.1.dist-info}/METADATA +2 -4
- {ob_metaflow-2.18.13.1.dist-info → ob_metaflow-2.19.0.1.dist-info}/RECORD +48 -45
- {ob_metaflow-2.18.13.1.data → ob_metaflow-2.19.0.1.data}/data/share/metaflow/devtools/Tiltfile +0 -0
- {ob_metaflow-2.18.13.1.data → ob_metaflow-2.19.0.1.data}/data/share/metaflow/devtools/pick_services.sh +0 -0
- {ob_metaflow-2.18.13.1.dist-info → ob_metaflow-2.19.0.1.dist-info}/WHEEL +0 -0
- {ob_metaflow-2.18.13.1.dist-info → ob_metaflow-2.19.0.1.dist-info}/entry_points.txt +0 -0
- {ob_metaflow-2.18.13.1.dist-info → ob_metaflow-2.19.0.1.dist-info}/licenses/LICENSE +0 -0
- {ob_metaflow-2.18.13.1.dist-info → ob_metaflow-2.19.0.1.dist-info}/top_level.txt +0 -0
|
@@ -542,7 +542,7 @@ def user_step_decorator(*args, **kwargs):
|
|
|
542
542
|
|
|
543
543
|
```
|
|
544
544
|
@user_step_decorator
|
|
545
|
-
def timing(step_name, flow, inputs):
|
|
545
|
+
def timing(step_name, flow, inputs, attributes):
|
|
546
546
|
start_time = time.time()
|
|
547
547
|
yield
|
|
548
548
|
end_time = time.time()
|
|
@@ -559,6 +559,15 @@ def user_step_decorator(*args, **kwargs):
|
|
|
559
559
|
```
|
|
560
560
|
|
|
561
561
|
Your generator should:
|
|
562
|
+
- take 3 or 4 arguments: step_name, flow, inputs, and attributes (optional)
|
|
563
|
+
- step_name: the name of the step
|
|
564
|
+
- flow: the flow object
|
|
565
|
+
- inputs: the inputs to the step
|
|
566
|
+
- attributes: the kwargs passed in when initializing the decorator. In the
|
|
567
|
+
example above, something like `@timing(arg1="foo", arg2=42)` would make
|
|
568
|
+
`attributes = {"arg1": "foo", "arg2": 42}`. If you choose to pass arguments
|
|
569
|
+
to the decorator when you apply it to the step, your function *must* take
|
|
570
|
+
4 arguments (step_name, flow, inputs, attributes).
|
|
562
571
|
- yield at most once -- if you do not yield, the step will not execute.
|
|
563
572
|
- yield:
|
|
564
573
|
- None
|
metaflow/util.py
CHANGED
|
@@ -4,10 +4,12 @@ import sys
|
|
|
4
4
|
import tempfile
|
|
5
5
|
import zlib
|
|
6
6
|
import base64
|
|
7
|
+
import re
|
|
8
|
+
|
|
7
9
|
from functools import wraps
|
|
8
10
|
from io import BytesIO
|
|
9
11
|
from itertools import takewhile
|
|
10
|
-
import
|
|
12
|
+
from typing import Dict, Any, Tuple, Optional, List, Generator
|
|
11
13
|
|
|
12
14
|
|
|
13
15
|
try:
|
|
@@ -178,6 +180,119 @@ def resolve_identity():
|
|
|
178
180
|
return "%s:%s" % (identity_type, identity_value)
|
|
179
181
|
|
|
180
182
|
|
|
183
|
+
def parse_spin_pathspec(pathspec: str, flow_name: str) -> Tuple:
|
|
184
|
+
"""
|
|
185
|
+
Parse various pathspec formats for the spin command.
|
|
186
|
+
|
|
187
|
+
Parameters
|
|
188
|
+
----------
|
|
189
|
+
pathspec : str
|
|
190
|
+
The pathspec string in one of the following formats:
|
|
191
|
+
- step_name (e.g., 'start')
|
|
192
|
+
- run_id/step_name (e.g., '221165/start')
|
|
193
|
+
- run_id/step_name/task_id (e.g., '221165/start/1350987')
|
|
194
|
+
- flow_name/run_id/step_name (e.g., 'ScalableFlow/221165/start')
|
|
195
|
+
- flow_name/run_id/step_name/task_id (e.g., 'ScalableFlow/221165/start/1350987')
|
|
196
|
+
flow_name : str
|
|
197
|
+
The name of the current flow.
|
|
198
|
+
|
|
199
|
+
Returns
|
|
200
|
+
-------
|
|
201
|
+
Tuple
|
|
202
|
+
A tuple of (step_name, full_pathspec_or_none)
|
|
203
|
+
|
|
204
|
+
Raises
|
|
205
|
+
------
|
|
206
|
+
CommandException
|
|
207
|
+
If the pathspec format is invalid or flow name doesn't match.
|
|
208
|
+
"""
|
|
209
|
+
from .exception import CommandException
|
|
210
|
+
|
|
211
|
+
parts = pathspec.split("/")
|
|
212
|
+
|
|
213
|
+
if len(parts) == 1:
|
|
214
|
+
# Just step name: 'start'
|
|
215
|
+
step_name = parts[0]
|
|
216
|
+
parsed_pathspec = None
|
|
217
|
+
elif len(parts) == 2:
|
|
218
|
+
# run_id/step_name: '221165/start'
|
|
219
|
+
run_id, step_name = parts
|
|
220
|
+
parsed_pathspec = f"{flow_name}/{run_id}/{step_name}"
|
|
221
|
+
elif len(parts) == 3:
|
|
222
|
+
# Could be run_id/step_name/task_id or flow_name/run_id/step_name
|
|
223
|
+
if parts[0] == flow_name:
|
|
224
|
+
# flow_name/run_id/step_name
|
|
225
|
+
_, run_id, step_name = parts
|
|
226
|
+
parsed_pathspec = f"{flow_name}/{run_id}/{step_name}"
|
|
227
|
+
else:
|
|
228
|
+
# run_id/step_name/task_id
|
|
229
|
+
run_id, step_name, task_id = parts
|
|
230
|
+
parsed_pathspec = f"{flow_name}/{run_id}/{step_name}/{task_id}"
|
|
231
|
+
elif len(parts) == 4:
|
|
232
|
+
# flow_name/run_id/step_name/task_id
|
|
233
|
+
parsed_flow_name, run_id, step_name, task_id = parts
|
|
234
|
+
if parsed_flow_name != flow_name:
|
|
235
|
+
raise CommandException(
|
|
236
|
+
f"Flow name '{parsed_flow_name}' in pathspec does not match current flow '{flow_name}'."
|
|
237
|
+
)
|
|
238
|
+
parsed_pathspec = pathspec
|
|
239
|
+
else:
|
|
240
|
+
raise CommandException(
|
|
241
|
+
f"Invalid pathspec format: '{pathspec}'. \n"
|
|
242
|
+
"Expected formats:\n"
|
|
243
|
+
" - step_name (e.g., 'start')\n"
|
|
244
|
+
" - run_id/step_name (e.g., '221165/start')\n"
|
|
245
|
+
" - run_id/step_name/task_id (e.g., '221165/start/1350987')\n"
|
|
246
|
+
" - flow_name/run_id/step_name (e.g., 'ScalableFlow/221165/start')\n"
|
|
247
|
+
" - flow_name/run_id/step_name/task_id (e.g., 'ScalableFlow/221165/start/1350987')"
|
|
248
|
+
)
|
|
249
|
+
|
|
250
|
+
return step_name, parsed_pathspec
|
|
251
|
+
|
|
252
|
+
|
|
253
|
+
def get_latest_task_pathspec(
|
|
254
|
+
flow_name: str, step_name: str, run_id: str = None
|
|
255
|
+
) -> "metaflow.Task":
|
|
256
|
+
"""
|
|
257
|
+
Returns a task pathspec from the latest run (or specified run) of the flow for the queried step.
|
|
258
|
+
If the queried step has several tasks, the task pathspec of the first task is returned.
|
|
259
|
+
|
|
260
|
+
Parameters
|
|
261
|
+
----------
|
|
262
|
+
flow_name : str
|
|
263
|
+
The name of the flow.
|
|
264
|
+
step_name : str
|
|
265
|
+
The name of the step.
|
|
266
|
+
run_id : str, optional
|
|
267
|
+
The run ID to use. If None, uses the latest run.
|
|
268
|
+
|
|
269
|
+
Returns
|
|
270
|
+
-------
|
|
271
|
+
Task
|
|
272
|
+
A Metaflow Task instance containing the latest task for the queried step.
|
|
273
|
+
|
|
274
|
+
Raises
|
|
275
|
+
------
|
|
276
|
+
MetaflowNotFound
|
|
277
|
+
If no task or run is found for the queried step.
|
|
278
|
+
"""
|
|
279
|
+
from metaflow import Flow, Step
|
|
280
|
+
from metaflow.exception import MetaflowNotFound
|
|
281
|
+
|
|
282
|
+
if not run_id:
|
|
283
|
+
flow = Flow(flow_name)
|
|
284
|
+
run = flow.latest_run
|
|
285
|
+
if run is None:
|
|
286
|
+
raise MetaflowNotFound(f"No run found for flow {flow_name}")
|
|
287
|
+
run_id = run.id
|
|
288
|
+
|
|
289
|
+
try:
|
|
290
|
+
task = Step(f"{flow_name}/{run_id}/{step_name}").task
|
|
291
|
+
return task
|
|
292
|
+
except:
|
|
293
|
+
raise MetaflowNotFound(f"No task found for step {step_name} in run {run_id}")
|
|
294
|
+
|
|
295
|
+
|
|
181
296
|
def get_latest_run_id(echo, flow_name):
|
|
182
297
|
from metaflow.plugins.datastores.local_storage import LocalStorage
|
|
183
298
|
|
|
@@ -471,3 +586,78 @@ def to_pod(value):
|
|
|
471
586
|
|
|
472
587
|
|
|
473
588
|
from metaflow._vendor.packaging.version import parse as version_parse
|
|
589
|
+
|
|
590
|
+
|
|
591
|
+
def read_artifacts_module(file_path: str) -> Dict[str, Any]:
|
|
592
|
+
"""
|
|
593
|
+
Read a Python module from the given file path and return its ARTIFACTS variable.
|
|
594
|
+
|
|
595
|
+
Parameters
|
|
596
|
+
----------
|
|
597
|
+
file_path : str
|
|
598
|
+
The path to the Python file containing the ARTIFACTS variable.
|
|
599
|
+
|
|
600
|
+
Returns
|
|
601
|
+
-------
|
|
602
|
+
Dict[str, Any]
|
|
603
|
+
A dictionary containing the ARTIFACTS variable from the module.
|
|
604
|
+
|
|
605
|
+
Raises
|
|
606
|
+
-------
|
|
607
|
+
MetaflowInternalError
|
|
608
|
+
If the file cannot be read or does not contain the ARTIFACTS variable.
|
|
609
|
+
"""
|
|
610
|
+
import importlib.util
|
|
611
|
+
import os
|
|
612
|
+
|
|
613
|
+
try:
|
|
614
|
+
module_name = os.path.splitext(os.path.basename(file_path))[0]
|
|
615
|
+
spec = importlib.util.spec_from_file_location(module_name, file_path)
|
|
616
|
+
module = importlib.util.module_from_spec(spec)
|
|
617
|
+
spec.loader.exec_module(module)
|
|
618
|
+
variables = vars(module)
|
|
619
|
+
if "ARTIFACTS" not in variables:
|
|
620
|
+
raise MetaflowInternalError(
|
|
621
|
+
f"Module {file_path} does not contain ARTIFACTS variable"
|
|
622
|
+
)
|
|
623
|
+
return variables.get("ARTIFACTS")
|
|
624
|
+
except Exception as e:
|
|
625
|
+
raise MetaflowInternalError(f"Error reading file {file_path}") from e
|
|
626
|
+
|
|
627
|
+
|
|
628
|
+
# this is os.walk(follow_symlinks=True) with cycle detection
|
|
629
|
+
def walk_without_cycles(
|
|
630
|
+
top_root: str,
|
|
631
|
+
exclude_dirs: Optional[List[str]] = None,
|
|
632
|
+
) -> Generator[Tuple[str, List[str], List[str]], None, None]:
|
|
633
|
+
seen = set()
|
|
634
|
+
|
|
635
|
+
default_skip_dirs = ["__pycache__"]
|
|
636
|
+
|
|
637
|
+
def _recurse(root, skip_dirs):
|
|
638
|
+
for parent, dirs, files in os.walk(root):
|
|
639
|
+
dirs[:] = [d for d in dirs if d not in skip_dirs]
|
|
640
|
+
for d in dirs:
|
|
641
|
+
path = os.path.join(parent, d)
|
|
642
|
+
if os.path.islink(path):
|
|
643
|
+
# Breaking loops: never follow the same symlink twice
|
|
644
|
+
#
|
|
645
|
+
# NOTE: this also means that links to sibling links are
|
|
646
|
+
# not followed. In this case:
|
|
647
|
+
#
|
|
648
|
+
# x -> y
|
|
649
|
+
# y -> oo
|
|
650
|
+
# oo/real_file
|
|
651
|
+
#
|
|
652
|
+
# real_file is only included twice, not three times
|
|
653
|
+
reallink = os.path.realpath(path)
|
|
654
|
+
if reallink not in seen:
|
|
655
|
+
seen.add(reallink)
|
|
656
|
+
for x in _recurse(path, default_skip_dirs):
|
|
657
|
+
yield x
|
|
658
|
+
yield parent, dirs, files
|
|
659
|
+
|
|
660
|
+
skip_dirs = set(default_skip_dirs + (exclude_dirs or []))
|
|
661
|
+
for x in _recurse(top_root, skip_dirs):
|
|
662
|
+
skip_dirs = default_skip_dirs
|
|
663
|
+
yield x
|
metaflow/version.py
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
metaflow_version = "2.
|
|
1
|
+
metaflow_version = "2.19.0.1"
|
{ob_metaflow-2.18.13.1.data → ob_metaflow-2.19.0.1.data}/data/share/metaflow/devtools/Makefile
RENAMED
|
@@ -31,6 +31,7 @@ MAKE_CMD := $(MAKE) -f "$(MKFILE_PATH)"
|
|
|
31
31
|
MINIKUBE_CPUS ?= 4
|
|
32
32
|
MINIKUBE_MEMORY ?= 6144
|
|
33
33
|
MINIKUBE_DISK_SIZE ?= 20g
|
|
34
|
+
WAIT_TIMEOUT ?= 300
|
|
34
35
|
|
|
35
36
|
ifeq ($(shell uname), Darwin)
|
|
36
37
|
minikube_os = darwin
|
|
@@ -269,6 +270,15 @@ shell: setup-tilt
|
|
|
269
270
|
"$$user_shell" -i; \
|
|
270
271
|
fi'
|
|
271
272
|
|
|
273
|
+
wait-until-ready:
|
|
274
|
+
@echo "Waiting for infrastructure to be ready. Timing out in $(WAIT_TIMEOUT) seconds..."
|
|
275
|
+
@timeout $(WAIT_TIMEOUT) bash -c 'while [ ! -f $(DEVTOOLS_DIR)/start.sh ]; do sleep 10; done; echo "Infra is Ready"' || (echo "Waiting for infra timed out"&&exit 1)
|
|
276
|
+
# buffer to get the tilt api running
|
|
277
|
+
@timeout 120 bash -c 'while ! $(TILT) get session; do sleep 3;done'
|
|
278
|
+
@echo "Waiting for services to be ready. Timing out in $(WAIT_TIMEOUT) seconds..."
|
|
279
|
+
# Need to wait for Tiltfile first, as other resources return 404 otherwise
|
|
280
|
+
@$(TILT) wait --for=condition=Ready "uiresource/(Tiltfile)" --timeout=$(WAIT_TIMEOUT)s
|
|
281
|
+
@$(TILT) wait --for=condition=Ready uiresource/generate-configs --timeout=$(WAIT_TIMEOUT)s
|
|
272
282
|
|
|
273
283
|
# @echo '$(MAKE_CMD) create-dev-shell' >> $(DEVTOOLS_DIR)/start.sh
|
|
274
284
|
# @echo 'rm -f /tmp/metaflow-devshell-*' >> $(DEVTOOLS_DIR)/start.sh
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: ob-metaflow
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.19.0.1
|
|
4
4
|
Summary: Metaflow: More AI and ML, Less Engineering
|
|
5
5
|
Author: Netflix, Outerbounds & the Metaflow Community
|
|
6
6
|
Author-email: help@outerbounds.co
|
|
@@ -12,7 +12,7 @@ Requires-Dist: boto3
|
|
|
12
12
|
Requires-Dist: pylint
|
|
13
13
|
Requires-Dist: kubernetes
|
|
14
14
|
Provides-Extra: stubs
|
|
15
|
-
Requires-Dist: metaflow-stubs==2.
|
|
15
|
+
Requires-Dist: metaflow-stubs==2.19.0.1; extra == "stubs"
|
|
16
16
|
Dynamic: author
|
|
17
17
|
Dynamic: author-email
|
|
18
18
|
Dynamic: description
|
|
@@ -85,5 +85,3 @@ We'd love to hear from you. Join our community [Slack workspace](http://slack.ou
|
|
|
85
85
|
|
|
86
86
|
## Contributing
|
|
87
87
|
We welcome contributions to Metaflow. Please see our [contribution guide](https://docs.metaflow.org/introduction/contributing-to-metaflow) for more details.
|
|
88
|
-
|
|
89
|
-
|
|
@@ -1,27 +1,27 @@
|
|
|
1
1
|
metaflow/R.py,sha256=CqVfIatvmjciuICNnoyyNGrwE7Va9iXfLdFbQa52hwA,3958
|
|
2
|
-
metaflow/__init__.py,sha256=
|
|
2
|
+
metaflow/__init__.py,sha256=AfkGj9Lup5LfKz7FvG19Mt0yNOOcms_C68gD7pDhMhQ,6438
|
|
3
3
|
metaflow/cards.py,sha256=ltZucLBYCaDQc79p51Eo0mx6RseyIEY0yRGnLxZDvt4,508
|
|
4
|
-
metaflow/cli.py,sha256=
|
|
4
|
+
metaflow/cli.py,sha256=YfxNrRHOK-nrCgHB-9jVxxIfkYKJWi1As-uL_4Sydbs,25472
|
|
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=vvO8VpYX4viwG1F0MTYqpMTOu0SDEFCsw_b19B_QoTI,32543
|
|
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=_s5e75Zy8D3hTbmGafqlkBOLhmuHGbDHTiBqidCpHpM,42014
|
|
14
14
|
metaflow/graph.py,sha256=b7-5hStqurdTO0RFVEhtUcwrPh2Xt3gTZkAE_B2LSOM,19311
|
|
15
15
|
metaflow/includefile.py,sha256=NXERo_halboBCjvnS5iCjnBMyCMlQMnT2mRe6kxl2xU,21978
|
|
16
16
|
metaflow/integrations.py,sha256=LlsaoePRg03DjENnmLxZDYto3NwWc9z_PtU6nJxLldg,1480
|
|
17
17
|
metaflow/lint.py,sha256=A2NdUq_MnQal_RUCMC8ZOSR0VYZGyi2mSgwPQB0UzQo,15343
|
|
18
18
|
metaflow/meta_files.py,sha256=vlgJHI8GJUKzXoxdrVoH8yyCF5bhFgwYemUgnyd1wgM,342
|
|
19
|
-
metaflow/metaflow_config.py,sha256=
|
|
19
|
+
metaflow/metaflow_config.py,sha256=SF9L0-5V5ueapoCuW4QGrfo2pJ6jugJbotaVdQqQOnw,25798
|
|
20
20
|
metaflow/metaflow_config_funcs.py,sha256=5GlvoafV6SxykwfL8D12WXSfwjBN_NsyuKE_Q3gjGVE,6738
|
|
21
21
|
metaflow/metaflow_current.py,sha256=pfkXmkyHeMJhxIs6HBJNBEaBDpcl5kz9Wx5mW6F_3qo,7164
|
|
22
22
|
metaflow/metaflow_environment.py,sha256=20PIhA5R_rJneNj8f8UaWRmznGRPcEd6hP7goj_rc1s,11477
|
|
23
23
|
metaflow/metaflow_git.py,sha256=Pb_VtvQzcjpuuM7UfC2u5kz85EbPMUfspl2UrPWBQMM,3647
|
|
24
|
-
metaflow/metaflow_profile.py,sha256=
|
|
24
|
+
metaflow/metaflow_profile.py,sha256=U-HSQKcYoxSfYwWTrc4A-ui2ZUZtiAIetoA4veNCZ5g,773
|
|
25
25
|
metaflow/metaflow_version.py,sha256=iuL9QoWjvUpGKIRp6dM9zxp0ED_iqXNihl__Qu9f1dc,8115
|
|
26
26
|
metaflow/monitor.py,sha256=T0NMaBPvXynlJAO_avKtk8OIIRMyEuMAyF8bIp79aZU,5323
|
|
27
27
|
metaflow/multicore_utils.py,sha256=yEo5T6Gemn4_vl8b6IOz7fsTUYtEyqa3AaKZgJY96Wc,4974
|
|
@@ -29,14 +29,14 @@ metaflow/parameters.py,sha256=Gr3-gnocWdZ3SLoPeP2UA0cXZWSwMz-d6SGjCWJRaKk,18825
|
|
|
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=tJjmdsgtbHTCqg_oA6fV6SbWq_3V5XUgE9xH0zJ1CGU,3004
|
|
32
|
-
metaflow/runtime.py,sha256=
|
|
32
|
+
metaflow/runtime.py,sha256=5W5uUMHbGRcyiYaq1dleomO35iKQEOtSB4uHN7QBA_M,99154
|
|
33
33
|
metaflow/tagging_util.py,sha256=ctyf0Q1gBi0RyZX6J0e9DQGNkNHblV_CITfy66axXB4,2346
|
|
34
|
-
metaflow/task.py,sha256=
|
|
34
|
+
metaflow/task.py,sha256=9-YhuA5sppqutk73t3cjfiZarTE07wbxO67JGxqly8s,41967
|
|
35
35
|
metaflow/tuple_util.py,sha256=_G5YIEhuugwJ_f6rrZoelMFak3DqAR2tt_5CapS1XTY,830
|
|
36
36
|
metaflow/unbounded_foreach.py,sha256=p184WMbrMJ3xKYHwewj27ZhRUsSj_kw1jlye5gA9xJk,387
|
|
37
|
-
metaflow/util.py,sha256=
|
|
37
|
+
metaflow/util.py,sha256=nyX0NWJAIRk1gImohMYvuS2ZoQup9VO1aiNEIN4Y1Ik,21035
|
|
38
38
|
metaflow/vendor.py,sha256=A82CGHfStZGDP5pQ5XzRjFkbN1ZC-vFmghXIrzMDDNg,5868
|
|
39
|
-
metaflow/version.py,sha256=
|
|
39
|
+
metaflow/version.py,sha256=UzTI6d4yFmzjQULQu_ixPRNWcNaAUsbNoM_v90QjRT8,30
|
|
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
|
|
@@ -153,31 +153,32 @@ metaflow/_vendor/yaml/tokens.py,sha256=lTQIzSVw8Mg9wv459-TjiOQe6wVziqaRlqX2_89rp
|
|
|
153
153
|
metaflow/cli_components/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
154
154
|
metaflow/cli_components/dump_cmd.py,sha256=SZEX51BWNd1o3H2uHDkYA8KRvou5X8g5rTwpdu5vnNQ,2704
|
|
155
155
|
metaflow/cli_components/init_cmd.py,sha256=AIkQHNlMRsmf8fxXwXQSEWTuv_9nxNY82-IdWsgGjEs,1554
|
|
156
|
-
metaflow/cli_components/run_cmds.py,sha256=
|
|
157
|
-
metaflow/cli_components/step_cmd.py,sha256=
|
|
156
|
+
metaflow/cli_components/run_cmds.py,sha256=U-doiT_zqoROeeesB7OG4vDE6beWdQip9lSIiyyM5sg,17318
|
|
157
|
+
metaflow/cli_components/step_cmd.py,sha256=FrHsMYydoDFBfayz71BKckMbjubIm2hT6c8nJql01fg,9267
|
|
158
158
|
metaflow/cli_components/utils.py,sha256=gpoDociadjnJD7MuiJup_MDR02ZJjjleejr0jPBu29c,6057
|
|
159
|
-
metaflow/client/__init__.py,sha256=
|
|
160
|
-
metaflow/client/core.py,sha256=
|
|
161
|
-
metaflow/client/filecache.py,sha256=
|
|
159
|
+
metaflow/client/__init__.py,sha256=KQQkAAfNwwUYxbHKW2I2yRWGj9o4HerG3xDQOClcGl0,244
|
|
160
|
+
metaflow/client/core.py,sha256=ZnyW_mDl-OcFYtqd2UhQpulcbsmSPNtU-aNTRXEGoqs,86935
|
|
161
|
+
metaflow/client/filecache.py,sha256=tCLQH0rPJlImW82Ipz6gN4oRGJiDMvzDVFfb_l8GgwM,15978
|
|
162
162
|
metaflow/cmd/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
|
163
163
|
metaflow/cmd/configure_cmd.py,sha256=o-DKnUf2FBo_HiMVyoyzQaGBSMtpbEPEdFTQZ0hkU-k,33396
|
|
164
164
|
metaflow/cmd/main_cli.py,sha256=iKptsPcys0OKileZdE8Pp0_y8t7pm94SL3b870Qhk30,2972
|
|
165
165
|
metaflow/cmd/make_wrapper.py,sha256=5uWZw_2jqYmI7gm1pGwPxXCII56WBKarNKJp9FRMN3c,3029
|
|
166
166
|
metaflow/cmd/tutorials_cmd.py,sha256=8FdlKkicTOhCIDKcBR5b0Oz6giDvS-EMY3o9skIrRqw,5156
|
|
167
167
|
metaflow/cmd/util.py,sha256=jS_0rUjOnGGzPT65fzRLdGjrYAOOLA4jU2S0HJLV0oc,406
|
|
168
|
-
metaflow/cmd/code/__init__.py,sha256=
|
|
168
|
+
metaflow/cmd/code/__init__.py,sha256=tb8BpNPqRIaem3f1yZRExbF8FJhqwUuf1N7SZkBDK5U,7446
|
|
169
169
|
metaflow/cmd/develop/__init__.py,sha256=p1Sy8yU1MEKSrH5ttOWOZvNcI1qYu6J6jghdTHwPgOw,689
|
|
170
170
|
metaflow/cmd/develop/stub_generator.py,sha256=PQBbYm7j-GuK-BdaNG5FQ-lOc6suvfHll8XdyFxpZGY,66980
|
|
171
171
|
metaflow/cmd/develop/stubs.py,sha256=J8DtpaN3okiPeeAqhxuUe9wQDlW4YYmZgKsVZLlVt0k,11181
|
|
172
|
-
metaflow/datastore/__init__.py,sha256=
|
|
173
|
-
metaflow/datastore/content_addressed_store.py,sha256=
|
|
174
|
-
metaflow/datastore/datastore_set.py,sha256=
|
|
172
|
+
metaflow/datastore/__init__.py,sha256=JxpvwwhBfkKjZ9kZ3QVUIbelfFrZeWkCOpqif1cfbFo,201
|
|
173
|
+
metaflow/datastore/content_addressed_store.py,sha256=2ZDn9wpurtHYNwBbwca0ipzHciVgoUZryt3xT1RHMe4,9322
|
|
174
|
+
metaflow/datastore/datastore_set.py,sha256=WDgGeySHtt5hr6u3L1XMmd3b_yAJz6_2Ip_bj_Ygsms,2614
|
|
175
175
|
metaflow/datastore/datastore_storage.py,sha256=7V43QuiWDQ_Q4oHw9y7Z7X9lYj3GI-LV1-xB3d2Tt5k,9038
|
|
176
176
|
metaflow/datastore/exceptions.py,sha256=r7Ab5FvHIzyFh6kwiptA1lO5nLqWg0xRBoeYGefvapA,373
|
|
177
|
-
metaflow/datastore/flow_datastore.py,sha256=
|
|
177
|
+
metaflow/datastore/flow_datastore.py,sha256=UeZ-dagR2ru8dmMWLThTat7tQnh3v4YcGskYUanhrYg,14727
|
|
178
178
|
metaflow/datastore/inputs.py,sha256=i43dXr2xvgtsgKMO9allgCR18bk80GeayeQFyUTH36w,449
|
|
179
|
-
metaflow/datastore/
|
|
180
|
-
metaflow/
|
|
179
|
+
metaflow/datastore/spin_datastore.py,sha256=5bhtVNWl4131pMKtBN72DLHxc72QX46JO0sV7r6IpVY,3035
|
|
180
|
+
metaflow/datastore/task_datastore.py,sha256=i9hBON-J0ECV_1uaqAtUGzPcd949mnYQBsqaJfVt15Q,38332
|
|
181
|
+
metaflow/extension_support/__init__.py,sha256=ySzHhtJXS4SCgi6JlxAWQKx0G7WJlyw7bhh9fEYKN8g,55880
|
|
181
182
|
metaflow/extension_support/_empty_file.py,sha256=vz61sSExf5DZH3JCqdfwkp7l_NrJR8HV175kG82yUas,133
|
|
182
183
|
metaflow/extension_support/cmd.py,sha256=hk8iBUUINqvKCDxInKgWpum8ThiRZtHSJP7qBASHzl8,5711
|
|
183
184
|
metaflow/extension_support/integrations.py,sha256=AWAh-AZ-vo9IxuAVEjGw3s8p_NMm2DKHYx10oC51gPU,5506
|
|
@@ -196,9 +197,9 @@ metaflow/packaging_sys/__init__.py,sha256=HzpznaW1T9xppCIsxI7MzcTIu6QasyDZ3pJ5fR
|
|
|
196
197
|
metaflow/packaging_sys/backend.py,sha256=uiJNMTTh3RV9_Zqkd5MBd2TnukfxpY2OEGBOmDroeTM,3534
|
|
197
198
|
metaflow/packaging_sys/distribution_support.py,sha256=VvikZBCH8N1TBZZ2Twk8jH1brmiinKWCD3y_aFqBsIw,4937
|
|
198
199
|
metaflow/packaging_sys/tar_backend.py,sha256=nFWuXiwYjWQkFdV2KaZ6gazNVvtY84Eqsh9txhU3pNY,3010
|
|
199
|
-
metaflow/packaging_sys/utils.py,sha256=
|
|
200
|
-
metaflow/packaging_sys/v1.py,sha256=
|
|
201
|
-
metaflow/plugins/__init__.py,sha256=
|
|
200
|
+
metaflow/packaging_sys/utils.py,sha256=1TyFiicfbsEslNH3rT-be6YRld8EMRpVmXcLEhYqW2E,1602
|
|
201
|
+
metaflow/packaging_sys/v1.py,sha256=aEnqfHwVYxvFM2yWmP-QTjC-mN_oEnO6WPKDQRPcIs8,23139
|
|
202
|
+
metaflow/plugins/__init__.py,sha256=nUVrwjX1Uizfp7M7WZw9akFrpfU0d-NS1ChVZQCVtrg,8779
|
|
202
203
|
metaflow/plugins/catch_decorator.py,sha256=vorlDA6MLB2yHSsEuBoNzAZbrJ6Vknj1qJO9vey2_AI,4523
|
|
203
204
|
metaflow/plugins/debug_logger.py,sha256=mcF5HYzJ0NQmqCMjyVUk3iAP-heroHRIiVWQC6Ha2-I,879
|
|
204
205
|
metaflow/plugins/debug_monitor.py,sha256=Md5X_sDOSssN9pt2D8YcaIjTK5JaQD55UAYTcF6xYF0,1099
|
|
@@ -276,8 +277,8 @@ metaflow/plugins/cards/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3
|
|
|
276
277
|
metaflow/plugins/cards/card_cli.py,sha256=h-ib-SXjJjAm-jSQC4pEmVcsM4M3lljSjOkZBxvAvRo,35763
|
|
277
278
|
metaflow/plugins/cards/card_client.py,sha256=30dFBoC3axc261GeV7QCIs_V1OHhRtS31S0wEWsjw90,9501
|
|
278
279
|
metaflow/plugins/cards/card_creator.py,sha256=Da4LOkRY3IJNcGQn1V6zlSdgVjgiFm6XMcsKOe_6v70,8784
|
|
279
|
-
metaflow/plugins/cards/card_datastore.py,sha256=
|
|
280
|
-
metaflow/plugins/cards/card_decorator.py,sha256=
|
|
280
|
+
metaflow/plugins/cards/card_datastore.py,sha256=rU7mVJFVFyUZOn223y0OaxUgiqg0hNECMhqJ6ksMRdo,12941
|
|
281
|
+
metaflow/plugins/cards/card_decorator.py,sha256=H5UKY-jJzUdAb3jkZUhAuUS0eiIKwQWxF0_hJk96nU4,14074
|
|
281
282
|
metaflow/plugins/cards/card_resolver.py,sha256=bjyujYpGUFbLJNwXNGHlHhL4f-gVdVKebl7XW1vWDtE,717
|
|
282
283
|
metaflow/plugins/cards/card_server.py,sha256=DHv0RcepaPULWbkDahiEMrU5A281Cfb0DvHLUYd8JsU,11772
|
|
283
284
|
metaflow/plugins/cards/component_serializer.py,sha256=kQ5umqSQne6bTgx8V8JNQbiz-kH2Ntu0VK3ZHxywXww,36912
|
|
@@ -285,7 +286,7 @@ metaflow/plugins/cards/exception.py,sha256=2UqlNb-Kxpg6cuLu2sBEIPTIElwlVBsSpeCgD
|
|
|
285
286
|
metaflow/plugins/cards/metadata.py,sha256=tACaw7_XNAICZ4A25celIbgxUF0CxHh7BBpFzKrMLTo,487
|
|
286
287
|
metaflow/plugins/cards/card_modules/__init__.py,sha256=WI2IAsFiKGyqPrHtO9S9-MbyVtUTgWJNL4xjJaBErRo,3437
|
|
287
288
|
metaflow/plugins/cards/card_modules/base.html,sha256=Y208ZKIZqEWWUcoBFTLTdWKAG0C8xH5lmyCRSjaN2FY,21004
|
|
288
|
-
metaflow/plugins/cards/card_modules/basic.py,sha256=
|
|
289
|
+
metaflow/plugins/cards/card_modules/basic.py,sha256=Q6MKp0RAmSB5ikmn9fN0VkakYxy__PZbQC_EGr7vfQk,26639
|
|
289
290
|
metaflow/plugins/cards/card_modules/bundle.css,sha256=zlYjv5rt7lMqiQzd_OAe4QdQeM3J3YbwljnEghlbTaU,28052
|
|
290
291
|
metaflow/plugins/cards/card_modules/card.py,sha256=6sbqP5mwf7QWvQvX2N_bC78H9ixuI5sQ8612Q5islys,4627
|
|
291
292
|
metaflow/plugins/cards/card_modules/components.py,sha256=z9IT9gVpI22hUhGtJbgcy5oMpGzPeTof_lEkOOfMa9Q,46150
|
|
@@ -304,13 +305,14 @@ metaflow/plugins/cards/card_viewer/viewer.html,sha256=qZJGzhZhQ1gugsknRP7zkAPPfU
|
|
|
304
305
|
metaflow/plugins/datastores/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
305
306
|
metaflow/plugins/datastores/azure_storage.py,sha256=GGzOxK8coHR9PQYmR39jn37D0s-XIJOVMuRKaJ3B8eo,16787
|
|
306
307
|
metaflow/plugins/datastores/gs_storage.py,sha256=8KV4SM7GPI21-86UjMATmSCbVzxDHlMWlRsQ-zQngTg,9899
|
|
307
|
-
metaflow/plugins/datastores/local_storage.py,sha256=
|
|
308
|
+
metaflow/plugins/datastores/local_storage.py,sha256=7e-3RR-G77ZMpHAkjbFZFM7P6eA-8dIxaW0evUGptzE,4879
|
|
308
309
|
metaflow/plugins/datastores/s3_storage.py,sha256=CZdNqaKtxDXQbEg2YHyphph3hWcLIE50puenm0WGVpk,5473
|
|
310
|
+
metaflow/plugins/datastores/spin_storage.py,sha256=yoARjaF03v0-UGWFxB26s0JvQYVtJwZaMrk5HlZwccU,352
|
|
309
311
|
metaflow/plugins/datatools/__init__.py,sha256=ge4L16OBQLy2J_MMvoHg3lMfdm-MluQgRWoyZ5GCRnk,1267
|
|
310
312
|
metaflow/plugins/datatools/local.py,sha256=FJvMOBcjdyhSPHmdLocBSiIT0rmKkKBmsaclxH75x08,4233
|
|
311
313
|
metaflow/plugins/datatools/s3/__init__.py,sha256=14tr9fPjN3ULW5IOfKHeG7Uhjmgm7LMtQHfz1SFv-h8,248
|
|
312
|
-
metaflow/plugins/datatools/s3/s3.py,sha256=
|
|
313
|
-
metaflow/plugins/datatools/s3/s3op.py,sha256=
|
|
314
|
+
metaflow/plugins/datatools/s3/s3.py,sha256=5RoZiYG5RAWmNliJpPV5O_oUneksmyivJEzGfgWo_84,68249
|
|
315
|
+
metaflow/plugins/datatools/s3/s3op.py,sha256=aAV4oPduz00IuTRNn9Fd3rgj-KJUNbccEt-ML05D6Ho,50636
|
|
314
316
|
metaflow/plugins/datatools/s3/s3tail.py,sha256=boQjQGQMI-bvTqcMP2y7uSlSYLcvWOy7J3ZUaF78NAA,2597
|
|
315
317
|
metaflow/plugins/datatools/s3/s3util.py,sha256=FgRgaVmEq7-i2dV7q8XK5w5PfFt-xJjZa8WrK8IJfdI,3769
|
|
316
318
|
metaflow/plugins/env_escape/__init__.py,sha256=tGNUZnmPvk52eNs__VK443b3CZ7ogEFTT-s9_n_HF8Q,8837
|
|
@@ -356,8 +358,9 @@ metaflow/plugins/kubernetes/kubernetes_jobsets.py,sha256=9DOGNdGnhOlaBsIp1Sl7ylI
|
|
|
356
358
|
metaflow/plugins/kubernetes/spot_metadata_cli.py,sha256=an0nWCxgflmqIPBCBrlb4m3DereDFFJBLt-KKhqcHc8,1670
|
|
357
359
|
metaflow/plugins/kubernetes/spot_monitor_sidecar.py,sha256=zrWU-smQwPnL6MBHmzTxWyEA00R6iKKQbhhy50xFwQ8,3832
|
|
358
360
|
metaflow/plugins/metadata_providers/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
|
359
|
-
metaflow/plugins/metadata_providers/local.py,sha256=
|
|
361
|
+
metaflow/plugins/metadata_providers/local.py,sha256=iAOHp0vozFO5rlb-nkO6x8ZqTqCXrQLEMc-xzzC3TO8,23938
|
|
360
362
|
metaflow/plugins/metadata_providers/service.py,sha256=WL3GkEQlQk0syjSZ6iOnBSb3nRGfeUye95ySvLnMwhg,22953
|
|
363
|
+
metaflow/plugins/metadata_providers/spin.py,sha256=VmM2utbYPHlGBIzVaE8HdBXb-dEVTuRpk49UTnEEcWQ,472
|
|
361
364
|
metaflow/plugins/pypi/__init__.py,sha256=0YFZpXvX7HCkyBFglatual7XGifdA1RwC3U4kcizyak,1037
|
|
362
365
|
metaflow/plugins/pypi/bootstrap.py,sha256=8EWBdwOp5moXkTfLadn3ZOtPXoGftjOFD-c2W_rn77c,14998
|
|
363
366
|
metaflow/plugins/pypi/conda_decorator.py,sha256=fXG9EvImP4Eqle_Trhb3tQhs40xTc4cxL_r7r0BlJzo,14064
|
|
@@ -381,7 +384,7 @@ metaflow/runner/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
|
381
384
|
metaflow/runner/click_api.py,sha256=WmhbrjS0H2gz-AZDEDe5Jrkctf9SvV4XrfgIBPW7nUI,24530
|
|
382
385
|
metaflow/runner/deployer.py,sha256=OAAMG_l3Q1ClcY_603VZnhclVkfFe3Rf8bFRodC3poc,17138
|
|
383
386
|
metaflow/runner/deployer_impl.py,sha256=q-IvwnNKPRUTpOkfzrZNrkIsjp-L-Ju75dtXmfDUqbI,7299
|
|
384
|
-
metaflow/runner/metaflow_runner.py,sha256=
|
|
387
|
+
metaflow/runner/metaflow_runner.py,sha256=HN5VgxEAuG3xE3Q4tQkmILTIGYsq6ZBwCTy6eFcxGw8,25522
|
|
385
388
|
metaflow/runner/nbdeploy.py,sha256=Sp5w-6nCZwjHaRBHWxi8udya-RYnJOB76KNLjB4L7Gs,4166
|
|
386
389
|
metaflow/runner/nbrun.py,sha256=LhJu-Teoi7wTkNxg0kpNPVXFxH_9P4lvtp0ysMEIFJ8,7299
|
|
387
390
|
metaflow/runner/subprocess_manager.py,sha256=x-MtPpGGMQUkIbQ_oNOuR-45b91DFvsCJ0SPoFc0dF4,23028
|
|
@@ -424,19 +427,19 @@ metaflow/tutorials/08-autopilot/README.md,sha256=GnePFp_q76jPs991lMUqfIIh5zSorIe
|
|
|
424
427
|
metaflow/tutorials/08-autopilot/autopilot.ipynb,sha256=DQoJlILV7Mq9vfPBGW-QV_kNhWPjS5n6SJLqePjFYLY,3191
|
|
425
428
|
metaflow/user_configs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
426
429
|
metaflow/user_configs/config_options.py,sha256=d3hKA6WRPe21PdTl7sBnxIp5sE6zBpRtgAGx7hWkkfw,21380
|
|
427
|
-
metaflow/user_configs/config_parameters.py,sha256=
|
|
430
|
+
metaflow/user_configs/config_parameters.py,sha256=2LJnDPJ2NuZrM7ZrdOHNSbPw-X3BhM_tJgy0bxBAWAA,20975
|
|
428
431
|
metaflow/user_decorators/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
429
432
|
metaflow/user_decorators/common.py,sha256=0u9NRLQ95TfJCjWVEOGT4MJ9WoQgAMBM9kJ2gJGlVjk,5362
|
|
430
|
-
metaflow/user_decorators/mutable_flow.py,sha256=
|
|
433
|
+
metaflow/user_decorators/mutable_flow.py,sha256=NPPcvSyeqYCTYNi9PaxmDISxLFKYqzwMMppSfqR7lvE,19498
|
|
431
434
|
metaflow/user_decorators/mutable_step.py,sha256=-BY0UDXf_RCAEnC5JlLzEXGdiw1KD9oSrSxS_SWaB9Y,16791
|
|
432
435
|
metaflow/user_decorators/user_flow_decorator.py,sha256=2yDwZq9QGv9W-7kEuKwa8o4ZkTvuHJ5ESz7VVrGViAI,9890
|
|
433
|
-
metaflow/user_decorators/user_step_decorator.py,sha256=
|
|
434
|
-
ob_metaflow-2.
|
|
435
|
-
ob_metaflow-2.
|
|
436
|
-
ob_metaflow-2.
|
|
437
|
-
ob_metaflow-2.
|
|
438
|
-
ob_metaflow-2.
|
|
439
|
-
ob_metaflow-2.
|
|
440
|
-
ob_metaflow-2.
|
|
441
|
-
ob_metaflow-2.
|
|
442
|
-
ob_metaflow-2.
|
|
436
|
+
metaflow/user_decorators/user_step_decorator.py,sha256=4I1TQlQDMaMSuAJAAm3wo3bFETODC77RtXW11EuUI4A,27837
|
|
437
|
+
ob_metaflow-2.19.0.1.data/data/share/metaflow/devtools/Makefile,sha256=_otS4tft0V5IzmMJPeVPxoN1_1aUiwC9-2Nu54k40ao,14499
|
|
438
|
+
ob_metaflow-2.19.0.1.data/data/share/metaflow/devtools/Tiltfile,sha256=b6l_fjDO0wtxOkO85lFvuf3HDa6wnzHhhBG8yv1kQqk,23949
|
|
439
|
+
ob_metaflow-2.19.0.1.data/data/share/metaflow/devtools/pick_services.sh,sha256=PGjQeDIigFHeoQ0asmYNdYDPIOdeYy1UYvkw2wdN4zg,2209
|
|
440
|
+
ob_metaflow-2.19.0.1.dist-info/licenses/LICENSE,sha256=nl_Lt5v9VvJ-5lWJDT4ddKAG-VZ-2IaLmbzpgYDz2hU,11343
|
|
441
|
+
ob_metaflow-2.19.0.1.dist-info/METADATA,sha256=BMj06eTxJIgMuBqw7Id9YCMocgc8q4Psn5r4sXkPFJc,5934
|
|
442
|
+
ob_metaflow-2.19.0.1.dist-info/WHEEL,sha256=JNWh1Fm1UdwIQV075glCn4MVuCRs0sotJIq-J6rbxCU,109
|
|
443
|
+
ob_metaflow-2.19.0.1.dist-info/entry_points.txt,sha256=RvEq8VFlgGe_FfqGOZi0D7ze1hLD0pAtXeNyGfzc_Yc,103
|
|
444
|
+
ob_metaflow-2.19.0.1.dist-info/top_level.txt,sha256=v1pDHoWaSaKeuc5fKTRSfsXCKSdW1zvNVmvA-i0if3o,9
|
|
445
|
+
ob_metaflow-2.19.0.1.dist-info/RECORD,,
|
{ob_metaflow-2.18.13.1.data → ob_metaflow-2.19.0.1.data}/data/share/metaflow/devtools/Tiltfile
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|