metaflow 2.11.1__py2.py3-none-any.whl → 2.11.3__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.
Files changed (28) hide show
  1. metaflow/flowspec.py +7 -3
  2. metaflow/metaflow_config.py +11 -1
  3. metaflow/parameters.py +6 -0
  4. metaflow/plugins/argo/argo_workflows.py +101 -23
  5. metaflow/plugins/aws/batch/batch.py +2 -0
  6. metaflow/plugins/aws/batch/batch_client.py +10 -2
  7. metaflow/plugins/aws/step_functions/dynamo_db_client.py +28 -6
  8. metaflow/plugins/aws/step_functions/production_token.py +1 -1
  9. metaflow/plugins/aws/step_functions/step_functions.py +219 -4
  10. metaflow/plugins/aws/step_functions/step_functions_cli.py +104 -6
  11. metaflow/plugins/aws/step_functions/step_functions_client.py +8 -3
  12. metaflow/plugins/aws/step_functions/step_functions_decorator.py +1 -1
  13. metaflow/plugins/cards/card_cli.py +2 -2
  14. metaflow/plugins/kubernetes/kubernetes.py +2 -0
  15. metaflow/plugins/kubernetes/kubernetes_cli.py +3 -0
  16. metaflow/plugins/kubernetes/kubernetes_client.py +10 -2
  17. metaflow/plugins/kubernetes/kubernetes_decorator.py +17 -0
  18. metaflow/plugins/kubernetes/kubernetes_job.py +27 -0
  19. metaflow/plugins/pypi/bootstrap.py +1 -1
  20. metaflow/plugins/pypi/conda_decorator.py +21 -1
  21. metaflow/plugins/pypi/conda_environment.py +21 -4
  22. metaflow/version.py +1 -1
  23. {metaflow-2.11.1.dist-info → metaflow-2.11.3.dist-info}/METADATA +2 -2
  24. {metaflow-2.11.1.dist-info → metaflow-2.11.3.dist-info}/RECORD +28 -28
  25. {metaflow-2.11.1.dist-info → metaflow-2.11.3.dist-info}/LICENSE +0 -0
  26. {metaflow-2.11.1.dist-info → metaflow-2.11.3.dist-info}/WHEEL +0 -0
  27. {metaflow-2.11.1.dist-info → metaflow-2.11.3.dist-info}/entry_points.txt +0 -0
  28. {metaflow-2.11.1.dist-info → metaflow-2.11.3.dist-info}/top_level.txt +0 -0
@@ -77,6 +77,11 @@ class KubernetesJob(object):
77
77
  use_tmpfs = self._kwargs["use_tmpfs"]
78
78
  tmpfs_size = self._kwargs["tmpfs_size"]
79
79
  tmpfs_enabled = use_tmpfs or (tmpfs_size and not use_tmpfs)
80
+ shared_memory = (
81
+ int(self._kwargs["shared_memory"])
82
+ if self._kwargs["shared_memory"]
83
+ else None
84
+ )
80
85
 
81
86
  self._job = client.V1Job(
82
87
  api_version="batch/v1",
@@ -184,6 +189,15 @@ class KubernetesJob(object):
184
189
  if tmpfs_enabled
185
190
  else []
186
191
  )
