mlrun 1.7.1rc10__py3-none-any.whl → 1.7.2rc1__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/config.py +8 -0
- mlrun/data_types/data_types.py +1 -0
- mlrun/data_types/spark.py +3 -2
- mlrun/data_types/to_pandas.py +11 -2
- mlrun/datastore/targets.py +2 -1
- mlrun/runtimes/nuclio/function.py +2 -1
- mlrun/utils/version/version.json +2 -2
- {mlrun-1.7.1rc10.dist-info → mlrun-1.7.2rc1.dist-info}/METADATA +1 -1
- {mlrun-1.7.1rc10.dist-info → mlrun-1.7.2rc1.dist-info}/RECORD +13 -13
- {mlrun-1.7.1rc10.dist-info → mlrun-1.7.2rc1.dist-info}/LICENSE +0 -0
- {mlrun-1.7.1rc10.dist-info → mlrun-1.7.2rc1.dist-info}/WHEEL +0 -0
- {mlrun-1.7.1rc10.dist-info → mlrun-1.7.2rc1.dist-info}/entry_points.txt +0 -0
- {mlrun-1.7.1rc10.dist-info → mlrun-1.7.2rc1.dist-info}/top_level.txt +0 -0
mlrun/config.py
CHANGED
|
@@ -120,6 +120,14 @@ default_config = {
|
|
|
120
120
|
"projects": {
|
|
121
121
|
"summaries": {
|
|
122
122
|
"cache_interval": "30",
|
|
123
|
+
"feature_gates": {
|
|
124
|
+
"artifacts": "enabled",
|
|
125
|
+
"schedules": "enabled",
|
|
126
|
+
"feature_sets": "enabled",
|
|
127
|
+
"models": "enabled",
|
|
128
|
+
"runs": "enabled",
|
|
129
|
+
"pipelines": "enabled",
|
|
130
|
+
},
|
|
123
131
|
},
|
|
124
132
|
},
|
|
125
133
|
},
|
mlrun/data_types/data_types.py
CHANGED
mlrun/data_types/spark.py
CHANGED
|
@@ -18,7 +18,7 @@ from os import environ
|
|
|
18
18
|
import numpy as np
|
|
19
19
|
import pytz
|
|
20
20
|
from pyspark.sql.functions import to_utc_timestamp
|
|
21
|
-
from pyspark.sql.types import BooleanType, DoubleType
|
|
21
|
+
from pyspark.sql.types import BooleanType, DoubleType
|
|
22
22
|
|
|
23
23
|
from mlrun.feature_store.retrieval.spark_merger import spark_df_to_pandas
|
|
24
24
|
from mlrun.utils import logger
|
|
@@ -143,7 +143,8 @@ def get_df_stats_spark(df, options, num_bins=20, sample_size=None):
|
|
|
143
143
|
timestamp_columns = set()
|
|
144
144
|
boolean_columns = set()
|
|
145
145
|
for field in df_after_type_casts.schema.fields:
|
|
146
|
-
|
|
146
|
+
# covers TimestampType and TimestampNTZType, which was added in PySpark 3.4.0
|
|
147
|
+
is_timestamp = field.dataType.typeName().startswith("timestamp")
|
|
147
148
|
is_boolean = isinstance(field.dataType, BooleanType)
|
|
148
149
|
if is_timestamp:
|
|
149
150
|
df_after_type_casts = df_after_type_casts.withColumn(
|
mlrun/data_types/to_pandas.py
CHANGED
|
@@ -244,6 +244,15 @@ def _to_corrected_pandas_type(dt):
|
|
|
244
244
|
|
|
245
245
|
|
|
246
246
|
def spark_df_to_pandas(spark_df):
|
|
247
|
+
import pyspark
|
|
248
|
+
|
|
249
|
+
if semver.parse(pyspark.__version__) >= semver.Version(3, 5, 0):
|
|
250
|
+
|
|
251
|
+
def to_pandas(spark_df_inner):
|
|
252
|
+
return spark_df_inner.toPandas()
|
|
253
|
+
else:
|
|
254
|
+
to_pandas = _to_pandas
|
|
255
|
+
|
|
247
256
|
# as of pyspark 3.2.3, toPandas fails to convert timestamps unless we work around the issue
|
|
248
257
|
# when we upgrade pyspark, we should check whether this workaround is still necessary
|
|
249
258
|
# see https://stackoverflow.com/questions/76389694/transforming-pyspark-to-pandas-dataframe
|
|
@@ -262,9 +271,9 @@ def spark_df_to_pandas(spark_df):
|
|
|
262
271
|
)
|
|
263
272
|
type_conversion_dict[field.name] = "datetime64[ns]"
|
|
264
273
|
|
|
265
|
-
df =
|
|
274
|
+
df = to_pandas(spark_df)
|
|
266
275
|
if type_conversion_dict:
|
|
267
276
|
df = df.astype(type_conversion_dict)
|
|
268
277
|
return df
|
|
269
278
|
else:
|
|
270
|
-
return
|
|
279
|
+
return to_pandas(spark_df)
|
mlrun/datastore/targets.py
CHANGED
|
@@ -1136,7 +1136,8 @@ class CSVTarget(BaseStoreTarget):
|
|
|
1136
1136
|
import pyspark.sql.functions as funcs
|
|
1137
1137
|
|
|
1138
1138
|
for col_name, col_type in df.dtypes:
|
|
1139
|
-
|
|
1139
|
+
# covers TimestampType and TimestampNTZType, which was added in PySpark 3.4.0
|
|
1140
|
+
if col_type.startswith("timestamp"):
|
|
1140
1141
|
# df.write.csv saves timestamps with millisecond precision, but we want microsecond precision
|
|
1141
1142
|
# for compatibility with storey.
|
|
1142
1143
|
df = df.withColumn(
|
|
@@ -1035,9 +1035,10 @@ class RemoteRuntime(KubeResource):
|
|
|
1035
1035
|
if args and sidecar.get("command"):
|
|
1036
1036
|
sidecar["args"] = mlrun.utils.helpers.as_list(args)
|
|
1037
1037
|
|
|
1038
|
-
#
|
|
1038
|
+
# put the configured resources on the sidecar container instead of the reverse proxy container
|
|
1039
1039
|
if self.spec.resources:
|
|
1040
1040
|
sidecar["resources"] = self.spec.resources
|
|
1041
|
+
self.spec.resources = None
|
|
1041
1042
|
|
|
1042
1043
|
def _set_sidecar(self, name: str) -> dict:
|
|
1043
1044
|
self.spec.config.setdefault("spec.sidecars", [])
|
mlrun/utils/version/version.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
mlrun/__init__.py,sha256=y08M1JcKXy5-9_5WaI9fn5aV5BxIQ5QkbduJK0OxWbA,7470
|
|
2
2
|
mlrun/__main__.py,sha256=mC_Izs4kuHUHQi88QJFLN22n1kbygGM0wAirjNt7uj4,45938
|
|
3
|
-
mlrun/config.py,sha256=
|
|
3
|
+
mlrun/config.py,sha256=wSwpgwg3dCTogMSLX5AX0tcZKuafSnv1RaoL1Ws7vlk,69056
|
|
4
4
|
mlrun/errors.py,sha256=G8GP4_wb3v2UEbiAS8OlamC7nYJNzbSvQ3sViZlyYhk,8063
|
|
5
5
|
mlrun/execution.py,sha256=nXvvN8euzjuxhJouJD8VxfK0keTTA6UoMrcD_17AL-4,44252
|
|
6
6
|
mlrun/features.py,sha256=1VlN5mdSvUrLSJJlJWk4mXp9YoNxkFTu36IGn9AbN7s,15539
|
|
@@ -73,10 +73,10 @@ mlrun/common/schemas/model_monitoring/constants.py,sha256=Wha21Iev3Nr9ugB1Ms_wrm
|
|
|
73
73
|
mlrun/common/schemas/model_monitoring/grafana.py,sha256=SG13MFUUz_tk6-mWeSx17qcdEW4ekicxqNtnMSwRTCY,1559
|
|
74
74
|
mlrun/common/schemas/model_monitoring/model_endpoints.py,sha256=5vvjNX1bV98VSGdT4jwHr5ArKC9v_c1iHlaTf82fSUY,13198
|
|
75
75
|
mlrun/data_types/__init__.py,sha256=EkxfkFoHb91zz3Aymq-KZfCHlPMzEc3bBqgzPUwmHWY,1087
|
|
76
|
-
mlrun/data_types/data_types.py,sha256=
|
|
76
|
+
mlrun/data_types/data_types.py,sha256=0_oKLC6-sXL2_nnaDMP_HSXB3fD1nJAG4J2Jq6sGNNw,4998
|
|
77
77
|
mlrun/data_types/infer.py,sha256=z2EbSpR6xWEE5-HRUtDZkapHQld3xMbzXtTX83K-690,6134
|
|
78
|
-
mlrun/data_types/spark.py,sha256=
|
|
79
|
-
mlrun/data_types/to_pandas.py,sha256
|
|
78
|
+
mlrun/data_types/spark.py,sha256=ADlhaPPRDbHFrQA1jmMldGx8SP4dNBCL8Pyt0WyXWmU,9588
|
|
79
|
+
mlrun/data_types/to_pandas.py,sha256=KOy0FLXPJirsgH6szcC5BI6t70yVDCjuo6LmuYHNTuI,11429
|
|
80
80
|
mlrun/datastore/__init__.py,sha256=y2_NkHUiz9WKJ1XWeUHX-MKErwmIag6nxZ7Z06EcSk0,4180
|
|
81
81
|
mlrun/datastore/alibaba_oss.py,sha256=-RMA4vCE4rar-D57Niy3tY_6bXKHLFpMp28z5YR7-jI,4888
|
|
82
82
|
mlrun/datastore/azure_blob.py,sha256=9qkgrEMXGiuYYcc6b6HkuHlRHDbl0p7tIzeWxAAcEVs,12724
|
|
@@ -96,7 +96,7 @@ mlrun/datastore/spark_udf.py,sha256=NnnB3DZxZb-rqpRy7b-NC7QWXuuqFn3XkBDc86tU4mQ,
|
|
|
96
96
|
mlrun/datastore/spark_utils.py,sha256=_AsVoU5Ix_-W7Gyq8io8V-2GTk0m8THJNDP3WGGaWJY,2865
|
|
97
97
|
mlrun/datastore/store_resources.py,sha256=rcLoG506AMmR8qPJU_gE-G5d34VJVV_vNlZ3VHqho6c,6869
|
|
98
98
|
mlrun/datastore/storeytargets.py,sha256=uNYG4nCBD3JIfa51CG4cDe9ryc9oIcqUdUXKvCPB6uE,5086
|
|
99
|
-
mlrun/datastore/targets.py,sha256=
|
|
99
|
+
mlrun/datastore/targets.py,sha256=R-w-_pDlg_fzM5zdzBfdyBQ7PW8q2MqO8Z4k-Xuaw90,80549
|
|
100
100
|
mlrun/datastore/utils.py,sha256=l9dLZb_VCbHs_htqMFRv4qiestZ8z8K-4eY1MxHS8wE,7720
|
|
101
101
|
mlrun/datastore/v3io.py,sha256=HxP6mygiYM6leDAbQ9KdTxObLCt9yGMro0YhfdU6KUo,8157
|
|
102
102
|
mlrun/datastore/wasbfs/__init__.py,sha256=s5Ul-0kAhYqFjKDR2X0O2vDGDbLQQduElb32Ev56Te4,1343
|
|
@@ -294,7 +294,7 @@ mlrun/runtimes/mpijob/abstract.py,sha256=kDWo-IY1FKLZhI30j38Xx9HMhlUvHezfd1DT2Sh
|
|
|
294
294
|
mlrun/runtimes/mpijob/v1.py,sha256=1XQZC7AIMGX_AQCbApcwpH8I7y39-v0v2O35MvxjXoo,3213
|
|
295
295
|
mlrun/runtimes/nuclio/__init__.py,sha256=gx1kizzKv8pGT5TNloN1js1hdbxqDw3rM90sLVYVffY,794
|
|
296
296
|
mlrun/runtimes/nuclio/api_gateway.py,sha256=oQRSOvqtODKCzT2LqlqSXZbq2vcZ7epsFZwO9jvarhc,26899
|
|
297
|
-
mlrun/runtimes/nuclio/function.py,sha256=
|
|
297
|
+
mlrun/runtimes/nuclio/function.py,sha256=jtwtD9xfH3261cuekuHT97oBhNDqjBXCzHgQ2Y6IYs8,52184
|
|
298
298
|
mlrun/runtimes/nuclio/nuclio.py,sha256=sLK8KdGO1LbftlL3HqPZlFOFTAAuxJACZCVl1c0Ha6E,2942
|
|
299
299
|
mlrun/runtimes/nuclio/serving.py,sha256=L1Tz5EZyo8JZmUBNmIRYL9AoWfqSm4zLQQ9DWbnlmp8,29726
|
|
300
300
|
mlrun/runtimes/nuclio/application/__init__.py,sha256=rRs5vasy_G9IyoTpYIjYDafGoL6ifFBKgBtsXn31Atw,614
|
|
@@ -341,11 +341,11 @@ mlrun/utils/notifications/notification/ipython.py,sha256=ZtVL30B_Ha0VGoo4LxO-voT
|
|
|
341
341
|
mlrun/utils/notifications/notification/slack.py,sha256=wqpFGr5BTvFO5KuUSzFfxsgmyU1Ohq7fbrGeNe9TXOk,7006
|
|
342
342
|
mlrun/utils/notifications/notification/webhook.py,sha256=cb9w1Mc8ENfJBdgan7iiVHK9eVls4-R3tUxmXM-P-8I,4746
|
|
343
343
|
mlrun/utils/version/__init__.py,sha256=7kkrB7hEZ3cLXoWj1kPoDwo4MaswsI2JVOBpbKgPAgc,614
|
|
344
|
-
mlrun/utils/version/version.json,sha256=
|
|
344
|
+
mlrun/utils/version/version.json,sha256=sDk3CDMueqP8IH8s0yEDeuuj3VXORqX7IyNjtmlQq-Q,88
|
|
345
345
|
mlrun/utils/version/version.py,sha256=eEW0tqIAkU9Xifxv8Z9_qsYnNhn3YH7NRAfM-pPLt1g,1878
|
|
346
|
-
mlrun-1.7.
|
|
347
|
-
mlrun-1.7.
|
|
348
|
-
mlrun-1.7.
|
|
349
|
-
mlrun-1.7.
|
|
350
|
-
mlrun-1.7.
|
|
351
|
-
mlrun-1.7.
|
|
346
|
+
mlrun-1.7.2rc1.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
|
347
|
+
mlrun-1.7.2rc1.dist-info/METADATA,sha256=5nu3JRwswWivHFCwSFHZXBl3pg1YwINYVUaHE_7f2lk,24167
|
|
348
|
+
mlrun-1.7.2rc1.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
|
|
349
|
+
mlrun-1.7.2rc1.dist-info/entry_points.txt,sha256=1Owd16eAclD5pfRCoJpYC2ZJSyGNTtUr0nCELMioMmU,46
|
|
350
|
+
mlrun-1.7.2rc1.dist-info/top_level.txt,sha256=NObLzw3maSF9wVrgSeYBv-fgnHkAJ1kEkh12DLdd5KM,6
|
|
351
|
+
mlrun-1.7.2rc1.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|