mlrun 1.7.0rc15__py3-none-any.whl → 1.7.0rc17__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.

Files changed (77) hide show
  1. mlrun/__init__.py +10 -1
  2. mlrun/__main__.py +18 -4
  3. mlrun/alerts/__init__.py +15 -0
  4. mlrun/alerts/alert.py +144 -0
  5. mlrun/artifacts/__init__.py +7 -1
  6. mlrun/artifacts/base.py +28 -3
  7. mlrun/artifacts/dataset.py +8 -0
  8. mlrun/artifacts/manager.py +18 -0
  9. mlrun/artifacts/model.py +8 -1
  10. mlrun/artifacts/plots.py +13 -0
  11. mlrun/common/schemas/__init__.py +10 -2
  12. mlrun/common/schemas/alert.py +64 -5
  13. mlrun/common/schemas/api_gateway.py +4 -0
  14. mlrun/common/schemas/artifact.py +15 -0
  15. mlrun/common/schemas/auth.py +2 -0
  16. mlrun/common/schemas/model_monitoring/__init__.py +4 -1
  17. mlrun/common/schemas/model_monitoring/constants.py +17 -1
  18. mlrun/common/schemas/model_monitoring/model_endpoints.py +60 -1
  19. mlrun/common/schemas/project.py +5 -1
  20. mlrun/config.py +11 -4
  21. mlrun/datastore/datastore_profile.py +10 -7
  22. mlrun/db/base.py +24 -4
  23. mlrun/db/httpdb.py +97 -43
  24. mlrun/db/nopdb.py +25 -4
  25. mlrun/errors.py +5 -0
  26. mlrun/launcher/base.py +3 -2
  27. mlrun/lists.py +4 -0
  28. mlrun/model.py +15 -8
  29. mlrun/model_monitoring/__init__.py +1 -1
  30. mlrun/model_monitoring/applications/_application_steps.py +1 -2
  31. mlrun/model_monitoring/applications/context.py +1 -1
  32. mlrun/model_monitoring/applications/histogram_data_drift.py +64 -38
  33. mlrun/model_monitoring/db/__init__.py +2 -0
  34. mlrun/model_monitoring/db/stores/base/store.py +9 -36
  35. mlrun/model_monitoring/db/stores/sqldb/sql_store.py +63 -110
  36. mlrun/model_monitoring/db/stores/v3io_kv/kv_store.py +56 -202
  37. mlrun/model_monitoring/db/tsdb/__init__.py +71 -0
  38. mlrun/model_monitoring/db/tsdb/base.py +135 -0
  39. mlrun/model_monitoring/db/tsdb/v3io/__init__.py +15 -0
  40. mlrun/model_monitoring/db/tsdb/v3io/stream_graph_steps.py +117 -0
  41. mlrun/model_monitoring/db/tsdb/v3io/v3io_connector.py +442 -0
  42. mlrun/model_monitoring/db/v3io_tsdb_reader.py +134 -0
  43. mlrun/model_monitoring/stream_processing.py +46 -210
  44. mlrun/model_monitoring/writer.py +50 -100
  45. mlrun/platforms/__init__.py +10 -9
  46. mlrun/platforms/iguazio.py +19 -200
  47. mlrun/projects/operations.py +11 -7
  48. mlrun/projects/pipelines.py +13 -76
  49. mlrun/projects/project.py +62 -17
  50. mlrun/render.py +9 -3
  51. mlrun/run.py +5 -38
  52. mlrun/runtimes/__init__.py +1 -0
  53. mlrun/runtimes/base.py +3 -3
  54. mlrun/runtimes/kubejob.py +2 -1
  55. mlrun/runtimes/nuclio/api_gateway.py +163 -77
  56. mlrun/runtimes/nuclio/application/application.py +160 -7
  57. mlrun/runtimes/nuclio/function.py +25 -45
  58. mlrun/runtimes/pod.py +16 -36
  59. mlrun/runtimes/remotesparkjob.py +1 -1
  60. mlrun/runtimes/sparkjob/spark3job.py +1 -1
  61. mlrun/runtimes/utils.py +0 -38
  62. mlrun/track/tracker.py +2 -1
  63. mlrun/utils/helpers.py +51 -31
  64. mlrun/utils/logger.py +11 -6
  65. mlrun/utils/notifications/notification/base.py +1 -1
  66. mlrun/utils/notifications/notification/slack.py +9 -4
  67. mlrun/utils/notifications/notification/webhook.py +1 -1
  68. mlrun/utils/notifications/notification_pusher.py +21 -14
  69. mlrun/utils/version/version.json +2 -2
  70. {mlrun-1.7.0rc15.dist-info → mlrun-1.7.0rc17.dist-info}/METADATA +4 -3
  71. {mlrun-1.7.0rc15.dist-info → mlrun-1.7.0rc17.dist-info}/RECORD +75 -69
  72. mlrun/kfpops.py +0 -860
  73. mlrun/platforms/other.py +0 -305
  74. {mlrun-1.7.0rc15.dist-info → mlrun-1.7.0rc17.dist-info}/LICENSE +0 -0
  75. {mlrun-1.7.0rc15.dist-info → mlrun-1.7.0rc17.dist-info}/WHEEL +0 -0
  76. {mlrun-1.7.0rc15.dist-info → mlrun-1.7.0rc17.dist-info}/entry_points.txt +0 -0
  77. {mlrun-1.7.0rc15.dist-info → mlrun-1.7.0rc17.dist-info}/top_level.txt +0 -0
mlrun/utils/helpers.py CHANGED
@@ -39,6 +39,7 @@ import pandas
39
39
  import semver
40
40
  import yaml
41
41
  from dateutil import parser
42
+ from mlrun_pipelines.models import PipelineRun
42
43
  from pandas._libs.tslibs.timestamps import Timedelta, Timestamp
43
44
  from yaml.representer import RepresenterError
44
45
 
@@ -786,34 +787,6 @@ def gen_html_table(header, rows=None):
786
787
  return style + '<table class="tg">\n' + out + "</table>\n\n"
787
788
 
788
789
 
789
- def new_pipe_metadata(
790
- artifact_path: str = None,
791
- cleanup_ttl: int = None,
792
- op_transformers: list[typing.Callable] = None,
793
- ):
794
- from kfp.dsl import PipelineConf
795
-
796
- def _set_artifact_path(task):
797
- from kubernetes import client as k8s_client
798
-
799
- task.add_env_variable(
800
- k8s_client.V1EnvVar(name="MLRUN_ARTIFACT_PATH", value=artifact_path)
801
- )
802
- return task
803
-
804
- conf = PipelineConf()
805
- cleanup_ttl = cleanup_ttl or int(config.kfp_ttl)
806
-
807
- if cleanup_ttl:
808
- conf.set_ttl_seconds_after_finished(cleanup_ttl)
809
- if artifact_path:
810
- conf.add_op_transformer(_set_artifact_path)
811
- if op_transformers:
812
- for op_transformer in op_transformers:
813
- conf.add_op_transformer(op_transformer)
814
- return conf
815
-
816
-
817
790
  def _convert_python_package_version_to_image_tag(version: typing.Optional[str]):