192
+ + (
193
+ [
194
+ client.V1VolumeMount(
195
+ mount_path="/dev/shm", name="dhsm"
196
+ )
197
+ ]
198
+ if shared_memory
199
+ else []
200
+ )
187
201
  + (
188
202
  [
189
203
  client.V1VolumeMount(
@@ -232,6 +246,19 @@ class KubernetesJob(object):
232
246
  if tmpfs_enabled
233
247
  else []
234
248
  )
249
+ + (
250
+ [
251
+ client.V1Volume(
252
+ name="dhsm",
253
+ empty_dir=client.V1EmptyDirVolumeSource(
254
+ medium="Memory",
255
+ size_limit="{}Mi".format(shared_memory),
256
+ ),
257
+ )
258
+ ]
259
+ if shared_memory
260
+ else []
261
+ )
235
262
  + (
236
263
  [
237
264
  client.V1Volume(
@@ -45,7 +45,7 @@ if __name__ == "__main__":
45
45
  # fi
46
46
  # fi
47
47
 
48
- prefix = os.path.join(os.getcwd(), id_)
48
+ prefix = os.path.join(os.getcwd(), architecture, id_)
49
49
  pkgs_dir = os.path.join(os.getcwd(), ".pkgs")
50
50
  manifest_dir = os.path.join(os.getcwd(), DATASTORE_LOCAL_DIR, flow_name)
51
51
 
@@ -2,11 +2,13 @@ import importlib
2
2
  import json
3
3
  import os
4
4
  import platform
5
+ import re
5
6
  import sys
6
7
  import tempfile
7
8
 
8
9
  from metaflow.decorators import FlowDecorator, StepDecorator
9
10
  from metaflow.extension_support import EXT_PKG
11
+ from metaflow.metadata import MetaDatum
10
12
  from metaflow.metaflow_environment import InvalidEnvironmentException
11
13
  from metaflow.util import get_metaflow_root
12
14
 
@@ -241,7 +243,25 @@ class CondaStepDecorator(StepDecorator):
241
243
  ),
242
244
  )
243
245
  )
244
- # TODO: Register metadata
246
+
247
+ # Infer environment prefix from Python interpreter
248
+ match = re.search(
249
+ r"(?:.*\/)(metaflow\/[^/]+\/[^/]+)(?=\/bin\/python)", sys.executable
250
+ )
251
+ if match:
252
+ meta.register_metadata(
253
+ run_id,
254
+ step_name,
255
+ task_id,
256
+ [
257
+ MetaDatum(
258
+ field="conda_env_prefix",
259
+ value=match.group(1),
260
+ type="conda_env_prefix",
261
+ tags=["attempt_id:{0}".format(retry_count)],
262
+ )
263
+ ],
264
+ )
245
265
 
246
266
  def runtime_step_cli(
247
267
  self, cli_args, retry_count, max_user_code_retries, ubf_context
@@ -6,10 +6,11 @@ import io
6
6
  import json
7
7
  import os
8
8
  import sys
9
+ import tarfile
9
10
  import time
10
11
  from concurrent.futures import ThreadPoolExecutor
11
12
  from hashlib import sha256
12
- from io import BufferedIOBase
13
+ from io import BufferedIOBase, BytesIO
13
14
  from itertools import chain
14
15
  from urllib.parse import unquote, urlparse
15
16
 
@@ -33,6 +34,7 @@ class CondaEnvironmentException(MetaflowException):
33
34
 
34
35
  class CondaEnvironment(MetaflowEnvironment):
35
36
  TYPE = "conda"
37
+ _filecache = None
36
38
 
37
39
  def __init__(self, flow):
38
40
  self.flow = flow
@@ -188,7 +190,7 @@ class CondaEnvironment(MetaflowEnvironment):
188
190
  if id_:
189
191
  # bootstrap.py is responsible for ensuring the validity of this executable.
190
192
  # -s is important! Can otherwise leak packages to other environments.
191
- return os.path.join(id_, "bin/python -s")
193
+ return os.path.join("linux-64", id_, "bin/python -s")
192
194
  else:
193
195
  # for @conda/@pypi(disabled=True).
194
196
  return super().executable(step_name, default)
@@ -320,8 +322,23 @@ class CondaEnvironment(MetaflowEnvironment):
320
322
 
321
323
  @classmethod
322
324
  def get_client_info(cls, flow_name, metadata):
323
- # TODO: Decide this method's fate
324
- return None
325
+ if cls._filecache is None:
326
+ from metaflow.client.filecache import FileCache
327
+
328
+ cls._filecache = FileCache()
329
+
330
+ info = metadata.get("code-package")
331
+ prefix = metadata.get("conda_env_prefix")
332
+ if info is None or prefix is None:
333
+ return {}
334
+ info = json.loads(info)
335
+ _, blobdata = cls._filecache.get_data(
336
+ info["ds_type"], flow_name, info["location"], info["sha"]
337
+ )
338
+ with tarfile.open(fileobj=BytesIO(blobdata), mode="r:gz") as tar:
339
+ manifest = tar.extractfile(MAGIC_FILE)
340
+ info = json.loads(manifest.read().decode("utf-8"))
341
+ return info[prefix.split("/")[2]][prefix.split("/")[1]]
325
342
 
326
343
  def add_to_package(self):
327
344
  # Add manifest file to job package at the top level.
metaflow/version.py CHANGED
@@ -1 +1 @@
1
- metaflow_version = "2.11.1"
1
+ metaflow_version = "2.11.3"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: metaflow
3
- Version: 2.11.1
3
+ Version: 2.11.3
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.11.1 ; extra == 'stubs'
29
+ Requires-Dist: metaflow-stubs ==2.11.3 ; extra == 'stubs'
30
30
 
31
31
  ![Metaflow_Logo_Horizontal_FullColor_Ribbon_Dark_RGB](https://user-images.githubusercontent.com/763451/89453116-96a57e00-d713-11ea-9fa6-82b29d4d6eff.png)
32
32
 
@@ -9,12 +9,12 @@ metaflow/decorators.py,sha256=EGL1_nkdxoYG5AZiOQ8sLGA1bprGK8ENwlSIOYQmLhs,21357
9
9
  metaflow/event_logger.py,sha256=joTVRqZPL87nvah4ZOwtqWX8NeraM_CXKXXGVpKGD8o,780
10
10
  metaflow/events.py,sha256=ahjzkSbSnRCK9RZ-9vTfUviz_6gMvSO9DGkJ86X80-k,5300
11
11
  metaflow/exception.py,sha256=KC1LHJQzzYkWib0DeQ4l_A2r8VaudywsSqIQuq1RDZU,4954
12
- metaflow/flowspec.py,sha256=wA6Ci-vZ_CrfLEEMnCqTEkNv14O5Bq5AFvH-8Xt1sDw,26684
12
+ metaflow/flowspec.py,sha256=YMo2zNEy3UcclYys5rPpMk7bk0JvtABo-EpmFTi-IPQ,26874
13
13
  metaflow/graph.py,sha256=ZPxyG8uwVMk5YYgX4pQEQaPZtZM5Wy-G4NtJK73IEuA,11818
14
14
  metaflow/includefile.py,sha256=yHczcZ_U0SrasxSNhZb3DIBzx8UZnrJCl3FzvpEQLOA,19753
15
15
  metaflow/integrations.py,sha256=LlsaoePRg03DjENnmLxZDYto3NwWc9z_PtU6nJxLldg,1480
16
16
  metaflow/lint.py,sha256=_kYAbAtsP7IG1Rd0FqNbo8I8Zs66_0WXbaZJFARO3dE,10394
17
- metaflow/metaflow_config.py,sha256=TpluioIaxSS0ni8palyyRt7D-r7uPjOlOuUeBMa6QW4,19111
17
+ metaflow/metaflow_config.py,sha256=_--DonM1Sj6PbQH7Am_0r-9oZFhI1DLJmiJgJkpEkJY,19662
18
18
  metaflow/metaflow_config_funcs.py,sha256=pCaiQ2ez9wXixJI3ehmf3QiW9lUqFrZnBZx1my_0wIg,4874
19
19
  metaflow/metaflow_current.py,sha256=sCENPBiji3LcPbwgOG0ukGd_yEc5tST8EowES8DzRtA,7430
20
20
  metaflow/metaflow_environment.py,sha256=JdsmQsYp1SDQniQ0-q1mKRrmzSFfYuzrf6jLEHmyaiM,7352
@@ -23,7 +23,7 @@ metaflow/metaflow_version.py,sha256=mPQ6g_3XjNdi0NrxDzwlW8ZH0nMyYpwqmJ04P7TIdP0,
23
23
  metaflow/monitor.py,sha256=T0NMaBPvXynlJAO_avKtk8OIIRMyEuMAyF8bIp79aZU,5323
24
24
  metaflow/multicore_utils.py,sha256=vdTNgczVLODifscUbbveJbuSDOl3Y9pAxhr7sqYiNf4,4760
25
25
  metaflow/package.py,sha256=vX86iJ2xXWcGrOmABEfgOHuNBMqCBAu7ukjg-e0PZf8,7319
26
- metaflow/parameters.py,sha256=KJ0y_un_7ULEYkkEid-d0BgX2ZGmS3cuImY7AwNaJm0,13550
26
+ metaflow/parameters.py,sha256=Nnqzthu0vQfeY7p2wRqtjtcMYvRfd-C4b7-SjxBE5q4,13745
27
27
  metaflow/procpoll.py,sha256=22ppTUyaTYVn1UUG4RNG1LnCKBwRbaTmhYiYN_7OVN8,2861
28
28
  metaflow/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
29
29
  metaflow/pylint_wrapper.py,sha256=zzBY9YaSUZOGH-ypDKAv2B_7XcoyMZj-zCoCrmYqNRc,2865
@@ -33,7 +33,7 @@ metaflow/task.py,sha256=rGBlG18vnHKC65CYiFkja0GsXYWmRVrNOeCD4TY_nL4,27032
33
33
  metaflow/unbounded_foreach.py,sha256=p184WMbrMJ3xKYHwewj27ZhRUsSj_kw1jlye5gA9xJk,387
34
34
  metaflow/util.py,sha256=RrjsvADLKxSqjL76CxKh_J4OJl840B9Ak3V-vXleGas,13429
35
35
  metaflow/vendor.py,sha256=LZgXrh7ZSDmD32D1T5jj3OKKpXIqqxKzdMAOc5V0SD4,5162
36
- metaflow/version.py,sha256=plcOgx3VmNJLTt5Wv6RNzAfWUARm-6B5DkEnsy-HmjA,28
36
+ metaflow/version.py,sha256=gJROyhqslzcmekVHrVdDybqVCjTbJnSNU5-tig72mrA,28
37
37
  metaflow/_vendor/__init__.py,sha256=y_CiwUD3l4eAKvTVDZeqgVujMy31cAM1qjAB-HfI-9s,353
38
38
  metaflow/_vendor/click/__init__.py,sha256=FkyGDQ-cbiQxP_lxgUspyFYS48f2S_pTcfKPz-d_RMo,2463
39
39
  metaflow/_vendor/click/_bashcomplete.py,sha256=9J98IHQYmCAr2Jup6TDshUr5FJEen-AoQCZR0K5nKxQ,12309
@@ -148,7 +148,7 @@ metaflow/plugins/airflow/sensors/s3_sensor.py,sha256=JUKoGNoTCtrO9MNEneEC7ldRNwg
148
148
  metaflow/plugins/argo/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
149
149
  metaflow/plugins/argo/argo_client.py,sha256=MKKhMCbWOPzf6z5zQQiyDRHHkAXcO7ipboDZDqAAvOk,15849
150
150
  metaflow/plugins/argo/argo_events.py,sha256=_C1KWztVqgi3zuH57pInaE9OzABc2NnncC-zdwOMZ-w,5909
151
- metaflow/plugins/argo/argo_workflows.py,sha256=5-f7EJtRlDWjOkmWj1zZqYM5oXXca-Xtc7rEV98_coQ,118896
151
+ metaflow/plugins/argo/argo_workflows.py,sha256=gKGmrcVwEktaqa7dOh9pWwAktGUQwwTACDT5-uUpJ4s,121723
152
152
  metaflow/plugins/argo/argo_workflows_cli.py,sha256=sZTpgfmc50eT3e0qIxpVqUgWhTcYlO1HM4gU6Oaya8g,33259
153
153
  metaflow/plugins/argo/argo_workflows_decorator.py,sha256=CfKVoHCOsCCQMghhPE30xw15gacwp3hR23HCo9ZZFVg,6580
154
154
  metaflow/plugins/argo/process_input_paths.py,sha256=4SiUoxbnTX4rCt0RSLcxG5jysbyd8oU-5JT0UOgy-vk,555
@@ -156,22 +156,22 @@ metaflow/plugins/aws/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hS
156
156
  metaflow/plugins/aws/aws_client.py,sha256=mO8UD6pxFaOnxDb3hTP3HB7Gqb_ZxoR-76LT683WHvI,4036
157
157
  metaflow/plugins/aws/aws_utils.py,sha256=pkkH8Cy9sF5tp3HoZ84wkN-84NmksgCdNN4cMSdsLaA,6455
158
158
  metaflow/plugins/aws/batch/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
159
- metaflow/plugins/aws/batch/batch.py,sha256=aVZOWdD9d7Zvhr1RYcJTKT9DDQmaPaU7Zu7ASZbnHgA,17273
159
+ metaflow/plugins/aws/batch/batch.py,sha256=ziYpcolvbAZ4DoI63-A9mZcBM5oKUcueeGMjPVLdCaI,17367
160
160
  metaflow/plugins/aws/batch/batch_cli.py,sha256=W4DW1Ldx4wK6pIdDOsNusUphpD-2a93qTBMRTRh5a40,11048
161
- metaflow/plugins/aws/batch/batch_client.py,sha256=ojhfmGtshHNI2NOy0mx4wEigzrF1aizKphIYCerL3mk,26697
161
+ metaflow/plugins/aws/batch/batch_client.py,sha256=_etUOsqz5d9tSmO9HGsNV_zzJz2Z25CDyqzOqWcORnI,27066
162
162
  metaflow/plugins/aws/batch/batch_decorator.py,sha256=C_K476zuU6-FF7DImijgKeGLdNXbBIcp4WC7K1bMDsc,15851
163
163
  metaflow/plugins/aws/secrets_manager/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
164
164
  metaflow/plugins/aws/secrets_manager/aws_secrets_manager_secrets_provider.py,sha256=JtFUVu00Cg0FzAizgrPLXmrMqsT7YeQMkQlgeivUxcE,7986
165
165
  metaflow/plugins/aws/step_functions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
166
- metaflow/plugins/aws/step_functions/dynamo_db_client.py,sha256=KF8omWGe93_Qiec41LNdSuIHa0hmv1lbX7L8IwOR8Kw,1532
166
+ metaflow/plugins/aws/step_functions/dynamo_db_client.py,sha256=c1nFZc9v_dLTD3iD-75I6wrlM6oM7YmxpFPTRo8Tra0,2327
167
167
  metaflow/plugins/aws/step_functions/event_bridge_client.py,sha256=U9-tqKdih4KR-ZDRhFc-jHmYIcHgpS4swfgtTxNMB94,2690
168
- metaflow/plugins/aws/step_functions/production_token.py,sha256=jEsDH0etkzORgeDTUx6UDRjRsy8QQHYjHWEDLE-0rVY,1898
168
+ metaflow/plugins/aws/step_functions/production_token.py,sha256=_o4emv3rozYZoWpaj1Y6UfKhTMlYpQc7GDDDBfZ2G7s,1898
169
169
  metaflow/plugins/aws/step_functions/schedule_decorator.py,sha256=Ab1rW8O_no4HNZm4__iBmFDCDW0Z8-TgK4lnxHHA6HI,1940
170
170
  metaflow/plugins/aws/step_functions/set_batch_environment.py,sha256=ibiGWFHDjKcLfprH3OsX-g2M9lUsh6J-bp7v2cdLhD4,1294
171
- metaflow/plugins/aws/step_functions/step_functions.py,sha256=fJkns7cIXQUOwv_Lrr_EJPY4KdKkkrSIhID1wNLLiiA,42464
172
- metaflow/plugins/aws/step_functions/step_functions_cli.py,sha256=149H-2b4OPCi2SsiqdYpJiLJXMO2xiTbeVXXcPuw9cw,21395
173
- metaflow/plugins/aws/step_functions/step_functions_client.py,sha256=pupvF5AkiYNQNvgvmVkrwGQMXZnv0aA7JmDv1Qtq8Dc,4483
174
- metaflow/plugins/aws/step_functions/step_functions_decorator.py,sha256=R1C1EYdoYJUILXdpV-vdXOlyEBNiyDWfNXsTcG8URww,3791
171
+ metaflow/plugins/aws/step_functions/step_functions.py,sha256=V079UmCANB6clTzmOZe8Gq7hImb12hd_bw3DCLdMeZw,51673
172
+ metaflow/plugins/aws/step_functions/step_functions_cli.py,sha256=KlH9jJL0VfsT0JqBhLwaWdYjaccU8UEArKAFnIJbSoU,24426
173
+ metaflow/plugins/aws/step_functions/step_functions_client.py,sha256=DKpNwAIWElvWjFANs5Ku3rgzjxFoqAD6k-EF8Xhkg3Q,4754
174
+ metaflow/plugins/aws/step_functions/step_functions_decorator.py,sha256=9hw_MX36RyFp6IowuAYaJzJg9UC5KCe1FNt1PcG7_J0,3791
175
175
  metaflow/plugins/azure/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
176
176
  metaflow/plugins/azure/azure_exceptions.py,sha256=uvxE3E3nsbQq1dxCx1Yl9O54frbnMS5Elk8Z4qQ2Oh4,404
177
177
  metaflow/plugins/azure/azure_tail.py,sha256=JAqV4mC42bMpR0O7m6X4cpFuh0peV1ufs_jJXrmicTc,3362
@@ -179,7 +179,7 @@ metaflow/plugins/azure/azure_utils.py,sha256=efJnGl15s2HxxCtmLUsYDDsn1ek2tUl-5lr
179
179
  metaflow/plugins/azure/blob_service_client_factory.py,sha256=j1FJa06h6V-QcYIir9tcoEb23XcufcecyJQRsGhD2Qw,6489
180
180
  metaflow/plugins/azure/includefile_support.py,sha256=Wv3g3RlGtLbxAh3Reg0BDLWwqavYibQNCDWddlH7XCE,4706
181
181
  metaflow/plugins/cards/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
182
- metaflow/plugins/cards/card_cli.py,sha256=Nd-tEQJ2mnJGgDlFfDiZRrcvD_f2CKiMkK0H8bxRjDY,34625
182
+ metaflow/plugins/cards/card_cli.py,sha256=wE5IbcS2za2Tv8SrLmTjPDub48879g_JkNMyLlnh_4w,34627
183
183
  metaflow/plugins/cards/card_client.py,sha256=LnRDqpyheDIehiHufpvMVTwE7cYEVIiMq8ggqZF4I2E,9368
184
184
  metaflow/plugins/cards/card_creator.py,sha256=E_NCmWPK6DzkqigtpUpeddCDbjnKF6dJcE6IvWzwiyA,7740
185
185
  metaflow/plugins/cards/card_datastore.py,sha256=3K19wE0CZVvOpuYUytftIYYnHHn3pMZJE87FMD6OYlM,14244
@@ -245,18 +245,18 @@ metaflow/plugins/gcp/gs_tail.py,sha256=Jl_wvnzU7dub07A-DOAuP5FeccNIrPM-CeL1xKFs1
245
245
  metaflow/plugins/gcp/gs_utils.py,sha256=ZmIGFse1qYyvAVrwga23PQUzF6dXEDLLsZ2F-YRmvow,2030
246
246
  metaflow/plugins/gcp/includefile_support.py,sha256=vIDeR-MiJuUh-2S2pV7Z7FBkhIWwtHXaRrj76MWGRiY,3869
247
247
  metaflow/plugins/kubernetes/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
248
- metaflow/plugins/kubernetes/kubernetes.py,sha256=khwVy1r0bPRjcj5t7S9RwhHm_ACmO5qU0-T_gMxGopw,17371
249
- metaflow/plugins/kubernetes/kubernetes_cli.py,sha256=Y8XNVTumxGkYLs_pFE04w8X0zCEvCSNaIBQx21zETC8,8942
250
- metaflow/plugins/kubernetes/kubernetes_client.py,sha256=dV3TEGQMBbljmv6Gs1EKfmHTorKt21lhSiYsNx0To08,1901
251
- metaflow/plugins/kubernetes/kubernetes_decorator.py,sha256=-4iMMsdutcjyXj2m2seQKAPynD-PgKTcy74wD9bu4xg,20444
252
- metaflow/plugins/kubernetes/kubernetes_job.py,sha256=XF8_dXhoEyCys-aIZliCdnnwmkXfXQudFJNAp7NM9Oc,30723
248
+ metaflow/plugins/kubernetes/kubernetes.py,sha256=-t5qKt8HeDyy3Ui9eHfDuttdfsMMcyfcgc7tnC-ShCs,17444
249
+ metaflow/plugins/kubernetes/kubernetes_cli.py,sha256=tyRzzbqIAVaV_Oig_C94SPkGHXN0KprA5Tbc_b6Wr-w,9095
250
+ metaflow/plugins/kubernetes/kubernetes_client.py,sha256=irATJpAob4jINkJw0zT_Xoa6JHRtYxx2IOeimlbzvPo,2373
251
+ metaflow/plugins/kubernetes/kubernetes_decorator.py,sha256=pwv5eNw_jzCHjDOjO_IPWMvoX0z41g9Y2SWGmQn25wM,21208
252
+ metaflow/plugins/kubernetes/kubernetes_job.py,sha256=j9bH48SKFvHcvYv02aUU9bwskh4rwH9YpK9BJkX1yJc,31880
253
253
  metaflow/plugins/metadata/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
254
254
  metaflow/plugins/metadata/local.py,sha256=YhLJC5zjVJrvQFIyQ92ZBByiUmhCC762RUX7ITX12O8,22428
255
255
  metaflow/plugins/metadata/service.py,sha256=ihq5F7KQZlxvYwzH_-jyP2aWN_I96i2vp92j_d697s8,20204
256
256
  metaflow/plugins/pypi/__init__.py,sha256=0YFZpXvX7HCkyBFglatual7XGifdA1RwC3U4kcizyak,1037
257
- metaflow/plugins/pypi/bootstrap.py,sha256=PBIStzaEuhAl0xBd0Ap6oUaWMDwvz5bZEWo6h2SFru0,5073
258
- metaflow/plugins/pypi/conda_decorator.py,sha256=mkHzyWSEPSbIH6qk8UUvIjtDxzyl7tQxpLffO9ZBFLA,13547
259
- metaflow/plugins/pypi/conda_environment.py,sha256=FeHwE9xkI3nYv_OZ_iFzMI2Z2s5BG7llFSi-ndPeId8,17867
257
+ metaflow/plugins/pypi/bootstrap.py,sha256=nCe8FadqfIM19yj64m4JWdv_QEnQEp01bzQZrxzo5bs,5087
258
+ metaflow/plugins/pypi/conda_decorator.py,sha256=-bPxNtZKjxqOo4sj89uIp8ZVrCIontWhAp7wwRFjYpg,14189
259
+ metaflow/plugins/pypi/conda_environment.py,sha256=gfSa50ukez72aB16RZmILPuc8GXCfw0W-sbmWzcmfsE,18575
260
260
  metaflow/plugins/pypi/micromamba.py,sha256=wlVN2fm4WXFh3jVNtpDfu4XEz6VJKbmFNp0QvqlMIuI,12179
261
261
  metaflow/plugins/pypi/pip.py,sha256=paL-hbj5j-vcYOeSm04OiBix-TpoKMF7bRfGVdXfGZs,11685
262
262
  metaflow/plugins/pypi/pypi_decorator.py,sha256=syWk_oSQhIK9Y7OeOINMG2XVyxh9sj5uJhapwAXRBDw,5583
@@ -297,9 +297,9 @@ metaflow/tutorials/07-worldview/README.md,sha256=5vQTrFqulJ7rWN6r20dhot9lI2sVj9W
297
297
  metaflow/tutorials/07-worldview/worldview.ipynb,sha256=ztPZPI9BXxvW1QdS2Tfe7LBuVzvFvv0AToDnsDJhLdE,2237
298
298
  metaflow/tutorials/08-autopilot/README.md,sha256=GnePFp_q76jPs991lMUqfIIh5zSorIeWznyiUxzeUVE,1039
299
299
  metaflow/tutorials/08-autopilot/autopilot.ipynb,sha256=DQoJlILV7Mq9vfPBGW-QV_kNhWPjS5n6SJLqePjFYLY,3191
300
- metaflow-2.11.1.dist-info/LICENSE,sha256=nl_Lt5v9VvJ-5lWJDT4ddKAG-VZ-2IaLmbzpgYDz2hU,11343
301
- metaflow-2.11.1.dist-info/METADATA,sha256=q7_k9M0zBAc0FItNuVkAV5Wkbt6m4aMdX3ArSWb_gWU,5906
302
- metaflow-2.11.1.dist-info/WHEEL,sha256=-G_t0oGuE7UD0DrSpVZnq1hHMBV9DD2XkS5v7XpmTnk,110
303
- metaflow-2.11.1.dist-info/entry_points.txt,sha256=IKwTN1T3I5eJL3uo_vnkyxVffcgnRdFbKwlghZfn27k,57
304
- metaflow-2.11.1.dist-info/top_level.txt,sha256=v1pDHoWaSaKeuc5fKTRSfsXCKSdW1zvNVmvA-i0if3o,9
305
- metaflow-2.11.1.dist-info/RECORD,,
300
+ metaflow-2.11.3.dist-info/LICENSE,sha256=nl_Lt5v9VvJ-5lWJDT4ddKAG-VZ-2IaLmbzpgYDz2hU,11343
301
+ metaflow-2.11.3.dist-info/METADATA,sha256=h3w2Ot3jIufP4RiQdkcOOhicH_MoMEXgF_34jpbsIZQ,5906
302
+ metaflow-2.11.3.dist-info/WHEEL,sha256=-G_t0oGuE7UD0DrSpVZnq1hHMBV9DD2XkS5v7XpmTnk,110
303
+ metaflow-2.11.3.dist-info/entry_points.txt,sha256=IKwTN1T3I5eJL3uo_vnkyxVffcgnRdFbKwlghZfn27k,57
304
+ metaflow-2.11.3.dist-info/top_level.txt,sha256=v1pDHoWaSaKeuc5fKTRSfsXCKSdW1zvNVmvA-i0if3o,9
305
+ metaflow-2.11.3.dist-info/RECORD,,