Snowpark Migration Accelerator: Versionshinweise¶
Bitte beachten Sie, dass die nachstehenden Versionshinweise nach Versionsdatum geordnet sind. Die Versionsnummern sowohl der Anwendung als auch des Konvertierungskerns werden unten angezeigt.
Version 3.1.0 (Feb 27, 2026)¶
Application & CLI Version: 3.1.0¶
Included SMA Core Version¶
Snowpark Conversion Core: 8.1.60
Included SnowConvert AI Version¶
SnowConvert AI Version 2.2.0 (Release Notes)
Engine Release Notes¶
Hinzugefügt¶
Added support for processing files located in a hidden folder (such as
.databrickswhen exported from the source). These files are now correctly processed by the SMA.Added 245 new PySpark elements to the SMA mapping table with a NotSupported status. These entries correspond to functions and methods introduced in PySpark 3.3.0 through 4.1.x:
219 functions (
pyspark.sql.functions)4 DataFrame methods
3 Column methods
5 Session methods
2 ReadWriter methods
12 Types classes
Added new EWIs for the following Pandas elements:
PNDSPY1019: pandas.core.arrays.datetimelike.DatelikeOps.strftime partial support
PNDSPY1020: pandas.core.arrays.datetimelike.TimelikeOps.ceil partial support
PNDSPY1021: pandas.core.arrays.datetimelike.TimelikeOps.floor partial support
PNDSPY1022: pandas.core.arrays.datetimelike.TimelikeOps.round partial support
PNDSPY1023: pandas.core.arrays.datetimes.DatetimeArray.day_name partial support
PNDSPY1024: pandas.core.arrays.datetimes.DatetimeArray.month_name partial support
PNDSPY1025: pandas.core.arrays.datetimes.DatetimeArray.tz_convert partial support
PNDSPY1026: pandas.core.arrays.datetimes.DatetimeArray.tz_localize partial support
PNDSPY1027: pandas.core.base.IndexOpsMixin.argmax partial support
PNDSPY1028: pandas.core.base.IndexOpsMixin.argmin partial support
PNDSPY1029: pandas.core.base.IndexOpsMixin.value_counts partial support
PNDSPY1030: pandas.core.frame.DataFrame.T partial support
PNDSPY1031: pandas.core.frame.DataFrame.__dataframe__ partial support
PNDSPY1032: pandas.core.frame.DataFrame.add partial support
PNDSPY1033: pandas.core.frame.DataFrame.align partial support
PNDSPY1034: pandas.core.frame.DataFrame.all partial support
PNDSPY1035: pandas.core.frame.DataFrame.any partial support
PNDSPY1036: pandas.core.frame.DataFrame.applymap partial support
PNDSPY1037: pandas.core.frame.DataFrame.asfreq partial support
PNDSPY1038: pandas.core.frame.DataFrame.astype partial support
PNDSPY1039: pandas.core.frame.DataFrame.at partial support
PNDSPY1040: pandas.core.frame.DataFrame.backfill partial support
PNDSPY1041: pandas.core.frame.DataFrame.bfill partial support
PNDSPY1042: pandas.core.frame.DataFrame.compare partial support
PNDSPY1043: pandas.core.frame.DataFrame.corr partial support
PNDSPY1044: pandas.core.frame.DataFrame.cumsum partial support
PNDSPY1045: pandas.core.frame.DataFrame.div partial support
PNDSPY1046: pandas.core.frame.DataFrame.divide partial support
PNDSPY1047: pandas.core.frame.DataFrame.dropna partial support
PNDSPY1048: pandas.core.frame.DataFrame.eq partial support
PNDSPY1049: pandas.core.frame.DataFrame.eval partial support
PNDSPY1050: pandas.core.frame.DataFrame.expanding partial support
PNDSPY1051: pandas.core.frame.DataFrame.ffill partial support
PNDSPY1052: pandas.core.frame.DataFrame.fillna partial support
PNDSPY1053: pandas.core.frame.DataFrame.floordiv partial support
PNDSPY1054: pandas.core.frame.DataFrame.from_records partial support
PNDSPY1055: pandas.core.frame.DataFrame.ge partial support
PNDSPY1056: pandas.core.frame.DataFrame.groupby partial support
PNDSPY1057: pandas.core.frame.DataFrame.gt partial support
PNDSPY1058: pandas.core.frame.DataFrame.idxmax partial support
PNDSPY1059: pandas.core.frame.DataFrame.idxmin partial support
PNDSPY1060: pandas.core.frame.DataFrame.info partial support
PNDSPY1061: pandas.core.frame.DataFrame.join partial support
PNDSPY1062: pandas.core.frame.DataFrame.le partial support
PNDSPY1063: pandas.core.frame.DataFrame.loc partial support
PNDSPY1064: pandas.core.frame.DataFrame.lt partial support
PNDSPY1065: pandas.core.frame.DataFrame.map partial support
PNDSPY1066: pandas.core.frame.DataFrame.mask partial support
PNDSPY1067: pandas.core.frame.DataFrame.melt partial support
PNDSPY1068: pandas.core.frame.DataFrame.merge partial support
PNDSPY1069: pandas.core.frame.DataFrame.mod partial support
PNDSPY1070: pandas.core.frame.DataFrame.mul partial support
PNDSPY1071: pandas.core.frame.DataFrame.multiply partial support
PNDSPY1072: pandas.core.frame.DataFrame.ne partial support
PNDSPY1073: pandas.core.frame.DataFrame.nlargest partial support
PNDSPY1074: pandas.core.frame.DataFrame.nsmallest partial support
PNDSPY1075: pandas.core.frame.DataFrame.nunique partial support
PNDSPY1076: pandas.core.frame.DataFrame.pad partial support
PNDSPY1077: pandas.core.frame.DataFrame.pct_change partial support
PNDSPY1078: pandas.core.frame.DataFrame.pivot partial support
PNDSPY1079: pandas.core.frame.DataFrame.pivot_table partial support
PNDSPY1080: pandas.core.frame.DataFrame.pow partial support
PNDSPY1081: pandas.core.frame.DataFrame.quantile partial support
PNDSPY1082: pandas.core.frame.DataFrame.radd partial support
PNDSPY1083: pandas.core.frame.DataFrame.rank partial support
PNDSPY1084: pandas.core.frame.DataFrame.rdiv partial support
PNDSPY1085: pandas.core.frame.DataFrame.reindex partial support
PNDSPY1086: pandas.core.frame.DataFrame.rename partial support
PNDSPY1087: pandas.core.frame.DataFrame.replace partial support
PNDSPY1088: pandas.core.frame.DataFrame.resample partial support
PNDSPY1089: pandas.core.frame.DataFrame.rfloordiv partial support
PNDSPY1090: pandas.core.frame.DataFrame.rmod partial support
PNDSPY1091: pandas.core.frame.DataFrame.rmul partial support
PNDSPY1092: pandas.core.frame.DataFrame.rolling partial support
PNDSPY1093: pandas.core.frame.DataFrame.round partial support
PNDSPY1094: pandas.core.frame.DataFrame.rpow partial support
PNDSPY1095: pandas.core.frame.DataFrame.rsub partial support
PNDSPY1096: pandas.core.frame.DataFrame.rtruediv partial support
PNDSPY1097: pandas.core.frame.DataFrame.sample partial support
PNDSPY1098: pandas.core.frame.DataFrame.shift partial support
PNDSPY1099: pandas.core.frame.DataFrame.skew partial support
PNDSPY1100: pandas.core.frame.DataFrame.sort_index partial support
PNDSPY1101: pandas.core.frame.DataFrame.sort_values partial support
PNDSPY1102: pandas.core.frame.DataFrame.stack partial support
PNDSPY1103: pandas.core.frame.DataFrame.std partial support
PNDSPY1104: pandas.core.frame.DataFrame.sub partial support
PNDSPY1105: pandas.core.frame.DataFrame.subtract partial support
PNDSPY1106: pandas.core.frame.DataFrame.to_csv partial support
PNDSPY1107: pandas.core.frame.DataFrame.transform partial support
PNDSPY1108: pandas.core.frame.DataFrame.transpose partial support
PNDSPY1109: pandas.core.frame.DataFrame.truediv partial support
PNDSPY1110: pandas.core.frame.DataFrame.tz_convert partial support
PNDSPY1111: pandas.core.frame.DataFrame.tz_localize partial support
PNDSPY1112: pandas.core.frame.DataFrame.unstack partial support
PNDSPY1113: pandas.core.frame.DataFrame.var partial support
PNDSPY1114: pandas.core.frame.DataFrame.where partial support
PNDSPY1115: pandas.core.generic.NDFrame.shift partial support
PNDSPY1116: pandas.core.groupby.generic.DataFrameGroupBy.agg partial support
PNDSPY1117: pandas.core.groupby.generic.DataFrameGroupBy.aggregate partial support
PNDSPY1118: pandas.core.groupby.generic.DataFrameGroupBy.fillna partial support
PNDSPY1119: pandas.core.groupby.generic.DataFrameGroupBy.idxmax partial support
PNDSPY1120: pandas.core.groupby.generic.DataFrameGroupBy.idxmin partial support
PNDSPY1121: pandas.core.groupby.generic.DataFrameGroupBy.transform partial support
PNDSPY1122: pandas.core.groupby.generic.DataFrameGroupBy.value_counts partial support
PNDSPY1123: pandas.core.groupby.groupby.BaseGroupBy.get_group partial support
PNDSPY1124: pandas.core.groupby.groupby.GroupBy.all partial support
PNDSPY1125: pandas.core.groupby.groupby.GroupBy.any partial support
PNDSPY1126: pandas.core.groupby.groupby.GroupBy.apply partial support
PNDSPY1127: pandas.core.groupby.groupby.GroupBy.bfill partial support
PNDSPY1128: pandas.core.groupby.groupby.GroupBy.ffill partial support
PNDSPY1129: pandas.core.groupby.groupby.GroupBy.first partial support
PNDSPY1130: pandas.core.groupby.groupby.GroupBy.last partial support
PNDSPY1131: pandas.core.groupby.groupby.GroupBy.pct_change partial support
PNDSPY1132: pandas.core.groupby.groupby.GroupBy.quantile partial support
PNDSPY1133: pandas.core.groupby.groupby.GroupBy.resample partial support
PNDSPY1134: pandas.core.groupby.groupby.GroupBy.rolling partial support
PNDSPY1135: pandas.core.groupby.groupby.GroupBy.shift partial support
PNDSPY1136: pandas.core.groupby.groupby.GroupBy.std partial support
PNDSPY1137: pandas.core.groupby.groupby.GroupBy.var partial support
PNDSPY1138: pandas.core.indexes.base.Index.all partial support
PNDSPY1139: pandas.core.indexes.base.Index.any partial support
PNDSPY1140: pandas.core.indexes.base.Index.nlevels partial support
PNDSPY1141: pandas.core.indexes.base.Index.reindex partial support
PNDSPY1142: pandas.core.indexes.base.Index.sort_values partial support
PNDSPY1143: pandas.core.indexes.datetimes.DatetimeIndex.ceil partial support
PNDSPY1144: pandas.core.indexes.datetimes.DatetimeIndex.day_name partial support
PNDSPY1145: pandas.core.indexes.datetimes.DatetimeIndex.floor partial support
PNDSPY1146: pandas.core.indexes.datetimes.DatetimeIndex.month_name partial support
PNDSPY1147: pandas.core.indexes.datetimes.DatetimeIndex.round partial support
PNDSPY1148: pandas.core.indexes.datetimes.DatetimeIndex.std partial support
PNDSPY1149: pandas.core.indexes.datetimes.DatetimeIndex.tz_convert partial support
PNDSPY1150: pandas.core.indexes.datetimes.DatetimeIndex.tz_localize partial support
PNDSPY1151: pandas.core.indexes.datetimes.bdate_range partial support
PNDSPY1152: pandas.core.indexes.datetimes.date_range partial support
PNDSPY1153: pandas.core.resample.Resampler.asfreq partial support
PNDSPY1154: pandas.core.resample.Resampler.bfill partial support
PNDSPY1155: pandas.core.resample.Resampler.ffill partial support
PNDSPY1156: pandas.core.resample.Resampler.fillna partial support
PNDSPY1157: pandas.core.resample.Resampler.first partial support
PNDSPY1158: pandas.core.resample.Resampler.last partial support
PNDSPY1159: pandas.core.resample.Resampler.quantile partial support
PNDSPY1160: pandas.core.resample.Resampler.std partial support
PNDSPY1161: pandas.core.resample.Resampler.var partial support
PNDSPY1162: pandas.core.reshape.concat.concat partial support
PNDSPY1163: pandas.core.reshape.melt.melt partial support
PNDSPY1164: pandas.core.reshape.merge.merge partial support
PNDSPY1165: pandas.core.reshape.merge.merge_asof partial support
PNDSPY1166: pandas.core.reshape.pivot.crosstab partial support
PNDSPY1167: pandas.core.reshape.pivot.pivot partial support
PNDSPY1168: pandas.core.reshape.pivot.pivot_table partial support
PNDSPY1169: pandas.core.reshape.tile.cut partial support
PNDSPY1170: pandas.core.reshape.tile.qcut partial support
PNDSPY1171: pandas.core.series.Series.add partial support
PNDSPY1172: pandas.core.series.Series.all partial support
PNDSPY1173: pandas.core.series.Series.any partial support
PNDSPY1174: pandas.core.series.Series.case_when partial support
PNDSPY1175: pandas.core.series.Series.compare partial support
PNDSPY1176: pandas.core.series.Series.cumsum partial support
PNDSPY1177: pandas.core.series.Series.div partial support
PNDSPY1178: pandas.core.series.Series.divide partial support
PNDSPY1179: pandas.core.series.Series.dropna partial support
PNDSPY1180: pandas.core.series.Series.eq partial support
PNDSPY1181: pandas.core.series.Series.flags partial support
PNDSPY1182: pandas.core.series.Series.floordiv partial support
PNDSPY1183: pandas.core.series.Series.ge partial support
PNDSPY1184: pandas.core.series.Series.groupby partial support
PNDSPY1185: pandas.core.series.Series.gt partial support
PNDSPY1186: pandas.core.series.Series.le partial support
PNDSPY1187: pandas.core.series.Series.lt partial support
PNDSPY1188: pandas.core.series.Series.map partial support
PNDSPY1189: pandas.core.series.Series.mod partial support
PNDSPY1190: pandas.core.series.Series.mul partial support
PNDSPY1191: pandas.core.series.Series.multiply partial support
PNDSPY1192: pandas.core.series.Series.ne partial support
PNDSPY1193: pandas.core.series.Series.nlargest partial support
PNDSPY1194: pandas.core.series.Series.nsmallest partial support
PNDSPY1195: pandas.core.series.Series.pow partial support
PNDSPY1196: pandas.core.series.Series.quantile partial support
PNDSPY1197: pandas.core.series.Series.radd partial support
PNDSPY1198: pandas.core.series.Series.rdiv partial support
PNDSPY1199: pandas.core.series.Series.reindex partial support
PNDSPY1200: pandas.core.series.Series.rename partial support
PNDSPY1201: pandas.core.series.Series.rfloordiv partial support
PNDSPY1202: pandas.core.series.Series.rmod partial support
PNDSPY1203: pandas.core.series.Series.rmul partial support
PNDSPY1204: pandas.core.series.Series.rpow partial support
PNDSPY1205: pandas.core.series.Series.rsub partial support
PNDSPY1206: pandas.core.series.Series.rtruediv partial support
PNDSPY1207: pandas.core.series.Series.skew partial support
PNDSPY1208: pandas.core.series.Series.sort_index partial support
PNDSPY1209: pandas.core.series.Series.sort_values partial support
PNDSPY1210: pandas.core.series.Series.std partial support
PNDSPY1211: pandas.core.series.Series.sub partial support
PNDSPY1212: pandas.core.series.Series.subtract partial support
PNDSPY1213: pandas.core.series.Series.truediv partial support
PNDSPY1214: pandas.core.series.Series.unstack partial support
PNDSPY1215: pandas.core.series.Series.var partial support
PNDSPY1216: pandas.core.strings.accessor.StringMethods.__getitem__ partial support
PNDSPY1217: pandas.core.strings.accessor.StringMethods.contains partial support
PNDSPY1218: pandas.core.strings.accessor.StringMethods.endswith partial support
PNDSPY1219: pandas.core.strings.accessor.StringMethods.get partial support
PNDSPY1220: pandas.core.strings.accessor.StringMethods.isdigit partial support
PNDSPY1221: pandas.core.strings.accessor.StringMethods.len partial support
PNDSPY1222: pandas.core.strings.accessor.StringMethods.lstrip partial support
PNDSPY1223: pandas.core.strings.accessor.StringMethods.replace partial support
PNDSPY1224: pandas.core.strings.accessor.StringMethods.rstrip partial support
PNDSPY1225: pandas.core.strings.accessor.StringMethods.slice partial support
PNDSPY1226: pandas.core.strings.accessor.StringMethods.split partial support
PNDSPY1227: pandas.core.strings.accessor.StringMethods.startswith partial support
PNDSPY1228: pandas.core.strings.accessor.StringMethods.strip partial support
PNDSPY1229: pandas.core.strings.accessor.StringMethods.translate partial support
PNDSPY1230: pandas.core.tools.datetimes.to_datetime partial support
PNDSPY1231: pandas.core.tools.numeric.to_numeric partial support
PNDSPY1232: pandas.core.tools.timedeltas.to_timedelta partial support
PNDSPY1233: pandas.core.window.ewm.ExponentialMovingWindow.corr partial support
PNDSPY1234: pandas.core.window.ewm.ExponentialMovingWindow.mean partial support
PNDSPY1235: pandas.core.window.ewm.ExponentialMovingWindow.std partial support
PNDSPY1236: pandas.core.window.ewm.ExponentialMovingWindow.sum partial support
PNDSPY1237: pandas.core.window.ewm.ExponentialMovingWindow.var partial support
PNDSPY1238: pandas.core.window.expanding.Expanding.corr partial support
PNDSPY1239: pandas.core.window.expanding.Expanding.count partial support
PNDSPY1240: pandas.core.window.expanding.Expanding.max partial support
PNDSPY1241: pandas.core.window.expanding.Expanding.mean partial support
PNDSPY1242: pandas.core.window.expanding.Expanding.min partial support
PNDSPY1243: pandas.core.window.expanding.Expanding.sem partial support
PNDSPY1244: pandas.core.window.expanding.Expanding.std partial support
PNDSPY1245: pandas.core.window.expanding.Expanding.sum partial support
PNDSPY1246: pandas.core.window.expanding.Expanding.var partial support
PNDSPY1247: pandas.core.window.rolling.Rolling.corr partial support
PNDSPY1248: pandas.core.window.rolling.Rolling.count partial support
PNDSPY1249: pandas.core.window.rolling.Rolling.max partial support
PNDSPY1250: pandas.core.window.rolling.Rolling.mean partial support
PNDSPY1251: pandas.core.window.rolling.Rolling.min partial support
PNDSPY1252: pandas.core.window.rolling.Rolling.sem partial support
PNDSPY1253: pandas.core.window.rolling.Rolling.std partial support
PNDSPY1254: pandas.core.window.rolling.Rolling.sum partial support
PNDSPY1255: pandas.core.window.rolling.Rolling.var partial support
PNDSPY1256: pandas.core.window.rolling.Window.mean partial support
PNDSPY1257: pandas.core.window.rolling.Window.std partial support
PNDSPY1258: pandas.core.window.rolling.Window.sum partial support
PNDSPY1259: pandas.core.window.rolling.Window.var partial support
PNDSPY1260: pandas.io.json._json.read_json partial support
PNDSPY1261: pandas.io.parquet.read_parquet partial support
PNDSPY1262: pandas.io.parsers.readers.read_csv partial support
Geändert¶
Updated the sfutils library implementation to support multiple levels of notebooks calls
Upgraded supported Snowpark Python version from
v1.41.0tov1.43.0. This upgrade includes the following mapping status changes: NotSupported → Direct (8 functions):pyspark.sql.functions.bool_and→snowflake.snowpark.functions.booland_aggpyspark.sql.functions.bucket→snowflake.snowpark.functions.bucketpyspark.sql.functions.cot→snowflake.snowpark.functions.cotpyspark.sql.functions.day→snowflake.snowpark.functions.daypyspark.sql.functions.every→snowflake.snowpark.functions.booland_aggpyspark.sql.functions.pi→snowflake.snowpark.functions.pipyspark.sql.functions.width_bucket→snowflake.snowpark.functions.width_bucketpyspark.sql.functions.zeroifnull→snowflake.snowpark.functions.zeroifnull
NotSupported → Rename (1 function):
pyspark.sql.functions.uuid→snowflake.snowpark.functions.uuid_stringUpgraded supported Snowpark Pandas version from
v1.41.0tov1.43.0.The mapping status of the following Pandas elements were updated: NotSupported → Direct (56 functions):
pandas.core.arrays.datetimes.DatetimeArray.datepandas.core.arrays.datetimes.DatetimeArray.normalizepandas.core.arrays.datetimes.DatetimeArray.timepandas.core.base.IndexOpsMixin.Tpandas.core.base.IndexOpsMixin.emptypandas.core.base.IndexOpsMixin.is_monotonic_decreasingpandas.core.base.IndexOpsMixin.is_monotonic_increasingpandas.core.base.IndexOpsMixin.is_uniquepandas.core.base.IndexOpsMixin.itempandas.core.base.IndexOpsMixin.ndimpandas.core.base.IndexOpsMixin.nuniquepandas.core.base.IndexOpsMixin.shapepandas.core.base.IndexOpsMixin.sizepandas.core.base.IndexOpsMixin.to_listpandas.core.base.IndexOpsMixin.to_numpypandas.core.base.IndexOpsMixin.tolistpandas.core.base.IndexOpsMixin.transposepandas.core.generic.NDFrame.abspandas.core.generic.NDFrame.add_prefixpandas.core.generic.NDFrame.add_suffixpandas.core.generic.NDFrame.attrspandas.core.generic.NDFrame.copypandas.core.generic.NDFrame.describepandas.core.generic.NDFrame.dtypespandas.core.generic.NDFrame.equalspandas.core.generic.NDFrame.firstpandas.core.generic.NDFrame.first_valid_indexpandas.core.generic.NDFrame.getpandas.core.generic.NDFrame.headpandas.core.generic.NDFrame.keyspandas.core.generic.NDFrame.lastpandas.core.generic.NDFrame.last_valid_indexpandas.core.generic.NDFrame.ndimpandas.core.generic.NDFrame.sizepandas.core.generic.NDFrame.squeezepandas.core.generic.NDFrame.tailpandas.core.generic.NDFrame.takepandas.core.generic.NDFrame.to_excelpandas.core.groupby.groupby.BaseGroupBy.groupspandas.core.groupby.groupby.GroupBy.countpandas.core.groupby.groupby.GroupBy.cumcountpandas.core.groupby.groupby.GroupBy.cummaxpandas.core.groupby.groupby.GroupBy.cumminpandas.core.groupby.groupby.GroupBy.cumsumpandas.core.groupby.groupby.GroupBy.headpandas.core.groupby.groupby.GroupBy.maxpandas.core.groupby.groupby.GroupBy.meanpandas.core.groupby.groupby.GroupBy.medianpandas.core.groupby.groupby.GroupBy.minpandas.core.groupby.groupby.GroupBy.rankpandas.core.groupby.groupby.GroupBy.sizepandas.core.groupby.groupby.GroupBy.tailpandas.core.indexes.datetimes.DatetimeIndex.yearpandas.core.indexing.IndexingMixin.iatpandas.core.indexing.IndexingMixin.ilocpandas.core.series.Series.first
NotSupported → Partial (70 functions):
pandas.core.arrays.datetimelike.DatelikeOps.strftime(PNDSPY1019)pandas.core.arrays.datetimelike.TimelikeOps.ceil(PNDSPY1020)pandas.core.arrays.datetimelike.TimelikeOps.floor(PNDSPY1021)pandas.core.arrays.datetimelike.TimelikeOps.round(PNDSPY1022)pandas.core.arrays.datetimes.DatetimeArray.day_name(PNDSPY1023)pandas.core.arrays.datetimes.DatetimeArray.month_name(PNDSPY1024)pandas.core.arrays.datetimes.DatetimeArray.tz_convert(PNDSPY1025)pandas.core.arrays.datetimes.DatetimeArray.tz_localize(PNDSPY1026)pandas.core.base.IndexOpsMixin.argmax(PNDSPY1027)pandas.core.base.IndexOpsMixin.argmin(PNDSPY1028)pandas.core.base.IndexOpsMixin.value_counts(PNDSPY1029)pandas.core.frame.DataFrame.eval(PNDSPY1049)pandas.core.frame.DataFrame.expanding(PNDSPY1050)pandas.core.frame.DataFrame.melt(PNDSPY1067)pandas.core.frame.DataFrame.pct_change(PNDSPY1077)pandas.core.frame.DataFrame.quantile(PNDSPY1081)pandas.core.frame.DataFrame.std(PNDSPY1103)pandas.core.generic.NDFrame.asfreq(PNDSPY1037)pandas.core.generic.NDFrame.fillna(PNDSPY1052)pandas.core.generic.NDFrame.mask(PNDSPY1066)pandas.core.generic.NDFrame.pct_change(PNDSPY1077)pandas.core.generic.NDFrame.rank(PNDSPY1083)pandas.core.generic.NDFrame.replace(PNDSPY1087)pandas.core.generic.NDFrame.shift(PNDSPY1115)pandas.core.generic.NDFrame.to_csv(PNDSPY1106)pandas.core.generic.NDFrame.tz_convert(PNDSPY1110)pandas.core.generic.NDFrame.tz_localize(PNDSPY1111)pandas.core.generic.NDFrame.where(PNDSPY1114)pandas.core.groupby.generic.DataFrameGroupBy.transform(PNDSPY1121)pandas.core.groupby.generic.DataFrameGroupBy.value_counts(PNDSPY1122)pandas.core.groupby.groupby.BaseGroupBy.get_group(PNDSPY1123)pandas.core.groupby.groupby.GroupBy.bfill(PNDSPY1127)pandas.core.groupby.groupby.GroupBy.first(PNDSPY1129)pandas.core.groupby.groupby.GroupBy.last(PNDSPY1130)pandas.core.groupby.groupby.GroupBy.quantile(PNDSPY1132)pandas.core.groupby.groupby.GroupBy.resample(PNDSPY1133)pandas.core.groupby.groupby.GroupBy.rolling(PNDSPY1134)pandas.core.groupby.groupby.GroupBy.shift(PNDSPY1135)pandas.core.groupby.groupby.GroupBy.std(PNDSPY1136)pandas.core.groupby.groupby.GroupBy.var(PNDSPY1137)pandas.core.indexes.base.Index.nlevels(PNDSPY1140)pandas.core.indexes.base.Index.sort_values(PNDSPY1142)pandas.core.indexing.IndexingMixin.at(PNDSPY1039)pandas.core.indexing.IndexingMixin.loc(PNDSPY1063)pandas.core.resample.Resampler.ffill(PNDSPY1155)pandas.core.resample.Resampler.first(PNDSPY1157)pandas.core.resample.Resampler.last(PNDSPY1158)pandas.core.resample.Resampler.std(PNDSPY1160)pandas.core.resample.Resampler.var(PNDSPY1161)pandas.core.reshape.merge.merge_asof(PNDSPY1165)pandas.core.reshape.pivot.pivot(PNDSPY1167)pandas.core.series.Series.expanding(PNDSPY1050)pandas.core.series.Series.pct_change(PNDSPY1077)pandas.core.window.ewm.ExponentialMovingWindow.corr(PNDSPY1233)pandas.core.window.ewm.ExponentialMovingWindow.mean(PNDSPY1234)pandas.core.window.ewm.ExponentialMovingWindow.std(PNDSPY1235)pandas.core.window.ewm.ExponentialMovingWindow.sum(PNDSPY1236)pandas.core.window.ewm.ExponentialMovingWindow.var(PNDSPY1237)pandas.core.window.expanding.Expanding.corr(PNDSPY1238)pandas.core.window.expanding.Expanding.max(PNDSPY1240)pandas.core.window.expanding.Expanding.mean(PNDSPY1241)pandas.core.window.expanding.Expanding.min(PNDSPY1242)pandas.core.window.expanding.Expanding.sem(PNDSPY1243)pandas.core.window.expanding.Expanding.std(PNDSPY1244)pandas.core.window.expanding.Expanding.sum(PNDSPY1245)pandas.core.window.expanding.Expanding.var(PNDSPY1246)pandas.core.window.rolling.Window.mean(PNDSPY1256)pandas.core.window.rolling.Window.std(PNDSPY1257)pandas.core.window.rolling.Window.sum(PNDSPY1258)pandas.core.window.rolling.Window.var(PNDSPY1259)
(new) → Direct (74 functions):
pandas.core.arrays.datetimes.DatetimeArray.daypandas.core.arrays.datetimes.DatetimeArray.day_of_weekpandas.core.arrays.datetimes.DatetimeArray.day_of_yearpandas.core.arrays.datetimes.DatetimeArray.dayofweekpandas.core.arrays.datetimes.DatetimeArray.dayofyearpandas.core.arrays.datetimes.DatetimeArray.days_in_monthpandas.core.arrays.datetimes.DatetimeArray.daysinmonthpandas.core.arrays.datetimes.DatetimeArray.hourpandas.core.arrays.datetimes.DatetimeArray.is_leap_yearpandas.core.arrays.datetimes.DatetimeArray.is_month_endpandas.core.arrays.datetimes.DatetimeArray.is_month_startpandas.core.arrays.datetimes.DatetimeArray.is_quarter_endpandas.core.arrays.datetimes.DatetimeArray.is_quarter_startpandas.core.arrays.datetimes.DatetimeArray.is_year_endpandas.core.arrays.datetimes.DatetimeArray.is_year_startpandas.core.arrays.datetimes.DatetimeArray.isocalendarpandas.core.arrays.datetimes.DatetimeArray.microsecondpandas.core.arrays.datetimes.DatetimeArray.minutepandas.core.arrays.datetimes.DatetimeArray.monthpandas.core.arrays.datetimes.DatetimeArray.nanosecondpandas.core.arrays.datetimes.DatetimeArray.quarterpandas.core.arrays.datetimes.DatetimeArray.secondpandas.core.arrays.datetimes.DatetimeArray.weekdaypandas.core.arrays.datetimes.DatetimeArray.yearpandas.core.arrays.timedeltas.TimedeltaArray.dayspandas.core.arrays.timedeltas.TimedeltaArray.microsecondspandas.core.arrays.timedeltas.TimedeltaArray.nanosecondspandas.core.arrays.timedeltas.TimedeltaArray.secondspandas.core.frame.DataFrame.flagspandas.core.generic.NDFrame.flagspandas.core.generic.NDFrame.rename_axispandas.core.groupby.groupby.BaseGroupBy.\_\_iter\_\_pandas.core.groupby.groupby.BaseGroupBy.\_\_len\_\_pandas.core.groupby.groupby.GroupBy.sumpandas.core.indexes.base.Index.Tpandas.core.indexes.datetimes.DatetimeIndex.datepandas.core.indexes.datetimes.DatetimeIndex.daypandas.core.indexes.datetimes.DatetimeIndex.day_of_weekpandas.core.indexes.datetimes.DatetimeIndex.day_of_yearpandas.core.indexes.datetimes.DatetimeIndex.dayofweekpandas.core.indexes.datetimes.DatetimeIndex.dayofyearpandas.core.indexes.datetimes.DatetimeIndex.hourpandas.core.indexes.datetimes.DatetimeIndex.is_month_endpandas.core.indexes.datetimes.DatetimeIndex.is_month_startpandas.core.indexes.datetimes.DatetimeIndex.meanpandas.core.indexes.datetimes.DatetimeIndex.microsecondpandas.core.indexes.datetimes.DatetimeIndex.minutepandas.core.indexes.datetimes.DatetimeIndex.monthpandas.core.indexes.datetimes.DatetimeIndex.nanosecondpandas.core.indexes.datetimes.DatetimeIndex.normalizepandas.core.indexes.datetimes.DatetimeIndex.quarterpandas.core.indexes.datetimes.DatetimeIndex.secondpandas.core.indexes.timedeltas.TimedeltaIndex.total_secondspandas.core.series.Series.info(PNDSPY1018)pandas.core.series.Series.tolistpandas.core.strings.accessor.StringMethods.capitalizepandas.core.strings.accessor.StringMethods.centerpandas.core.strings.accessor.StringMethods.countpandas.core.strings.accessor.StringMethods.islowerpandas.core.strings.accessor.StringMethods.istitlepandas.core.strings.accessor.StringMethods.isupperpandas.core.strings.accessor.StringMethods.ljustpandas.core.strings.accessor.StringMethods.lowerpandas.core.strings.accessor.StringMethods.matchpandas.core.strings.accessor.StringMethods.padpandas.core.strings.accessor.StringMethods.rjustpandas.core.strings.accessor.StringMethods.titlepandas.core.strings.accessor.StringMethods.uppersnowpark_pandas.read_snowflakesnowpark_pandas.to_dynamic_tablesnowpark_pandas.to_icebergsnowpark_pandas.to_pandassnowpark_pandas.to_snowflakesnowpark_pandas.to_view
(new) → Partial (47 functions):
pandas.core.frame.DataFrame.\_\_dataframe\_\_(PNDSPY1031)pandas.core.frame.DataFrame.pad(PNDSPY1076)pandas.core.generic.NDFrame.align(PNDSPY1033)pandas.core.generic.NDFrame.astype(PNDSPY1038)pandas.core.generic.NDFrame.expanding(PNDSPY1050)pandas.core.generic.NDFrame.ffill(PNDSPY1051)pandas.core.generic.NDFrame.interpolate(PNDSPY1015)pandas.core.generic.NDFrame.pad(PNDSPY1076)pandas.core.generic.NDFrame.resample(PNDSPY1088)pandas.core.generic.NDFrame.rolling(PNDSPY1092)pandas.core.generic.NDFrame.sample(PNDSPY1097)pandas.core.groupby.groupby.GroupBy.all(PNDSPY1124)pandas.core.groupby.groupby.GroupBy.any(PNDSPY1125)pandas.core.groupby.groupby.GroupBy.apply(PNDSPY1126)pandas.core.indexes.base.Index.all(PNDSPY1138)pandas.core.indexes.base.Index.any(PNDSPY1139)pandas.core.indexes.base.Index.reindex(PNDSPY1141)pandas.core.indexes.base.Index.value_counts(PNDSPY1029)pandas.core.indexes.datetimes.DatetimeIndex.tz_convert(PNDSPY1149)pandas.core.indexes.datetimes.DatetimeIndex.tz_localize(PNDSPY1150)pandas.core.series.Series.backfill(PNDSPY1040)pandas.core.series.Series.bfill(PNDSPY1041)pandas.core.series.Series.flags(PNDSPY1181)pandas.core.series.Series.pad(PNDSPY1076)pandas.core.strings.accessor.StringMethods.\_\_getitem\_\_(PNDSPY1216)pandas.core.strings.accessor.StringMethods.contains(PNDSPY1217)pandas.core.strings.accessor.StringMethods.endswith(PNDSPY1218)pandas.core.strings.accessor.StringMethods.get(PNDSPY1219)pandas.core.strings.accessor.StringMethods.isdigit(PNDSPY1220)pandas.core.strings.accessor.StringMethods.len(PNDSPY1221)pandas.core.strings.accessor.StringMethods.lstrip(PNDSPY1222)pandas.core.strings.accessor.StringMethods.replace(PNDSPY1223)pandas.core.strings.accessor.StringMethods.rstrip(PNDSPY1224)pandas.core.strings.accessor.StringMethods.slice(PNDSPY1225)pandas.core.strings.accessor.StringMethods.split(PNDSPY1226)pandas.core.strings.accessor.StringMethods.startswith(PNDSPY1227)pandas.core.strings.accessor.StringMethods.strip(PNDSPY1228)pandas.core.strings.accessor.StringMethods.translate(PNDSPY1229)pandas.core.window.rolling.Rolling.corr(PNDSPY1247)pandas.core.window.rolling.Rolling.max(PNDSPY1249)pandas.core.window.rolling.Rolling.mean(PNDSPY1250)pandas.core.window.rolling.Rolling.min(PNDSPY1251)pandas.core.window.rolling.Rolling.sem(PNDSPY1252)pandas.core.window.rolling.Rolling.std(PNDSPY1253)pandas.core.window.rolling.Rolling.sum(PNDSPY1254)pandas.core.window.rolling.Rolling.var(PNDSPY1255)pandas.io.json._json.read_json(PNDSPY1260)
Direct → Partial (12 functions):
pandas.core.frame.DataFrame.T(PNDSPY1030)pandas.core.frame.DataFrame.any(PNDSPY1035)pandas.core.frame.DataFrame.where(PNDSPY1114)pandas.core.groupby.generic.DataFrameGroupBy.agg(PNDSPY1116)pandas.core.indexes.datetimes.DatetimeIndex.round(PNDSPY1147)pandas.core.reshape.tile.qcut(PNDSPY1170)pandas.core.series.Series.astype(PNDSPY1038)pandas.core.series.Series.groupby(PNDSPY1184)pandas.core.series.Series.le(PNDSPY1186)pandas.core.series.Series.loc(PNDSPY1063)pandas.io.parquet.read_parquet(PNDSPY1261)pandas.io.parsers.readers.read_csv(PNDSPY1262)
Partial → Direct (5 functions):
pandas.core.indexes.datetimes.DatetimeIndex.is_leap_yearpandas.core.indexes.datetimes.DatetimeIndex.is_quarter_endpandas.core.indexes.datetimes.DatetimeIndex.is_quarter_startpandas.core.indexes.datetimes.DatetimeIndex.is_year_endpandas.core.indexes.datetimes.DatetimeIndex.is_year_start
Rename → Partial (4 functions):
pandas.core.frame.DataFrame.divide(PNDSPY1046)pandas.core.frame.DataFrame.multiply(PNDSPY1071)pandas.core.frame.DataFrame.subtract(PNDSPY1105)pandas.core.series.Series.divide(PNDSPY1178)
Korrigiert¶
Fixed the „How to read through the scores“ link on the assessment and conversion results page to ensure it correctly opens the readiness score documentation.
Version 3.0.0 (Feb 12, 2026)¶
Application & CLI Version: 3.0.0¶
Included SMA Core Version¶
Snowpark Conversion Core: 8.1.55
Engine Release Notes¶
Improvements¶
License-Free Conversion Mode: A license or access code is no longer required to run SMA in Conversion mode.
Project Options Page: A new Project Options page has been introduced to present the available workflows in the application, including „Code Analysis and Conversion“.
Technical Discovery Relocation: The Technical Discovery section has been moved to the Project Creation page for a more streamlined project setup experience.
Simplified Conversion Setup: The Conversion Setup page has been updated and no longer requires a license or access code.
Project File Extension: The project file extension has changed from
.snowmato.snowct.Updated User Interface: The user interface has been refreshed to align with the SnowConvert AI look and feel.
Version 2.11.1 (Jan 30, 2026)¶
Application & CLI Version: 2.11.1¶
Included SMA Core Version¶
Snowpark Conversion Core: 8.1.55
Engine Release Notes¶
Hinzugefügt¶
Added SQL Language to the DetailedReport doc file.
Added SQL configuration cell at the beginning of a converted Databricks-to-Jupyter transformation to be compatible with Snowflake notebooks.
Geändert¶
Updated the
%runmagic command transformation to append.ipynbextension to notebook paths.For unquoted paths:
%run ./myNotebooktransforms to%run ./myNotebook.ipynbFor quoted paths:
%run "./myNotebook"transforms to%run "./myNotebook.ipynb"
Scala code in notebook cells will now be commented in a python cell during a notebook migration.
Updated the conversion of
dbutils.runto thesfutils.notebook.runfunction to handle notebook execution calls.Bumped the supported versions of Snowpark Python API and Snowpark Pandas API from
1.40.0to1.41.0.Updated the mapping status for the following Pandas functions from NotSupported to Partial:
pandas.core.frame.DataFrame.agg→modin.pandas.DataFrame.aggpandas.core.frame.DataFrame.interpolate→modin.pandas.DataFrame.interpolatepandas.core.reshape.encoding.get_dummies→modin.pandas.general.get_dummiespandas.core.series.Series.agg→modin.pandas.Series.aggpandas.core.series.Series.interpolate→modin.pandas.Series.interpolate
Korrigiert¶
SMA now will rename
.hql(Hive SQL) files to.sqlafter conversion.The implicit cell for a DBX Scala Notebook when converting to Snowflake will be a python cell with an EWI. The Scala code will be commented out.
Python cells from DBX SQL Notebooks will preserve the language metadata.
Entfernt¶
Removed the previous
%runtransformation in DBX notebooks that generatedspark.sql("EXECUTE NOTEBOOK ...")SQL statements.The SnowConvert MissingObjects report was absorbed by the MissingObjectReference report. The MissingObjects report will no longer be generated.
Version 2.11.0 (Jan 9, 2026)¶
Application & CLI Version: 2.11.0¶
Included SMA Core Version¶
Snowpark Conversion Core: 8.1.43
Included SnowConvert AI Version¶
SnowConvert AI Version 2.2.0 (Release Notes)
Engine Release Notes¶
Hinzugefügt¶
Enhanced Notebook Setup for Assessment: When running an assessment on Databricks notebooks, a Snowpark Connect session is now automatically added to the first cell to simplify your setup.
Automatic Snowpark Connect Conversion: The tool now automatically converts both
SparkSessionandSparkContextinitializations in Python code to their equivalent Snowpark Connect sessions.Improved Error Identification:
Added a new warning code,
SPRKCNTPY4000, to clearly flag anySparkContextelements that are not yet supported by Snowpark Connect.The tool now automatically detects and flags unsupported Databricks utility calls (
dbutilsAPI) with the new warning codeSPRKDBX1004during conversion.
More Detailed Reporting:
The SparkUsagesInventory.csv report now includes a new column called
IS_SNOWPARK_CONNECT_TOOL_SUPPORTEDThis new column is to clearly indicate if a Spark element is supported directly by Snowpark Connect, or supported throught an SMA transformation.
The Snowpark Connect readiness score calculation has been updated to use the new
IS_SNOWPARK_CONNECT_TOOL_SUPPORTEDcolumn in the SparkUsagesInventory.csv report.
Next-Generation Notebook Support: Enhanced support for the VNext Snowflake Notebooks format when converting Databricks or Jupyter notebooks.
Full VNext Compatibility: The SMA can now generate output files that fully adhere to the VNext Snowflake Notebooks standard, regardless of whether the source was a Databricks or a previous-generation Jupyter notebook.
Smarter Language Handling: The conversion engine has been updated with enhanced logic to accurately detect and manage the specific language (such as Python or Scala) within each individual notebook cell. This allows for more precise and reliable cell-by-cell conversion.
Enhanced Metadata for Cells: The process now correctly incorporates necessary language and type metadata at the cell level during generation, which is essential for VNext Notebooks to function as expected.
Geändert¶
Simplified Python Code: For Snowpark Connect, unnecessary
.sparkContextreferences in Python method calls are now removed to streamline your code.Clearer Warning Codes: Snowpark Connect warning codes are now renamed to include language-specific prefixes (e.g.,
SPRKCNTPYfor Python,SPRKCNTSCLfor Scala) for easier error identification.More Accurate Notebook Conversions: The conversion process for notebooks has been improved to correctly distinguish between Databricks and Jupyter formats, preventing incorrect modifications.
Korrigiert¶
Fixed a bug in the artifact dependency inventory that incorrectly reported
.options()configuration as a data source.
Desktop Release Notes¶
Hinzugefügt¶
Technical Discovery View: A new Technical Discovery View is now available in the desktop application.
SMA Assessment AI: SMA desktop application is now directly integrated with an optional LLM interface.
Ask questions about your assessment results
Get help with how to approach the migration
Connect and deploy your assessment results directly into your Snowflake account.
Geändert¶
The Command Line Interface (CLI) parameter for controlling Jupyter conversion has been updated from
--enableJupyterto--disableJupyterConversionfor clearer functionality.
Version 2.10.5 (Dec 3rd, 2025)¶
Application & CLI Version: 2.10.5¶
Enthaltene SMA Core-Versionen¶
Snowpark Conversion Core: 8.1.26
Included SnowConvert AI Version¶
SnowConvert AI Version 2.0.57 (Release Notes: SnowConvert AI - Recent Release Notes | Snowflake Documentation)
Engine Release Notes¶
Hinzugefügt¶
The Execution Summary section of the
DetailedReport.docxnow indicates whether the SMA was run in Assessment or Conversion mode.
Geändert¶
Bumped the supported versions of Snowpark Python API and Snowpark Pandas API from
1.39.0to1.40.0.
PySpark Function Mapping Updates:
NotSupported to Rename:
pyspark.sql.functions.unhex→snowflake.snowpark.functions.hex_decode_binary
Direct to Rename:
pyspark.sql.functions.greatest→snowflake.snowpark.functions.greatest_ignore_nullspyspark.sql.functions.least→snowflake.snowpark.functions.least_ignore_nulls
NotDefined to Rename:
pyspark.sql.functions.bool_or→snowflake.snowpark.functions.boolor_aggpyspark.sql.functions.char→snowflake.snowpark.functions.chr
NotDefined to Direct:
pyspark.sql.functions.nullif→snowflake.snowpark.functions.nullifpyspark.sql.functions.nvl2→snowflake.snowpark.functions.nvl2
Snowpark Pandas Function Mapping Updates:
NotSupported to Partial:
modin.pandas.DataFrame.query→snowflake.snowpark.pandas.core.frame.DataFrame.queryAdded a new EWI
PNDSPY1012to indicate thatmodin.pandas.DataFrame.querydoes not support MultiIndex. The following example scenario illustrating this limitation is also included in the EWI documentation.from snowflake.snowpark.modin import plugin import modin.pandas as pd # Snowpark pandas # Create a DataFrame with single-level index data = { 'name': ['Alice', 'Bob', 'Charlie', 'David', 'Eve', 'Frank'], 'age': [25, 30, 35, 28, 32, 45], 'salary': [50000, 60000, 75000, 55000, 80000, 90000], 'department': ['Sales', 'IT', 'HR', 'Sales', 'IT', 'HR'] } df = pd.DataFrame(data) # Set a single-level index df = df.set_index('name') print("DataFrame with single-level index:") print(df) # Use query() - This works fine! #EWI: PNDSPY1012 => pandas.core.frame.DataFrame.query does not support DataFrames that have a row MultiIndex. Check Snowpark Pandas documentation for more details. result = df.query("age > 30 and salary < 85000") # Create a DataFrame with MultiIndex on rows data = { 'A': [1, 2, 3, 4, 5, 6], 'B': [10, 20, 30, 40, 50, 60], 'C': ['x', 'y', 'x', 'y', 'x', 'y'] } df = pd.DataFrame(data) # Create MultiIndex df = df.set_index([ pd.Index(['group1', 'group1', 'group2', 'group2', 'group3', 'group3']), pd.Index(['a', 'b', 'a', 'b', 'a', 'b']) ]) df.index.names = ['group', 'subgroup'] # This will ERROR in Snowpark pandas! #EWI: PNDSPY1012 => pandas.core.frame.DataFrame.query does not support DataFrames that have
Recommended fix: If the DataFrame contains a MultiIndex, it is necessary to validate the behavior of the
query()method in Snowpark pandas. Ensure that the DataFrame structure is compatible with Snowpark pandas‘ limitations, as MultiIndex rows are not supported. Consider restructuring the DataFrame to use a single-level index or alternative filtering methods.Updated all documentation links in the
DetailedReport.docxto point to the official Snowflake documentation, replacing the legacy Snowpark Migration Accelerator site.Updated the Snowpark Connect readiness score descriptions in the
DetailedReport.docxto match the SMA UI.Usages of
pyspark.sql.window.WindowSpec.orderByare now reported as supported by Snowpark Connect.
Korrigiert¶
Fixed broken internal links in the
DetailedReport.docxto ensure proper navigation between document sections.Added a
CellIdcolumn to the issues inventory to easily identify the location of EWIs within notebook files.
Version 2.10.4 (Nov 18, 2025)¶
Application & CLI Version: 2.10.4¶
Enthaltene SMA Core-Versionen¶
Snowpark Conversion Core: 8.1.8
Engine Release Notes¶
Korrigiert¶
Fixed an issue where the SMA generated corrupted Databricks notebook files in the output directory during Assessment mode execution.
Fixed an issue where the SMA would crash if the input directory contained folders named “SMA_ConvertedNotebooks”.
Version 2.10.3 (Oct 30, 2025)¶
Application & CLI Version: 2.10.3¶
Enthaltene SMA Core-Versionen¶
Snowpark Conversion Core: 8.1.7
Engine Release Notes¶
Hinzugefügt¶
Added the Snowpark Connect readiness score. This new score measures the percentage of Spark API references in your codebase that are supported by Snowpark Connect for Spark.
This will now be the only score shown in assessment mode. To generate the Snowpark API Readiness Score, run the SMA in conversion mode.
Added support for SQL embedded migration for literal string concatenations assigned to a local variable in the same scope of execution.
Included scenarios now include:
sqlStat = "SELECT colName " + "FROM myTable" session.sql(sqlStat)
Geändert¶
Updated the EWI URLs in the Issues.csv inventory to point to the main Snowflake documentation site.
Korrigiert¶
Fixed a code issue that caused inner project configuration files (e.g., pom.xml, build.sbt, build.gradle) to be incorrectly placed in the root of the output directory instead of the correct inner directories after migration.
Desktop Release Notes¶
Hinzugefügt¶
Added the Snowpark Connect readiness score and updated the assessment execution flow.
When running the application in assessment mode, only the Snowpark Connect readiness score is now displayed.
When running the application in conversion mode, the Snowpark API readiness score is displayed (the Snowpark Connect Readiness will not be shown).
Geändert¶
Updated all in-application documentation links to point to the official Snowflake documentation, replacing the legacy SnowConvert site.
Version 2.10.2 (Oct 27, 2025)¶
Application & CLI Version 2.10.2¶
Enthaltene SMA Core-Versionen¶
Snowpark Conversion Core 8.0.73
Korrigiert¶
Fixed an issue where the Snowpark Migration Accelerator failed converting DBC files into Jupyter Notebooks properly.
Version 2.10.1 (23. Oktober 2025)¶
Anwendung und CLI Version 2.10.1¶
Enthaltene SMA Core-Versionen¶
Snowpark Conversion Core 8.0.72
Hinzugefügt¶
Unterstützung für Snowpark Scala v1.17.0 hinzugefügt:
Von „Nicht unterstützt“ zu „Direkt“:
Datenset:
org.apache.spark.sql.Dataset.isEmpty→com.snowflake.snowpark.DataFrame.isEmpty
Zeile:
org.apache.spark.sql.Row.mkString→com.snowflake.snowpark.Row.mkString
StructType:
org.apache.spark.sql.types.StructType.fieldNames→com.snowflake.snowpark.types.StructType.fieldNames
Von „Nicht unterstützt“ zu „Umbenennen“:
Funktionen:
org.apache.spark.functions.flatten→com.snowflake.snowpark.functions.array_flatten
Von „Direkt“ zu „Umbenennen“:
Funktionen:
org.apache.spark.functions.to_date→com.snowflake.snowpark.functions.try_to_dateorg.apache.spark.functions.to_timestamp→com.snowflake.snowpark.functions.try_to_timestamp
Von „Direkter Unterstützung“ zu „Umbenennen“:
Funktionen:
org.apache.spark.sql.functions.concat_ws→com.snowflake.snowpark.functions.concat_ws_ignore_nulls
Von „Nicht definiert“ zu „Direkt“:
Funktionen:
org.apache.spark.functions.try_to_timestamp→com.snowflake.snowpark.functions.try_to_timestampEingebettete SQL wird jetzt migriert, wenn ein SQL-Anweisungsliteral einer lokalen Variablen zugewiesen wird.
Beispiel: sqlStat = “SELECT colName FROM myTable“ session.sql(sqlStat)
Eingebettete SQL wird jetzt für Verkettungen von literalen Zeichenfolgen unterstützt.
Beispiel: session.sql(“SELECT colName „ + „FROM myTable“)
Geändert¶
Die unterstützten Versionen von Snowpark Python API und Snowpark Pandas API wurden von 1.36.0 auf 1.39.0 aktualisiert.
Der Zuordnungsstatus für die folgenden PySpark xpath-Funktionen wurde von NotSupported auf „Direkt mit EWI SPRKPY1103“ aktualisiert:
pyspark.sql.functions.xpathpyspark.sql.functions.xpath_booleanpyspark.sql.functions.xpath_doublepyspark.sql.functions.xpath_floatpyspark.sql.functions.xpath_intpyspark.sql.functions.xpath_longpyspark.sql.functions.xpath_numberpyspark.sql.functions.xpath_shortpyspark.sql.functions.xpath_string
Der Zuordnungsstatus für die folgenden PySpark-Elemente wurde von NotDefined auf „Direkt“ aktualisiert:
pyspark.sql.functions.bit_and→snowflake.snowpark.functions.bitand_aggpyspark.sql.functions.bit_or→snowflake.snowpark.functions.bitor_aggpyspark.sql.functions.bit_xor→snowflake.snowpark.functions.bitxor_aggpyspark.sql.functions.getbit→snowflake.snowpark.functions.getbit
Der Zuordnungsstatus für die folgenden Pandas-Elemente wurde von NotSupported auf „Direkt“ aktualisiert:
pandas.core.indexes.base.Index→modin.pandas.Indexpandas.core.indexes.base.Index.get_level_values→modin.pandas.Index.get_level_values
Der Zuordnungsstatus für die folgenden PySpark-Funktionen wurde von NotSupported auf „Umbenennen“ aktualisiert:
pyspark.sql.functions.now→snowflake.snowpark.functions.current_timestamp
Korrigiert¶
Scala wurde korrigiert, da Importe nicht migriert wurden, wenn es eine Umbenennung gab.
Beispiel:
Quellcode:
.. code-block:: scala
package com.example.functions
import org.apache.spark.sql.functions.{to_timestamp, lit}
object ToTimeStampTest extends App { to_timestamp(lit(„sample“)) to_timestamp(lit(„sample“), „yyyy-MM-dd“) }Ausgabecode:
.. code-block:: scala
package com.example.functions
import com.snowflake.snowpark.functions.{try_to_timestamp, lit} import com.snowflake.snowpark_extensions.Extensions._ import com.snowflake.snowpark_extensions.Extensions.functions._
object ToTimeStampTest extends App { try_to_timestamp(lit(„sample“)) try_to_timestamp(lit(„sample“), „yyyy-MM-dd“) }
Version 2.10.0 (24. September 2025)¶
Anwendung und CLI Version 2.10.0¶
Enthaltene SMA Core-Versionen¶
Snowpark Conversion Core 8.0.62
Hinzugefügt¶
Funktionalität zur Migration von SQL eingebettet in Interpolation des Python-Formats hinzugefügt.
Unterstützung für
DataFrame.select- undDataFrame.sort-Transformationen für eine größere Flexibilität bei der Datenverarbeitung hinzugefügt.
Geändert¶
Die unterstützten Versionen von Snowpark Python API und Snowpark Pandas API wurden auf 1.36.0 aktualisiert.
Der Zuordnungsstatus von
pandas.core.frame.DataFrame.boxplotwurde von „Nicht unterstützt“ auf „Direkt“ aktualisiert.Der Zuordnungsstatus von
DataFrame.select,Dataset.select,DataFrame.sortundDataset.sortwurde von „Direkt“ auf „Transformation“ aktualisiert.In Snowpark Scala kann eine Sequenz von Spalten direkt an die Auswahl- und Sortierfunktionen übergeben werden, sodass durch diese Transformation alle Verwendungen, wie beispielsweise
df.select(cols: _*)zudf.select(cols)unddf.sort(cols: _*)zudf.sort(cols)geändert werden.Die Python AST- und Parser-Version wurde auf 149.1.9 aktualisiert.
Der Status für pandas-Funktionen wurde auf „Direkt“ aktualisiert:
pandas.core.frame.DataFrame.to_excelpandas.core.series.Series.to_excelpandas.io.feather_format.read_featherpandas.io.orc.read_orcpandas.io.stata.read_stata
Der Status für
pyspark.sql.pandas.map_ops.PandasMapOpsMixin.mapInPandaswurde auf Umgehung des Problems mit EWI SPRKPY1102 aktualisiert.
Korrigiert¶
Problem behoben, das SqlEmbedded-Transformationen bei der Verwendung von verketteten Methodenaufrufen betraf.
Korrekturen bei Transformationen mit PySqlExpr unter Verwendung der neuen PyLiteralSql, um zu vermeiden, dass Details nicht verloren gehen.
Interne Stabilitätsprobleme wurden behoben, um die Robustheit und Zuverlässigkeit des Tools zu verbessern.
Version 2.7.7 (28. August 2025)¶
Anwendung und CLI Version 2.7.7¶
Enthaltene SMA Core-Versionen¶
Snowpark Conversion Core 8.0.46
Hinzugefügt¶
Neue Pandas EWI-Dokumentation PNDSPY1011 hinzugefügt.
Unterstützung für die folgenden Pandas-Funktionen wurde hinzugefügt:
pandas.core.algorithms.unique
pandas.core.dtypes.missing.isna
pandas.core.dtypes.missing.isnull
pandas.core.dtypes.missing.notna
pandas.core.dtypes.missing.notnull
pandas.core.resample.Resampler.count
pandas.core.resample.Resampler.max
pandas.core.resample.Resampler.mean
pandas.core.resample.Resampler.median
pandas.core.resample.Resampler.min
pandas.core.resample.Resampler.size
pandas.core.resample.Resampler.sum
pandas.core.arrays.timedeltas.TimedeltaArray.total_seconds
pandas.core.series.Series.get
pandas.core.series.Series.to_frame
pandas.core.frame.DataFrame.assign
pandas.core.frame.DataFrame.get
pandas.core.frame.DataFrame.to_numpy
pandas.core.indexes.base.Index.is_unique
pandas.core.indexes.base.Index.has_duplicates
pandas.core.indexes.base.Index.shape
pandas.core.indexes.base.Index.array
pandas.core.indexes.base.Index.str
pandas.core.indexes.base.Index.equals
pandas.core.indexes.base.Index.identical
pandas.core.indexes.base.Index.unique
Unterstützung für die folgenden Funktionen von Spark Scala hinzugefügt:
org.apache.spark.sql.functions.format_number
org.apache.spark.sql.functions.from_unixtime
org.apache.spark.sql.functions.instr
org.apache.spark.sql.functions.months_between
org.apache.spark.sql.functions.pow
org.apache.spark.sql.functions.to_unix_timestamp
org.apache.spark.sql.Row.getAs
Geändert¶
Die Version von Snowpark Pandas API, unterstützt vom SMA, wurde auf 1.33.0 aktualisiert.
Die Version von Snowpark Scala API, unterstützt vom SMA, wurde auf 1.16.0 aktualisiert.
Der Zuordnungsstatus von „pyspark.sql.group.GroupedData.pivot“ wurde von „Transformation“ auf „Direkt“ aktualisiert.
Der Zuordnungsstatus von „org.apache.spark.sql.Builder.master“ wurde von NotSupported auf „Transformation“ aktualisiert. Diese Transformation entfernt alle Verwendungen dieses Elements, die während der Codekonvertierung identifiziert wurden.
Der Zuordnungsstatus von „org.apache.spark.sql.types.StructType.fieldIndex“ wurde von NotSupported auf „Direkt“ aktualisiert.
Der Zuordnungsstatus von „org.apache.spark.sql.Row.fieldIndex“ wurde von NotSupported auf „Direkt“ aktualisiert.
Der Zuordnungsstatus von „org.apache.spark.sql.SparkSession.stop“ wurde von NotSupported auf „Umbenennen“ aktualisiert. Alle identifizierten Verwendungen dieses Elements werden während der Codekonvertierung in „com.snowflake.snowpark.Session.close“ umbenannt.
Der Zuordnungsstatus von „org.apache.spark.sql.DataFrame.unpersist“ und „org.apache.spark.sql.Dataset.unpersist“ wurde von NotSupported auf „Transformation“ aktualisiert. Diese Transformation entfernt alle Verwendungen dieses Elements, die während der Codekonvertierung identifiziert wurden.
Korrigiert¶
Korrektur des Fortsetzungs-Backslashs bei entfernten Funktionen.
Das Problem mit der Spalte LIBRARY_PREFIX in der ConversionStatusLibraries.csv-Datei wurde behoben, um den richtigen Bezeichner für die scikit-learn-Bibliotheksfamilie (scikit-*) zu verwenden.
Fehler wurde behoben, bei dem mehrzeilige gruppierte Operationen nicht analysiert wurden.
Version 2.9.0 (09. September 2025)¶
Enthaltene SMA Core-Versionen¶
Snowpark Conversion Core 8.0.53
Hinzugefügt¶
Die folgenden Zuordnungen werden nun für
org.apache.spark.sql.Dataset[T]ausgeführt:org.apache.spark.sql.Dataset.unionist jetztcom.snowflake.snowpark.DataFrame.unionAllorg.apache.spark.sql.Dataset.unionByNameist jetztcom.snowflake.snowpark.DataFrame.unionAllByName
Unterstützung für
org.apache.spark.sql.functions.broadcastals Transformation wurde hinzugefügt.
Geändert¶
Die unterstützte Snowpark Python API-Version für SMA wurde von
1.27.0auf1.33.0aktualisiert.Der Status für die
pyspark.sql.function.randn-Funktion wurde auf „Direkt“ aktualisiert.
Korrigiert¶
Das Problem wurde behoben, bei dem
org.apache.spark.SparkContext.parallelizenicht aufgelöst wurde und das nun als Transformation unterstützt wird.Das Problem mit der
Dataset.persist-Transformation wurde behoben, um mit jeder Art von Datenset zu arbeiten, nicht nur mitDatenset[Zeile].
Version 2.7.6 (17. Juli 2025)¶
Enthaltene SMA Core-Versionen¶
Snowpark Conversion Core 8.0.30
Hinzugefügt¶
Die Zuordnungen für spark.DataReader-Methoden wurden angepasst.
DataFrame.unionist jetztDataFrame.unionAll.DataFrame.unionByNameist jetztDataFrame.unionAllByName.Spalten mit mehrstufigen Artefaktabhängigkeiten wurden im Artefaktinventar hinzugefügt
Eine neue Pandas EWIs-Dokumentation von
PNDSPY1005zuPNDSPY1010wurde hinzugefügt.Eine bestimmte EWI für
pandas.core.series.Series.applywurde hinzugefügt.
Geändert¶
Die Version von Snowpark Pandas API, unterstützt vom SMA, wurde von
1.27.0auf1.30.0aktualisiert.
Korrigiert¶
Das Problem mit fehlenden Werten in der Formel wurde behoben, um die SQL-Bereitschaftsbewertung zu erhalten.
Der Fehler wurde behoben, der dazu führte, dass einige Pandas-Elemente die standardmäßige EWI-Nachricht von PySpark aufwiesen.
Version 2.7.5 (2. Juli 2025)¶
Anwendung und CLI Version 2.7.5¶
Enthaltene SMA Core-Versionen¶
Snowpark Conversion Core 8.0.19
Geändert¶
Überarbeitete Pandas-Importe: Pandas-Importe verwenden jetzt `modin.pandas` anstelle von
snowflake.snowpark.modin.pandas.Verbesserte `dbutils` und Magic Commands Transformation:
Eine neue
sfutils.py-Datei wird jetzt generiert, und alledbutils-Präfixe werden durchsfutilsersetzt.Für Databricks (DBX)-Notebooks wird ein impliziter Import für
sfutilsautomatisch hinzugefügt.Das
sfutils-Modul simuliert verschiedenedbutils-Methoden, einschließlich Dateisystemvorgänge (dutils.fs) über einen definierten Snowflake FileSystem (SFFS)-Stagingbereich und übernimmt die Ausführung des Notebooks (dutils.notebook.run), indem dieses inEXECUTE NOTEBOOKSQL-Funktionen umgewandelt wird.dbutils.notebook.exitwird entfernt, da es in Snowflake nicht erforderlich ist.
Korrigiert¶
Aktualisierungen in SnowConvert-Berichte: SnowConvert-Berichte enthalten jetzt die Spalte CellId, wenn Instanzen vom SMA stammen und die Spalte FileName den vollständigen Pfad anzeigt.
Aktualisierte Artefakt-Abhängigkeit für SnowConvert-Berichte: Der Artefakt-Inventarbericht von SMA, der zuvor durch die Integration von SnowConvert beeinträchtigt wurde, wurde wiederhergestellt. Diese Aktualisierung aktiviert das SMA-Tool zur genauen Erfassung und Analyse von Object References und Missing Object References direkt aus SnowConvert-Berichten, um sicherzustellen, dass die SQL-Abhängigkeiten für das Inventar korrekt abgerufen werden.
Version 2.7.4 (26. Juni 2025)¶
Anwendung und CLI Version 2.7.4¶
Desktop-App
Hinzugefügt¶
Verbesserungen für die Telemetrie wurden hinzugefügt.
Korrigiert¶
Korrektur der Dokumentationslinks im Popup-Fenster für Konvertierungseinstellungen und in Pandas EWIs.
Enthaltene SMA Core-Versionen¶
Snowpark Conversion Core 8.0.16
Hinzugefügt¶
Transformieren von Spark XML in Snowpark
Databricks SQL-Option in der SQL-Quellsprache
Transformieren von JDBC-Leseverbindungen.
Geändert¶
Alle SnowConvert-Berichte werden in die Backup-ZIP-Datei kopiert.
Der Ordner wird von
SqlReportsinSnowConvertReportsumbenannt.SqlFunctionsInventorywird in den OrdnerBerichteverschoben.Alle SnowConvert-Berichte werden an die Telemetrie gesendet.
Korrigiert¶
Nicht deterministisches Problem mit SQL-Bereitschaftsbewertung.
Das Problem mit falsch-positivem kritischen Ergebnis wurde behoben, das den Desktop zum Absturz brachte.
Das Problem wurde behoben, durch das im Abhängigkeitsbericht für Artefakte die SQL-Objekte nicht angezeigt wurden.
Version 2.7.2 (10. Juni 2025)¶
Anwendung und CLI Version 2.7.2¶
Enthaltene SMA Core-Versionen¶
Snowpark Conversion Core 8.0.2
Korrigiert¶
Das Problem mit der SMA-Ausführung unter dem neuesten Windows OS wurde behoben, wie bereits berichtet. Mit dieser Maßnahme werden die in Version 2.7.1 aufgetretenen Probleme behoben.
Version 2.7.1 (9. Juni 2025)¶
Anwendung und CLI Version 2.7.1¶
Enthaltene SMA Core-Versionen¶
Snowpark Conversion Core 8.0.1
Hinzugefügt¶
Der Snowpark Migration Accelerator (SMA) orchestriert nun SnowConvert, um die in Benutzer-Workloads gefundene SQL zu verarbeiten, einschließlich eingebetteter SQL in Python- bzw. Scala-Code, Notebook SQL-Zellen, .sql-Dateien und .hql-Dateien.
SnowConvert verbessert nun die vorherigen SMA-Fähigkeiten:
Ein neuer Ordner in den Berichten mit dem Namen SQL Berichte enthält die von SnowConvert generierten Berichte.
Bekannte Probleme¶
Die vorherige SMA-Version für SQL-Berichte wird in folgenden Fällen leer angezeigt:
Für
Berichte/SqlElementsInventory.csv, teilweise durchBerichte/SqlReports/Elements.yyyymmdd.hhmmss.csv.abgedecktFür
Berichte/SqlFunctionsInventory.csvsiehe den neuen Speicherort mit demselben Namen unterBerichte/SqlReports/SqlFunctionsInventory.csv
Das Inventar der Artefakt-Abhängigkeiten:
Im
ArtifactDependencyInventorywird die Spalte für das SQL-Objekt leer angezeigt
Version 2.6.10 (5. Mai 2025)¶
Anwendung und CLI Version 2.6.10¶
Enthaltene SMA Core-Versionen¶
Snowpark Conversion Core 7.4.0
Korrigiert¶
Das Problem mit falschen Werten in der Datei „checkpoints.json“ wurde behoben.
Der Wert „sample“ war ohne Dezimalstellen (bei ganzzahligen Werten) und Anführungszeichen.
Der Wert „entrypoint“ enthielt Punkte anstelle von Schrägstrichen, und es fehlte die Dateierweiterung.
Der Standardwert wurde in TRUE für die Einstellung „DBX-Notebooks in Snowflake-Notebooks konvertieren“ geändert
Version 2.6.8 (28. April 2025)¶
Anwendung und CLI Version 2.6.8¶
Desktop-App¶
Mechanismus zur Erkennung von Checkpoints und Ausführungseinstellungen hinzugefügt.
Mechanismus zum Sammeln von DBX-Magic-Befehlen in DbxElementsInventory.csv hinzugefügt
Die Generierung von „checkpoints.json“ wurde zum Eingabeverzeichnis hinzugefügt.
Eine neue EWI wurde für alle nicht unterstützten Magic-Befehle hinzugefügt.
Die Sammlung von dbutils wurde zu DbxElementsInventory.csv von Scala-Quell-Notebooks hinzugefügt
Enthaltene SMA Core-Versionen¶
Snowpark Conversion Core 7.2.53
Geändert¶
Aktualisierungen zur Verarbeitung von Transformationen von DBX Scala-Elementen zu Jupyter Python-Elementen und zum Kommentieren des gesamten Codes der Zelle.
Aktualisierungen zur Verarbeitung von Transformationen aus den Befehlen dutils.notebook.run und „r“; für den letzten Befehl auch den gesamten Code der Zelle auskommentieren.
Name und Buchstabe des Schlüssels wurden aktualisiert, um die Konvertierung der Notebook-Dateien zu ermöglichen.
Korrigiert¶
Es wurde ein Fehler behoben, der bei der Transformation von DBX-Notebooks in .ipynb-Dateien dazu führte, dass das falsche Format vorhanden war.
Es wurde ein Fehler behoben, der dazu führte, dass .py DBX-Notebooks nicht in .ipynb-Dateien umgewandelt werden konnten.
Es wurde ein Fehler behoben, der dazu führte, dass Kommentare im Ausgabecode von DBX-Notebooks fehlten.
Es wurde ein Fehler behoben, der dazu führte, dass Scala-Rohdateien in ipynb-Dateien konvertiert wurden.
Version 2.6.7 (21. April 2025)¶
Anwendung und CLI Version 2.6.7¶
Enthaltene SMA Core-Versionen¶
Snowpark Conversion Core 7.2.42
Geändert¶
DataFramesInventory wurde zum Füllen der Spalte EntryPoints aktualisiert
Version 2.6.6 (7. April 2025)¶
Anwendung und CLI Version 2.6.6¶
Desktop-App¶
Hinzugefügt¶
Aktualisierung von DBx EWI-Link in der UI-Ergebnisseite
Enthaltene SMA Core-Versionen¶
Snowpark Conversion Core 7.2.39
Hinzugefügt¶
Generierung des Inventars für Ausführungsablauf hinzugefügt.
Implizites Sitzungs-Setup zu jeder DBx-Notebook-Transformation hinzugefügt
Geändert¶
DbUtilsUsagesInventory.csv wurde in DbxElementsInventory.csv umbenannt
Korrigiert¶
Es wurde ein Fehler behoben, der einen Fehler beim Parsen verursachte, wenn nach einem Typhinweis ein Backslash folgte.
Korrektur von relativen Importen, die nicht mit einem Punkt beginnen, und relativen Importen mit einem Stern.
Version 2.6.5 (27. März 2025)¶
Anwendung und CLI Version 2.6.5¶
Desktop-App¶
Hinzugefügt¶
Ein neuer Umschalter für Konvertierungseinstellungen wurde hinzugefügt, um das Sma-Checkpoints-Feature zu aktivieren oder zu deaktivieren.
Es wurde ein Berichtsfehler behoben, damit kein Absturz erfolgt, wenn die Post-API 500 zurückgibt
Enthaltene SMA Core-Versionen¶
Snowpark Conversion Core 7.2.26
Hinzugefügt¶
Die Generierung der Datei „checkpoints.json“ im Ausgabeordner wurde auf der Grundlage von DataFramesInventory.csv hinzugefügt.
Flag „disableCheckpoints“ wurde zu CLI-Befehlen und zusätzlichen Parametern des Codeprozessors hinzugefügt.
Eine neue Ersetzung für Python wurde hinzugefügt, um den Knoten „dbutils.notebook.run“ zu transformieren.
Neue Ersetzungen wurden hinzugefügt, um den magischen Befehl %run umzuwandeln.
Neue Ersetzungen (Python und Scala) wurden hinzugefügt, um den Knoten „dbutils.notebook.exit“ zu entfernen.
Die Spalte „Speicherort“ wurde zum Inventar der Artefakte hinzugefügt.
Geändert¶
Das in einigen Teilen der Lösung verwendete normalisierte Trennzeichen für Verzeichnisse wurde überarbeitet.
Zentralisiert die Handhabung von Namen des DBC-Extraktionsarbeitsordners
Version von Snowpark und Pandas auf v1.27.0 aktualisiert
Inventarspalten für Artefakte wurden aktualisiert auf:
Name > Abhängigkeit
Datei -> FileId
Status > Status_detail
Eine neue Spalte zum Inventar von Artefakten wurde hinzugefügt:
Erfolg
Korrigiert¶
Datenframes-Inventar wurde nicht korrekt in den Stagingbereich hochgeladen.
Version 2.6.4 (12. März 2025)¶
Anwendung und CLI Version 2.6.4¶
Enthaltene SMA Core-Versionen ¶
Snowpark Conversion Core 7.2.0
wurde hinzugefügt¶
Ein Inventar der Artefaktabhängigkeiten
Eine Ersetzung und EWI für pyspark.sql.types.StructType.fieldNames-Methode für snowflake.snowpark.types.StructType.fieldNames-Attribut.
Die folgenden PySpark-Funktionen mit dem Status:
Direct Status
pyspark.sql.functions.bitmap_bit_positionpyspark.sql.functions.bitmap_bucket_numberpyspark.sql.functions.bitmap_construct_aggpyspark.sql.functions.equal_nullpyspark.sql.functions.ifnullpyspark.sql.functions.localtimestamppyspark.sql.functions.max_bypyspark.sql.functions.min_bypyspark.sql.functions.nvlpyspark.sql.functions.regr_avgxpyspark.sql.functions.regr_avgypyspark.sql.functions.regr_countpyspark.sql.functions.regr_interceptpyspark.sql.functions.regr_slopepyspark.sql.functions.regr_sxxpyspark.sql.functions.regr_sxypyspark.sql.functions.regr
NotSupported
pyspark.sql.functions.map_contains_keypyspark.sql.functions.positionpyspark.sql.functions.regr_r2pyspark.sql.functions.try_to_binary
Die folgenden Pandas-Funktionen mit Status
pandas.core.series.Series.str.ljustpandas.core.series.Series.str.centerpandas.core.series.Series.str.padpandas.core.series.Series.str.rjust
Aktualisieren Sie die folgenden Pyspark-Funktionen mit dem Status
Von WorkAround zu „Direkt“
pyspark.sql.functions.acoshpyspark.sql.functions.asinhpyspark.sql.functions.atanhpyspark.sql.functions.instrpyspark.sql.functions.log10pyspark.sql.functions.log1ppyspark.sql.functions.log2
Von NotSupported zu „Direkt“
pyspark.sql.functions.bit_lengthpyspark.sql.functions.cbrtpyspark.sql.functions.nth_valuepyspark.sql.functions.octet_lengthpyspark.sql.functions.base64pyspark.sql.functions.unbase64
Die folgenden Pandas-Funktionen wurden mit dem Status aktualisiert
Von NotSupported zu „Direkt“
pandas.core.frame.DataFrame.poppandas.core.series.Series.betweenpandas.core.series.Series.pop
Version 2.6.3 (6. März 2025)¶
Anwendung und CLI Version 2.6.3¶
Enthaltene SMA Core-Versionen ¶
Snowpark Conversion Core 7.1.13
wurde hinzugefügt¶
Die CSV-Generator-Klasse für neue Inventarerstellung wurde hinzugefügt.
Die Spalte „full_name“ zum Importieren des Nutzungsinventars wurde hinzugefügt.
Die Transformation von „pyspark.sql.functions.concat_ws“ zu „snowflake.snowpark.functions._concat_ws_ignore_nulls“ wurde hinzugefügt.
Die Logik zur Generierung von „checkpoints.json“ wurde hinzugefügt.
Inventare wurden hinzugefügt:
DataFramesInventory.csv.
CheckpointsInventory.csv
Version 2.6.0 (21. Februar 2025)¶
Anwendung und CLI Version 2.6.0¶
Desktop-App ¶
Die Lizenzvereinbarung wurde aktualisiert, Akzeptanz ist erforderlich.
Enthaltene SMA Core-Versionen¶
Snowpark Conversion Core 7.1.2
Hinzugefügt
Updated the mapping status for the following PySpark elements, from NotSupported to Direct
pyspark.sql.types.ArrayType.jsonpyspark.sql.types.ArrayType.jsonValuepyspark.sql.types.ArrayType.simpleStringpyspark.sql.types.ArrayType.typeNamepyspark.sql.types.AtomicType.jsonpyspark.sql.types.AtomicType.jsonValuepyspark.sql.types.AtomicType.simpleStringpyspark.sql.types.AtomicType.typeNamepyspark.sql.types.BinaryType.jsonpyspark.sql.types.BinaryType.jsonValuepyspark.sql.types.BinaryType.simpleStringpyspark.sql.types.BinaryType.typeNamepyspark.sql.types.BooleanType.jsonpyspark.sql.types.BooleanType.jsonValuepyspark.sql.types.BooleanType.simpleStringpyspark.sql.types.BooleanType.typeNamepyspark.sql.types.ByteType.jsonpyspark.sql.types.ByteType.jsonValuepyspark.sql.types.ByteType.simpleStringpyspark.sql.types.ByteType.typeNamepyspark.sql.types.DecimalType.jsonpyspark.sql.types.DecimalType.jsonValuepyspark.sql.types.DecimalType.simpleStringpyspark.sql.types.DecimalType.typeNamepyspark.sql.types.DoubleType.jsonpyspark.sql.types.DoubleType.jsonValuepyspark.sql.types.DoubleType.simpleStringpyspark.sql.types.DoubleType.typeNamepyspark.sql.types.FloatType.jsonpyspark.sql.types.FloatType.jsonValuepyspark.sql.types.FloatType.simpleStringpyspark.sql.types.FloatType.typeNamepyspark.sql.types.FractionalType.jsonpyspark.sql.types.FractionalType.jsonValuepyspark.sql.types.FractionalType.simpleStringpyspark.sql.types.FractionalType.typeNamepyspark.sql.types.IntegerType.jsonpyspark.sql.types.IntegerType.jsonValuepyspark.sql.types.IntegerType.simpleStringpyspark.sql.types.IntegerType.typeNamepyspark.sql.types.IntegralType.jsonpyspark.sql.types.IntegralType.jsonValuepyspark.sql.types.IntegralType.simpleStringpyspark.sql.types.IntegralType.typeNamepyspark.sql.types.LongType.jsonpyspark.sql.types.LongType.jsonValuepyspark.sql.types.LongType.simpleStringpyspark.sql.types.LongType.typeNamepyspark.sql.types.MapType.jsonpyspark.sql.types.MapType.jsonValuepyspark.sql.types.MapType.simpleStringpyspark.sql.types.MapType.typeNamepyspark.sql.types.NullType.jsonpyspark.sql.types.NullType.jsonValuepyspark.sql.types.NullType.simpleStringpyspark.sql.types.NullType.typeNamepyspark.sql.types.NumericType.jsonpyspark.sql.types.NumericType.jsonValuepyspark.sql.types.NumericType.simpleStringpyspark.sql.types.NumericType.typeNamepyspark.sql.types.ShortType.jsonpyspark.sql.types.ShortType.jsonValuepyspark.sql.types.ShortType.simpleStringpyspark.sql.types.ShortType.typeNamepyspark.sql.types.StringType.jsonpyspark.sql.types.StringType.jsonValuepyspark.sql.types.StringType.simpleStringpyspark.sql.types.StringType.typeNamepyspark.sql.types.StructType.jsonpyspark.sql.types.StructType.jsonValuepyspark.sql.types.StructType.simpleStringpyspark.sql.types.StructType.typeNamepyspark.sql.types.TimestampType.jsonpyspark.sql.types.TimestampType.jsonValuepyspark.sql.types.TimestampType.simpleStringpyspark.sql.types.TimestampType.typeNamepyspark.sql.types.StructField.simpleStringpyspark.sql.types.StructField.typeNamepyspark.sql.types.StructField.jsonpyspark.sql.types.StructField.jsonValuepyspark.sql.types.DataType.jsonpyspark.sql.types.DataType.jsonValuepyspark.sql.types.DataType.simpleStringpyspark.sql.types.DataType.typeNamepyspark.sql.session.SparkSession.getActiveSessionpyspark.sql.session.SparkSession.versionpandas.io.html.read_htmlpandas.io.json._normalize.json_normalizepyspark.sql.types.ArrayType.fromJsonpyspark.sql.types.MapType.fromJsonpyspark.sql.types.StructField.fromJsonpyspark.sql.types.StructType.fromJsonpandas.core.groupby.generic.DataFrameGroupBy.pct_changepandas.core.groupby.generic.SeriesGroupBy.pct_change
Der Zuordnungsstatus für die folgenden Pandas-Elemente wurde von NotSupported auf Direkt aktualisiert
pandas.io.html.read_htmlpandas.io.json._normalize.json_normalizepandas.core.groupby.generic.DataFrameGroupBy.pct_changepandas.core.groupby.generic.SeriesGroupBy.pct_change
Der Zuordnungsstatus für die folgenden PySpark-Elemente wurde von Umbenennen auf Direkt aktualisiert
pyspark.sql.functions.collect_listpyspark.sql.functions.size
wurde behoben¶
Das Format der Versionsnummer in den Inventaren wurde vereinheitlicht.
Version 2.5.2 (5. Februar 2025)¶
Hotfix: Anwendung & CLI Version 2.5.2¶
Desktop-App¶
Ein Problem bei der Konvertierung in der Beispielprojektoption wurde behoben.
Enthaltene SMA Core-Versionen¶
Snowpark Conversion Core 5.3.0
Version 2.5.1 (4. Februar 2025)¶
Anwendung & CLI Version 2.5.1¶
Desktop-App¶
Es wurde ein neues Modal hinzugefügt, wenn der Benutzer keine Schreibberechtigung hat.
Die Lizenzvereinbarung wurde aktualisiert, die Zustimmung ist erforderlich.
CLI¶
Die Jahreszahl auf dem CLI-Bildschirm bei der Anzeige von „–version“ oder „-v“ wurde korrigiert
Enthaltene SMA Core-Versionen included-sma-core-versions¶
Snowpark Conversion Core 5.3.0
Hinzugefügt¶
Added the following Python Third-Party libraries with Direct status:
about-timeaffinegapaiohappyeyeballsalibi-detectalive-progressallure-nose2allure-robotframeworkanaconda-cloud-clianaconda-mirrorastropy-iers-dataasynchasyncsshautotsautovimlaws-msk-iam-sasl-signer-pythonazure-functionsbackports.tarfileblasbottlebsoncairocapnprotocaptumcategorical-distancecensusclickhouse-driverclustergramcmaconda-anaconda-telemetrieconfigspacecpp-expecteddask-exprdata-science-utilsdatabricks-sdkdatetime-distancedb-dtypesdedupededupe-variable-datetimededupe_lehvenshtein_searchdedupe_levenshtein_searchdiff-coverdiptestdmglibdocstring_parserdoppelmetaphondspy-aieconmlemceeemojienvironseth-abieth-hasheth-typingeth-utilsexpatfiletypefitterflask-corsfpdf2frozendictgcabgeojsongettextglib-toolsgoogle-adsgoogle-ai-generativelanguagegoogle-api-python-clientgoogle-auth-httplib2google-cloud-bigquerygoogle-cloud-bigquery-coregoogle-cloud-bigquery-storagegoogle-cloud-bigquery-storage-coregoogle-cloud-ressourcen-managergoogle-generativeaigooglemapsgraphemegraphenegraphql-relaygravisgreykitegrpc-google-iam-v1harfbuzzhatch-fancy-pypi-readmehaversinehiclasshicolor-icon-themehigheredhmmlearnholidays-exthttplib2icuimbalanced-ensembleimmutabledictimportlib-metadataimportlib-resourcesinquirerpyiterative-telemetryjaraco.contextjaraco.testjiterjiwerjoserfcjsoncppjsonpathjsonpath-ngjsonpath-pythonkagglehubkeplerglkt-legacylangchain-communitylangchain-experimentallangchain-snowflakelangchain-text-splitterslibabseillibflaclibgfortran-nglibgfortran5libgliblibgomplibgrpclibgsflibmagiclibogglibopenblaslibpostallibprotobuflibsentencepiecelibsndfilelibstdcxx-nglibtheoralibtifflibvorbislibwebpleichtgewicht-mmmlitestarlitestar-with-annotated-typeslitestar-with-attrslitestar-with-cryptographylitestar-with-jinjalitestar-with-jwtlitestar-with-prometheuslitestar-with-structloglunarcalendar-extmatplotlib-vennmetricksmimesismodin-raymomepympg123msgspecmsgspec-tomlmsgspec-yamlmsitoolsmultipartnamexnbconvert-allnbconvert-corenbconvert-pandocnlohmann_jsonnumba-cudanumpyrooffice365-rest-python-clientopenapi-pydanticopentelemetry-distroopentelemetry-instrumentationopentelemetry-instrumentation-system-metricsoptreeosmnxpathlibpdf2imagepfzypgpyplumbumpm4pypolarspolyfactorypoppler-cpppostalpre-commitprompt-toolkitpropcachepy-partiql-parserpy_stringmatchingpyatlanpyfakefspyfhelpyhacrf-datamadepyicebergpykrb5pylbfgspymilvuspymoopynisherpyomopypdfpypdf-with-cryptopypdf-with-fullpypdf-with-imagepypngpyprindpyrfrpysoundfilepytest-codspeedpytest-triopython-barcodepython-boxpython-docxpython-gssapipython-iso639python-magicpython-pandocpython-zstdpyucapyvinecopulibpyxirrqrcoderai-sdkray-clientray-observabilityreadlinerich-clickrouge-scoreruffscikit-criteriascikit-mobilitysentencepiece-pythonsentencepiece-spmsetuptools-markdownsetuptools-scmsetuptools-scm-git-archiveshareplumsimdjsonsimplecosinesis-extrasslack-sdksmacsnowflake-sqlalchemysnowflake_legacysocrata-pyspdlogsphinxcontrib-imagessphinxcontrib-jquerysphinxcontrib-youtubesplunk-opentelemetrysqlfluffsquarifyst-themestatisticsstreamlit-antd-componentsstreamlit-condition-treestreamlit-echartsstreamlit-feedbackstreamlit-keplerglstreamlit-mermaidstreamlit-navigation-barstreamlit-option-menustrictyamlstringdistsybiltensorflow-cputensorflow-texttiledb-ptorchaudiotorchevaltrio-websockettrulens-connectors-snowflaketrulens-coretrulens-dashboardtrulens-feedbacktrulens-otel-semconvtrulens-providers-cortextsdownsampletypingtyping-extensionstyping_extensionsunittest-xml-reportinguritemplateusuuid6wfdbwsprotozlibzope.index
Added the following Python BuiltIn libraries with Direct status:
aifcArrayastasynchatasyncioasyncoreatexitaudioopbase64bdbbinasciibitsectbuiltinsbz2calendarcgicgitbchunkcmathcmdcodecodecscodeopcolorsyscompileallconcurrentcontextlibcontextvarscopycopyregcprofilecryptcsvctypescursesdbmdifflibdisdistutilsdoctestemailensurepipenumerrnofaulthandlerfcntlfilecmpfileinputfnmatchfractionsftplibfunctoolsgcgetoptgetpassgettextgraphlibgrpgziphashlibheapqhmachtmlhttpidlelibimaplibimghdrimpimportlibinspectipaddressitertoolskeywordlinecachelocalelzmamailboxmailcapmarshalmathmimetypesmmapmodulefindermsilibmultiprocessingnetrcnisnntplibnumbersoperatoroptparseossaudiodevpdbpicklepickletoolspipespkgutilplatformplistlibpoplibposixpprintprofilepstatsptypwdpy_compilepyclbrpydocqueuequoprirandomrereprlibressourcerlcompleterrunpyschedGeheimnisseselectselectorsshelveshlexsignalsitesitecustomizesmtpdsmtplibsndhdrsocketsocketserverspwdsqlite3sslstatstringstringprepstructsubprocesssunausymtablesysconfigsyslogtabnannytarfiletelnetlibtempfiletermiostesttextwrapthreadingtimeittkinterTokentokenizetomllibtracetracebacktracemallocttyturtleturtledemotypesunicodedataurllibuuuuidvenvwarningswaveweakrefwebbrowserwsgirefxdrlibxmlxmlrpczipappzipfilezipimportzoneinfo
Added the following Python BuiltIn libraries with NotSupported status:
msvcrtwinregwinsound
Geändert¶
Aktualisieren Sie .NET auf Version v9.0.0.
Verbessert EWI SPRKPY1068.
Die von SMA unterstützte Version von Snowpark Python API wurde von 1.24.0 auf 1.25.0 erhöht.
Die detaillierte Berichtsvorlage wurde aktualisiert und enthält jetzt die Snowpark-Version für Pandas.
Die folgenden Bibliotheken wurden von ThirdPartyLib auf BuiltIn geändert.
configparserdataclassespathlibreadlinestatisticszlib
Updated the mapping status for the following Pandas elements, from Direct to Partial:
pandas.core.frame.DataFrame.addpandas.core.frame.DataFrame.aggregatepandas.core.frame.DataFrame.allpandas.core.frame.DataFrame.applypandas.core.frame.DataFrame.astypepandas.core.frame.DataFrame.cumsumpandas.core.frame.DataFrame.divpandas.core.frame.DataFrame.dropnapandas.core.frame.DataFrame.eqpandas.core.frame.DataFrame.ffillpandas.core.frame.DataFrame.fillnapandas.core.frame.DataFrame.floordivpandas.core.frame.DataFrame.gepandas.core.frame.DataFrame.groupbypandas.core.frame.DataFrame.gtpandas.core.frame.DataFrame.idxmaxpandas.core.frame.DataFrame.idxminpandas.core.frame.DataFrame.infpandas.core.frame.DataFrame.joinpandas.core.frame.DataFrame.lepandas.core.frame.DataFrame.locpandas.core.frame.DataFrame.ltpandas.core.frame.DataFrame.maskpandas.core.frame.DataFrame.mergepandas.core.frame.DataFrame.modpandas.core.frame.DataFrame.mulpandas.core.frame.DataFrame.nepandas.core.frame.DataFrame.nuniquepandas.core.frame.DataFrame.pivot_tablepandas.core.frame.DataFrame.powpandas.core.frame.DataFrame.raddpandas.core.frame.DataFrame.rankpandas.core.frame.DataFrame.rdivpandas.core.frame.DataFrame.renamepandas.core.frame.DataFrame.replacepandas.core.frame.DataFrame.resamplepandas.core.frame.DataFrame.rfloordivpandas.core.frame.DataFrame.rmodpandas.core.frame.DataFrame.rmulpandas.core.frame.DataFrame.rollingpandas.core.frame.DataFrame.roundpandas.core.frame.DataFrame.rpowpandas.core.frame.DataFrame.rsubpandas.core.frame.DataFrame.rtruedivpandas.core.frame.DataFrame.shiftpandas.core.frame.DataFrame.skewpandas.core.frame.DataFrame.sort_indexpandas.core.frame.DataFrame.sort_valuespandas.core.frame.DataFrame.subpandas.core.frame.DataFrame.to_dictpandas.core.frame.DataFrame.transformpandas.core.frame.DataFrame.transposepandas.core.frame.DataFrame.truedivpandas.core.frame.DataFrame.varpandas.core.indexes.datetimes.date_rangepandas.core.reshape.concat.concatpandas.core.reshape.melt.meltpandas.core.reshape.merge.mergepandas.core.reshape.pivot.pivot_tablepandas.core.reshape.tile.cutpandas.core.series.Series.addpandas.core.series.Series.aggregatepandas.core.series.Series.allpandas.core.series.Series.anypandas.core.series.Series.cumsumpandas.core.series.Series.divpandas.core.series.Series.dropnapandas.core.series.Series.eqpandas.core.series.Series.ffillpandas.core.series.Series.fillnapandas.core.series.Series.floordivpandas.core.series.Series.gepandas.core.series.Series.gtpandas.core.series.series.ltpandas.core.series.Series.maskpandas.core.series.Series.modpandas.core.series.Series.mulpandas.core.series.Series.multiplypandas.core.series.Series.nepandas.core.series.Series.powpandas.core.series.Series.quantilepandas.core.series.Series.raddpandas.core.series.Series.rankpandas.core.series.Series.rdivpandas.core.series.Series.renamepandas.core.series.Series.replacepandas.core.series.Series.resamplepandas.core.series.Series.rfloordivpandas.core.series.Series.rmodpandas.core.series.Series.rmulpandas.core.series.Series.rollingpandas.core.series.Series.rpowpandas.core.series.Series.rsubpandas.core.series.Series.rtruedivpandas.core.series.Series.samplepandas.core.series.Series.shiftpandas.core.series.Series.skewpandas.core.series.Series.sort_indexpandas.core.series.Series.sort_valuespandas.core.series.Series.stdpandas.core.series.Series.subpandas.core.series.Series.subtractpandas.core.series.Series.truedivpandas.core.series.Series.value_countspandas.core.series.Series.varpandas.core.series.Series.wherepandas.core.tools.numeric.to_numeric
Updated the mapping status for the following Pandas elements, from NotSupported to Direct:
pandas.core.frame.DataFrame.attrspandas.core.indexes.base.Index.to_numpypandas.core.series.Series.str.lenpandas.io.html.read_htmlpandas.io.xml.read_xmlpandas.core.indexes.datetimes.DatetimeIndex.meanpandas.core.resample.Resampler.indicespandas.core.resample.Resampler.nuniquepandas.core.series.Series.itemspandas.core.tools.datetimes.to_datetimepandas.io.sas.sasreader.read_saspandas.core.frame.DataFrame.attrspandas.core.frame.DataFrame.stylepandas.core.frame.DataFrame.itemspandas.core.groupby.generic.DataFrameGroupBy.headpandas.core.groupby.generic.DataFrameGroupBy.medianpandas.core.groupby.generic.DataFrameGroupBy.minpandas.core.groupby.generic.DataFrameGroupBy.nuniquepandas.core.groupby.generic.DataFrameGroupBy.tailpandas.core.indexes.base.Index.is_booleanpandas.core.indexes.base.Index.is_floatingpandas.core.indexes.base.Index.is_integerpandas.core.indexes.base.Index.is_monotonic_decreasingpandas.core.indexes.base.Index.is_monotonic_increasingpandas.core.indexes.base.Index.is_numericpandas.core.indexes.base.Index.is_objectpandas.core.indexes.base.Index.maxpandas.core.indexes.base.Index.minpandas.core.indexes.base.Index.namepandas.core.indexes.base.Index.namespandas.core.indexes.base.Index.renamepandas.core.indexes.base.Index.set_namespandas.core.indexes.datetimes.DatetimeIndex.day_namepandas.core.indexes.datetimes.DatetimeIndex.month_namepandas.core.indexes.datetimes.DatetimeIndex.timepandas.core.indexes.timedeltas.TimedeltaIndex.ceilpandas.core.indexes.timedeltas.TimedeltaIndex.dayspandas.core.indexes.timedeltas.TimedeltaIndex.floorpandas.core.indexes.timedeltas.TimedeltaIndex.microsecondspandas.core.indexes.timedeltas.TimedeltaIndex.nanosecondspandas.core.indexes.timedeltas.TimedeltaIndex.roundpandas.core.indexes.timedeltas.TimedeltaIndex.secondspandas.core.reshape.pivot.crosstabpandas.core.series.Series.dt.roundpandas.core.series.Series.dt.timepandas.core.series.Series.dt.weekdaypandas.core.series.Series.is_monotonic_decreasingpandas.core.series.Series.is_monotonic_increasing
Updated the mapping status for the following Pandas elements, from NotSupported to Partial:
pandas.core.frame.DataFrame.alignpandas.core.series.Series.alignpandas.core.frame.DataFrame.tz_convertpandas.core.frame.DataFrame.tz_localizepandas.core.groupby.generic.DataFrameGroupBy.fillnapandas.core.groupby.generic.SeriesGroupBy.fillnapandas.core.indexes.datetimes.bdate_rangepandas.core.indexes.datetimes.DatetimeIndex.stdpandas.core.indexes.timedeltas.TimedeltaIndex.meanpandas.core.resample.Resampler.asfreqpandas.core.resample.Resampler.quantilepandas.core.series.Series.mappandas.core.series.Series.tz_convertpandas.core.series.Series.tz_localizepandas.core.window.expanding.Expanding.countpandas.core.window.rolling.Rolling.countpandas.core.groupby.generic.DataFrameGroupBy.aggregatepandas.core.groupby.generic.SeriesGroupBy.aggregatepandas.core.frame.DataFrame.applymappandas.core.series.Series.applypandas.core.groupby.generic.DataFrameGroupBy.bfillpandas.core.groupby.generic.DataFrameGroupBy.ffillpandas.core.groupby.generic.SeriesGroupBy.bfillpandas.core.groupby.generic.SeriesGroupBy.ffillpandas.core.frame.DataFrame.backfillpandas.core.frame.DataFrame.bfillpandas.core.frame.DataFrame.comparepandas.core.frame.DataFrame.unstackpandas.core.frame.DataFrame.asfreqpandas.core.series.Series.backfillpandas.core.series.Series.bfillpandas.core.series.Series.comparepandas.core.series.Series.unstackpandas.core.series.Series.asfreqpandas.core.series.Series.argmaxpandas.core.series.Series.argminpandas.core.indexes.accessors.CombinedDatetimelikeProperties.microsecondpandas.core.indexes.accessors.CombinedDatetimelikeProperties.nanosecondpandas.core.indexes.accessors.CombinedDatetimelikeProperties.day_namepandas.core.indexes.accessors.CombinedDatetimelikeProperties.month_namepandas.core.indexes.accessors.CombinedDatetimelikeProperties.month_startpandas.core.indexes.accessors.CombinedDatetimelikeProperties.month_endpandas.core.indexes.accessors.CombinedDatetimelikeProperties.is_year_startpandas.core.indexes.accessors.CombinedDatetimelikeProperties.is_year_endpandas.core.indexes.accessors.CombinedDatetimelikeProperties.is_quarter_startpandas.core.indexes.accessors.CombinedDatetimelikeProperties.is_quarter_endpandas.core.indexes.accessors.CombinedDatetimelikeProperties.is_leap_yearpandas.core.indexes.accessors.CombinedDatetimelikeProperties.floorpandas.core.indexes.accessors.CombinedDatetimelikeProperties.ceilpandas.core.groupby.generic.DataFrameGroupBy.idxmaxpandas.core.groupby.generic.DataFrameGroupBy.idxminpandas.core.groupby.generic.DataFrameGroupBy.stdpandas.core.indexes.timedeltas.TimedeltaIndex.meanpandas.core.tools.timedeltas.to_timedelta
Bekanntes Problem¶
Diese Version enthält ein Problem bei der Konvertierung des Beispielprojekts, das in dieser Version nicht funktioniert. Es wird im nächsten Release behoben werden
Version 2.4.3 (9. Januar 2025)¶
Anwendung & CLI Version 2.4.3¶
Desktop-App¶
Link zur Fehlerbehebungsanleitung im Modalfenster für Absturzberichte hinzugefügt.
Enthaltene SMA Core-Versionen¶
Snowpark Conversion Core 4.15.0
Hinzugefügt¶
Die folgenden PySpark-Elemente wurden der ConversionStatusPySpark.csv-Datei als
NotSupportedhinzugefügt:pyspark.sql.streaming.readwriter.DataStreamReader.tablepyspark.sql.streaming.readwriter.DataStreamReader.schemapyspark.sql.streaming.readwriter.DataStreamReader.optionspyspark.sql.streaming.readwriter.DataStreamReader.optionpyspark.sql.streaming.readwriter.DataStreamReader.loadpyspark.sql.streaming.readwriter.DataStreamReader.formatpyspark.sql.streaming.query.StreamingQuery.awaitTerminationpyspark.sql.streaming.readwriter.DataStreamWriter.partitionBypyspark.sql.streaming.readwriter.DataStreamWriter.toTablepyspark.sql.streaming.readwriter.DataStreamWriter.triggerpyspark.sql.streaming.readwriter.DataStreamWriter.queryNamepyspark.sql.streaming.readwriter.DataStreamWriter.outputModepyspark.sql.streaming.readwriter.DataStreamWriter.formatpyspark.sql.streaming.readwriter.DataStreamWriter.optionpyspark.sql.streaming.readwriter.DataStreamWriter.foreachBatchpyspark.sql.streaming.readwriter.DataStreamWriter.start
Geändert¶
Aktualisiertes Hive SQL EWIs-Format.
SPRKHVSQL1001
SPRKHVSQL1002
SPRKHVSQL1003
SPRKHVSQL1004
SPRKHVSQL1005
SPRKHVSQL1006
Aktualisiertes Spark SQL EWIs-Format.
SPRKSPSQL1001
SPRKSPSQL1002
SPRKSPSQL1003
SPRKSPSQL1004
SPRKSPSQL1005
SPRKSPSQL1006
Korrigiert¶
Es wurde ein Fehler korrigiert, der dazu geführt hat, dass einige PySpark-Elemente vom Tool nicht erkannt wurden.
Die Nichtübereinstimmung zwischen den in ThirdParty identifizierten Anrufen und der Anzahl der importierten ThirdParty Anrufe wurde korrigiert.
Version 2.4.2 (13. Dezember 2024)¶
Anwendung und CLI Version 2.4.2¶
Enthaltene SMA Core-Versionen¶
Snowpark Conversion Core 4.14.0
Hinzugefügt added¶
Die folgenden Spark-Elemente wurden zu ConversionStatusPySpark.csv hinzugefügt:
pyspark.broadcast.Broadcast.valuepyspark.conf.SparkConf.getAllpyspark.conf.SparkConf.setAllpyspark.conf.SparkConf.setMasterpyspark.context.SparkContext.addFilepyspark.context.SparkContext.addPyFilepyspark.context.SparkContext.binaryFilespyspark.context.SparkContext.setSystemPropertypyspark.context.SparkContext.versionpyspark.files.SparkFilespyspark.files.SparkFiles.getpyspark.rdd.RDD.countpyspark.rdd.RDD.distinctpyspark.rdd.RDD.reduceByKeypyspark.rdd.RDD.saveAsTextFilepyspark.rdd.RDD.takepyspark.rdd.RDD.zipWithIndexpyspark.sql.context.SQLContext.udfpyspark.sql.types.StructType.simpleString
Geändert¶
Die Dokumentation der Pandas EWIs,
PNDSPY1001,PNDSPY1002undPNDSPY1003SPRKSCL1137wurde an ein standardisiertes Format angepasst, um Konsistenz und Klarheit für alle EWIs zu gewährleisten.Die Dokumentation der folgenden Scala EWIs wurde aktualisiert:
SPRKSCL1106undSPRKSCL1107. Zu erfolgende Anpassung an ein standardisiertes Format, um Konsistenz und Klarheit in allen EWIs zu gewährleisten.
Korrigiert¶
Es wurde ein Fehler korrigiert, der dazu geführt hat, dass die Symbole von UserDefined im Inventar der Drittanbieter-Nutzungen angezeigt wurden.
Version 2.4.1 (4. Dezember 2024)¶
Anwendung und CLI Version 2.4.1¶
Enthaltene SMA Core-Versionen¶
Snowpark Conversion Core 4.13.1
Befehlszeilenschnittstelle¶
Geändert
Zeitstempel für den Ausgabeordner hinzugefügt.
Snowpark Conversion Core 4.13.1¶
Hinzugefügt¶
Spalte ‚Ausgangssprache‘ zur Tabelle der Bibliothekszuordnungen hinzugefügt
Andereals neue Kategorie in der Pandas API-Zusammenfassung-Tabelle der DetailedReport.docx-Datei hinzugefügt
Geändert¶
Die Dokumentation für Python EWI
SPRKPY1058wurde aktualisiert.Die Meldung für pandas EWI
PNDSPY1002wurde aktualisiert, um das relate pandas-Element anzuzeigen.Die Art und Weise, wie wir die .csv-Berichte erstellt haben, wurde aktualisiert und wird nun nach einem zweiten Durchlauf überschrieben.
Korrigiert¶
Es wurde ein Fehler korrigiert, der dazu geführt hat, dass Notebook-Dateien in der Ausgabe nicht erzeugt wurden.
Der Ersetzer für die Methoden
getundsetvonpyspark.sql.conf wurde korrigiert.RuntimeConfig, der Ersetzer entspricht nun den korrekten vollständigen Namen.Fehlerhafte Version des Abfrage-Tags wurde korrigiert.
Als ThirdPartyLib gemeldete UserDefined-Pakete wurden korrigiert.
\
Version 2.3.1 (14. November 2024)¶
Anwendung und CLI Version 2.3.1¶
Enthaltene SMA Core-Versionen¶
Snowpark Conversion Core 4.12.0
Desktop-App¶
Korrigiert
Korrektur von Problemen mit der Groß- und Kleinschreibung in –sql Optionen.
Entfernt
Entfernen Sie den Plattformnamen aus der show-ac-Meldung.
Snowpark Conversion Core 4.12.0¶
Hinzugefügt¶
Unterstützung für Snowpark Python 1.23.0 und 1.24.0 wurde hinzugefügt.
Eine neue EWI für die
pyspark.sql.dataframe.DataFrame.writeTo-Funktion wurde hinzugefügt. Alle Verwendungen dieser Funktion verfügen nun über die EWI SPRKPY1087.
Geändert¶
Die Dokumentation der Scala EWIs wurde von
SPRKSCL1137aufSPRKSCL1156aktualisiert, um ein standardisiertes Format zu erhalten, das Konsistenz und Klarheit für alle EWIs gewährleistet.Die Dokumentation der Scala EWIs wurde von
SPRKSCL1117aufSPRKSCL1136aktualisiert, um ein standardisiertes Format zu erhalten, das Konsistenz und Klarheit für alle EWIs gewährleistet.Die Meldung, die für die folgende EWIs angezeigt wird, wurde aktualisiert:
SPRKPY1082
SPRKPY1083
Die Dokumentation der Scala EWIs wurde von
SPRKSCL1100aufSPRKSCL1105, vonSPRKSCL1108aufSPRKSCL1116; vonSPRKSCL1157aufSPRKSCL1175aktualisiert, um ein standardisiertes Format zu erhalten, das Konsistenz und Klarheit in allen EWIs gewährleistet.Der Zuordnungsstatus der folgenden PySpark-Elemente wurde von NotSupported auf Direkt mit EWI aktualisiert:
pyspark.sql.readwriter.DataFrameWriter.option=>snowflake.snowpark.DataFrameWriter.option: Alle Verwendungen dieser Funktion verfügen nun über die EWI SPRKPY1088pyspark.sql.readwriter.DataFrameWriter.options=>snowflake.snowpark.DataFrameWriter.options: Alle Verwendungen dieser Funktion verfügen nun über die EWI SPRKPY1089
Der Zuordnungsstatus der folgenden PySpark-Elemente wurde von Workaround auf Umbenennen aktualisiert:
pyspark.sql.readwriter.DataFrameWriter.partitionBy=>snowflake.snowpark.DataFrameWriter.partition_by
Aktualisierte EWI-Dokumentation: SPRKSCL1000, SPRKSCL1001, SPRKSCL1002, SPRKSCL1100, SPRKSCL1101, SPRKSCL1102, SPRKSCL1103, SPRKSCL1104, SPRKSCL1105.
Entfernt¶
Das
pyspark.sql.dataframe.DataFrameStatFunctions.writeTo-Element wurde aus dem Konvertierungsstatus entfernt, dieses Element existiert nicht.
Veraltet¶
Die folgenden EWI-Codes sind veraltet:
SPRKPY1081
SPRKPY1084
Version 2.3.0 (30. Oktober 2024)¶
Anwendung & CLI Version 2.3.0¶
Snowpark Conversion Core 4.11.0
Snowpark Conversion Core 4.11.0¶
Hinzugefügt¶
Der
Issues.csv-Datei wurde eine neue Spalte namensUrlhinzugefügt, die auf die entsprechende EWI Dokumentation weiterleitet.Neue EWIs für die folgenden Spark-Elemente wurden hinzugefügt:
[SPRKPY1082] pyspark.sql.readwriter.DataFrameReader.load
[SPRKPY1083] pyspark.sql.readwriter.DataFrameWriter.save
[SPRKPY1084] pyspark.sql.readwriter.DataFrameWriter.option
[SPRKPY1085] pyspark.ml.feature.VectorAssembler
[SPRKPY1086] pyspark.ml.linalg.VectorUDT
38 neue Pandas-Elemente wurden hinzugefügt:
pandas.core.frame.DataFrame.select
andas.core.frame.DataFrame.str
pandas.core.frame.DataFrame.str.replace
pandas.core.frame.DataFrame.str.upper
pandas.core.frame.DataFrame.to_list
pandas.core.frame.DataFrame.tolist
pandas.core.frame.DataFrame.unique
pandas.core.frame.DataFrame.values.tolist
pandas.core.frame.DataFrame.withColumn
pandas.core.groupby.generic._SeriesGroupByScalar
pandas.core.groupby.generic._SeriesGroupByScalar[S1].agg
pandas.core.groupby.generic._SeriesGroupByScalar[S1].aggregate
pandas.core.indexes.datetimes.DatetimeIndex.year
pandas.core.series.Series.columns
pandas.core.tools.datetimes.to_datetime.date
pandas.core.tools.datetimes.to_datetime.dt.strftime
pandas.core.tools.datetimes.to_datetime.strftime
pandas.io.parsers.readers.TextFileReader.apply
pandas.io.parsers.readers.TextFileReader.astype
pandas.io.parsers.readers.TextFileReader.columns
pandas.io.parsers.readers.TextFileReader.copy
pandas.io.parsers.readers.TextFileReader.drop
pandas.io.parsers.readers.TextFileReader.drop_duplicates
pandas.io.parsers.readers.TextFileReader.fillna
pandas.io.parsers.readers.TextFileReader.groupby
pandas.io.parsers.readers.TextFileReader.head
pandas.io.parsers.readers.TextFileReader.iloc
pandas.io.parsers.readers.TextFileReader.isin
pandas.io.parsers.readers.TextFileReader.iterrows
pandas.io.parsers.readers.TextFileReader.loc
pandas.io.parsers.readers.TextFileReader.merge
pandas.io.parsers.readers.TextFileReader.rename
pandas.io.parsers.readers.TextFileReader.shape
pandas.io.parsers.readers.TextFileReader.to_csv
pandas.io.parsers.readers.TextFileReader.to_excel
pandas.io.parsers.readers.TextFileReader.unique
pandas.io.parsers.readers.TextFileReader.values
pandas.tseries.offsets
Version 2.2.3 (24. Oktober 2024)¶
Anwendungsversion 2.2.3¶
Enthaltene SMA Core-Versionen¶
Snowpark Conversion Core 4.10.0
Desktop-App¶
Korrigiert¶
Es wurde ein Fehler korrigiert, der dazu führte, dass SMA in der Menüleiste der Windows-Version die Bezeichnung SnowConvert anstelle von Snowpark Migration Accelerator anzeigte.
Es wurde ein Fehler korrigiert, der zum Absturz von SMA führte, wenn das Programm keine Lese- und Schreibrechte für das Verzeichnis
.configin macOS und das VerzeichnisAppDatain Windows hatte.
Befehlszeilenschnittstelle¶
Geändert
Der Name der ausführbaren Datei CLI wurde von
snowctinsmaumbenannt.Das Argument für die Quellsprache wurde entfernt, so dass Sie nicht mehr angeben müssen, ob Sie eine Python- oder Scala-Bewertung/Konvertierung durchführen.
Die von CLI unterstützten Befehlszeilenargumente wurden um die folgenden neuen Argumente erweitert:
--enableJupyter|-j: Flagge, die angibt, ob die Konvertierung von Databricks-Notebooks in Jupyter aktiviert ist oder nicht.--sql|-f: Syntax der Datenbank-Engine, die verwendet werden soll, wenn ein SQL-Befehl erkannt wird.--customerEmail|-e: Konfigurieren der Kunden-E-Mail.--customerCompany|-c: Konfigurieren der Kundenfirma.--projectName|-p: Konfigurieren Sie das Kundenprojekt.
Einige Texte wurden aktualisiert, um den korrekten Namen der Anwendung wiederzugeben und die Konsistenz und Klarheit aller Meldungen zu gewährleisten.
Aktualisieren Sie die Nutzungsbedingungen der Anwendung.
Die Dokumentation von CLI wurde aktualisiert und erweitert, um die neuesten Features, Verbesserungen und Änderungen zu berücksichtigen.
Der Text, der vor der Ausführung von SMA angezeigt wird, wurde verbessert.
Das CLI wurde aktualisiert, sodass „Ja“ als gültiges Argument akzeptiert wird, wenn der Benutzer zur Bestätigung aufgefordert wird.
Ermöglicht es CLI, die Ausführung fortzusetzen, ohne auf eine Interaktion des Benutzers zu warten, indem Sie das Argument
-yoder--yesangeben.Die Hilfeinformationen für das Argument
--sqlwurden aktualisiert, um die Werte anzuzeigen, die dieses Argument erwartet.
Snowpark Conversion Core Version 4.10.0¶
Hinzugefügt¶
Eine neue EWI für die Funktion
pyspark.sql.readwriter.DataFrameWriter partitionBywurde hinzugefügt. Alle Verwendungen dieser Funktion verfügen nun über die EWI SPRKPY1081.Der Datei
ImportUsagesInventory.csvwurde eine neue Spalte namensTechnologiehinzugefügt.
Geändert¶
Die Bereitschaftsbewertung von Drittanbieter-Bibliotheken wurde aktualisiert, um auch die
UnbekanntenBibliotheken zu berücksichtigen.Die Datei
AssessmentFiles.zipwurde aktualisiert und enthält nun.json-Dateien anstelle von.pam-Dateien.Der Konvertierungsmechanismus von CSV zu JSON wurde verbessert, um die Verarbeitung von Beständen leistungsfähiger zu machen.
Die Dokumentation der folgenden EWIs wurde verbessert:
SPRKPY1029
SPRKPY1054
SPRKPY1055
SPRKPY1063
SPRKPY1075
SPRKPY1076
Der Zuordnungsstatus der folgenden Spark Scala-Elemente wurde von
DirektaufUmbenennenaktualisiert.org.apache.spark.sql.functions.shiftLeft=>com.snowflake.snowpark.functions.shiftleftorg.apache.spark.sql.functions.shiftRight=>com.snowflake.snowpark.functions.shiftright
Der Zuordnungsstatus der folgenden Spark Scala-Elemente wurde von
Nicht unterstützaufDirektaktualisiert.org.apache.spark.sql.functions.shiftleft=>com.snowflake.snowpark.functions.shiftleftorg.apache.spark.sql.functions.shiftright=>com.snowflake.snowpark.functions.shiftright
Korrigiert¶
Es wurde ein Fehler korrigiert, der dazu führte, dass SMA die Spalte
HerkunftderImportUsagesInventory. csv-Datei falsch befüllt hat.Es wurde ein Fehler korrigiert, der dazu führte, dass SMA-Importe der Bibliotheken
io,json,loggingundunittestin derImportUsagesInventory.csv-Datei und in derDetailedReport.docx-Datei nicht als Python built-in Importe klassifizierte.
Version 2.2.2 (11. Oktober 2024)¶
Anwendungsversion 2.2.2¶
Features-Updates umfassen:
Snowpark Conversion Core 4.8.0
Snowpark Conversion Core Version 4.8.0¶
Hinzugefügt¶
EwiCatalog.csvund .md-Dateien hinzugefügt, um die Dokumentation zu reorganisierenDer Zuordnungsstatus von
pyspark.sql.functions.lnDirect wurde hinzugefügt.Eine Transformation für
pyspark.context.SparkContext.getOrCreatewurde hinzugefügt.Weitere Einzelheiten finden Sie unter EWI SPRKPY1080.
Es wurde eine Verbesserung für SymbolTable hinzugefügt, um den Typ von Parametern in Funktionen zu ermitteln.
Hinzugefügte SymbolTable unterstützt statische Methoden und geht nicht davon aus, dass der erste Parameter bei diesen Methoden „self“ ist.
Eine Dokumentation für fehlende EWIs wurde hinzugefügt
SPRKHVSQL1005
SPRKHVSQL1006
SPRKSPSQL1005
SPRKSPSQL1006
SPRKSCL1002
SPRKSCL1170
SPRKSCL1171
SPRKPY1057
SPRKPY1058
SPRKPY1059
SPRKPY1060
SPRKPY1061
SPRKPY1064
SPRKPY1065
SPRKPY1066
SPRKPY1067
SPRKPY1069
SPRKPY1070
SPRKPY1077
SPRKPY1078
SPRKPY1079
SPRKPY1101
Geändert¶
Der Zuordnungsstatus wurde aktualisiert von:
pyspark.sql.functions.array_removevonNotSupportedzuDirekt.
Korrigiert¶
Die Tabelle „Code-Dateigröße“ im Detailbericht wurde korrigiert, um .sql- und .hql-Dateien auszuschließen, und die Zeile „Extra groß“ wurde zur Tabelle hinzugefügt.
Das Fehlen des
update_query_tagwurde korrigiert, wennSparkSessionin mehreren Zeilen aufPythondefiniert ist.Das Fehlen des
update_query_tagwurde korrigiert, wennSparkSessionin mehreren Zeilen aufScaladefiniert ist.Das Fehlen von EWI
SPRKHVSQL1001bei einigen SQL-Anweisungen mit Parsing-Fehlern wurde korrigiert.Feste Werte für neue Zeilen innerhalb von Zeichenfolgenliteralen korrigiert
Die Anzeige der Gesamtanzahl der Codezeilen in der Dateityp-Übersichtstabelle wurde korrigiert
Als 0 angezeigter Parsing-Score bei erfolgreich erkannten Dateien wurde korrigiert
LOC-Zählung im Zellenbestand für Databricks Magic SQL-Zellen wurde korrigiert
Version 2.2.0 (26. September 2024)¶
Anwendungsversion 2.2.0¶
Feature-Updates umfassen:
Snowpark Conversion Core 4.6.0
Snowpark Conversion Core Version 4.6.0¶
Hinzugefügt¶
Hinzufügen der Transformation für
pyspark.sql.readwriter.DataFrameReader.parquet.Hinzufügen der Transformation für
pyspark.sql.readwriter.DataFrameReader.option, wenn es sich um eine Parquet-Methode handelt.
Geändert¶
Der Zuordnungsstatus wurde aktualisiert von:
pyspark.sql.types.StructType.fieldsvonNotSupportednachDirekt.pyspark.sql.types.StructType.namesvonNotSupportednachDirekt.pyspark.context.SparkContext.setLogLevelvonWorkaroundzuTransformation.Weitere Einzelheiten finden Sie unter EWIs SPRKPY1078 und SPRKPY1079
org.apache.spark.sql.functions.roundvonWorkAroundzuDirekt.org.apache.spark.sql.functions.udfvonNotDefinedzuTransformation.Weitere Einzelheiten finden Sie unter EWIs SPRKSCL1174 und SPRKSCL1175
Der Zuordnungsstatus der folgenden Spark-Elemente wurde von
DirectHelperaufDirektaktualisiert:org.apache.spark.sql.functions.hexorg.apache.spark.sql.functions.unhexorg.apache.spark.sql.functions.shiftleftorg.apache.spark.sql.functions.shiftrightorg.apache.spark.sql.functions.reverseorg.apache.spark.sql.functions.isnullorg.apache.spark.sql.functions.unix_timestamporg.apache.spark.sql.functions.randnorg.apache.spark.sql.functions.signumorg.apache.spark.sql.functions.signorg.apache.spark.sql.functions.collect_listorg.apache.spark.sql.functions.log10org.apache.spark.sql.functions.log1porg.apache.spark.sql.functions.base64org.apache.spark.sql.functions.unbase64org.apache.spark.sql.functions.regexp_extractorg.apache.spark.sql.functions.exprorg.apache.spark.sql.functions.date_formatorg.apache.spark.sql.functions.descorg.apache.spark.sql.functions.ascorg.apache.spark.sql.functions.sizeorg.apache.spark.sql.functions.locateorg.apache.spark.sql.functions.ntile
Korrigiert¶
Der im Prozentsatz der gesamten Pandas Api angezeigte Wert wurde korrigiert
Gesamtprozentsatz auf ImportCalls in der DetailReport-Tabelle wurde korrigiert
Veraltet¶
Der folgende EWI-Code ist veraltet:
SPRKSCL1115
Version 2.1.7 (12. September 2024)¶
Anwendungsversion 2.1.7¶
Feature-Updates umfassen:
Snowpark Conversion Core 4.5.7
Snowpark Conversion Core 4.5.2
Snowpark Conversion Core Version 4.5.7¶
Fehlerbehebung per Hotfix¶
Die Gesamtzeile in den Spark-Nutzungsübersichten wurde hinzugefügt, wenn es keine Nutzungen gibt
Von Python Assembly auf Version=
1.3.111aktualisiertNachstehendes Komma in mehrzeiligen Argumenten parsen
Snowpark Conversion Core Version 4.5.2¶
Hinzugefügt¶
Transformation für
pyspark.sql.readwriter.DataFrameReader.optionwurde hinzugefügt:Wenn die Kette aus einem CSV-Methodenaufruf stammt.
Wenn die Kette aus einem JSON-Methodenaufruf stammt.
Transformation für
pyspark.sql.readwriter.DataFrameReader.jsonwurde hinzugefügt.
Geändert¶
Ausgeführt SMA auf SQL-Strings, die an Python/Scala-Funktionen übergeben werden
Erstellen Sie AST in Scala/Python, um eine temporäre SQL-Einheit auszugeben
Erstellen Sie einen SqlEmbeddedUsages.csv-Bestand
Verwerfen Sie SqlStatementsInventroy.csv und SqlExtractionInventory.csv
Integrieren Sie EWI, wenn das SQL-Literal nicht verarbeitet werden konnte
Erstellen Sie neue Aufgabe, um SQL-eingebetteten Code zu verarbeiten
Sammeln Sie Informationen für SqlEmbeddedUsages.csv-Bestand in Python
Ersetzen Sie mit SQL transformierten Code in Python durch Literal
Aktualisieren Sie Testfälle nach der Implementierung
Erstellen Sie eine Tabelle und Ansichten für Telemetrie in SqlEmbeddedUsages-Bestand
Sammeln Sie Informationen für SqlEmbeddedUsages.csv-Bericht in Scala
Ersetzen Sie SQL transformierten Code in Scala durch Literal
Prüfen Sie die Reihenfolge der Zeilennummern für die Berichterstattung von Embedded SQL
Füllen Sie die
SqlFunctionsInfo.csvmit den SQL-Funktionen, die für SparkSQL und HiveSQLDer Zuordnungsstatus wurde aktualisiert für:
org.apache.spark.sql.SparkSession. sparkContextvon NotSupported zu „Transformation“.org.apache.spark.sql.Builder.configvonNotSupportedzuTransformation. Mit diesem neuen Zuordnungsstatus wird die SMA alle Verwendungen dieser Funktion aus dem Quellcode entfernen.
Version 2.1.6 (5. September 2024)¶
Anwendungsversion 2.1.6¶
Hotfix-Änderung für Snowpark Engines Core Version 4.5.1
Spark Conversion Core Version 4.5.1¶
Hotfix
Es wurde ein Mechanismus zur Konvertierung der von SMA erzeugten temporalen Databricks-Notebooks in exportierte Databricks-Notebooks hinzugefügt
Version 2.1.5 (29. August 2024)¶
Anwendungsversion 2.1.5¶
Feature-Updates umfassen:
Aktualisierter Spark Conversion Core: 4.3.2
Spark Conversion Core Version 4.3.2¶
Hinzugefügt¶
Es wurde der Mechanismus hinzugefügt (über Dekoration), um die Zeile und Spalte der in Notizbuchzellen identifizierten Elemente abzurufen.
Ein EWI für pyspark.sql.functions.from_json wurde hinzugefügt.
Eine Transformation für pyspark.sql.readwriter.DataFrameReader.csv wurde hinzugefügt.
Aktiviert den Abfrage-Tag-Mechanismus für Scala-Dateien.
Der Analysis Score-Code und zusätzliche Links zum detaillierten Bericht wurden hinzugefügt.
InputFilesInventory.csv wurde eine Spalte namens OriginFilePath hinzugefügt
Geändert¶
Der Zuordnungsstatus von pyspark.sql.functions.from_json wurde von „Nicht unterstützt“ auf „Transformation“ aktualisiert.
Der Zuordnungsstatus der folgenden Spark-Elemente wurde von „Workaround“ auf „Direkt“ aktualisiert:
org.apache.spark.sql.functions.countDistinct
org.apache.spark.sql.functions.max
org.apache.spark.sql.functions.min
org.apache.spark.sql.functions.mean
Veraltet¶
Die folgenden EWI-Codes sind veraltet:
SPRKSCL1135
SPRKSCL1136
SPRKSCL1153
SPRKSCL1155
Korrigiert¶
Es wurde ein Fehler korrigiert, der zu einer falschen Berechnung des Spark API-Ergebnisses führte.
Ein Fehler wurde korrigiert, der das Kopieren von SQL leeren oder kommentierten Dateien im Ausgabeordner verhinderte.
Es wurde ein Fehler in DetailedReport korrigiert. Die Notebook-Statistiken LOC und die Zellenzahl sind nicht korrekt.
Version 2.1.2 (14. August 2024)¶
Anwendungsversion 2.1.2¶
Feature-Updates umfassen:
Aktualisierter Spark Conversion Core: 4.2.0
Spark Conversion Core Version 4.2.0¶
Hinzugefügt¶
Hinzufügen einer Technologie-Spalte zu SparkUsagesInventory
Ein EWI für nicht definierte SQL-Elemente wurde hinzugefügt.
SqlFunctions-Inventar hinzugefügt
Sammeln Sie Informationen für SqlFunctions-Inventar
Geändert¶
Die Engine verarbeitet und druckt jetzt teilweise geparste Python-Dateien, anstatt die Originaldatei unverändert zu lassen.
Python-Notebook-Zellen, die Parsing-Fehler aufweisen, werden ebenfalls verarbeitet und gedruckt.
Korrigiert¶
pandas.core.indexes.datetimes.DatetimeIndex.strftime, das fälschlicherweise gemeldet wurde, wurde korrigiert.Korrektur der Diskrepanz zwischen SQL-Bereitschaftsbewertung und SQL-Verwendungen nach Unterstützungsstatus.
Es wurde ein Fehler korrigiert, der dazu führte, dass SMA
pandas.core.series.Series.emptymit einem falschen Zuordnungsstatus meldete.Korrektur der Diskrepanz zwischen Spark API-Verwendungen bereit zur Konvertierung in DetailedReport.docx unterscheidet sich von UsagesReadyForConversion-Zeile in Assessment.json.
Version 2.1.1 (8. August 2024)¶
Anwendungsversion 2.1.1¶
Feature-Updates umfassen:
Aktualisierter Spark Conversion Core: 4.1.0
Spark Conversion Core Version 4.1.0¶
Hinzugefügt¶
Die folgenden Informationen wurden der Datei
AssessmentReport.jsonhinzugefügtDie Bereitschaftsbewertung von Bibliotheken von Drittanbietern.
Die Anzahl der Aufrufe von Bibliotheken von Drittanbietern, die identifiziert wurden.
Die Anzahl der Aufrufe von Bibliotheken von Drittanbietern, die in Snowpark unterstützt werden.
Der Farbcode, der mit der Bereitschaftsbewertung von Drittanbietern, der Bereitschaftsbewertung von Spark API und der Bereitschaftsbewertung von SQL verbunden ist.
Transformierte
SqlSimpleDataTypein Spark erstelle Tabellen.Die Zuordnung von
pyspark.sql.functions.getwurde als „direkt“ hinzugefügt.Die Zuordnung von
pyspark.sql.functions.to_varcharwurde als „direkt“ hinzugefügt.Im Rahmen der Änderungen nach der Vereinheitlichung erzeugt das Tool nun eine Ausführungsinformationsdatei in der Engine.
Ein Ersetzer für
pyspark.sql.SparkSession.builder.appNamewurde hinzugefügt.
Geändert¶
Der Zuordnungsstatus wurde für die folgenden Spark-Elemente aktualisiert
Von Zuordnung „Nicht unterstützt“ zu „Direkt“:
pyspark.sql.functions.signpyspark.sql.functions.signum
Der Bericht „Bestandsaufnahme der Notebook-Zellen“ wurde geändert, um die Art des Inhalts für jede Zelle in der Element-Spalte anzuzeigen
Es wurde eine Spalte
SCALA_READINESS_SCOREhinzugefügt, die die Bereitschaftsbewertung nur in Bezug auf Verweise auf die Spark API in Scala-Dateien anzeigt.Teilweise Unterstützung für die Transformation von Tabelleneigenschaften in
ALTER TABLEundALTER VIEWAktualisierung des Konvertierungsstatus des Knotens
SqlSimpleDataTypevon „Ausstehend“ auf „Transformation“ in Spark erstellten TabellenDie von SMA unterstützte Version von Snowpark Scala API wurde von
1.7.0auf1.12.1aktualisiert:Der Zuordnungsstatus wurde aktualisiert von:
org.apache.spark.sql.SparkSession.getOrCreatevon „Umbenennen“ zu „Direkt“org.apache.spark.sql.functions.sumvon „Workaround“ zu „Direkt“
Die von SMA unterstützte Version von Snowpark Python API wurde von
1.15.0auf1.20.0aktualisiert:Der Zuordnungsstatus wurde aktualisiert von:
pyspark.sql.functions.arrays_zipvon „Nicht unterstützt“ zu „Direkt“
Der Zuordnungsstatus wurde für die folgenden Pandas-Elemente aktualisiert:
Direkte Zuordnungen:
pandas.core.frame.DataFrame.anypandas.core.frame.DataFrame.applymap
Der Zuordnungsstatus wurde für die folgenden Pandas-Elemente aktualisiert:
Von Zuordnung „Nicht unterstützt“ zu „Direkt“:
pandas.core.frame.DataFrame.groupbypandas.core.frame.DataFrame.indexpandas.core.frame.DataFrame.Tpandas.core.frame.DataFrame.to_dict
Zuordnung von „Nicht unterstützt“ zu „Umbenennen“:
pandas.core.frame.DataFrame.map
Der Zuordnungsstatus wurde für die folgenden Pandas-Elemente aktualisiert:
Direkte Zuordnungen:
pandas.core.frame.DataFrame.wherepandas.core.groupby.generic.SeriesGroupBy.aggpandas.core.groupby.generic.SeriesGroupBy.aggregatepandas.core.groupby.generic.DataFrameGroupBy.aggpandas.core.groupby.generic.DataFrameGroupBy.aggregatepandas.core.groupby.generic.DataFrameGroupBy.apply
Nicht unterstützte Zuordnungen:
pandas.core.frame.DataFrame.to_parquetpandas.core.generic.NDFrame.to_csvpandas.core.generic.NDFrame.to_excelpandas.core.generic.NDFrame.to_sql
Der Zuordnungsstatus wurde für die folgenden Pandas-Elemente aktualisiert:
Direkte Zuordnungen:
pandas.core.series.Series.emptypandas.core.series.Series.applypandas.core.reshape.tile.qcut
Direkte Zuordnungen mit EWI:
pandas.core.series.Series.fillnapandas.core.series.Series.astypepandas.core.reshape.melt.meltpandas.core.reshape.tile.cutpandas.core.reshape.pivot.pivot_table
Der Zuordnungsstatus wurde für die folgenden Pandas-Elemente aktualisiert:
Direkte Zuordnungen:
pandas.core.series.Series.dtpandas.core.series.Series.groupbypandas.core.series.Series.locpandas.core.series.Series.shapepandas.core.tools.datetimes.to_datetimepandas.io.excel._base.ExcelFile
Nicht unterstützte Zuordnungen:
pandas.core.series.Series.dt.strftime
Der Zuordnungsstatus wurde für die folgenden Pandas-Elemente aktualisiert:
Von Zuordnung „Nicht unterstützt“ zu „Direkt“:
pandas.io.parquet.read_parquetpandas.io.parsers.readers.read_csv
Der Zuordnungsstatus wurde für die folgenden Pandas-Elemente aktualisiert:
Von Zuordnung „Nicht unterstützt“ zu „Direkt“:
pandas.io.pickle.read_picklepandas.io.sql.read_sqlpandas.io.sql.read_sql_query
Die Beschreibung von „Understanding the SQL Readiness Score“ wurde aktualisiert.
PyProgramCollectorwurde aktualisiert, um die Pakete zu sammeln und das aktuelle Paketinventar mit Daten aus dem Python-Quellcode aufzufüllen.Der Zuordnungsstatus von
pyspark.sql.SparkSession.builder.appNamewurde von „Umbenennen“ auf „Transformation“ aktualisiert.Die folgenden Scala-Integrationstests wurden entfernt:
AssesmentReportTest_AssessmentMode.ValidateReports_AssessmentModeAssessmentReportTest_PythonAndScala_Files.ValidateReports_PythonAndScalaAssessmentReportTestWithoutSparkUsages.ValidateReports_WithoutSparkUsages
Der Zuordnungsstatus von
pandas.core.generic.NDFrame.shapewurde von „Nicht unterstützt“ auf „Direkt“ aktualisiert.Der Zuordnungsstatus von
pandas.core.serieswurde von „Nicht unterstützt“ auf „Direkt“ aktualisiert.
Veraltet¶
Der Code EWI
SPRKSCL1160ist veraltet, daorg.apache.spark.sql.functions.sumjetzt eine direkte Zuordnung ist.
Korrigiert¶
Ein Fehler wurde korrigiert, indem Custom Magics ohne Argumente in Jupyter Notebook-Zellen nicht unterstützt werden.
Fehlerhafte Generierung von EWIs im Bericht issues.csv bei Parsing-Fehlern wurde korrigiert.
Es wurde ein Fehler korrigiert, der dazu führte, dass SMA das exportierte Databricks-Notizbuch nicht als Databricks-Notizbuch verarbeiten konnte.
Es wurde ein Stapelüberlauffehler bei der Verarbeitung kollidierender Typnamen von Deklarationen korrigiert, die innerhalb von Paketobjekten erstellt wurden.
Die Verarbeitung von komplexen Lambda-Typ-Namen, die Generika beinhalten, wurde korrigiert, z. B.
def func [X,Y](f: (Map[Option[X], Y] => Map[Y, X]))...Es wurde ein Fehler korrigiert, der dazu führte, dass SMA den Pandas-Elementen, die noch nicht erkannt werden, einen PySpark EWI Code anstelle eines Pandas EWI-Codes hinzufügte.
Tippfehler in der detaillierten Berichtsvorlage wurde korrigiert: Umbenennung einer Spalte von „Prozentsatz aller Python-Dateien„ in „Prozentsatz aller Dateien“.
Ein Fehler wurde korrigiert, bei dem
pandas.core.series.Series.shapefälschlicherweise gemeldet wurde.