mlrun 1.6.3rc9__py3-none-any.whl → 1.6.3rc11__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 mlrun might be problematic. Click here for more details.

mlrun/render.py CHANGED
@@ -134,7 +134,7 @@ def artifacts_html(
134
134
 
135
135
  if not attribute_value:
136
136
  mlrun.utils.logger.warning(
137
- "Artifact is incomplete, omitting from output (most likely due to a failed artifact logging)",
137
+ f"Artifact required attribute {attribute_name} is missing, omitting from output",
138
138
  artifact_key=key,
139
139
  )
140
140
  continue
@@ -408,14 +408,17 @@ def runs_to_html(
408
408
  else:
409
409
  df["labels"] = df["labels"].apply(dict_html)
410
410
  df["inputs"] = df["inputs"].apply(inputs_html)
411
- if df["artifact_uris"][0]:
412
- df["artifact_uris"] = df["artifact_uris"].apply(dict_html)
413
- df.drop("artifacts", axis=1, inplace=True)
414
- else:
411
+ if df["artifacts"][0]:
415
412
  df["artifacts"] = df["artifacts"].apply(
416
413
  lambda artifacts: artifacts_html(artifacts, "target_path"),
417
414
  )
418
415
  df.drop("artifact_uris", axis=1, inplace=True)
416
+ elif df["artifact_uris"][0]:
417
+ df["artifact_uris"] = df["artifact_uris"].apply(dict_html)
418
+ df.drop("artifacts", axis=1, inplace=True)
419
+ else:
420
+ df.drop("artifacts", axis=1, inplace=True)
421
+ df.drop("artifact_uris", axis=1, inplace=True)
419
422
 
420
423
  def expand_error(x):
421
424
  if x["state"] == "error":
mlrun/utils/async_http.py CHANGED
@@ -24,7 +24,7 @@ from aiohttp_retry import ExponentialRetry, RequestParams, RetryClient, RetryOpt
24
24
  from aiohttp_retry.client import _RequestContext
25
25
 
26
26
  from mlrun.config import config
27
- from mlrun.errors import err_to_str
27
+ from mlrun.errors import err_to_str, raise_for_status
28
28
 
29
29
  from .helpers import logger as mlrun_logger
30
30
 
@@ -48,12 +48,21 @@ class AsyncClientWithRetry(RetryClient):
48
48
  *args,
49
49
  **kwargs,
50
50
  ):
51
+ # do not retry on PUT / PATCH as they might have side effects (not truly idempotent)
52
+ blacklisted_methods = (
53
+ blacklisted_methods
54
+ if blacklisted_methods is not None
55
+ else [
56
+ "POST",
57
+ "PUT",
58
+ "PATCH",
59
+ ]
60
+ )
51
61
  super().__init__(
52
62
  *args,
53
63
  retry_options=ExponentialRetryOverride(
54
64
  retry_on_exception=retry_on_exception,
55
- # do not retry on PUT / PATCH as they might have side effects (not truly idempotent)
56
- blacklisted_methods=blacklisted_methods or ["POST", "PUT", "PATCH"],
65
+ blacklisted_methods=blacklisted_methods,
57
66
  attempts=max_retries,
58
67
  statuses=retry_on_status_codes,
59
68
  factor=retry_backoff_factor,
@@ -65,6 +74,12 @@ class AsyncClientWithRetry(RetryClient):
65
74
  **kwargs,
66
75
  )
67
76
 
77
+ def methods_blacklist_update_required(self, new_blacklist: str):
78
+ self._retry_options: ExponentialRetryOverride
79
+ return set(self._retry_options.blacklisted_methods).difference(
80
+ set(new_blacklist)
81
+ )
82
+
68
83
  def _make_requests(
69
84
  self,
70
85
  params_list: List[RequestParams],
@@ -175,7 +190,7 @@ class _CustomRequestContext(_RequestContext):
175
190
  last_attempt = current_attempt == self._retry_options.attempts
176
191
  if self._is_status_code_ok(response.status) or last_attempt:
177
192
  if self._raise_for_status:
178
- response.raise_for_status()
193
+ raise_for_status(response)
179
194
 
180
195
  self._response = response
181
196
  return response
@@ -277,6 +292,11 @@ class _CustomRequestContext(_RequestContext):
277
292
  if isinstance(exc.os_error, exc_type):
278
293
  return
279
294
  if exc.__cause__:
280
- return self.verify_exception_type(exc.__cause__)
295
+ # If the cause exception is retriable, return, otherwise, raise the original exception
296
+ try:
297
+ self.verify_exception_type(exc.__cause__)
298
+ except Exception:
299
+ raise exc
300
+ return
281
301
  else:
282
302
  raise exc
@@ -1,4 +1,4 @@
1
1
  {
2
- "git_commit": "046f4c7e365cd39e65cc540cefd1e9af0e434246",
3
- "version": "1.6.3-rc9"
2
+ "git_commit": "cbae1d920fcafb5d24372e59a36af85410133c30",
3
+ "version": "1.6.3-rc11"
4
4
  }
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mlrun
3
- Version: 1.6.3rc9
3
+ Version: 1.6.3rc11
4
4
  Summary: Tracking and config of machine learning runs
5
5
  Home-page: https://github.com/mlrun/mlrun
6
6
  Author: Yaron Haviv
@@ -26,7 +26,7 @@ Requires-Dist: GitPython >=3.1.41,~=3.1
26
26
  Requires-Dist: aiohttp ~=3.9
27
27
  Requires-Dist: aiohttp-retry ~=2.8
28
28
  Requires-Dist: click ~=8.1
29
- Requires-Dist: kfp ~=1.8
29
+ Requires-Dist: kfp >=1.8.14,~=1.8
30
30
  Requires-Dist: nest-asyncio ~=1.0
31
31
  Requires-Dist: ipython ~=8.10
32
32
  Requires-Dist: nuclio-jupyter ~=0.9.15
@@ -89,6 +89,7 @@ Requires-Dist: sqlalchemy ~=1.4 ; extra == 'api'
89
89
  Requires-Dist: pymysql ~=1.0 ; extra == 'api'
90
90
  Requires-Dist: alembic ~=1.9 ; extra == 'api'
91
91
  Requires-Dist: timelength ~=1.1 ; extra == 'api'
92
+ Requires-Dist: memray ~=1.12 ; extra == 'api'
92
93
  Provides-Extra: azure-blob-storage
93
94
  Requires-Dist: msrest ~=0.6.21 ; extra == 'azure-blob-storage'
94
95
  Requires-Dist: azure-core ~=1.24 ; extra == 'azure-blob-storage'
@@ -143,6 +144,7 @@ Requires-Dist: graphviz ~=0.20.0 ; extra == 'complete-api'
143
144
  Requires-Dist: humanfriendly ~=10.0 ; extra == 'complete-api'
144
145
  Requires-Dist: igz-mgmt ==0.1.0 ; extra == 'complete-api'
145
146
  Requires-Dist: kafka-python ~=2.0 ; extra == 'complete-api'
147
+ Requires-Dist: memray ~=1.12 ; extra == 'complete-api'
146
148
  Requires-Dist: mlflow ~=2.8 ; extra == 'complete-api'
147
149
  Requires-Dist: msrest ~=0.6.21 ; extra == 'complete-api'
148
150
  Requires-Dist: objgraph ~=3.6 ; extra == 'complete-api'
@@ -8,7 +8,7 @@ mlrun/k8s_utils.py,sha256=-6egUEZNPhzOxJ2gFytubvQvCYU9nPPg5Yn0zsTK-NQ,7065
8
8
  mlrun/kfpops.py,sha256=VgvS_4DappCPHzV7057SbraBTbF2mn7zZ7iPAaks3KU,30493
9
9
  mlrun/lists.py,sha256=sEEfl_mw_oVUD1dfkvQZIkJ8q7LJKJPDrb5B_Dg85nY,8388
10
10
  mlrun/model.py,sha256=EbSxpwtNFkqodTwM_StcmDG5MFSG50ZuDMhqzIyzLmM,64896
11
- mlrun/render.py,sha256=_vMTnT74DX5Lqg3L21RWeVEIG9cA5UPM3o3mlfRjmBA,13317
11
+ mlrun/render.py,sha256=pfAky9fTHRbINs93_Km_hEdVxmra9RA8BwqMepPbiuE,13451
12
12
  mlrun/run.py,sha256=gyxYJqVCBsZxp0_HWAG5_lwi2_KPqcxy6un5ZLw_-2Q,42456
13
13
  mlrun/secrets.py,sha256=m7jM8fdjGLR-j9Vx-08eNmtOmlxFx9mTUBqBWtMSVQo,7782
14
14
  mlrun/api/schemas/__init__.py,sha256=ggWbnqhp7By5HNYYfRsZ4D4EdVvjLuz4qfNfR3Kq6M4,14219
@@ -282,7 +282,7 @@ mlrun/track/tracker_manager.py,sha256=ZZzXtgQ-t4ah64XeAHNCbZ2VMOK_0E0RHv0pIowynj
282
282
  mlrun/track/trackers/__init__.py,sha256=9xft8YjJnblwqt8f05htmOt_eDzVBVQN07RfY_SYLCs,569
283
283
  mlrun/track/trackers/mlflow_tracker.py,sha256=zqqnECpxk_CHDKzEIdjwL9QUjXfueOw7xlZU7buguKY,23282
284
284
  mlrun/utils/__init__.py,sha256=g2pbT3loDw0GWELOC_rBq1NojSMCFnWrD-TYcDgAZiI,826
285
- mlrun/utils/async_http.py,sha256=N-zkACdr2CZNwYyMaocSR6ZH90F_WV_ZRBVe9ssi-Ns,11141
285
+ mlrun/utils/async_http.py,sha256=J3z4dzU1zk96k1sLDiGUIciBu3pdgivqh-GExFv-Fn8,11773
286
286
  mlrun/utils/azure_vault.py,sha256=IbPAZh-7mp0j4PcCy1L079LuEA6ENrkWhKZvkD4lcTY,3455
287
287
  mlrun/utils/clones.py,sha256=QG2ka65-ysfrOaoziudEjJqGgAxJvFKZOXkiD9WZGN4,7386
288
288
  mlrun/utils/condition_evaluator.py,sha256=KFZC-apM7RU5TIlRszAzMFc0NqPj3W1rgP0Zv17Ud-A,1918
@@ -304,11 +304,11 @@ mlrun/utils/notifications/notification/ipython.py,sha256=qrBmtECiRG6sZpCIVMg7RZc
304
304
  mlrun/utils/notifications/notification/slack.py,sha256=5JysqIpUYUZKXPSeeZtbl7qb2L9dj7p2NvnEBcEsZkA,3898
305
305
  mlrun/utils/notifications/notification/webhook.py,sha256=QHezCuN5uXkLcroAGxGrhGHaxAdUvkDLIsp27_Yrfd4,2390
306
306
  mlrun/utils/version/__init__.py,sha256=7kkrB7hEZ3cLXoWj1kPoDwo4MaswsI2JVOBpbKgPAgc,614
307
- mlrun/utils/version/version.json,sha256=ZRqouhTOpqg2abJMdKPNBQTfk500IfYeDc5tWbb1img,88
307
+ mlrun/utils/version/version.json,sha256=mnLW7uXP6vatEj6Qw6bbm185WDrJwaNCUWOShFwoM0k,89
308
308
  mlrun/utils/version/version.py,sha256=HMwseV8xjTQ__6T6yUWojx_z6yUj7Io7O4NcCCH_sz8,1970
309
- mlrun-1.6.3rc9.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
310
- mlrun-1.6.3rc9.dist-info/METADATA,sha256=q04r-jxz-S4F1FtmaTzEZwZ4ly1wLkTxYX2O59R1D_o,18293
311
- mlrun-1.6.3rc9.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
312
- mlrun-1.6.3rc9.dist-info/entry_points.txt,sha256=1Owd16eAclD5pfRCoJpYC2ZJSyGNTtUr0nCELMioMmU,46
313
- mlrun-1.6.3rc9.dist-info/top_level.txt,sha256=NObLzw3maSF9wVrgSeYBv-fgnHkAJ1kEkh12DLdd5KM,6
314
- mlrun-1.6.3rc9.dist-info/RECORD,,
309
+ mlrun-1.6.3rc11.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
310
+ mlrun-1.6.3rc11.dist-info/METADATA,sha256=U40RnTrdH_0847ynstuBZ3NFaG3O_ZNTTZPgEEUcivQ,18404
311
+ mlrun-1.6.3rc11.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
312
+ mlrun-1.6.3rc11.dist-info/entry_points.txt,sha256=1Owd16eAclD5pfRCoJpYC2ZJSyGNTtUr0nCELMioMmU,46
313
+ mlrun-1.6.3rc11.dist-info/top_level.txt,sha256=NObLzw3maSF9wVrgSeYBv-fgnHkAJ1kEkh12DLdd5KM,6
314
+ mlrun-1.6.3rc11.dist-info/RECORD,,