1.43.0 (2025-12-03)
Snowpark Python API Updates
New Features
- Added support for
DataFrame.lateral_join - Added support for PrPr feature
Session.client_telemetry. - Added support for
Session.udf_profiler. - Added support for
functions.ai_translate. - Added support for the following
iceberg_configoptions inDataFrameWriter.save_as_tableandDataFrame.copy_into_table:target_file_sizepartition_by
- Added support for the following functions in
functions.py:-
String and Binary functions:
base64_decode_binarybucketcompressdaydecompress_binarydecompress_stringmd5_binarymd5_number_lower64md5_number_upper64sha1_binarysha2_binarysoundex_p123strtoktruncatetry_base64_decode_binarytry_base64_decode_stringtry_hex_decode_binarytry_hex_decode_stringunicodeuuid_string
-
Conditional expressions:
booland_aggboolxor_aggregr_valyzeroifnull
-
Numeric expressions:
cotmodpisquarewidth_bucket
-
Bug Fixes
- Fixed a bug where automatically-generated temporary objects were not properly cleaned up.
- Fixed with a bug when sql generation when joining two
DataFrames created usingDataFrame.aliasand CTE optimization is enabled. - Fixed a bug in
XMLReaderwhere finding the start position of a row tag could return an incorrect file position.
Improvements
- Enhanced
DataFrame.sort()to supportORDER BY ALLwhen no columns are specified. - Removed experimental warning from
Session.cte_optimization_enabled.
Snowpark pandas API Updates
New Features
- Added support for
Dataframe.groupby.rolling(). - Added support for mapping
np.percentilewith DataFrame and Series inputs toSeries.quantile. - Added support for setting the
random_stateparameter to an integer when callingDataFrame.sampleorSeries.sample. - Added support for the following
iceberg_configoptions into_iceberg:target_file_sizepartition_by
Improvements
- Enhanced autoswitching functionality from Snowflake to native pandas for methods with unsupported argument combinations:
shift()withsuffixor non-integerperiodsparameterssort_index()withaxis=1orkeyparameterssort_values()withaxis=1melt()withcol_levelparameterapply()withresult_typeparameter for DataFramepivot_table()withsort=True, non-stringindexlist, non-stringcolumnslist, non-stringvalueslist, oraggfuncdict with non-string valuesfillna()withdowncastparameter or usinglimittogether withvaluedropna()withaxis=1asfreq()withhowparameter,fill_valueparameter,normalize=True, orfreqparameter being week, month, quarter, or yeargroupby()withaxis=1,by!=None and level!=None, or by containing any non-pandas hashable labels.groupby_fillna()withdowncastparametergroupby_first()withmin_count>1groupby_last()withmin_count>1groupby_shift()withfreqparameter
- Slightly improved the performance of
agg,nunique,describe, and related methods on 1-column DataFrame and Series objects.
Bug Fixes
- Fixed a bug in
DataFrameGroupBy.aggwhere func is a list of tuples used to set the names of the output columns. - Fixed a bug where converting a modin datetime index with a timezone to a numpy array with
np.asarraywould cause aTypeError. - Fixed a bug where
Series.isinwith a Series argument matched index labels instead of the row position.
Improvements
- Add support for the following in faster pandas:
groupby.applygroupby.nuniquegroupby.sizeconcatcopystr.isdigitstr.islowerstr.isupperstr.istitlestr.lowerstr.upperstr.titlestr.matchstr.capitalizestr.__getitem__str.centerstr.countstr.getstr.padstr.lenstr.ljuststr.rjuststr.splitstr.replacestr.stripstr.lstripstr.rstripstr.translatedt.tz_localizedt.tz_convertdt.ceildt.rounddt.floordt.normalizedt.month_namedt.day_namedt.strftimedt.dayofweekdt.weekdaydt.dayofyeardt.isocalendarrolling.minrolling.maxrolling.countrolling.sumrolling.meanrolling.stdrolling.varrolling.semrolling.correxpanding.minexpanding.maxexpanding.countexpanding.sumexpanding.meanexpanding.stdexpanding.varexpanding.semcumsumcummincummaxgroupby.groupsgroupby.indicesgroupby.firstgroupby.lastgroupby.rankgroupby.shiftgroupby.cumcountgroupby.cumsumgroupby.cummingroupby.cummaxgroupby.anygroupby.allgroupby.uniquegroupby.get_groupgroupby.rollinggroupby.resampleto_snowflaketo_snowparkresample.minresample.maxresample.countresample.sumresample.meanresample.medianresample.stdresample.varresample.sizeresample.firstresample.lastresample.quantileresample.nunique
- Make faster pandas disabled by default (opt-in instead of opt-out).
- Improve performance of
drop_duplicatesby avoiding joins whenkeep!=Falsein faster pandas.