818
791
  return (
819
792
  version.replace("+", "-").replace("0.0.0-", "") if version is not None else None
@@ -1011,7 +984,7 @@ def get_workflow_url(project, id=None):
1011
984
 
1012
985
 
1013
986
  def are_strings_in_exception_chain_messages(
1014
- exception: Exception, strings_list=list[str]
987
+ exception: Exception, strings_list: list[str]
1015
988
  ) -> bool:
1016
989
  while exception is not None:
1017
990
  if any([string in str(exception) for string in strings_list]):
@@ -1286,7 +1259,7 @@ def is_link_artifact(artifact):
1286
1259
  return artifact.kind == mlrun.common.schemas.ArtifactCategories.link.value
1287
1260
 
1288
1261
 
1289
- def format_run(run: dict, with_project=False) -> dict:
1262
+ def format_run(run: PipelineRun, with_project=False) -> dict:
1290
1263
  fields = [
1291
1264
  "id",
1292
1265
  "name",
@@ -1323,7 +1296,7 @@ def format_run(run: dict, with_project=False) -> dict:
1323
1296
  # pipelines are yet to populate the status or workflow has failed
1324
1297
  # as observed https://jira.iguazeng.com/browse/ML-5195
1325
1298
  # set to unknown to ensure a status is returned
1326
- if run["status"] is None:
1299
+ if run.get("status", None) is None:
1327
1300
  run["status"] = inflection.titleize(
1328
1301
  mlrun.common.runtimes.constants.RunStates.unknown
1329
1302
  )
@@ -1583,3 +1556,50 @@ def additional_filters_warning(additional_filters, class_name):
1583
1556
  f"additional_filters parameter is not supported in {class_name},"
1584
1557
  f" parameter has been ignored."
1585
1558
  )
1559
+
1560
+
1561
+ def validate_component_version_compatibility(
1562
+ component_name: typing.Literal["iguazio", "nuclio"], *min_versions: str
1563
+ ):
1564
+ """
1565
+ :param component_name: Name of the component to validate compatibility for.
1566
+ :param min_versions: Valid minimum version(s) required, assuming no 2 versions has equal major and minor.
1567
+ """
1568
+ parsed_min_versions = [
1569
+ semver.VersionInfo.parse(min_version) for min_version in min_versions
1570
+ ]
1571
+ parsed_current_version = None
1572
+ component_current_version = None
1573
+ try:
1574
+ if component_name == "iguazio":
1575
+ component_current_version = mlrun.mlconf.igz_version
1576
+ parsed_current_version = mlrun.mlconf.get_parsed_igz_version()
1577
+
1578
+ # ignore pre-release and build metadata, as iguazio version always has them, and we only care about the
1579
+ # major, minor, and patch versions
1580
+ parsed_current_version = semver.VersionInfo.parse(
1581
+ f"{parsed_current_version.major}.{parsed_current_version.minor}.{parsed_current_version.patch}"
1582
+ )
1583
+ if component_name == "nuclio":
1584
+ component_current_version = mlrun.mlconf.nuclio_version
1585
+ parsed_current_version = semver.VersionInfo.parse(
1586
+ mlrun.mlconf.nuclio_version
1587
+ )
1588
+ if not parsed_current_version:
1589
+ return True
1590
+ except ValueError:
1591
+ # only log when version is set but invalid
1592
+ if component_current_version:
1593
+ logger.warning(
1594
+ "Unable to parse current version, assuming compatibility",
1595
+ component_name=component_name,
1596
+ current_version=component_current_version,
1597
+ min_versions=min_versions,
1598
+ )
1599
+ return True
1600
+
1601
+ parsed_min_versions.sort(reverse=True)
1602
+ for parsed_min_version in parsed_min_versions:
1603
+ if parsed_current_version < parsed_min_version:
1604
+ return False
1605
+ return True
mlrun/utils/logger.py CHANGED
@@ -13,6 +13,7 @@
13
13
  # limitations under the License.
14
14
 
15
15
  import logging
16
+ import typing
16
17
  from enum import Enum
17
18
  from sys import stdout
18
19
  from traceback import format_exception
@@ -221,11 +222,15 @@ class FormatterKinds(Enum):
221
222
  JSON = "json"
222
223
 
223
224
 
224
- def create_formatter_instance(formatter_kind: FormatterKinds) -> logging.Formatter:
225
+ def resolve_formatter_by_kind(
226
+ formatter_kind: FormatterKinds,
227
+ ) -> type[
228
+ typing.Union[HumanReadableFormatter, HumanReadableExtendedFormatter, JSONFormatter]
229
+ ]:
225
230
  return {
226
- FormatterKinds.HUMAN: HumanReadableFormatter(),
227
- FormatterKinds.HUMAN_EXTENDED: HumanReadableExtendedFormatter(),
228
- FormatterKinds.JSON: JSONFormatter(),
231
+ FormatterKinds.HUMAN: HumanReadableFormatter,
232
+ FormatterKinds.HUMAN_EXTENDED: HumanReadableExtendedFormatter,
233
+ FormatterKinds.JSON: JSONFormatter,
229
234
  }[formatter_kind]
230
235
 
231
236
 
@@ -243,11 +248,11 @@ def create_logger(
243
248
  logger_instance = Logger(level, name=name, propagate=False)
244
249
 
245
250
  # resolve formatter
246
- formatter_instance = create_formatter_instance(
251
+ formatter_instance = resolve_formatter_by_kind(
247
252
  FormatterKinds(formatter_kind.lower())
248
253
  )
249
254
 
250
255
  # set handler
251
- logger_instance.set_handler("default", stream or stdout, formatter_instance)
256
+ logger_instance.set_handler("default", stream or stdout, formatter_instance())
252
257
 
253
258
  return logger_instance
@@ -77,7 +77,7 @@ class NotificationBase:
77
77
  return f"[{severity}] {message}"
78
78
  return (
79
79
  f"[{severity}] {message} for project {alert.project} "
80
- f"UID {event_data.entity.id}. Value {event_data.value}"
80
+ f"UID {event_data.entity.ids[0]}. Values {event_data.value_dict}"
81
81
  )
82
82
 
83
83
  if not runs:
@@ -135,7 +135,7 @@ class SlackNotification(NotificationBase):
135
135
  line = [
136
136
  self._get_slack_row(f":bell: {alert.name} alert has occurred"),
137
137
  self._get_slack_row(f"*Project:*\n{alert.project}"),
138
- self._get_slack_row(f"*UID:*\n{event_data.entity.id}"),
138
+ self._get_slack_row(f"*UID:*\n{event_data.entity.ids[0]}"),
139
139
  ]
140
140
  if event_data.value_dict:
141
141
  data_lines = []
@@ -144,7 +144,9 @@ class SlackNotification(NotificationBase):
144
144
  data_text = "\n".join(data_lines)
145
145
  line.append(self._get_slack_row(f"*Event data:*\n{data_text}"))
146
146
 
147
- if url := mlrun.utils.helpers.get_ui_url(alert.project, event_data.entity.id):
147
+ if url := mlrun.utils.helpers.get_ui_url(
148
+ alert.project, event_data.entity.ids[0]
149
+ ):
148
150
  line.append(self._get_slack_row(f"*Overview:*\n<{url}|*Job overview*>"))
149
151
 
150
152
  return line
@@ -154,18 +156,21 @@ class SlackNotification(NotificationBase):
154
156
  url = mlrun.utils.helpers.get_ui_url(meta.get("project"), meta.get("uid"))
155
157
 
156
158
  # Only show the URL if the run is not a function (serving or mlrun function)
157
- if run.get("kind") not in ["serving", None] and url:
159
+ kind = run.get("step_kind")
160
+ if url and not kind or kind == "run":
158
161
  line = f'<{url}|*{meta.get("name")}*>'
159
162
  else:
160
163
  line = meta.get("name")
161
164
  state = run["status"].get("state", "")
165
+ if kind:
166
+ line = f'{line} *({run.get("step_kind", run.get("kind", ""))})*'
162
167
  line = f'{self.emojis.get(state, ":question:")} {line}'
163
168
  return self._get_slack_row(line)
164
169
 
165
170
  def _get_run_result(self, run: dict) -> dict:
166
171
  state = run["status"].get("state", "")
167
172
  if state == "error":
168
- error_status = run["status"].get("error", "")
173
+ error_status = run["status"].get("error", "") or state
169
174
  result = f"*{error_status}*"
170
175
  else:
171
176
  result = mlrun.utils.helpers.dict_to_str(
@@ -57,7 +57,7 @@ class WebhookNotification(NotificationBase):
57
57
  request_body["alert"] = alert.dict()
58
58
  if event_data:
59
59
  request_body["value"] = event_data.value_dict
60
- request_body["id"] = event_data.entity.id
60
+ request_body["id"] = event_data.entity.ids[0]
61
61
 
62
62
  if custom_html:
63
63
  request_body["custom_html"] = custom_html
@@ -22,13 +22,13 @@ import typing
22
22
  from concurrent.futures import ThreadPoolExecutor
23
23
 
24
24
  import kfp
25
+ import mlrun_pipelines.common.ops
25
26
 
26
27
  import mlrun.common.runtimes.constants
27
28
  import mlrun.common.schemas
28
29
  import mlrun.config
29
30
  import mlrun.db.base
30
31
  import mlrun.errors
31
- import mlrun.kfpops
32
32
  import mlrun.lists
33
33
  import mlrun.model
34
34
  import mlrun.utils.helpers
@@ -392,15 +392,15 @@ class NotificationPusher(_NotificationPusherBase):
392
392
  steps = []
393
393
  db = mlrun.get_run_db()
394
394
 
395
- def _add_run_step(_node_name, _):
396
- steps.append(
397
- db.list_runs(
398
- project=run.metadata.project,
399
- labels=f"mlrun/runner-pod={_node_name}",
400
- )[0]
401
- )
395
+ def _add_run_step(_node_name, _node_template, _step_kind):
396
+ _run = db.list_runs(
397
+ project=run.metadata.project,
398
+ labels=f"mlrun/runner-pod={_node_name}",
399
+ )[0]
400
+ _run["step_kind"] = _step_kind
401
+ steps.append(_run)
402
402
 
403
- def _add_deploy_function_step(_, _node_template):
403
+ def _add_deploy_function_step(_, _node_template, _step_kind):
404
404
  project, name, hash_key = self._extract_function_uri(
405
405
  _node_template["metadata"]["annotations"]["mlrun/function-uri"]
406
406
  )
@@ -428,12 +428,13 @@ class NotificationPusher(_NotificationPusherBase):
428
428
  function["metadata"]["updated"] = function["metadata"][
429
429
  "updated"
430
430
  ].isoformat()
431
+ function["step_kind"] = _step_kind
431
432
  steps.append(function)
432
433
 
433
434
  step_methods = {
434
- mlrun.kfpops.PipelineRunType.run: _add_run_step,
435
- mlrun.kfpops.PipelineRunType.build: _add_deploy_function_step,
436
- mlrun.kfpops.PipelineRunType.deploy: _add_deploy_function_step,
435
+ mlrun_pipelines.common.ops.PipelineRunType.run: _add_run_step,
436
+ mlrun_pipelines.common.ops.PipelineRunType.build: _add_deploy_function_step,
437
+ mlrun_pipelines.common.ops.PipelineRunType.deploy: _add_deploy_function_step,
437
438
  }
438
439
 
439
440
  workflow_id = run.status.results.get("workflow_id", None)
@@ -464,7 +465,7 @@ class NotificationPusher(_NotificationPusherBase):
464
465
  )
465
466
  step_method = step_methods.get(step_type)
466
467
  if step_method:
467
- step_method(node_name, node_template)
468
+ step_method(node_name, node_template, step_type)
468
469
  return steps
469
470
  except Exception:
470
471
  # If we fail to read the pipeline steps, we will return the list of runs that have the same workflow id
@@ -481,7 +482,13 @@ class NotificationPusher(_NotificationPusherBase):
481
482
 
482
483
  @staticmethod
483
484
  def _get_workflow_manifest(workflow_id: str) -> typing.Optional[dict]:
484
- kfp_client = kfp.Client(namespace=mlrun.config.config.namespace)
485
+ kfp_url = mlrun.mlconf.resolve_kfp_url(mlrun.mlconf.namespace)
486
+ if not kfp_url:
487
+ raise mlrun.errors.MLRunNotFoundError(
488
+ "KubeFlow Pipelines is not configured"
489
+ )
490
+
491
+ kfp_client = kfp.Client(host=kfp_url)
485
492
 
486
493
  # arbitrary timeout of 5 seconds, the workflow should be done by now
487
494
  kfp_run = kfp_client.wait_for_run_completion(workflow_id, 5)
@@ -1,4 +1,4 @@
1
1
  {
2
- "git_commit": "dd3ddb2c7544ea578f0445adb74711f0e8b5cbc9",
3
- "version": "1.7.0-rc15"
2
+ "git_commit": "fb7d21e35e68f1e2720647b57dc040d0309942ea",
3
+ "version": "1.7.0-rc17"
4
4
  }
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mlrun
3
- Version: 1.7.0rc15
3
+ Version: 1.7.0rc17
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,10 +26,9 @@ 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
30
29
  Requires-Dist: nest-asyncio ~=1.0
31
30
  Requires-Dist: ipython ~=8.10
32
- Requires-Dist: nuclio-jupyter ~=0.9.16
31
+ Requires-Dist: nuclio-jupyter ~=0.9.17
33
32
  Requires-Dist: numpy <1.27.0,>=1.16.5
34
33
  Requires-Dist: pandas <2.2,>=1.2
35
34
  Requires-Dist: pyarrow <15,>=10.0
@@ -51,6 +50,8 @@ Requires-Dist: setuptools ~=69.1
51
50
  Requires-Dist: deprecated ~=1.2
52
51
  Requires-Dist: jinja2 >=3.1.3,~=3.1
53
52
  Requires-Dist: orjson <4,>=3.9.15
53
+ Requires-Dist: mlrun-pipelines-kfp-common-experiment ~=0.2.0
54
+ Requires-Dist: mlrun-pipelines-kfp-v1-8-experiment ~=0.2.0
54
55
  Provides-Extra: alibaba-oss
55
56
  Requires-Dist: ossfs ==2023.12.0 ; extra == 'alibaba-oss'
56
57
  Requires-Dist: oss2 ==2.18.1 ; extra == 'alibaba-oss'
@@ -1,23 +1,24 @@
1
- mlrun/__init__.py,sha256=rxnxHjb5Rq_EnHv77irxah9zKL89AjZZpjQyx3W5izQ,7249
2
- mlrun/__main__.py,sha256=OJNDRTmu57Z0hYy8pAJHDoJNFA5AoBogNxvRERywnlw,45304
3
- mlrun/config.py,sha256=zLvnW1GKtjqNNnBNrfFlJfCVNUBJRaQShSphEwkbTFQ,64571
4
- mlrun/errors.py,sha256=HmOAdfpL0bCDisZMUoJPOumneq71ko49Ph-XBL-A4xA,7080
1
+ mlrun/__init__.py,sha256=y08M1JcKXy5-9_5WaI9fn5aV5BxIQ5QkbduJK0OxWbA,7470
2
+ mlrun/__main__.py,sha256=J2Y7_hKWusNsinXVLdIkAPZl5ThRePaxSG1I9b6yI_E,45717
3
+ mlrun/config.py,sha256=tRmW9_gOty5iHL5CwwzVXJhfkaUQaKigs5ZfVItjUr4,64870
4
+ mlrun/errors.py,sha256=Kx6XVGPDurT1S0qjD3PoaETvjsN5nQ4YErVSJkG-EPs,7269
5
5
  mlrun/execution.py,sha256=F45o_rJI3Q8epQefTksvyjmgZr4ZxKmUxXbKW5UZOaY,40891
6
6
  mlrun/features.py,sha256=m17K_3l9Jktwb9dOwlHLTAPTlemsWrRF7dJhXUX0iJU,15429
7
7
  mlrun/k8s_utils.py,sha256=YyFZT2WNZrJkcZoqxrkduQgzQ1X-7195O0mmEqvaIug,7023
8
- mlrun/kfpops.py,sha256=UO5CUVlJhEJ_a0dcB_HB_iTK1PO21R9uFrBfOgrf4as,30147
9
- mlrun/lists.py,sha256=OZV1ZBpEzSb4RM7zBL4dT1iQK-pGWmFkSNha9PCdZZ8,8227
10
- mlrun/model.py,sha256=MP6d27J7s4_BhTIp-Xr9n0M3gCogHUVjbxXG14OM1Sc,71390
11
- mlrun/render.py,sha256=3aBVMZIViQB5CgRbEgAY2ugGIBMmbNfiqc05ahRgmDI,12696
12
- mlrun/run.py,sha256=D7E3zWGPFDe6jLoW_WIyA75naaKOnQNRTP_-9_pvYVo,43100
8
+ mlrun/lists.py,sha256=3PqBdcajdwhTe1XuFsAaHTuFVM2kjwepf31qqE82apg,8384
9
+ mlrun/model.py,sha256=4evovxtJBN7kxtWMj3zcvg3H3qpd5RHkyAEYVytOKtU,71827
10
+ mlrun/render.py,sha256=4qYIKPy9lTsbnMvaSZRHelW35HebAYwNOivp6QDRHvA,12997
11
+ mlrun/run.py,sha256=0V99lXDuXtrUlZlmVHi7Dj2OyVT7fXrLHYLqqxfon_4,42457
13
12
  mlrun/secrets.py,sha256=ibtCK79u7JVBZF6F0SP1-xXXF5MyrLEUs_TCWiJAnlc,7798
13
+ mlrun/alerts/__init__.py,sha256=0gtG1BG0DXxFrXegIkjbM1XEN4sP9ODo0ucXrNld1hU,601
14
+ mlrun/alerts/alert.py,sha256=LTRW1mBm5pvDVTC00NdqQCD8iNgHnTXMN4qvgnsnX6A,5091
14
15
  mlrun/api/schemas/__init__.py,sha256=LhfO3myrnLVxC0MYCAc1_LTuqhRlYV3H7BwJkjOu3dQ,14211
15
- mlrun/artifacts/__init__.py,sha256=V7QKvBEflRxDIaEmH_2ddKigLi8aTzi6aSBk46k-5K8,1130
16
- mlrun/artifacts/base.py,sha256=bMyzC3gEyhYueP0PBjhY8aEnmQFnKCPXgEMZmC9_wDY,28287
17
- mlrun/artifacts/dataset.py,sha256=421Mk9ShVUtK64ANDMIL8DaEE2jIipX40mZSWCSKILw,16209
18
- mlrun/artifacts/manager.py,sha256=0b9E8SYaCB_8USJ2b9FqeubyTJ8-t2xuxlbrkGhvbVg,13864
19
- mlrun/artifacts/model.py,sha256=TjncO-a1ieI6rq6R2KOatRHgGxui39NDKPZJDPy8UcY,20794
20
- mlrun/artifacts/plots.py,sha256=wmaxVXiAPSCyn3M7pIlcBu9pP3O8lrq0Ewx6iHRDF9s,4238
16
+ mlrun/artifacts/__init__.py,sha256=daGrLqltI1nE3ES30nm-tanUnxReRzfyxyaxNRx2zbc,1168
17
+ mlrun/artifacts/base.py,sha256=azVkiHaJq9JNFKlb91R1vwkdR2QEqF-rIn7bQIL6rf0,29148
18
+ mlrun/artifacts/dataset.py,sha256=O_2g2RFHYEAXIBX86mgyc0wBNOhWLT7NlYvxFeLNTuw,16505
19
+ mlrun/artifacts/manager.py,sha256=e5vIPwODitCyrIr9ZyU5AG4XUIa9CbJgoIRM36Rn7jA,14430
20
+ mlrun/artifacts/model.py,sha256=ObUkqFMejYOtq0CDFdpYwzwhQ5bsHv0dHTysuVPJnbs,21102
21
+ mlrun/artifacts/plots.py,sha256=dS0mHGt1b20tN2JyEH9H5o5I0oMKZkzn3Uz_3Hf4WjU,4813
21
22
  mlrun/common/__init__.py,sha256=xY3wHC4TEJgez7qtnn1pQvHosi8-5UJOCtyGBS7FcGE,571
22
23
  mlrun/common/constants.py,sha256=7SLxtvq1VGO9ed0xQ87jM09ScTKMuv_2qx_IBE6hybg,991
23
24
  mlrun/common/helpers.py,sha256=BAhyuUnZvD_BT43i0_1EszuSbKgZx7bFy2KRIWP0XeA,1087
@@ -28,11 +29,11 @@ mlrun/common/db/sql_session.py,sha256=Znc8KE2oLy4lg3_vRki1sVlNx59TgDSOTCXfU561hB
28
29
  mlrun/common/model_monitoring/__init__.py,sha256=x0EMEvxVjHsm858J1t6IEA9dtKTdFpJ9sKhss10ld8A,721
29
30
  mlrun/common/model_monitoring/helpers.py,sha256=1CpxIDQPumFnpUB1eqcvCpLlyPFVeW2sL6prM-N5A1A,4405
30
31
  mlrun/common/runtimes/constants.py,sha256=oP3OxdYCpbvadJ3zP1JGkqGBKaBheNkCnJISWha9x58,9513
31
- mlrun/common/schemas/__init__.py,sha256=JGyxf4eM8ZuVVCASsKZS6lo_Y7VzAuCC8zXZACRAyks,5119
32
- mlrun/common/schemas/alert.py,sha256=F-ZQbfBdrSm-PYESjlQ_IjnzKs0OrilOhBdCWzNZOe8,3181
33
- mlrun/common/schemas/api_gateway.py,sha256=mw47rpTBAVIRV6TdMQ_A6rIgnEHOUweU7iT3VbINvBE,2519
34
- mlrun/common/schemas/artifact.py,sha256=d6srME_eWn2MpGuqvPQZtePRFkjDfNJgQ6JDd51qVrI,2796
35
- mlrun/common/schemas/auth.py,sha256=VNvMDdeQxYpnNxxuftI7O47bOaKzvYaiov2I6TnSFvM,6204
32
+ mlrun/common/schemas/__init__.py,sha256=LJV_O7EspkTRXPB8giRodVjjK_Uad-e8eWAXA_mei40,5223
33
+ mlrun/common/schemas/alert.py,sha256=XpjQBrIjrcKspYrAnDtselLq95SnIDMj3ClfmPwTdFI,5261
34
+ mlrun/common/schemas/api_gateway.py,sha256=pWCSQ_devM8RAeiFyVpkA3Zb8e7TDomG5uoTzPs-pxg,2659
35
+ mlrun/common/schemas/artifact.py,sha256=RsiuVztn_eS5BuSRFUyJGTC9ed-Z2SpsEqJ_WslM30E,3375
36
+ mlrun/common/schemas/auth.py,sha256=5c4WSn3KdX1v04ttSQblkF_gyjdjuJSHG7BTCx4_LWM,6336
36
37
  mlrun/common/schemas/background_task.py,sha256=2qZxib2qrF_nPZj0ncitCG-2jxz2hg1qj0hFc8eswWQ,1707
37
38
  mlrun/common/schemas/client_spec.py,sha256=EEhnufqCawDLcYs8IPR6Fq3i1PWMuPpBp4cUHBoWEfA,2896
38
39
  mlrun/common/schemas/clusterization_spec.py,sha256=aeaFJZms7r7h2HDv6ML_GDAT6gboW-PxBbc3GKPalGk,888
@@ -51,7 +52,7 @@ mlrun/common/schemas/notification.py,sha256=Ge7eWNGf_XUFkjOnUkyUOubdEbmXh9z_OSGc
51
52
  mlrun/common/schemas/object.py,sha256=VleJSUmDJMl92knLgaDE8SWCi3ky0UaHcwcwOIapPQ8,1980
52
53
  mlrun/common/schemas/pagination.py,sha256=q7nk6bipkDiE7HExIVqhy5ANl-zv0x8QC9Kg6AkLtDA,887
53
54
  mlrun/common/schemas/pipeline.py,sha256=GhrIsf5tRUQtQYboZ2feXdMjpFelVvduM-SIQoV5TZw,1177
54
- mlrun/common/schemas/project.py,sha256=jO95DeHYF7f4PWpLtXPik5fxEWL5cbgmuXghYPz7Z6o,4398
55
+ mlrun/common/schemas/project.py,sha256=-mtjN5xVB0pexe_ScKlA42Ca5xL18uStmzrT-scbgfE,4635
55
56
  mlrun/common/schemas/regex.py,sha256=8_vbDeAE0SODJDj7yUFg1FbaB9CNydYQTJ29JxE74Kc,776
56
57
  mlrun/common/schemas/runs.py,sha256=H9QhaN83cFUN42eE9TLgi1gs6Xdq11oQSZ96ESM94mI,745
57
58
  mlrun/common/schemas/runtime_resource.py,sha256=2rSuYL-9JkESSomlnU91mYDbfV-IkqZeXx6OHuMmDxs,1554
@@ -59,10 +60,10 @@ mlrun/common/schemas/schedule.py,sha256=e9nAeRkZkyk37Ws1cBNseHVKPOQqmWV16rt-zr_e
59
60
  mlrun/common/schemas/secret.py,sha256=51tCN1F8DFTq4y_XdHIMDy3I1TnMEBX8kO8BHKavYF4,1484
60
61
  mlrun/common/schemas/tag.py,sha256=OAn9Qt6z8ibqw8uU8WQSvuwY8irUv45Dhx2Ko5FzUss,884
61
62
  mlrun/common/schemas/workflow.py,sha256=eRoaOBFiWbvP0iwZ6Aof5JmheV81A0-0PGi8L4vuXmI,1823
62
- mlrun/common/schemas/model_monitoring/__init__.py,sha256=9v9Q6Jfn3iiv0gMc8R7d-ZpxU3fWaWvCIya_fWQYh6I,1607
63
- mlrun/common/schemas/model_monitoring/constants.py,sha256=ytMQwgf3SfpTwlptJvDZPqeO3ic96MAdXGf9bvHpBgU,8842
63
+ mlrun/common/schemas/model_monitoring/__init__.py,sha256=ZNPytT2wKHgLCnHhmbJfOEz4n6rAEPmgLDwxUQfJl4I,1673
64
+ mlrun/common/schemas/model_monitoring/constants.py,sha256=2U41tbJUNpkwE7-O_vIIWUGmAcqBXPYHVPrHe0NpW_0,9217
64
65
  mlrun/common/schemas/model_monitoring/grafana.py,sha256=aiNK8iL_fIzDVO_bj4fted9P6fAwaymcPC2OnRk36po,1431
65
- mlrun/common/schemas/model_monitoring/model_endpoints.py,sha256=_HCdL_LisANYm9vPRov15dwWmuy5Q02DNbZ_WHCxTZk,12274
66
+ mlrun/common/schemas/model_monitoring/model_endpoints.py,sha256=uQeM1MBaAbZUJbT6TwaGn-LRnA059OstqtLUvmAO394,13837
66
67
  mlrun/data_types/__init__.py,sha256=EkxfkFoHb91zz3Aymq-KZfCHlPMzEc3bBqgzPUwmHWY,1087
67
68
  mlrun/data_types/data_types.py,sha256=hWiL5TPOj9EK7_nd1yttLBUhXTmBYLDZzmG-hWzzhHE,4751
68
69
  mlrun/data_types/infer.py,sha256=z2EbSpR6xWEE5-HRUtDZkapHQld3xMbzXtTX83K-690,6134
@@ -73,7 +74,7 @@ mlrun/datastore/alibaba_oss.py,sha256=OfQ9AbsJNBFF9DFgUdq38TvKw6qwnHmEcnH-nze6ZZ
73
74
  mlrun/datastore/azure_blob.py,sha256=NpkEoIie7mH171tOwlrwpEwzRYGoo9SF3FAAegEENhU,9019
74
75
  mlrun/datastore/base.py,sha256=z1ON-fd6mjRu_YZybhY2uw26T5upk4HHAsV8PfkB3o4,25586
75
76
  mlrun/datastore/datastore.py,sha256=GGo8XPnKVWWgY0b-18D93V1g8DJgeBNafa6knnHEabw,9111
76
- mlrun/datastore/datastore_profile.py,sha256=p2nNSM3IlJcc2VrD8HmB51zS2Lr3MaZqjbs3efecheg,18831
77
+ mlrun/datastore/datastore_profile.py,sha256=lRVzPvx3O1MzoylkpXS_32LYfdDSmHgVFE4W5omwN4A,18903
77
78
  mlrun/datastore/dbfs_store.py,sha256=5IkxnFQXkW0fdx-ca5jjQnUdTsTfNdJzMvV31ZpDNrM,6634
78
79
  mlrun/datastore/filestore.py,sha256=nS3Ie6jG41NDiW_as9tF8Nu5maaSVEKYKUr1IQtPhuA,3767
79
80
  mlrun/datastore/google_cloud_storage.py,sha256=Du5qYYUCSkLt9acQDeQ-PgEjttsE7D2eAoLebO43kiw,6110
@@ -93,10 +94,10 @@ mlrun/datastore/wasbfs/__init__.py,sha256=s5Ul-0kAhYqFjKDR2X0O2vDGDbLQQduElb32Ev
93
94
  mlrun/datastore/wasbfs/fs.py,sha256=MnSj7Q4OKA2L55ihCmUnj2t3GA3B77oLMdAw-yxvN9w,6151
94
95
  mlrun/db/__init__.py,sha256=WqJ4x8lqJ7ZoKbhEyFqkYADd9P6E3citckx9e9ZLcIU,1163
95
96
  mlrun/db/auth_utils.py,sha256=hpg8D2r82oN0BWabuWN04BTNZ7jYMAF242YSUpK7LFM,5211
96
- mlrun/db/base.py,sha256=cTH6vKj8p-fyT3a-n9LSIn3Y5KQXjDMpOfVge3_ZkFY,21109
97
+ mlrun/db/base.py,sha256=RDJvJ6_puBtryArnMSrOxpNCa0XGRdXG4VsHjLNQAQw,21601
97
98
  mlrun/db/factory.py,sha256=ibIrE5QkIIyzDU1FXKrfbc31cZiRLYKDZb8dqCpQwyU,2397
98
- mlrun/db/httpdb.py,sha256=tNMCzZOAELH5SA4qL4ZNos7D1QQfvaeaGnk7voSdt6I,170882
99
- mlrun/db/nopdb.py,sha256=dcwgZYNSsP-ZNv3ZAyTvD5Pu-2YhoW_fIzHNLG_e1J0,18434
99
+ mlrun/db/httpdb.py,sha256=FmYfkjxadPQMUyQzXmJ910DVqivI-GtRfBNNC8yp4TQ,172966
100
+ mlrun/db/nopdb.py,sha256=f3dSv3XfdaFMWtq12-F4LtzlhhvU2ZG6Yatx9Q0ssxU,18933
100
101
  mlrun/feature_store/__init__.py,sha256=FhHRc8NdqL_HWpCs7A8dKruxJS5wEm55Gs3dcgBiRUg,1522
101
102
  mlrun/feature_store/api.py,sha256=uYheyPkJOVCrz1jivvpGatgy_JBAq0It0XZqPpNVQkE,48699
102
103
  mlrun/feature_store/common.py,sha256=DKmoRk04NCS1gv7qZuEUa2-g8WsfR6IWjYctcrqKVlg,12853
@@ -197,12 +198,12 @@ mlrun/frameworks/xgboost/mlrun_interface.py,sha256=QcP_mTKBjxvRyWcNnju0BlvXBDOqN
197
198
  mlrun/frameworks/xgboost/model_handler.py,sha256=e7IwdrmAaQ5Yy_fqOirN7oi-xEJgg_Gqh83Dw1w-U34,11530
198
199
  mlrun/frameworks/xgboost/utils.py,sha256=5zLzHoeI3n2FuA_rdGzi404QCTLfQx1TYEyUWhZogs8,1069
199
200
  mlrun/launcher/__init__.py,sha256=JL8qkT1lLr1YvW6iP0hmwDTaSR2RfrMDx0-1gWRhTOE,571
200
- mlrun/launcher/base.py,sha256=6COzHANgNI4ES_hI4Iv8_Mmjm_R82JhJgBJiOF60PEg,16432
201
+ mlrun/launcher/base.py,sha256=ud1qc2v66-84haAVBuQ2e0IsOzvd_bleSVVImwNWhwE,16461
201
202
  mlrun/launcher/client.py,sha256=ZVWAgVm-XFt-r1jJblXqaj_MrGztlcrUTd_qS6BqMq0,6062
202
203
  mlrun/launcher/factory.py,sha256=RW7mfzEFi8fR0M-4W1JQg1iq3_muUU6OTqT_3l4Ubrk,2338
203
204
  mlrun/launcher/local.py,sha256=6E83lCJ8Ma4WPCQYzo3P6c4tvpIipJsokZ3zMrCORbk,10909
204
205
  mlrun/launcher/remote.py,sha256=2DGInyx0um5BRUEA5DYcnLXzVKTIv8JxeXogWdxl48o,7469
205
- mlrun/model_monitoring/__init__.py,sha256=fS93sGyotiurc2lf1x49JiM3MaN8zm4YxKYN42Ecc4U,859
206
+ mlrun/model_monitoring/__init__.py,sha256=dm5_j0_pwqrdzFwTaEtGnKfv2nVpNaM56nBI-oqLbNU,879
206
207
  mlrun/model_monitoring/api.py,sha256=zOYxVK-rTC1ZZkI9ImPb4ifxPk3mzEzQxMGHRSg2AV0,30298
207
208
  mlrun/model_monitoring/application.py,sha256=RJ8HeAPfGO3P2A_dEZYNg60c1wKTADh2YSv8BQ5embg,745
208
209
  mlrun/model_monitoring/controller.py,sha256=MQ4BF3vfJSyYZv6HuTuSLt_nqaflgBYyOSwCccbwaio,27981
@@ -212,28 +213,34 @@ mlrun/model_monitoring/features_drift_table.py,sha256=c6GpKtpOJbuT1u5uMWDL_S-6N4
212
213
  mlrun/model_monitoring/helpers.py,sha256=hbDcxv0j3ob6eabEzlZ0JBr0GG1GsWZDdnJfHwNTrYs,9375
213
214
  mlrun/model_monitoring/model_endpoint.py,sha256=7VX0cBATqLsA4sSinDzouf41ndxqh2mf5bO9BW0G5Z4,4017
214
215
  mlrun/model_monitoring/prometheus.py,sha256=cUR4y73GutJB_pA_VCBDl9YtK4PcIJp2wj2rnLVmYi4,7578
215
- mlrun/model_monitoring/stream_processing.py,sha256=CZ5kx3jI_nD9ctx9jhAL-pmks8h1A26tTG1jbGy6I0k,49092
216
+ mlrun/model_monitoring/stream_processing.py,sha256=lk0Cm17hyXMeh3yVLLFP973T3zgleLsDPlJFkRpbpB4,42170
216
217
  mlrun/model_monitoring/tracking_policy.py,sha256=sQq956akAQpntkrJwIgFWcEq-JpyVcg0FxgNa4h3V70,5502
217
- mlrun/model_monitoring/writer.py,sha256=Y2ZzBCRRk1m_UGc35GqG8QNS3kpi2tTj4CPi3pbaLA0,10536
218
+ mlrun/model_monitoring/writer.py,sha256=DzroZvxl0NbelXxye-CJxrfaE_sZmxpHm1DeiQjcTVc,8845
218
219
  mlrun/model_monitoring/applications/__init__.py,sha256=i793GqYee01mRh_KD6GShvX7UbPBgdJDO4qf9Z3BXEQ,970
219
- mlrun/model_monitoring/applications/_application_steps.py,sha256=O4AbdjGgpGQiTGuAbW8-nswffax7w4YfSoO9yaRt9nU,6055
220
+ mlrun/model_monitoring/applications/_application_steps.py,sha256=-g9jxIAFM5f22iJaUAQVlM8QRSv6KFT92I4WHmZe_f0,6028
220
221
  mlrun/model_monitoring/applications/base.py,sha256=5YYI3XDcXnbkDQFL5oZGfbco93dqv1vB2fLW0wK8lSo,11362
221
- mlrun/model_monitoring/applications/context.py,sha256=oOKzyCnlZ9cA3CPijaCPOtTThpVOJN220H-P6bk66no,8571
222
+ mlrun/model_monitoring/applications/context.py,sha256=i-9h6pWyrS8mjw53zd0kb_Dsf9ReS8cSfnth8PvOEI4,8571
222
223
  mlrun/model_monitoring/applications/evidently_base.py,sha256=AE_eIz-GEYm3AZTrMCiqF9bcSMlvYk08LJb6bKWAQLg,8057
223
- mlrun/model_monitoring/applications/histogram_data_drift.py,sha256=Bnj-Ql2MUw6E30J7Ol0811VXTQMnPJ2cpMUFU_FvVYc,12069
224
+ mlrun/model_monitoring/applications/histogram_data_drift.py,sha256=HZmNg09SCjAKkIlKmJwqR7hr-8sXrwFEqXgJCitVbXc,13039
224
225
  mlrun/model_monitoring/applications/results.py,sha256=VVlu9Si7Tj2LNJzPQrp4_Qeyh9mxOVMu1Jwb5K2LfvY,3577
225
- mlrun/model_monitoring/db/__init__.py,sha256=sXYc6CF2I_HMJyUoY_4VueQf3OL-vhEAuWHxQvuoGRs,662
226
+ mlrun/model_monitoring/db/__init__.py,sha256=6Ic-X3Fh9XLPYMytmevGNSs-Hii1rAjLLoFTSPwTguw,736
227
+ mlrun/model_monitoring/db/v3io_tsdb_reader.py,sha256=F-GBZGB4kzn4oAa_eK-Aa7Vsi9TJgzsrv9lT6qtvCQk,4732
226
228
  mlrun/model_monitoring/db/stores/__init__.py,sha256=G3g1ZclwVWfdtFsuTAW1O2A2ndR4ku9xU9TivnIb4yk,4305
227
229
  mlrun/model_monitoring/db/stores/base/__init__.py,sha256=JufJETW3BXzPhFwbRa8dMf7BFGGZKceIWIMgr5x9n9c,599
228
- mlrun/model_monitoring/db/stores/base/store.py,sha256=nOWEwL1zDxYQ09QBALXK57k9FNFIuYg9H0Z_ntW-Xs8,7073
230
+ mlrun/model_monitoring/db/stores/base/store.py,sha256=MKXmb1dtaXMdBaBdQDColpAVr9YV2ZXpgh5idoe5Ihs,5361
229
231
  mlrun/model_monitoring/db/stores/sqldb/__init__.py,sha256=6CsTXAxeLbbf8yfCADTaxmiavqwrLEdYFJ-qc5kgDAY,569
230
- mlrun/model_monitoring/db/stores/sqldb/sql_store.py,sha256=eqRB7BhEi-wp98meYZaoX81uA2KX2JBWe7mSj-izzn4,27103
232
+ mlrun/model_monitoring/db/stores/sqldb/sql_store.py,sha256=gwJ5kH6r36ykEACdk6BgOQWqmkCaF_ZCv38DGGj_WuE,24131
231
233
  mlrun/model_monitoring/db/stores/sqldb/models/__init__.py,sha256=359IyQfnBqe4MXrKe4wCPAM2-ntqjUYCx1n_djSdNYg,2196
232
234
  mlrun/model_monitoring/db/stores/sqldb/models/base.py,sha256=2EZD0VCl69PRyvfQ9QAAQp08MGAUllmj5nXiCwyj7VU,4423
233
235
  mlrun/model_monitoring/db/stores/sqldb/models/mysql.py,sha256=IQxnupQAVnAu_J2aENRyKuRJuOc5EcfVtWBRCEpOwzA,2022
234
236
  mlrun/model_monitoring/db/stores/sqldb/models/sqlite.py,sha256=S45CfdLSq_XJVKz3ZtdA8imsWWnuKdHb696HjDktLTU,994
235
237
  mlrun/model_monitoring/db/stores/v3io_kv/__init__.py,sha256=6CsTXAxeLbbf8yfCADTaxmiavqwrLEdYFJ-qc5kgDAY,569
236
- mlrun/model_monitoring/db/stores/v3io_kv/kv_store.py,sha256=tk8J2cmw4Xqd6c40Cw4XoPQwlEWOkeAXi-sMYYoR9uM,30321
238
+ mlrun/model_monitoring/db/stores/v3io_kv/kv_store.py,sha256=AiJyuTHxO-fyKSf9ns1GHd9nC-wslUKu6I9FJRFLOWI,24133
239
+ mlrun/model_monitoring/db/tsdb/__init__.py,sha256=CDBQrSsgF3hzpwlXYawDCQERCyKJbA3Sdka0nZKTMWk,2589
240
+ mlrun/model_monitoring/db/tsdb/base.py,sha256=G0pGPSa6kxIj5KaT1HsoAKF3COTbTOJtuz8TNEOuzLQ,6575
241
+ mlrun/model_monitoring/db/tsdb/v3io/__init__.py,sha256=aL3bfmQsUQ-sbvKGdNihFj8gLCK3mSys0qDcXtYOwgc,616
242
+ mlrun/model_monitoring/db/tsdb/v3io/stream_graph_steps.py,sha256=qbiyBzrdWLJAKLmJV4K8jUxsAMbKGZ1vip7WNfRcpXM,4764
243
+ mlrun/model_monitoring/db/tsdb/v3io/v3io_connector.py,sha256=EDUo72PaV6SDUk4XlHGvKJ7gO5D6HfGhFI-9jBqVH9c,17758
237
244
  mlrun/model_monitoring/metrics/__init__.py,sha256=6CsTXAxeLbbf8yfCADTaxmiavqwrLEdYFJ-qc5kgDAY,569
238
245
  mlrun/model_monitoring/metrics/histogram_distance.py,sha256=E9_WIl2vd6qNvoHVHoFcnuQk3ekbFWOdi8aU7sHrfk4,4724
239
246
  mlrun/package/__init__.py,sha256=uWILzN42bcq5vFRk6ptxEmn1I5uBWAnhaJr7e4H834w,7082
@@ -253,24 +260,23 @@ mlrun/package/utils/_pickler.py,sha256=aDFbafkOK7K_n0CFn3OBRGD1cDBx7-iGN88zd5ywb
253
260
  mlrun/package/utils/_supported_format.py,sha256=O3LPTvZ6A-nGi6mB2kTzJp2DQ-cCOgnlvFCiIqetPTY,2357
254
261
  mlrun/package/utils/log_hint_utils.py,sha256=40X7oVzCiAIGsTTSON0iYNHj-_1Y4l4SDMThTA85If8,3696
255
262
  mlrun/package/utils/type_hint_utils.py,sha256=JYrek6vuN3z7e6MGUD3qBLDfQ03C4puZXNTpDSj-VrM,14695
256
- mlrun/platforms/__init__.py,sha256=2Rt8sx4rBwa7D3SaEAImcZPnj2auPaundk-mStgGcXI,2352
257
- mlrun/platforms/iguazio.py,sha256=Qw4_mqSsuq6wrJBIres22Fbc6-YZOxZSVkdlv1xR7Kk,19441
258
- mlrun/platforms/other.py,sha256=jA-3e8rNq6NSzDHsox4evVMKVN9cnTTYOnVU6rL0zOA,11828
263
+ mlrun/platforms/__init__.py,sha256=ggSGF7inITs6S-vj9u4S9X_5psgbA0G3GVqf7zu8qYc,2406
264
+ mlrun/platforms/iguazio.py,sha256=1h5BpdAEQJBg2vIt7ySjUADU0ip5OkaMYr0_VREi9ys,13084
259
265
  mlrun/projects/__init__.py,sha256=Lv5rfxyXJrw6WGOWJKhBz66M6t3_zsNMCfUD6waPwx4,1153
260
- mlrun/projects/operations.py,sha256=Myzx1dTRQoThBRoxisi5-cpyE8VtbZE5QCrSA_DcIqc,18570
261
- mlrun/projects/pipelines.py,sha256=-AZsHXtJAI-ws7R2JxvEY1pvi7qPohQAy6xHq_zuKDc,41279
262
- mlrun/projects/project.py,sha256=63BLIFuEjXBZ1rPBGI9D-hhylUGYYHifucqTnNEjMp8,173319
263
- mlrun/runtimes/__init__.py,sha256=H2C77DX4IUsOpGdZT-yrD3JcTxg3J2IR8Tf4HRPOcBQ,8652
264
- mlrun/runtimes/base.py,sha256=XLDwuSB58DhtcO-GPiPSr9LU2cOTk6p40sE4gGa8sOs,36809
266
+ mlrun/projects/operations.py,sha256=C-28FkDxJvjSn_KKgVqqXXKUuEsM7BIbqaE44vVWYjs,18712
267
+ mlrun/projects/pipelines.py,sha256=9nYzoiw7BIb1g8NzJBIoFoo4tROXvxsVn85CBbYG2QQ,38140
268
+ mlrun/projects/project.py,sha256=XmwwI_uevmZTt8Lx8g5kN-fgEfM7RUgzwVFaF46lt7Q,175283
269
+ mlrun/runtimes/__init__.py,sha256=hDtZU6gBb25Ay-AXjJ7YvzrSQhsvjEVwtz-hmBkw3vA,8695
270
+ mlrun/runtimes/base.py,sha256=Yr_ATgHjCsE9jbbn8tVhjV3Ntky7MA1WjGFLlSxlXHc,36857
265
271
  mlrun/runtimes/daskjob.py,sha256=xvN8ajs3-_voqxrfz6b3rh_idNw4ypRAkPRWGOnDMGA,19149
266
272
  mlrun/runtimes/funcdoc.py,sha256=CC9cWRPgBiM2sk4NJTqusjc6O9kZ-49vGA5WRPjREKE,9796
267
273
  mlrun/runtimes/function_reference.py,sha256=iWKRe4r2GTc5S8FOIASYUNLwwne8NqIui51PFr8Q4mg,4918
268
274
  mlrun/runtimes/generators.py,sha256=v28HdNgxdHvj888G1dTnUeQZz-D9iTO0hoGeZbCdiuQ,7241
269
- mlrun/runtimes/kubejob.py,sha256=pqtIkwem7WRrw2DqrOAO8tAmIVJO4-QVof-zmHVt_WA,8641
275
+ mlrun/runtimes/kubejob.py,sha256=ptBnMTIjukbEznkdixmbGvBqzujXrRzqNfP7ze6M76M,8660
270
276
  mlrun/runtimes/local.py,sha256=2zWAjEQE2wS7mf9tjn2Ru2_H8nNh22IjH4humcgfWqA,21790
271
- mlrun/runtimes/pod.py,sha256=r7znudhzyyFRtP3sX9J2lb8iKMUbdKtqbSfCxk4yYGE,65232
272
- mlrun/runtimes/remotesparkjob.py,sha256=ORkKmZRz_V3YiNE1NF7JIa_hI_LWbKEyI15Qb6R6g5I,7326
273
- mlrun/runtimes/utils.py,sha256=8CKMrHA3RRsWLccsYFDOrS9Eh0RWxp6EcHxwvaHKVks,15462
277
+ mlrun/runtimes/pod.py,sha256=I9cfZH-u7ZmAHKc8D7htzKILO1K9lzfoHjBOVe29trU,64406
278
+ mlrun/runtimes/remotesparkjob.py,sha256=1MJLNzrw17wQoXy11KowHU18h_R_6R9iNZpqPMzt28c,7329
279
+ mlrun/runtimes/utils.py,sha256=MehwJHCm2ZMcnWqDp06karKEN-6rp98-muQiD1pkVTA,14188
274
280
  mlrun/runtimes/databricks_job/__init__.py,sha256=kXGBqhLN0rlAx0kTXhozGzFsIdSqW0uTSKMmsLgq_is,569
275
281
  mlrun/runtimes/databricks_job/databricks_cancel_task.py,sha256=sIqIg5DQAf4j0wCPA-G0GoxY6vacRddxCy5KDUZszek,2245
276
282
  mlrun/runtimes/databricks_job/databricks_runtime.py,sha256=a9W7A8sboteQov0Z9uVcthEU3FGYFf2cdAsi-vdjH1w,12749
@@ -279,15 +285,15 @@ mlrun/runtimes/mpijob/__init__.py,sha256=V_1gQD1VHa0Qvjqgyv8RLouH27Sy9YTwj2ZG62o
279
285
  mlrun/runtimes/mpijob/abstract.py,sha256=kDWo-IY1FKLZhI30j38Xx9HMhlUvHezfd1DT2ShoxZY,9161
280
286
  mlrun/runtimes/mpijob/v1.py,sha256=1XQZC7AIMGX_AQCbApcwpH8I7y39-v0v2O35MvxjXoo,3213
281
287
  mlrun/runtimes/nuclio/__init__.py,sha256=gx1kizzKv8pGT5TNloN1js1hdbxqDw3rM90sLVYVffY,794
282
- mlrun/runtimes/nuclio/api_gateway.py,sha256=hHWzBuqk2HZz_2QKJ7fV0ZvgZwb-rrZUySdi0om_ujk,19826
283
- mlrun/runtimes/nuclio/function.py,sha256=dTd_plHPPM9UXSK5-q4MT8ngbCveXJT50R2ayze6HYU,49342
288
+ mlrun/runtimes/nuclio/api_gateway.py,sha256=MKxlXHLU81AUv07_IBdK2hUyzr23RDzXGYCh4P_z7iA,23693
289
+ mlrun/runtimes/nuclio/function.py,sha256=hqBghjh8FynaZ_gc6aqECwj-sSdm4S5NAY1ysqhJWwk,49028
284
290
  mlrun/runtimes/nuclio/nuclio.py,sha256=sLK8KdGO1LbftlL3HqPZlFOFTAAuxJACZCVl1c0Ha6E,2942
285
291
  mlrun/runtimes/nuclio/serving.py,sha256=H3bSI33FmfOBkL99ZU6_xKbFx4qKdyQVdpIwwfhK5qo,29649
286
292
  mlrun/runtimes/nuclio/application/__init__.py,sha256=rRs5vasy_G9IyoTpYIjYDafGoL6ifFBKgBtsXn31Atw,614
287
- mlrun/runtimes/nuclio/application/application.py,sha256=c8Z-eFlqcjn9b91xygfwT2ijLvo688p0EaieZlYnzKg,13349
293
+ mlrun/runtimes/nuclio/application/application.py,sha256=uoOuf0JJQd63uZYwZs0G2NoV6_vX21k2TXdx7J9XyfE,18856
288
294
  mlrun/runtimes/nuclio/application/reverse_proxy.go,sha256=JIIYae6bXzCLf3jXuu49KWPQYoXr_FDQ2Rbo1OWKAd0,3150
289
295
  mlrun/runtimes/sparkjob/__init__.py,sha256=_KPvk0qefeLtHO6lxQE_AMOGiMTG_OT48eRCE4Z2ldw,709
290
- mlrun/runtimes/sparkjob/spark3job.py,sha256=yU-PxEI2pDJK5LHXTTcmrdjmO1Jwrj5Zyf8NwPDnZyA,41189
296
+ mlrun/runtimes/sparkjob/spark3job.py,sha256=1bNRy72Migrh_ZASQOx7UlSZTbB-xpNc76sz4kfc9UM,41191
291
297
  mlrun/serving/__init__.py,sha256=_6HRAOuS2Ehjo3vwx5h1aI_-JppxEAsl4VfEERAbGFE,1078
292
298
  mlrun/serving/merger.py,sha256=PXLn3A21FiLteJHaDSLm5xKNT-80eTTjfHUJnBX1gKY,6116
293
299
  mlrun/serving/remote.py,sha256=MrFByphQWmIsKXqw-MOwl2Q1hbtWReYVRKvlcKj9pfw,17980
@@ -299,7 +305,7 @@ mlrun/serving/utils.py,sha256=WO0n_YTO0YVPTjp_90zxRl4vey4flDgw5vaOHK5p_qY,3871
299
305
  mlrun/serving/v1_serving.py,sha256=by4myxlnwyZ0ijQ5fURilGCK1sUpdQL2Il1VR3Xqpxg,11805
300
306
  mlrun/serving/v2_serving.py,sha256=3Nx_-Cbgsr4ch5O2S5QYoWIbpydN-QInET_2-BtbSBM,23631
301
307
  mlrun/track/__init__.py,sha256=LWRUHJt8JyFW17FyNPOVyWd-NXTf1iptzsK9KFj5fuY,765
302
- mlrun/track/tracker.py,sha256=y-UdhC2nzM6r-yHCwvrfiHRr93xsr4JRsZTxDrTTRJo,3541
308
+ mlrun/track/tracker.py,sha256=hSi9sMxB7hhZalt6Q8GXDnK4UoCbXHzKTrpUPC9hZv4,3555
303
309
  mlrun/track/tracker_manager.py,sha256=IYBl99I62IC6VCCmG1yt6JoHNOQXa53C4DURJ2sWgio,5726
304
310
  mlrun/track/trackers/__init__.py,sha256=9xft8YjJnblwqt8f05htmOt_eDzVBVQN07RfY_SYLCs,569
305
311
  mlrun/track/trackers/mlflow_tracker.py,sha256=HkNO9fENOCl1DgAU72FclowVnFfmyQlZeWlj4GklvMI,23258
@@ -309,29 +315,29 @@ mlrun/utils/azure_vault.py,sha256=IEFizrDGDbAaoWwDr1WoA88S_EZ0T--vjYtY-i0cvYQ,34
309
315
  mlrun/utils/clones.py,sha256=mJpx4nyFiY6jlBCvFABsNuyi_mr1mvfPWn81vlafpOU,7361
310
316
  mlrun/utils/condition_evaluator.py,sha256=-nGfRmZzivn01rHTroiGY4rqEv8T1irMyhzxEei-sKc,1897
311
317
  mlrun/utils/db.py,sha256=KEa-vzicUhzIwo1wBXax2ZuXtYgf5to7wnsY3CYCiOQ,1713
312
- mlrun/utils/helpers.py,sha256=pYq3-_HHvF_lbKd7wwlxufIJPSkqo5ubVnj9yFGY4js,51670
318
+ mlrun/utils/helpers.py,sha256=k0WuKfbzMY_6EpuUd-ozG7zyYedY8vSoT3cnS5yiwcE,52897
313
319
  mlrun/utils/http.py,sha256=l_JCPrCq8bfYUcUcAFWUPvb9Xu-93bLGIhV-H-XCU9s,8707
314
- mlrun/utils/logger.py,sha256=6-XMv1ucg9NqTstLpiji9qb06XHpx2LvNA8JxU1J5Tk,8133
320
+ mlrun/utils/logger.py,sha256=0VoctKdsxqGDrzTZGHj9Coz1yWeEIuF9FIuNzkMDOo8,8228
315
321
  mlrun/utils/regex.py,sha256=Nd7xnDHU9PEOsse6rFwLNVgU4AaYCyuwMmQ9qgx2-Vw,4581
316
322
  mlrun/utils/retryer.py,sha256=GzDMeATklqxcKSLYaFYcqioh8e5cbWRxA1_XKrGR1A4,7570
317
323
  mlrun/utils/singleton.py,sha256=p1Y-X0mPSs_At092GS-pZCA8CTR62HOqPU07_ZH6-To,869
318
324
  mlrun/utils/v3io_clients.py,sha256=7eReciHBPLuLW6b5DIc8emnmrjh4D8hXPuqZDooR6HQ,1284
319
325
  mlrun/utils/vault.py,sha256=xUiKL17dCXjwQJ33YRzQj0oadUXATlFWPzKKYAESoQk,10447
320
326
  mlrun/utils/notifications/__init__.py,sha256=eUzQDBxSQmMZASRY-YAnYS6tL5801P0wEjycp3Dvoe0,990
321
- mlrun/utils/notifications/notification_pusher.py,sha256=z4nW0atI_IZZLKR8Awb0PPoJFurpLndgjkizlXyR8Z8,26279
327
+ mlrun/utils/notifications/notification_pusher.py,sha256=bY08aBFmlvDlZZcHhn_439zthZ7gTcH6CwPTMwBmXDU,26648
322
328
  mlrun/utils/notifications/notification/__init__.py,sha256=Kucv9d0x1MBk-6kxpe1-3He6eKCRinPeItcbiJsdDqg,2092
323
- mlrun/utils/notifications/notification/base.py,sha256=sq6ICoboUeVwNPhMenaTFDEFnu6fo-7rLDRzjVKnIbc,2778
329
+ mlrun/utils/notifications/notification/base.py,sha256=b0nncv0oV01wNeT-3upWQkcvyVVbBbJkrFgk6PMAusw,2788
324
330
  mlrun/utils/notifications/notification/console.py,sha256=MAVk7v5PJ52vdGRv76YcEPixWgV0licBPWGpR01uR40,2643
325
331
  mlrun/utils/notifications/notification/git.py,sha256=ELZ-ZmbFDb39A0OUIhtvuSbqJoVfF_o_IOxMD5eBlv4,5351
326
332
  mlrun/utils/notifications/notification/ipython.py,sha256=ZtVL30B_Ha0VGoo4LxO-voT1U41IYwyytovv5X_LsI4,2066
327
- mlrun/utils/notifications/notification/slack.py,sha256=E0l-ptI_OU_HVF_iYd1dQNPI264L6nUFVp4KY_YSZx8,6337
328
- mlrun/utils/notifications/notification/webhook.py,sha256=m6q7zhIUPjqzHwYXOQf_SjRXB7vQ5snE__gTHP9gRU8,2748
333
+ mlrun/utils/notifications/notification/slack.py,sha256=Hu-hXOGjLFCUJ-FGNda-oqEF8QYscPnxks5lsj4NQoE,6491
334
+ mlrun/utils/notifications/notification/webhook.py,sha256=WgfxX1cpm8n2A-O08pwnsP4tzbxxv_vNUSnyXG4uKts,2752
329
335
  mlrun/utils/version/__init__.py,sha256=7kkrB7hEZ3cLXoWj1kPoDwo4MaswsI2JVOBpbKgPAgc,614
330
- mlrun/utils/version/version.json,sha256=x82UVdUlBMQxG0pvdafRi5sqH0ltdY6tPZ31C6WPxRs,89
336
+ mlrun/utils/version/version.json,sha256=w6srZgOjK40lzG7e7Yc_1_qNkAk-UlQ8Q5OGk0KR4ZA,89
331
337
  mlrun/utils/version/version.py,sha256=eEW0tqIAkU9Xifxv8Z9_qsYnNhn3YH7NRAfM-pPLt1g,1878
332
- mlrun-1.7.0rc15.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
333
- mlrun-1.7.0rc15.dist-info/METADATA,sha256=LeqTV_rtllROVT2K1oxbo2cjwt5_OfgK2hbqHyD14T4,18801
334
- mlrun-1.7.0rc15.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
335
- mlrun-1.7.0rc15.dist-info/entry_points.txt,sha256=1Owd16eAclD5pfRCoJpYC2ZJSyGNTtUr0nCELMioMmU,46
336
- mlrun-1.7.0rc15.dist-info/top_level.txt,sha256=NObLzw3maSF9wVrgSeYBv-fgnHkAJ1kEkh12DLdd5KM,6
337
- mlrun-1.7.0rc15.dist-info/RECORD,,
338
+ mlrun-1.7.0rc17.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
339
+ mlrun-1.7.0rc17.dist-info/METADATA,sha256=w6fL0MFvJFx5cobk8TjALi9-J7rpXdGdFOBcD3xymGQ,18896
340
+ mlrun-1.7.0rc17.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
341
+ mlrun-1.7.0rc17.dist-info/entry_points.txt,sha256=1Owd16eAclD5pfRCoJpYC2ZJSyGNTtUr0nCELMioMmU,46
342
+ mlrun-1.7.0rc17.dist-info/top_level.txt,sha256=NObLzw3maSF9wVrgSeYBv-fgnHkAJ1kEkh12DLdd5KM,6
343
+ mlrun-1.7.0rc17.dist-info/RECORD,,