metaflow 2.12.27__py2.py3-none-any.whl → 2.12.28__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 +27 -0
- metaflow/plugins/kubernetes/kubernetes_jobsets.py +1 -4
- metaflow/system/system_logger.py +1 -19
- metaflow/system/system_monitor.py +0 -24
- metaflow/task.py +4 -7
- metaflow/version.py +1 -1
- {metaflow-2.12.27.dist-info → metaflow-2.12.28.dist-info}/METADATA +2 -2
- {metaflow-2.12.27.dist-info → metaflow-2.12.28.dist-info}/RECORD +12 -12
- {metaflow-2.12.27.dist-info → metaflow-2.12.28.dist-info}/WHEEL +1 -1
- {metaflow-2.12.27.dist-info → metaflow-2.12.28.dist-info}/LICENSE +0 -0
- {metaflow-2.12.27.dist-info → metaflow-2.12.28.dist-info}/entry_points.txt +0 -0
- {metaflow-2.12.27.dist-info → metaflow-2.12.28.dist-info}/top_level.txt +0 -0
metaflow/cli.py
CHANGED
@@ -716,6 +716,20 @@ def resume(
|
|
716
716
|
if runtime.should_skip_clone_only_execution():
|
717
717
|
return
|
718
718
|
|
719
|
+
current._update_env(
|
720
|
+
{
|
721
|
+
"run_id": runtime.run_id,
|
722
|
+
}
|
723
|
+
)
|
724
|
+
_system_logger.log_event(
|
725
|
+
level="info",
|
726
|
+
module="metaflow.resume",
|
727
|
+
name="start",
|
728
|
+
payload={
|
729
|
+
"msg": "Resuming run",
|
730
|
+
},
|
731
|
+
)
|
732
|
+
|
719
733
|
with runtime.run_heartbeat():
|
720
734
|
if clone_only:
|
721
735
|
runtime.clone_original_run()
|
@@ -775,6 +789,19 @@ def run(
|
|
775
789
|
write_file(run_id_file, runtime.run_id)
|
776
790
|
|
777
791
|
obj.flow._set_constants(obj.graph, kwargs)
|
792
|
+
current._update_env(
|
793
|
+
{
|
794
|
+
"run_id": runtime.run_id,
|
795
|
+
}
|
796
|
+
)
|
797
|
+
_system_logger.log_event(
|
798
|
+
level="info",
|
799
|
+
module="metaflow.run",
|
800
|
+
name="start",
|
801
|
+
payload={
|
802
|
+
"msg": "Starting run",
|
803
|
+
},
|
804
|
+
)
|
778
805
|
runtime.print_workflow_info()
|
779
806
|
runtime.persist_constants()
|
780
807
|
|
@@ -332,11 +332,8 @@ class RunningJobSet(object):
|
|
332
332
|
name=self._name,
|
333
333
|
)
|
334
334
|
|
335
|
-
# Suspend the jobset
|
336
|
-
#
|
335
|
+
# Suspend the jobset
|
337
336
|
obj["spec"]["suspend"] = True
|
338
|
-
for replicated_job in obj["spec"]["replicatedJobs"]:
|
339
|
-
replicated_job["replicas"] = 0
|
340
337
|
|
341
338
|
api_instance.replace_namespaced_custom_object(
|
342
339
|
group=self._group,
|
metaflow/system/system_logger.py
CHANGED
@@ -7,26 +7,11 @@ class SystemLogger(object):
|
|
7
7
|
def __init__(self):
|
8
8
|
self._logger = None
|
9
9
|
self._flow_name = None
|
10
|
-
self._context = {}
|
11
|
-
self._is_context_updated = False
|
12
10
|
|
13
11
|
def __del__(self):
|
14
12
|
if self._flow_name == "not_a_real_flow":
|
15
13
|
self.logger.terminate()
|
16
14
|
|
17
|
-
def update_context(self, context: Dict[str, Any]):
|
18
|
-
"""
|
19
|
-
Update the global context maintained by the system logger.
|
20
|
-
|
21
|
-
Parameters
|
22
|
-
----------
|
23
|
-
context : Dict[str, Any]
|
24
|
-
A dictionary containing the context to update.
|
25
|
-
|
26
|
-
"""
|
27
|
-
self._is_context_updated = True
|
28
|
-
self._context.update(context)
|
29
|
-
|
30
15
|
def init_system_logger(
|
31
16
|
self, flow_name: str, logger: "metaflow.event_logger.NullEventLogger"
|
32
17
|
):
|
@@ -71,7 +56,7 @@ class SystemLogger(object):
|
|
71
56
|
"false",
|
72
57
|
"",
|
73
58
|
):
|
74
|
-
print("system
|
59
|
+
print("system logger: %s" % msg, file=sys.stderr)
|
75
60
|
|
76
61
|
def log_event(
|
77
62
|
self, level: str, module: str, name: str, payload: Optional[Any] = None
|
@@ -96,8 +81,5 @@ class SystemLogger(object):
|
|
96
81
|
"module": module,
|
97
82
|
"name": name,
|
98
83
|
"payload": payload if payload is not None else {},
|
99
|
-
"context": self._context,
|
100
|
-
"is_context_updated": self._is_context_updated,
|
101
84
|
}
|
102
85
|
)
|
103
|
-
self._is_context_updated = False
|
@@ -9,35 +9,11 @@ class SystemMonitor(object):
|
|
9
9
|
def __init__(self):
|
10
10
|
self._monitor = None
|
11
11
|
self._flow_name = None
|
12
|
-
self._context = {}
|
13
12
|
|
14
13
|
def __del__(self):
|
15
14
|
if self._flow_name == "not_a_real_flow":
|
16
15
|
self.monitor.terminate()
|
17
16
|
|
18
|
-
def update_context(self, context: Dict[str, Any]):
|
19
|
-
"""
|
20
|
-
Update the global context maintained by the system monitor.
|
21
|
-
|
22
|
-
Parameters
|
23
|
-
----------
|
24
|
-
context : Dict[str, Any]
|
25
|
-
A dictionary containing the context to update.
|
26
|
-
|
27
|
-
"""
|
28
|
-
from metaflow.sidecar import Message, MessageTypes
|
29
|
-
|
30
|
-
self._context.update(context)
|
31
|
-
self.monitor.send(
|
32
|
-
Message(
|
33
|
-
MessageTypes.MUST_SEND,
|
34
|
-
{
|
35
|
-
"is_context_updated": True,
|
36
|
-
**self._context,
|
37
|
-
},
|
38
|
-
)
|
39
|
-
)
|
40
|
-
|
41
17
|
def init_system_monitor(
|
42
18
|
self, flow_name: str, monitor: "metaflow.monitor.NullMonitor"
|
43
19
|
):
|
metaflow/task.py
CHANGED
@@ -306,8 +306,6 @@ class MetaflowTask(object):
|
|
306
306
|
"origin_run_id": origin_run_id,
|
307
307
|
"origin_task_id": origin_task_id,
|
308
308
|
}
|
309
|
-
_system_logger.update_context(task_payload)
|
310
|
-
_system_monitor.update_context(task_payload)
|
311
309
|
|
312
310
|
msg = "Cloning task from {}/{}/{}/{} to {}/{}/{}/{}".format(
|
313
311
|
self.flow.name,
|
@@ -545,9 +543,6 @@ class MetaflowTask(object):
|
|
545
543
|
"project_flow_name": current.get("project_flow_name"),
|
546
544
|
"trace_id": trace_id or None,
|
547
545
|
}
|
548
|
-
|
549
|
-
_system_logger.update_context(task_payload)
|
550
|
-
_system_monitor.update_context(task_payload)
|
551
546
|
start = time.time()
|
552
547
|
self.metadata.start_task_heartbeat(self.flow.name, run_id, step_name, task_id)
|
553
548
|
with self.monitor.measure("metaflow.task.duration"):
|
@@ -592,7 +587,8 @@ class MetaflowTask(object):
|
|
592
587
|
{
|
593
588
|
"parameter_names": self._init_parameters(
|
594
589
|
inputs[0], passdown=True
|
595
|
-
)
|
590
|
+
),
|
591
|
+
"graph_info": self.flow._graph_info,
|
596
592
|
}
|
597
593
|
)
|
598
594
|
else:
|
@@ -616,7 +612,8 @@ class MetaflowTask(object):
|
|
616
612
|
{
|
617
613
|
"parameter_names": self._init_parameters(
|
618
614
|
inputs[0], passdown=False
|
619
|
-
)
|
615
|
+
),
|
616
|
+
"graph_info": self.flow._graph_info,
|
620
617
|
}
|
621
618
|
)
|
622
619
|
|
metaflow/version.py
CHANGED
@@ -1 +1 @@
|
|
1
|
-
metaflow_version = "2.12.
|
1
|
+
metaflow_version = "2.12.28"
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: metaflow
|
3
|
-
Version: 2.12.
|
3
|
+
Version: 2.12.28
|
4
4
|
Summary: Metaflow: More Data Science, 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.12.
|
29
|
+
Requires-Dist: metaflow-stubs==2.12.28; extra == "stubs"
|
30
30
|
|
31
31
|

