Snowpark Migration Accelerator : Notes de version¶
Notez que les notes de version ci-dessous sont organisées par date de sortie. Les numéros de version de l’application et de Snowpark Conversion Core apparaissent ci-dessous.
5 février 2025¶
Correctif : Application et CLI version 2.5.2¶
Application de bureau desktop-app¶
Correction d’un problème lors de la conversion dans l’option de l’exemple de projet.
Versions de SMA Core incluses¶
Snowpark Conversion Core 5.3.0
4 février 2025¶
Application et CLI version 2.5.1¶
Application de bureau desktop-app¶
Ajout d’une nouvelle fenêtre modale lorsque l’utilisateur ne dispose pas de l’autorisation d’écriture.
Mise à jour de l’accord de licence, l’acceptation est exigée.
CLI cli¶
Correction de l’année dans l’écran CLI lors de l’affichage de « –version » ou « -v »
Versions de SMA Core incluses¶
Snowpark Conversion Core 5.3.0
Ajouté¶
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-telemetryconfigspacecpp-expecteddask-exprdata-science-utilsdatabricks-sdkdatetime-distancedb-dtypesdedupededupe-variable-datetimededupe_lehvenshtein_searchdedupe_levenshtein_searchdiff-coverdiptestdmglibdocstring_parserdoublemetaphonedspy-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-resource-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-nglibtheoralibtifflibvorbislibwebplightweight-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:
aifctableauastasynchatasyncioasyncoreatexitaudioopbase64bdbbinasciibitsectbuiltinsbz2calendriercgicgitbchunkcmathcmdcodecodecscodeopcolorsyscompileallconcurrentcontextlibcontextvarscopycopyregcprofilecryptcsvctypescursesdbmdifflibdisdistutilsdoctestemailensurepipenumerrnofaulthandlerfcntlfilecmpfileinputfnmatchfractionsftplibfunctoolsgcgetoptgetpassgettextgraphlibgrpgziphashlibheapqhmachtmlhttpidlelibimaplibimghdrimpimportlibinspectipaddressitertoolskeywordlinecachelocalelzmamailboxmailcapmarshalmathmimetypesmmapmodulefindermsilibmultiprocessingnetrcnisnntplibnumbersoperatoroptparseossaudiodevpdbpicklepickletoolspipespkgutilplatformplistlibpoplibposixpprintprofilepstatsptypwdpy_compilepyclbrpydocqueuequoprirandomrereprlibresourcerlcompleterrunpyschedsecretsselectselectorsshelveshlexsignalsitesitecustomizesmtpdsmtplibsndhdrsocketsocketserverspwdsqlite3sslstatstringstringprepstructsubprocesssunausymtablesysconfigsyslogtabnannytarfiletelnetlibtempfiletermiostesttextwrapthreadingtimeittkinterjetontokenizetomllibtracetracebacktracemallocttyturtleturtledemotypesunicodedataurllibuuuuidvenvavertissementswaveweakrefwebbrowserwsgirefxdrlibxmlxmlrpczipappzipfilezipimportzoneinfo
Added the following Python BuiltIn libraries with NotSupported status:
msvcrtwinregwinsound
Modifications¶
Mise à jour de .NET version sur v9.0.0.
Amélioration de l’EWI SPRKPY1068.
Mise à jour de la version de l’API Snowpark Python prise en charge par l’outil SMA de 1.24.0 à 1.25.0.
Mise à jour du modèle de rapport détaillé, avec désormais la version Snowpark pour Pandas.
Modification des bibliothèques suivantes de BuiltIn en ThirdPartyLib.
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
Problème connu¶
Cette version inclut un problème lors de la conversion de l’exemple de projet qui ne fonctionnera pas sur cette version. Il sera corrigé dans la prochaine version.
9 janvier 2025¶
Application et CLI version 2.4.3¶
Application de bureau desktop-app¶
Ajout d’un lien vers le guide de dépannage dans la fenêtre modale du rapport de panne.
Versions de SMA Core incluses¶
Snowpark Conversion Core 4.15.0
Ajouté¶
Ajout des éléments PySpark suivants au fichier .csv ConversionStatusPySpark en tant que
NotSupported :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
Modifications¶
Mise à jour du format des EWIs Hive SQL.
SPRKHVSQL1001
SPRKHVSQL1002
SPRKHVSQL1003
SPRKHVSQL1004
SPRKHVSQL1005
SPRKHVSQL1006
Mise à jour du format des EWIs Spark SQL .
SPRKSPSQL1001
SPRKSPSQL1002
SPRKSPSQL1003
SPRKSPSQL1004
SPRKSPSQL1005
SPRKSPSQL1006
Correction¶
Correction d’un bogue qui faisait que certains éléments PySpark n’étaient pas identifiés par l’outil.
Correction de l’erreur de correspondance entre le nombre d’appels ThirdParty identifiés et le nombre d’appels ThirdParty importés.
13 décembre 2024¶
Application et CLI version 2.4.2 version-2.4.2-prpr-dic-12-2024¶
Versions de SMA Core incluses¶
Snowpark Conversion Core 4.14.0
Ajout¶
Ajout des éléments Spark suivants à ConversionStatusPySpark. csv :
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
Modifications¶
Mise à jour de la documentation des EWIs Pandas,
PNDSPY1001,PNDSPY1002etPNDSPY1003SPRKSCL1137pour s’aligner sur un format standardisé, garantissant la cohérence et la clarté de l’ensemble des EWIs.Mise à jour de la documentation des EWIs Scala suivants :
SPRKSCL1106etSPRKSCL1107. S’aligner sur un format standardisé, garantissant la cohérence et la clarté sur l’ensemble des EWIs.
Correction¶
Correction du bogue qui provoquait l’affichage des symboles UserDefined dans l’inventaire des utilisations tierces.
4 décembre 2024¶
Application et CLI version 2.4.1 version-2.3.1-prpr-nov-14-2024¶
Versions de SMA Core incluses¶
Snowpark Conversion Core 4.13.1
Interface de ligne de commande command-line-interface¶
Modifications
Ajout d’un horodatage au dossier de sortie.
Snowpark Conversion Core 4.13.1¶
Ajout¶
Ajout d’une colonne « Langue source » dans la table de mappages de la bibliothèque
Ajout de la catégorie
Autrescomme nouvelle catégorie dans la table Résumé de l’API Pandas de DetailedReport. docx
Modifications¶
Mise à jour de la documentation pour Python EWI
SPRKPY1058.Mise à jour du message des EWI Pandas
PNDSPY1002afin d’afficher l’élément pandas associé.Mise à jour de la façon dont nous créons les rapports .csv, qui sont maintenant écrasés après une deuxième exécution.
Correction¶
Correction d’un bogue qui faisait que les fichiers notebooks n’étaient pas générés dans la sortie.
Correction du remplacement des méthodes
getetsetà partir depyspark.sql.conf.RuntimeConfig, le remplacement correspond maintenant aux noms complets corrects.Correction de la version incorrecte de la balise de requête.
Correction des paquets UserDefined signalés comme ThirdPartyLib.
\
14 novembre 2024¶
Application e CLI version 2.3.1 version-2.3.1-prpr-nov-14-2024¶
Versions de SMA Core incluses¶
Snowpark Conversion Core 4.12.0
Application de bureau desktop-app¶
Correction
Correction des problèmes de casse dans les options –sql.
Supprimé
Supprimez le nom de la plateforme dans le message show-ac.
Snowpark Conversion Core 4.12.0¶
Ajout¶
Ajout de la prise en charge de Snowpark Python 1.23.0 et 1.24.0.
Ajout d’un nouveau EWI pour la fonction
pyspark.sql.dataframe.DataFrame.writeTo. Toutes les utilisations de cette fonction ont maintenant l’élément EWI SPRKPY1087.
Modifications¶
Mise à jour de la documentation des EWIs Scala de
SPRKSCL1137àSPRKSCL1156pour s’aligner sur un format standardisé, garantissant la cohérence et la clarté de l’ensemble des EWIs.Mise à jour de la documentation des EWIs Scala de
SPRKSCL1117àSPRKSCL1136pour s’aligner sur un format standardisé, garantissant la cohérence et la clarté de l’ensemble des EWIs.Mise à jour du message qui s’affiche pour les EWIs suivants :
SPRKPY1082
SPRKPY1083
Mise à jour de la documentation des EWIs Scala de
SPRKSCL1100àSPRKSCL1105, deSPRKSCL1108àSPRKSCL1116, deSPRKSCL1157àSPRKSCL1175, pour s’aligner sur un format standardisé, assurant la cohérence et la clarté de l’ensemble des EWIs.Mise à jour du statut de mappage des éléments PySpark suivants de NotSupported à Direct avec EWI :
pyspark.sql.readwriter.DataFrameWriter.option=>snowflake.snowpark.DataFrameWriter.option: Toutes les utilisations de cette fonction ont maintenant l’élément EWI SPRKPY1088pyspark.sql.readwriter.DataFrameWriter.options=>snowflake.snowpark.DataFrameWriter.options:Toutes les utilisations de cette fonction ont maintenant l’élément EWI SPRKPY1089
Mise à jour du statut de mappage des éléments PySpark suivants de Contournement en Renommer :
pyspark.sql.readwriter.DataFrameWriter.partitionBy=>snowflake.snowpark.DataFrameWriter.partition_by
Mise à jour de la documentation de l’EWI : SPRKSCL1000, SPRKSCL1001, SPRKSCL1002, SPRKSCL1100, SPRKSCL1101, SPRKSCL1102, SPRKSCL1103, SPRKSCL1104, SPRKSCL1105.
Suppression¶
Suppression de l’élément
pyspark.sql.dataframe.DataFrameStatFunctions.writeTodu statut de conversion, cet élément n’existe pas.
Obsolescence¶
Les codes EWI suivants sont obsolètes :
SPRKPY1081
SPRKPY1084
30 octobre 2024¶
Application et CLI version 2.3.0¶
Snowpark Conversion Core 4.11.0
Snowpark Conversion Core 4.11.0¶
Ajout¶
Ajout d’une nouvelle colonne appelée
Urlau fichierIssues.csv, qui redirige vers la documentation EWI correspondante.Ajout d’EWIs pour les éléments Spark suivants :
[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
Ajout de 38 nouveaux éléments Pandas :
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
24 octobre 2024¶
Version de l’application 2.2.3 version-2.2.16-prpr-oct-22-2024¶
Versions de SMA Core incluses¶
Snowpark Conversion Core 4.10.0
Application de bureau desktop-app¶
Correction
Correction d’un bogue qui entraînait l’affichage par SMA de l’étiquette SnowConvert au lieu de Snowpark Migration Accelerator dans la barre de menu de la version Windows.
Correction d’un bogue qui entraînait le plantage de SMA lorsqu’il ne disposait pas des autorisations de lecture et d’écriture sur le répertoire
.configdans macOS et sur le répertoireAppDatadans Windows.
Interface de ligne de commande command-line-interface¶
Modifications
Attribution d’un nouveau nom à l’exécutable CLI de
snowctàsma.Suppression de l’argument de la langue source, de sorte que vous n’avez plus besoin de spécifier si vous exécutez une évaluation / conversion Python ou Scala.
Les arguments de ligne de commande pris en charge par CLI ont été élargis par l’ajout des nouveaux arguments suivants :
--enableJupyter|-j: Indicateur signalant si la conversion des notebooks Databricks vers Jupyter est activée ou non.--sql|-f: Syntaxe du moteur de base de données à utiliser lorsqu’une commande SQL est détectée.--customerEmail|-e: Configurez l’e-mail du client.--customerCompany|-c: Configurez la société cliente.--projectName|-p: Configurez le projet client.
Mise à jour de certains textes pour refléter le nom correct de l’application, afin d’assurer la cohérence et la clarté de tous les messages.
Mise à jour des conditions d’utilisation de l’application.
Mise à jour et développement de la documentation de CLI afin de refléter les dernières fonctions, améliorations et modifications.
Mise à jour du texte qui s’affiche avant de procéder à l’exécution de l’outil SMA afin d’améliorer la qualité de l’information
Mise à jour de CLI pour accepter « Oui » comme argument valide lors de la demande de confirmation de l’utilisateur.
Permet à CLI de poursuivre l’exécution sans attendre l’interaction de l’utilisateur en spécifiant l’argument
-you--yes.Mise à jour des informations d’aide de l’argument
--sqlpour indiquer les valeurs attendues par cet argument.
Snowpark Conversion Core Version 4.10.0¶
Ajout¶
Ajout d’un nouveau EWI pour la fonction
pyspark.sql.readwriter.DataFrameWriter.partitionBy. Toutes les utilisations de cette fonction ont maintenant l’élément EWI SPRKPY1081.Ajout d’une nouvelle colonne appelée
Technologieau fichierImportUsagesInventory.csv.
Modifications¶
Mise à jour du score de préparation des bibliothèques tierces afin de prendre également en compte les bibliothèques
inconnues.Mise à jour du fichier
AssessmentFiles.zippour inclure les fichiers.jsonau lieu des fichiers.pam.Amélioration du mécanisme de conversion de CSV en JSON pour rendre le traitement des inventaires plus performant.
Amélioration de la documentation des EWIs suivants :
SPRKPY1029
SPRKPY1054
SPRKPY1055
SPRKPY1063
SPRKPY1075
SPRKPY1076
Mise à jour du statut de mappage des éléments Spark Scala suivants de
DirectenRenommer.org.apache.spark.sql.functions.shiftLeft=>com.snowflake.snowpark.functions.shiftleftorg.apache.spark.sql.functions.shiftRight=>com.snowflake.snowpark.functions.shiftright
Mise à jour du statut de mappage des éléments Spark Scala suivants de
Non pris en chargeenDirect.org.apache.spark.sql.functions.shiftleft=>com.snowflake.snowpark.functions.shiftleftorg.apache.spark.sql.functions.shiftright=>com.snowflake.snowpark.functions.shiftright
Correction¶
Correction d’un bogue ayant entraîné SMA à remplir incorrectement la colonne
Originedu fichierImportUsagesInventory.csv.Correction d’un bogue ayant entraîné SMA à classer les importations des bibliothèques
io,json,loggingetunittestcomme importations Python intégrées dans le fichierImportUsagesInventory.csvet dans le fichierDetailedReport.docx.
11 octobre 2024¶
Version de l’application 2.2.2¶
Les mises à jour des fonctions comprennent :
Snowpark Conversion Core 4.8.0
Snowpark Conversion Core Version 4.8.0¶
Ajout¶
Ajout de fichiers
EwiCatalog.csvet .md pour réorganiser la documentationAjout du statut de mappage de
pyspark.sql.functions.lnDirect.Ajout d’une transformation pour
pyspark.context.SparkContext.getOrCreateVeuillez vérifier l’EWI SPRKPY1080 pour plus de détails.
Une amélioration a été apportée à SymbolTable, qui permet de déterminer le type des paramètres dans les fonctions.
La SymbolTable ajoutée prend en charge les méthodes statiques et ne part pas du principe que le premier paramètre sera automatique pour celles-ci.
Ajout d’une documentation pour les EWIs manquants
SPRKHVSQL1005
SPRKHVSQL1006
SPRKSPSQL1005
SPRKSPSQL1006
SPRKSCL1002
SPRKSCL1170
SPRKSCL1171
SPRKPY1057
SPRKPY1058
SPRKPY1059
SPRKPY1060
SPRKPY1061
SPRKPY1064
SPRKPY1065
SPRKPY1066
SPRKPY1067
SPRKPY1069
SPRKPY1070
SPRKPY1077
SPRKPY1078
SPRKPY1079
SPRKPY1101
Modifications¶
Mise à jour du statut de mappage de :
pyspark.sql.functions.array_removedeNotSupportedàDirect.
Correction¶
Correction de la table de dimensionnement des fichiers de code dans le rapport détaillé afin d’exclure les fichiers .sql et .hql et ajout de la ligne Extra Large dans la table.
Correction de l’absence de
update_query_taglorsqueSparkSessionest défini en plusieurs lignes surPython.Correction de l’absence de
update_query_taglorsqueSparkSessionest défini en plusieurs lignes surScala.Correction de l’absence de l’EWI
SPRKHVSQL1001dans certaines instructions SQL présentant des erreurs d’analyse.Correction de la conservation des valeurs de lignes nouvelles à l’intérieur des littéraux de chaînes
Correction de l’affichage du nombre total de lignes de code dans la table de résumé des types de fichiers
Correction de l’affichage sur 0 du score d’analyse alors que les fichiers sont reconnus avec succès
Correction du nombre de LOC dans l’inventaire des cellules pour les cellules Databricks Magic SQL
26 septembre 2024¶
Version de l’application 2.2.0 version-2.2.0-prpr-sept-16-2024¶
Les mises à jour des fonctions comprennent :
Snowpark Conversion Core 4.6.0
Snowpark Conversion Core Version 4.6.0¶
Ajout¶
Ajout d’une transformation pour
pyspark.sql.readwriter.DataFrameReader.parquet.Ajout d’une transformation pour
pyspark.sql.readwriter.DataFrameReader.optionlorsqu’il s’agit d’une méthode Parquet.
Modifications¶
Mise à jour du statut de mappage de :
pyspark.sql.types.StructType.fieldsdeNotSupportedenDirect.pyspark.sql.types.StructType.namesdeNotSupportedenDirect.pyspark.context.SparkContext.setLogLeveldeContournementenTransformation.Pour plus de détails, consultez les EWIs SPRKPY1078 et SPRKPY1079
org.apache.spark.sql.functions.rounddeWorkAroundenDirect.org.apache.spark.sql.functions.udfdeNotDefinedenTransformation.Pour plus de détails, consultez les EWIs SPRKSCL1174 et SPRKSCL1175
Mise à jour du statut de mappage des éléments Spark suivants de
DirectHelperenDirect: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
Correction¶
Correction de la valeur affichée dans le pourcentage du nombre total d’API Pandas
Correction du pourcentage total dans la table ImportCalls du DetailReport
Obsolescence¶
Le code EWI suivant est obsolète
SPRKSCL1115
12 septembre 2024¶
Version de l’application 2.1.7¶
Les mises à jour des fonctions comprennent :
Snowpark Conversion Core 4.5.7
Snowpark Conversion Core 4.5.2
Snowpark Conversion Core Version 4.5.7¶
Correctif¶
Correction de l’ajout du nombre total de lignes dans les résumés d’utilisations Spark alors qu’il n’y a pas d’utilisation
Mise à jour de l’assemblage Python sur la version
1.3.111Analyse de la virgule de fin dans les arguments multilignes
Snowpark Conversion Core Version 4.5.2¶
Ajout¶
Ajout d’une transformation pour
pyspark.sql.readwriter.DataFrameReader.option:Lorsque la chaîne provient d’un appel de méthode CSV.
Lorsque la chaîne provient d’un appel de méthode JSON.
Ajout d’une transformation pour
pyspark.sql.readwriter.DataFrameReader.json.
Modifications¶
Exécution de SMA sur les chaînes SQL transmises aux fonctions Python/Scala
Création de l’AST dans Scala/Python pour émettre une unité temporaire SQL
Création de l’inventaire SqlEmbeddedUsages.csv
Obsolescence des fichiers SqlStatementsInventroy.csv et SqlExtractionInventory.csv
Intégration de l’EWI lorsque le littéral SQL n’a pas pu être traité
Création d’une nouvelle tâche pour traiter me code SQL intégré
Collecte d’informations pour l’inventaire SqlEmbeddedUsages.csv dans Python
Remplacement du code transformé SQL par du code littéral dans Python
Mise à jour des cas de test après la mise en œuvre
Création de tables et de vues pour la télémétrie dans l’inventaire SqlEmbeddedUsages
Collecte d’informations pour le rapport SqlEmbeddedUsages.csv dans Scala
Remplacement du code transformé SQL par du code littéral dans Scala
Vérification de l’ordre des numéros de ligne pour le rapport SQL intégré
Renseignement du fichier
SqlFunctionsInfo.csvavec les fonctions SQL documentées pour SparkSQL et HiveSQLMise à jour du statut du mappage pour :
org.apache.spark.sql.SparkSession.sparkContextde NotSupported en Transformation.org.apache.spark.sql.Builder.configdeNotSupportedenTransformation. Avec ce nouveau statut de mappage, l’outil SMA supprime toutes les utilisations de cette fonction du code source.
5 septembre 2024¶
Version de l’application 2.1.6¶
Changement de correctif pour Snowpark Engines Core version 4.5.1
Spark Conversion Core Version 4.5.1¶
Correctif
Ajout d’un mécanisme permettant de convertir les notebooks Databricks temporels générés par SMA en notebooks Databricks exportés
29 août 2024¶
Version de l’application 2.1.5¶
Les mises à jour des fonctions comprennent :
Mise à jour de Spark Conversion Core: 4.3.2
Spark Conversion Core Version 4.3.2¶
Ajouté¶
Ajout du mécanisme (via la décoration) permettant d’obtenir la ligne et la colonne des éléments identifiés dans les cellules des notebooks
Ajout d’une page EWI pour pyspark.sql.functions.from_json.
Ajout d’une transformation pour pyspark.sql.readwriter.DataFrameReader.csv.
Activation du mécanisme de balise de requête pour les fichiers Scala.
Ajout du score de l’analyse du code et de liens supplémentaires vers le rapport détaillé.
Ajout d’une colonne appelée OriginFilePath dans le fichier InputFilesInventory.csv
Modifications¶
Mise à jour du statut du mappage de pyspark.sql.functions.from_json de Non pris en charge à Transformation.
Mise à jour du statut de mappage des éléments Spark suivants de Contournement à Direct :
org.apache.spark.sql.functions.countDistinct
org.apache.spark.sql.functions.max
org.apache.spark.sql.functions.min
org.apache.spark.sql.functions.mean
Obsolète¶
Les codes EWI suivants sont obsolètes :
SPRKSCL1135
SPRKSCL1136
SPRKSCL1153
SPRKSCL1155
Correction¶
Correction d’un bogue ayant entraîné un calcul incorrect du score Spark API.
Correction d’une erreur pour éviter de copier les fichiers vides ou commentés SQL dans le dossier de sortie.
Correction d’un bogue dans le DetailedReport, le nombre de statistiques notebook LOC et de cellules n’est pas exact.
14 août 2024 id-4.2.0—2024-08-06¶
Version de l’application 2.1.2¶
Les mises à jour des fonctions comprennent :
Mise à jour de Spark Conversion Core: 4.2.0
Spark Conversion Core Version 4.2.0¶
Ajouts¶
Ajout d’une colonne Technologie dans SparkUsagesInventory
Ajout d’un EWI pour les éléments SQL non définis.
Ajout de l’inventaire SqlFunctions
Collecte d’informations pour l’inventaire SqlFunctions
Modifications¶
Le moteur traite et imprime désormais les fichiers Python partiellement analysés au lieu de laisser le fichier original sans modifications.
Les cellules du notebook Python qui présentent des erreurs d’analyse seront également traitées et imprimées.
Correction¶
Correction de l’erreur dans
pandas.core.indexes.datetimes.DatetimeIndex.strftime.Correction de la non-concordance entre le score de préparation SQL et les utilisations SQL par statut de prise en charge.
Correction d’un bogue ayant entraîné SMA à signaler
pandas.core.series.Series.emptyavec un statut de mappage incorrect.La correction d’une incohérence entre les utilisations prêtes pour la conversion Spark API dans DetailedReport.docx est différente de la ligne UsagesReadyForConversion dans Assessment.json.
8 août 2024¶
Version de l’application 2.1.1¶
Les mises à jour des fonctions comprennent :
Updated Spark Conversion Core: 4.1.0
Spark Conversion Core Version 4.1.0¶
Ajouts¶
Ajout des informations suivantes au fichier
AssessmentReport.jsonScore de préparation des bibliothèques tierces.
Nombre d’appels de bibliothèques tierces qui ont été identifiés.
Nombre d’appels de bibliothèques tierces pris en charge par Snowpark.
Le code couleur associé au score de préparation tiers, le score de préparation Spark API et le score de préparation SQL.
Transformation de
SqlSimpleDataTypedans les tables de création Spark.Ajout du mappage de
pyspark.sql.functions.getcomme direct.Ajout du mappage de
pyspark.sql.functions.to_varcharcomme direct.Dans le cadre des modifications apportées après l’unification, l’outil génère désormais un fichier d’informations sur l’exécution dans le moteur.
Ajout d’un remplaçant pour
pyspark.sql.SparkSession.builder.appName.
Modifications¶
Mise à jour du statut du mappage pour les éléments Spark suivants
De Non pris en charge à Mappage direct :
pyspark.sql.functions.signpyspark.sql.functions.signum
Modification du rapport Inventaire des cellules de notebook pour indiquer le type de contenu de chaque cellule dans l’élément de colonne
Ajout d’une colonne
SCALA_READINESS_SCOREqui indique le score de préparation comme étant lié uniquement aux références de Spark API dans les fichiers Scala.Prise en charge partielle de la transformation des propriétés des tables dans
ALTER TABLEetALTER VIEWMise à jour du statut de conversion du nœud
SqlSimpleDataTypede En attente à Transformation dans les tables de création SparkMise à jour de la version de Snowpark Scala API prise en charge par l’outil SMA de
1.7.0à1.12.1:Mise à jour du statut de mappage de :
org.apache.spark.sql.SparkSession.getOrCreatede Renommer à Directorg.apache.spark.sql.functions.sumde Contournement à Direct
Mise à jour de la version de Python Snowpark API prise en charge par l’outil SMA de
1.15.0à1.20.0:Mise à jour du statut de mappage de :
pyspark.sql.functions.arrays_zipde Non pris en charge à Pris en charge
Mise à jour du statut du mappage pour les éléments Pandas suivants :
Mappages directs :
pandas.core.frame.DataFrame.anypandas.core.frame.DataFrame.applymap
Mise à jour du statut du mappage pour les éléments Pandas suivants :
De Non pris en charge à Mappage direct :
pandas.core.frame.DataFrame.groupbypandas.core.frame.DataFrame.indexpandas.core.frame.DataFrame.Tpandas.core.frame.DataFrame.to_dict
De Non pris en charge à Renommer :
pandas.core.frame.DataFrame.map
Mise à jour du statut du mappage pour les éléments Pandas suivants :
Mappages directs :
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
Mappages non pris en charge :
pandas.core.frame.DataFrame.to_parquetpandas.core.generic.NDFrame.to_csvpandas.core.generic.NDFrame.to_excelpandas.core.generic.NDFrame.to_sql
Mise à jour du statut du mappage pour les éléments Pandas suivants :
Mappages directs :
pandas.core.series.Series.emptypandas.core.series.Series.applypandas.core.reshape.tile.qcut
Mappages directs avec l’EWI :
pandas.core.series.Series.fillnapandas.core.series.Series.astypepandas.core.reshape.melt.meltpandas.core.reshape.tile.cutpandas.core.reshape.pivot.pivot_table
Mise à jour du statut du mappage pour les éléments Pandas suivants :
Mappages directs :
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
Mappages non pris en charge :
pandas.core.series.Series.dt.strftime
Mise à jour du statut du mappage pour les éléments Pandas suivants :
De Non pris en charge à Mappage direct :
pandas.io.parquet.read_parquetpandas.io.parsers.readers.read_csv
Mise à jour du statut du mappage pour les éléments Pandas suivants :
De Non pris en charge à Mappage direct :
pandas.io.pickle.read_picklepandas.io.sql.read_sqlpandas.io.sql.read_sql_query
Mise à jour de la description de Compréhension du score de préparation SQL.
Mise à jour de
PyProgramCollectorpour collecter les paquets et renseigner l’inventaire actuel des paquets avec les données du code source Python.Mise à jour du statut de mappage de
pyspark.sql.SparkSession.builder.appNamede Renommer à Transformation.Suppression des tests d’intégration Scala suivants :
AssesmentReportTest_AssessmentMode.ValidateReports_AssessmentModeAssessmentReportTest_PythonAndScala_Files.ValidateReports_PythonAndScalaAssessmentReportTestWithoutSparkUsages.ValidateReports_WithoutSparkUsages
Mise à jour du statut de mappage de
pandas.core.generic.NDFrame.shapede Non pris en charge à Direct.Mise à jour du statut de mappage de
pandas.core.seriesde Non pris en charge à Direct.
Obsolescence¶
Obsolescence du code EWI
SPRKSCL1160carorg.apache.spark.sql.functions.sumest désormais un mappage direct.
Correction¶
Correction d’un bogue relatif à la non prise en charge de Custom Magics sans arguments dans les cellules de Jupyter Notebook.
Correction de la génération incorrecte des EWIs dans le rapport issues.csv en cas d’erreurs d’analyse.
Correction d’un bogue ayant entraîné SMA à ne pas traiter les notebooks exportés Databricks comme des notebooks Databricks.
Correction d’une erreur de débordement de pile lors du traitement des noms de types de conflit des déclarations créées à l’intérieur des objets du paquet.
Correction du traitement des noms de types lambda complexes impliquant des génériques, par exemple,
def func[X,Y](f: (Map[Option[X], Y] => Map[Y, X]))...Correction d’un bogue ayant entraîné SMA à ajouter un code EWI PySpark au lieu d’un code EWI Pandas aux éléments Pandas qui ne sont pas encore reconnus.
Correction d’une coquille dans le modèle de rapport détaillé : Modification de Pourcentage de tous les fichiers Python en Pourcentage de tous les fichiers.
Correction d’un bogue où
pandas.core.series.Series.shapea été mal rapporté.