ob-metaflow-extensions 1.4.18__py2.py3-none-any.whl → 1.4.19__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-extensions might be problematic. Click here for more details.

@@ -254,7 +254,8 @@ class DockerEnvironment(MetaflowEnvironment):
254
254
  (d for d in step.decorators if _is_env_deco(d)),
255
255
  None,
256
256
  )
257
- python = next(
257
+ python = None
258
+ conda_set_python = next(
258
259
  (
259
260
  d.attributes["python"]
260
261
  for d in step.decorators
@@ -262,17 +263,25 @@ class DockerEnvironment(MetaflowEnvironment):
262
263
  ),
263
264
  None,
264
265
  )
265
- pypi_deco = next(
266
- (d for d in step.decorators if isinstance(d, PyPIStepDecorator)), None
266
+ pypi_set_python = next(
267
+ (
268
+ d.attributes["python"]
269
+ for d in step.decorators
270
+ if isinstance(d, PyPIStepDecorator)
271
+ ),
272
+ None,
267
273
  )
268
- # if pypi decorator is set and user has specified a python version, we must create a new environment.
269
- # otherwise rely on the base environment
270
- if pypi_deco is not None:
271
- python = (
272
- pypi_deco.attributes["python"]
273
- if pypi_deco.is_attribute_user_defined("python")
274
- else None
275
- )
274
+ # Since the introduction of custom decorators and new packaging support in Metaflow
275
+ # @pypi/@pypi_base etc can be set at runtime and can also be overriden at runtime.
276
+ # So at time of execution here, we can assume the python version set in the decorator land
277
+ # is the one that has been finally resolved. So we just coalesce the conda_set_python and pypi_set_python.
278
+ def coalesce(*args):
279
+ for arg in args:
280
+ if arg is not None:
281
+ return arg
282
+ return None
283
+
284
+ python = coalesce(conda_set_python, pypi_set_python)
276
285
 
277
286
  packages = get_pinned_conda_libs(python, self.datastore_type)
278
287
  packages.update(dependencies.attributes["packages"] if dependencies else {})
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ob-metaflow-extensions
3
- Version: 1.4.18
3
+ Version: 1.4.19
4
4
  Summary: Outerbounds Platform Extensions for Metaflow
5
5
  Author: Outerbounds, Inc.
6
6
  License: Commercial
@@ -52,7 +52,7 @@ metaflow_extensions/outerbounds/plugins/checkpoint_datastores/external_chckpt.py
52
52
  metaflow_extensions/outerbounds/plugins/checkpoint_datastores/nebius.py,sha256=xFGdSxlHcwZwgTSKj8efEv6ydCWYqRGrreGqXhf02ko,2321
53
53
  metaflow_extensions/outerbounds/plugins/fast_bakery/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
54
54
  metaflow_extensions/outerbounds/plugins/fast_bakery/baker.py,sha256=ShE5omFBr83wkvEhL_ptRFvDNMs6wefg4BjaafQjTcM,3602
55
- metaflow_extensions/outerbounds/plugins/fast_bakery/docker_environment.py,sha256=vKN3Waz0SgbOALVTRcf_8MCGhxdRueRFZJ7JmWbRJRM,15487
55
+ metaflow_extensions/outerbounds/plugins/fast_bakery/docker_environment.py,sha256=XG0ipumXposCqKQzGWtL0ZokVhf1bgl2BsbYC1mVi-0,15893
56
56
  metaflow_extensions/outerbounds/plugins/fast_bakery/fast_bakery.py,sha256=9iqIBowKk95vUYvnMrFNWmmSuK-whKnqJwcCmEcRjTU,5727
57
57
  metaflow_extensions/outerbounds/plugins/fast_bakery/fast_bakery_cli.py,sha256=kqFyu2bJSnc9_9aYfBpz5xK6L6luWFZK_NMuh8f1eVk,1494
58
58
  metaflow_extensions/outerbounds/plugins/fast_bakery/fast_bakery_decorator.py,sha256=MXSIp05-jvt8Q2uGaLKjtuM_ToLeRLxhtMbfHc9Kcko,1515
@@ -128,7 +128,7 @@ metaflow_extensions/outerbounds/toplevel/plugins/optuna/__init__.py,sha256=6D1wL
128
128
  metaflow_extensions/outerbounds/toplevel/plugins/snowflake/__init__.py,sha256=LptpH-ziXHrednMYUjIaosS1SXD3sOtF_9_eRqd8SJw,50
129
129
  metaflow_extensions/outerbounds/toplevel/plugins/torchtune/__init__.py,sha256=uTVkdSk3xZ7hEKYfdlyVteWj5KeDwaM1hU9WT-_YKfI,50
130
130
  metaflow_extensions/outerbounds/toplevel/plugins/vllm/__init__.py,sha256=ekcgD3KVydf-a0xMI60P4uy6ePkSEoFHiGnDq1JM940,45
131
- ob_metaflow_extensions-1.4.18.dist-info/METADATA,sha256=B8raSpsbfBI7AcT8RmPVmuZSaXViuF7VV_qwPuri_Js,519
132
- ob_metaflow_extensions-1.4.18.dist-info/WHEEL,sha256=bb2Ot9scclHKMOLDEHY6B2sicWOgugjFKaJsT7vwMQo,110
133
- ob_metaflow_extensions-1.4.18.dist-info/top_level.txt,sha256=NwG0ukwjygtanDETyp_BUdtYtqIA_lOjzFFh1TsnxvI,20
134
- ob_metaflow_extensions-1.4.18.dist-info/RECORD,,
131
+ ob_metaflow_extensions-1.4.19.dist-info/METADATA,sha256=9_LQgntatP2T4t_k8i_J0AgPRq11Qmq_Ym4FrkUIThU,519
132
+ ob_metaflow_extensions-1.4.19.dist-info/WHEEL,sha256=bb2Ot9scclHKMOLDEHY6B2sicWOgugjFKaJsT7vwMQo,110
133
+ ob_metaflow_extensions-1.4.19.dist-info/top_level.txt,sha256=NwG0ukwjygtanDETyp_BUdtYtqIA_lOjzFFh1TsnxvI,20
134
+ ob_metaflow_extensions-1.4.19.dist-info/RECORD,,