|
32
32
|
|
@@ -1,7 +1,7 @@
|
|
1
1
|
metaflow/R.py,sha256=CqVfIatvmjciuICNnoyyNGrwE7Va9iXfLdFbQa52hwA,3958
|
2
2
|
metaflow/__init__.py,sha256=9pnkRH00bbtzaQDSxEspANaB3r6YDC37_EjX7GxtJug,5641
|
3
3
|
metaflow/cards.py,sha256=tP1_RrtmqdFh741pqE4t98S7SA0MtGRlGvRICRZF1Mg,426
|
4
|
-
metaflow/cli.py,sha256=
|
4
|
+
metaflow/cli.py,sha256=pBA0Nah6jo_oClIJ7miY-DIh3gJTTwlUFzD8NDA3kfM,35088
|
5
5
|
metaflow/cli_args.py,sha256=lcgBGNTvfaiPxiUnejAe60Upt9swG6lRy1_3OqbU6MY,2616
|
6
6
|
metaflow/clone_util.py,sha256=XfUX0vssu_hPlyZfhFl1AOnKkLqvt33Qp8xNrmdocGg,2057
|
7
7
|
metaflow/cmd_with_io.py,sha256=kl53HkAIyv0ecpItv08wZYczv7u3msD1VCcciqigqf0,588
|
@@ -31,12 +31,12 @@ metaflow/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
31
31
|
metaflow/pylint_wrapper.py,sha256=zzBY9YaSUZOGH-ypDKAv2B_7XcoyMZj-zCoCrmYqNRc,2865
|
32
32
|
metaflow/runtime.py,sha256=fbBObJJciagHWPzR3T7x9e_jez_RBnLZIHsXMvYnW_M,68875
|
33
33
|
metaflow/tagging_util.py,sha256=ctyf0Q1gBi0RyZX6J0e9DQGNkNHblV_CITfy66axXB4,2346
|
34
|
-
metaflow/task.py,sha256
|
34
|
+
metaflow/task.py,sha256=-QKLVY6Uky3EKNq3g14i0VG2uaj4DHb8b05JneUyKNM,29682
|
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=olAvJK3y1it_k99MhLulTaAJo7OFVt5rnrD-ulIFLCU,13616
|
38
38
|
metaflow/vendor.py,sha256=FchtA9tH22JM-eEtJ2c9FpUdMn8sSb1VHuQS56EcdZk,5139
|
39
|
-
metaflow/version.py,sha256=
|
39
|
+
metaflow/version.py,sha256=7kZIaI8ejbLYDBD1Sw2PdpQdQVXaz0v5TrphyTixJ-0,29
|
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
|
@@ -285,7 +285,7 @@ metaflow/plugins/kubernetes/kubernetes_cli.py,sha256=sFZ9Zrjef85vCO0MGpUF-em8Pw3
|
|
285
285
|
metaflow/plugins/kubernetes/kubernetes_client.py,sha256=tuvXP-QKpdeSmzVolB2R_TaacOr5DIb0j642eKcjsiM,6491
|
286
286
|
metaflow/plugins/kubernetes/kubernetes_decorator.py,sha256=p7-6dyzxoMWKkuCqW6JvvCs_dZUgnBTOchZGIRS_yjo,27820
|
287
287
|
metaflow/plugins/kubernetes/kubernetes_job.py,sha256=Cfkee8LbXC17jSXWoeNdomQRvF_8YSeXNg1gvxm6E_M,31806
|
288
|
-
metaflow/plugins/kubernetes/kubernetes_jobsets.py,sha256=
|
288
|
+
metaflow/plugins/kubernetes/kubernetes_jobsets.py,sha256=TNj1qLAL_yjmMmj5Xh0lReOLgMn730Hy6W4pS1S-dSs,41027
|
289
289
|
metaflow/plugins/metadata/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
290
290
|
metaflow/plugins/metadata/local.py,sha256=YhLJC5zjVJrvQFIyQ92ZBByiUmhCC762RUX7ITX12O8,22428
|
291
291
|
metaflow/plugins/metadata/service.py,sha256=ihq5F7KQZlxvYwzH_-jyP2aWN_I96i2vp92j_d697s8,20204
|
@@ -315,8 +315,8 @@ metaflow/sidecar/sidecar_messages.py,sha256=zPsCoYgDIcDkkvdC9MEpJTJ3y6TSGm2JWkRc
|
|
315
315
|
metaflow/sidecar/sidecar_subprocess.py,sha256=f72n5iJJAYfCIbz4D94-RxR37VvM7kVvE3c8E9dYHe8,9708
|
316
316
|
metaflow/sidecar/sidecar_worker.py,sha256=4DfpxtnuphngOnIehKjNR_Knhu1hY7DYBcHl4Svpe3Y,2050
|
317
317
|
metaflow/system/__init__.py,sha256=SB9Py7Acecqi76MY9MonSHXFuDD1yIJEGJtEQH8cNq4,149
|
318
|
-
metaflow/system/system_logger.py,sha256=
|
319
|
-
metaflow/system/system_monitor.py,sha256=
|
318
|
+
metaflow/system/system_logger.py,sha256=NwL40-cHnUud58WRW3v7hke5IWIpwDdTnM8USiu-uio,2726
|
319
|
+
metaflow/system/system_monitor.py,sha256=6h3EAisD762NzL7fMuc7RQGygnhp0qqD97kDHrTacU8,2939
|
320
320
|
metaflow/system/system_utils.py,sha256=E5C66_oeAxEE4-2okKlA-X6rgeYndPFP7KmWKHvvFZ8,657
|
321
321
|
metaflow/tracing/__init__.py,sha256=xYTOT5BS5jbwhjk6hskxqNSU9st2LYtfeLN2Hknm3EI,1551
|
322
322
|
metaflow/tracing/propagator.py,sha256=AdPeAqoeRauH82pTw01hLFNPRAzm29nlwM7C2iqKFFk,2502
|
@@ -345,9 +345,9 @@ metaflow/tutorials/07-worldview/README.md,sha256=5vQTrFqulJ7rWN6r20dhot9lI2sVj9W
|
|
345
345
|
metaflow/tutorials/07-worldview/worldview.ipynb,sha256=ztPZPI9BXxvW1QdS2Tfe7LBuVzvFvv0AToDnsDJhLdE,2237
|
346
346
|
metaflow/tutorials/08-autopilot/README.md,sha256=GnePFp_q76jPs991lMUqfIIh5zSorIeWznyiUxzeUVE,1039
|
347
347
|
metaflow/tutorials/08-autopilot/autopilot.ipynb,sha256=DQoJlILV7Mq9vfPBGW-QV_kNhWPjS5n6SJLqePjFYLY,3191
|
348
|
-
metaflow-2.12.
|
349
|
-
metaflow-2.12.
|
350
|
-
metaflow-2.12.
|
351
|
-
metaflow-2.12.
|
352
|
-
metaflow-2.12.
|
353
|
-
metaflow-2.12.
|
348
|
+
metaflow-2.12.28.dist-info/LICENSE,sha256=nl_Lt5v9VvJ-5lWJDT4ddKAG-VZ-2IaLmbzpgYDz2hU,11343
|
349
|
+
metaflow-2.12.28.dist-info/METADATA,sha256=SjP7clYCqBNcP7yvau5BOwsQBgPLQKgcnQI9rNIyHFI,5907
|
350
|
+
metaflow-2.12.28.dist-info/WHEEL,sha256=OpXWERl2xLPRHTvd2ZXo_iluPEQd8uSbYkJ53NAER_Y,109
|
351
|
+
metaflow-2.12.28.dist-info/entry_points.txt,sha256=IKwTN1T3I5eJL3uo_vnkyxVffcgnRdFbKwlghZfn27k,57
|
352
|
+
metaflow-2.12.28.dist-info/top_level.txt,sha256=v1pDHoWaSaKeuc5fKTRSfsXCKSdW1zvNVmvA-i0if3o,9
|
353
|
+
metaflow-2.12.28.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|