Snowpark Migration Accelerator: Notas de versão

Observe que as notas de versão abaixo estão organizadas por data de lançamento. Os números das versões do aplicativo e do núcleo de conversão serão exibidos abaixo.

Version 2.10.4 (November 18, 2025)

Application & CLI Version: 2.10.4

Incluídas versões principais do SMA

  • Snowpark Conversion Core: 8.1.8

Engine Release Notes

Corrigido

  • 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 (October 30, 2025)

Application & CLI Version: 2.10.3

Incluídas versões principais do SMA

  • Snowpark Conversion Core: 8.1.7

Engine Release Notes

Adicionado

  • 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.

  • 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)
      
      Copy

Alterado

Corrigido

  • 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

Adicionado

  • 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).

Alterado

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

Incluídas versões principais do SMA

  • Snowpark Conversion Core 8.0.73

Corrigido

  • Fixed an issue where the Snowpark Migration Accelerator failed converting DBC files into Jupyter Notebooks properly.

Versão 2.10.1 (23 de outubro de 2025)

Aplicativo e CLI versão 2.10.1

Incluídas versões principais do SMA

  • Snowpark Conversion Core 8.0.72

Adicionado

  • Suporte adicionado para o Snowpark Scala v1.17.0:

De Sem suporte para Direto:

Conjunto de dados:

  • org.apache.spark.sql.Dataset.isEmptycom.snowflake.snowpark.DataFrame.isEmpty

Linha:

  • org.apache.spark.sql.Row.mkStringcom.snowflake.snowpark.Row.mkString

StructType:

  • org.apache.spark.sql.types.StructType.fieldNamescom.snowflake.snowpark.types.StructType.fieldNames

De Sem suporte para Renomear:

Funções:

  • org.apache.spark.functions.flattencom.snowflake.snowpark.functions.array_flatten

De Direto para Renomear:

Funções:

  • org.apache.spark.functions.to_datecom.snowflake.snowpark.functions.try_to_date

  • org.apache.spark.functions.to_timestampcom.snowflake.snowpark.functions.try_to_timestamp

De Auxiliar direto para Renomear:

Funções:

  • org.apache.spark.sql.functions.concat_wscom.snowflake.snowpark.functions.concat_ws_ignore_nulls

De Não definido para Direto:

Funções:

  • org.apache.spark.functions.try_to_timestampcom.snowflake.snowpark.functions.try_to_timestamp

  • O SQL incorporado agora é migrado quando um literal de instrução SQL é atribuído a uma variável local.

Exemplo: sqlStat = “SELECT colName FROM myTable» session.sql(sqlStat)

  • O SQL incorporado agora é compatível com concatenações de cadeias de caracteres literais.

Exemplo: session.sql(“SELECT colName « + «FROM myTable»)

Alterado

  • Atualizadas as versões compatíveis da API do Snowpark Pythone e da API do Snowpark Pandas, de 1.36.0 para 1.39.0.

  • Atualizado o status de mapeamento para as seguintes funções XPath PySpark de NotSupported para Direto com EWI SPRKPY1103:

    • pyspark.sql.functions.xpath

    • pyspark.sql.functions.xpath_boolean

    • pyspark.sql.functions.xpath_double

    • pyspark.sql.functions.xpath_float

    • pyspark.sql.functions.xpath_int

    • pyspark.sql.functions.xpath_long

    • pyspark.sql.functions.xpath_number

    • pyspark.sql.functions.xpath_short

    • pyspark.sql.functions.xpath_string

  • Atualizado o status de mapeamento para os seguintes elementos PySpark de NotDefined para Direto:

    • pyspark.sql.functions.bit_andsnowflake.snowpark.functions.bitand_agg

    • pyspark.sql.functions.bit_orsnowflake.snowpark.functions.bitor_agg

    • pyspark.sql.functions.bit_xorsnowflake.snowpark.functions.bitxor_agg

    • pyspark.sql.functions.getbitsnowflake.snowpark.functions.getbit

  • Atualizado o status de mapeamento para os seguintes elementos Pandas de NotSupported para Direto:

    • pandas.core.indexes.base.Indexmodin.pandas.Index

    • pandas.core.indexes.base.Index.get_level_valuesmodin.pandas.Index.get_level_values

  • Atualizado de NotSupported para renomear o status de mapeamento para as seguintes funções PySpark:

    • pyspark.sql.functions.nowsnowflake.snowpark.functions.current_timestamp

Corrigido

  • Corrigido o problema em que o Scala não migrava as importações quando havia uma renomeação.

    Exemplo:

    Código fonte:

    .. 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») }

    Código de saída:

    .. 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») }

Versão 2.10.0 (24 de setembro de 2025)

Aplicativo e CLI versão 2.10.0

Incluídas versões principais do SMA

  • Snowpark Conversion Core 8.0.62

Adicionado

  • Adicionada funcionalidade para migrar SQL incorporado com interpolação de formato Python.

  • Adicionado suporte para transformações DataFrame.select e DataFrame.sort para haver maior flexibilidade no processamento de dados.

Alterado

  • Incrementadas as versões compatíveis com a API do Snowpark Python e com a API do Snowpark Pandas para 1.36.0.

  • Atualizado o status de mapeamento de pandas.core.frame.DataFrame.boxplot de Não compatível para Direto.

  • Atualizado o status de mapeamento de DataFrame.select, Dataset.select, DataFrame.sort e Dataset.sort de Direto para Transformação.

  • O Snowpark Scala permite que uma sequência de colunas seja passada diretamente para as funções select e sort; portanto, esta transformação altera todos os usos, como df.select(cols: _*) para df.select(cols) e df.sort(cols: _*) para df.sort(cols).

  • Incrementada a versão do Python AST e do Parser para 149.1.9.

  • Atualizado o status para Direto para funções pandas:

    • pandas.core.frame.DataFrame.to_excel

    • pandas.core.series.Series.to_excel

    • pandas.io.feather_format.read_feather

    • pandas.io.orc.read_orc

    • pandas.io.stata.read_stata

  • Atualizado o status para pyspark.sql.pandas.map_ops.PandasMapOpsMixin.mapInPandas para servir de solução alternativa usando o EWI SPRKPY1102.

Corrigido

  • Corrigido o problema que afetava as transformações de SqlEmbedded ao usar chamadas de método encadeadas.

  • Corrigidas as transformações envolvendo PySqlExpr usando o novo PyLiteralSql para evitar a perda de Tails.

  • Resolvidos problemas internos de estabilidade para melhorar a robustez e a confiabilidade da ferramenta.

Versão 2.7.7 (28 de agosto de 2025)

Aplicativo e CLI versão 2.7.7

Incluídas versões principais do SMA

  • Snowpark Conversion Core 8.0.46

Adicionado

  • Adicionada nova documentação do EWI PNDSPY1011 do Pandas.

  • Adicionado suporte às seguintes funções do Pandas:

    • 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

Adicionado suporte para as seguintes funções Spark Scala:

  • 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

Alterado

  • Atualizada a versão da API do Snowpark Pandas compatível com o SMA para 1.33.0.

  • Atualizada a versão da API do Snowpark Scala compatível com o SMA para 1.16.0.

  • Atualizado o status de mapeamento de pyspark.sql.group.GroupedData.pivot de Transformação para Direto.

  • Atualizado o status de mapeamento de org.apache.spark.sql.Builder.master de NotSupported para Transformação. Essa transformação remove todos os usos identificados desse elemento durante a conversão de código.

  • Atualizado o status de mapeamento de org.apache.spark.sql.types.StructType.fieldIndex de NotSupported para Direto.

  • Atualizado o status de mapeamento de org.apache.spark.sql.Row.fieldIndex de NotSupported para Direto.

  • Atualizado o status de mapeamento de org.apache.spark.sql.SparkSession.stop de NotSupported para Renomear. Todos os usos identificados desse elemento foram renomeados para com.snowflake.snowpark.Session.close durante a conversão de código.

  • Atualizado o status de mapeamento de org.apache.spark.sql.DataFrame.unpersist e org.apache.spark.sql.Dataset.unpersist de NotSupported para Transformação. Essa transformação remove todos os usos identificados desse elemento durante a conversão de código.

Corrigido

  • Corrigida a barra invertida de continuação em funções de cauda removidas.

  • Corrigida a coluna LIBRARY_PREFIX no arquivo ConversionStatusLibraries.csv para usar o identificador correto da família de bibliotecas scikit-learn (scikit-*).

  • Corrigido o bug que impedia a análise de operações agrupadas em várias linhas.

Versão 2.9.0 (9 de setembro de 2025)

Incluídas versões principais do SMA

  • Snowpark Conversion Core 8.0.53

Adicionado

  • Os seguintes mapeamentos agora são realizados para org.apache.spark.sql.Dataset[T]:

    • org.apache.spark.sql.Dataset.union agora é com.snowflake.snowpark.DataFrame.unionAll

    • org.apache.spark.sql.Dataset.unionByName agora é com.snowflake.snowpark.DataFrame.unionAllByName

  • Adicionado suporte para org.apache.spark.sql.functions.broadcast como uma transformação.

Alterado

  • Aumentada a versão da API do Snowpark Python compatível para o SMA de 1.27.0 para 1.33.0.

  • O status da função pyspark.sql.function.randn foi atualizado para Direto.

Corrigido

  • Resolvido um problema em que org.apache.spark.SparkContext.parallelize não estava sendo resolvido e agora oferece suporte a isso como uma transformação.

  • Corrigida a transformação Dataset.persist para funcionar com qualquer tipo de Dataset, não apenas com Dataset[Row].

Versão 2.7.6 (17 de julho de 2025)

Incluídas versões principais do SMA

  • Snowpark Conversion Core 8.0.30

Adicionado

  • Mapeamentos ajustados para métodos spark.DataReader.

  • DataFrame.union agora é DataFrame.unionAll.

  • DataFrame.unionByName agora é DataFrame.unionAllByName.

  • Adicionadas colunas de dependência de artefatos em vários níveis no inventário de artefatos.

  • Adicionada nova documentação do Pandas EWIs, de PNDSPY1005 a PNDSPY1010.

  • Adicionado um EWI específico para pandas.core.series.Series.apply.

Alterado

  • Incrementada a versão da API do Pandas Snowpark compatível com o SMA de 1.27.0 para 1.30.0.

Corrigido

  • Corrigido um problema com valores ausentes na fórmula para obter a pontuação de preparação SQL.

  • Corrigido um bug que fazia com que alguns elementos do Pandas apresentassem a mensagem EWI padrão do PySpark.

Versão 2.7.5 (2 de julho de 2025)

Aplicativo e CLI versão 2.7.5

Incluídas versões principais do SMA

  • Snowpark Conversion Core 8.0.19

Alterado

  • Importações do Pandas refatoradas: as importações do Pandas agora usam `modin.pandas` em vez de snowflake.snowpark.modin.pandas.

  • Aprimorada a transformação de `dbutils` e comandos Magic:

    • Um novo arquivo sfutils.py agora é gerado, e todos os prefixos dbutils são substituídos por sfutils.

    • Para notebooks do Databricks (DBX), uma importação implícita para sfutils é adicionada automaticamente.

    • O módulo sfutils simula vários métodos do dbutils, incluindo operações do sistema de arquivos (dbutils.fs) por meio de uma área de preparação do Snowflake FileSystem (SFFS) definida, e lida com a execução de notebooks (dbutils.notebook.run) transformando-a em funções EXECUTE NOTEBOOK SQL.

    • dbutils.notebook.exit foi removido, pois não é necessário no Snowflake.

Corrigido

  • Atualizações nos relatórios do SnowConvert: os relatórios do SnowConvert agora incluem a coluna CellId quando as instâncias se originam do SMA, e a coluna FileName exibe o caminho completo.

  • Dependência de artefatos atualizada para relatórios do SnowConvert: o relatório de inventário de artefatos do SMA, que foi impactado anteriormente pela integração do SnowConvert, foi restaurado. Essa atualização permite que a ferramenta SMA capture e analise com precisão Object References e Missing Object References diretamente dos relatórios do SnowConvert, garantindo assim a recuperação correta das dependências SQL para o inventário.

Versão 2.7.4 (26 de junho de 2025)

Aplicativo e CLI versão 2.7.4

Aplicativo para desktop

Adicionado

  • Adicionadas melhorias de telemetria.

Corrigido

  • Correção dos links de documentação no pop-up de configurações de conversão e no Pandas EWIs.

Incluídas versões principais do SMA

  • Snowpark Conversion Core 8.0.16

Adicionado

  • Transformação do Spark XML para o Snowpark

  • Opção Databricks SQL na linguagem de origem SQL

  • Transforme conexões de leitura JDBC.

Alterado

  • Todos os relatórios do SnowConvert são copiados para o arquivo zip de backup.

  • A pasta foi renomeada de SqlReports para SnowConvertReports.

  • SqlFunctionsInventory foi movido para a pasta Reports.

  • Todos os relatórios do SnowConvert são enviados para Telemetria.

Corrigido

  • Problema não determinístico com a pontuação de preparação SQL.

  • Correção de um resultado crítico falso positivo que fazia o desktop travar.

  • Corrigido o problema que impedia a exibição dos objetos SQL no relatório de dependências de artefatos.

Versão 2.7.2 (10 de junho de 2025)

Aplicativo e CLI versão 2.7.2

Incluídas versões principais do SMA

  • Snowpark Conversion Core 8.0.2

Corrigido

  • Corrigido um problema com a execução do SMA na versão mais recente do OS Windows, conforme relatado anteriormente. Esta correção resolve os problemas encontrados na versão 2.7.1.

Versão 2.7.1 (9 de junho de 2025)

Aplicativo e CLI versão 2.7.1

Incluídas versões principais do SMA

  • Snowpark Conversion Core 8.0.1

Adicionado

O Snowpark Migration Accelerator (SMA) agora orquestra o SnowConvert para processar SQL encontrado em cargas de trabalho do usuário, incluindo SQL incorporado em código Python/Scala, células SQL de notebooks, arquivos .sql e arquivos .hql.

O SnowConvert agora aprimora os recursos anteriores do SMA:

Uma nova pasta dentro de Reports, chamada SQL Reports, contém os relatórios gerados pelo SnowConvert.

Problemas conhecidos

A versão anterior do SMA para relatórios SQL aparecerá vazia nos seguintes casos:

  • Para Reports/SqlElementsInventory.csv, parcialmente coberta por Reports/SqlReports/Elements.yyyymmdd.hhmmss.csv.

  • Para Reports/SqlFunctionsInventory.csv, consulte a nova localização com o mesmo nome em Reports/SqlReports/SqlFunctionsInventory.csv

O inventário de dependências do artefato:

  • No ArtifactDependencyInventory, a coluna para o objeto SQL aparecerá vazia

Versão 2.6.10 (5 de maio de 2025)

Aplicativo e CLI versão 2.6.10

Incluídas versões principais do SMA

  • Snowpark Conversion Core 7.4.0

Corrigido

  • Corrigidos valores incorretos no arquivo “checkpoints.json”.

    • O valor “sample” estava sem decimais (para valores inteiros) e aspas.

    • O valor “entryPoint” tinha pontos em vez de barras e não incluía a extensão do arquivo.

  • Atualizado o valor padrão da configuração “Converter notebooks DBX em notebooks Snowflake” para TRUE.

Versão 2.6.8 (28 de abril de 2025)

Aplicativo e CLI versão 2.6.8

Aplicativo para desktop

  • Adicionado o reconhecimento do mecanismo de configurações de execução de checkpoints.

  • Adicionado um mecanismo para coletar comandos magic DBX em DbxElementsInventory.csv

  • Adicionada a geração de “checkpoints.json” no diretório de entrada.

  • Adicionado um novo EWI para todos os comandos magic não compatíveis.

  • Adicionada a coleção de dbutils em DbxElementsInventory.csv a partir de notebooks de origem Scala.

Incluídas versões principais do SMA

  • Snowpark Conversion Core 7.2.53

Alterado

  • Atualizações feitas para lidar com transformações de elementos Scala DBX para elementos Jupyter Python e para comentar todo o código da célula.

  • Atualizações feitas para lidar com transformações dos comandos dbutils.notebook.run e «r»; para este último, também comenta todo o código da célula.

  • Atualizado o nome e a letra da chave para realizar a conversão dos arquivos de notebook.

Corrigido

  • Corrigido o bug que fazia com que a transformação de notebooks DBX em arquivos .ipynb tivesse o formato incorreto.

  • Corrigido o bug que impedia a transformação de notebooks .py DBX em arquivos .ipynb.

  • Corrigido um bug que fazia com que os comentários estivessem ausentes no código de saída dos notebooks DBX.

  • Corrigido um bug que fazia com que arquivos Scala brutos fossem convertidos em arquivos .ipynb.

Versão 2.6.7 (21 de abril de 2025)

Aplicativo e CLI versão 2.6.7

Incluídas versões principais do SMA

  • Snowpark Conversion Core 7.2.42

Alterado

Atualizado DataFramesInventory para preencher a coluna EntryPoints

Versão 2.6.6 (7 de abril de 2025)

Aplicativo e CLI versão 2.6.6

Aplicativo para desktop

Adicionado

  • Atualizado o link DBx EWI na página de resultados da UI

Incluídas versões principais do SMA

  • Snowpark Conversion Core 7.2.39

Adicionado

  • Adicionada a geração de inventário do fluxo de execução.

  • Adicionada a configuração implícita de sessão em cada transformação de notebook DBx

Alterado

  • Renomeado o arquivo DbUtilsUsagesInventory.csv para DbxElementsInventory.csv

Corrigido

  • Corrigido um bug que causava um erro de análise sintática quando uma barra invertida ocorria após uma dica de tipo.

  • Corrigidas as importações relativas que não começavam com um ponto e as com um asterisco.

Versão 2.6.5 (27 de março de 2025)

Aplicativo e CLI versão 2.6.5

Aplicativo para desktop

Adicionado

  • Adicionada uma nova opção de configuração de conversão para ativar ou desativar o recurso Sma-Checkpoints.

  • Corrigido o problema de relatório para evitar falhas quando a API POST retorna 500

Incluídas versões principais do SMA

  • Snowpark Conversion Core 7.2.26

Adicionado

  • Adicionada a geração do arquivo checkpoints.json na pasta de saída com base no DataFramesInventory.csv.

  • Adicionado o sinalizador «disableCheckpoints» aos comandos da CLI e parâmetros adicionais do processador de código.

  • Adicionada uma nova função de substituição para Python para transformar o nó dbutils.notebook.run.

  • Adicionadas novas funções de substituição para transformar o comando magic %run.

  • Adicionadas novas funções de substituição (Python e Scala) para remover o nó dbutils.notebook.exit.

  • Adicionada coluna Localização ao inventário de artefatos.

Alterado

  • Refatorado o separador de diretório normalizado utilizado em algumas partes da solução.

  • Centralizado o tratamento do nome da pasta de trabalho de extração DBC.

  • Versões do Snowpark e Pandas atualizadas para v1.27.0

  • Atualizadas as colunas do inventário de artefatos para:

    • Name -> Dependency

    • File -> FileId

    • Status -> Status_detail

  • Adição de nova coluna ao inventário de artefatos:

    • Success

Corrigido

  • O inventário de DataFrames não estava sendo carregado corretamente na área de preparação.

Versão 2.6.4 (12 de março de 2025)

Aplicativo e CLI versão 2.6.4

Incluídas versões principais do SMA

  • Snowpark Conversion Core 7.2.0

Adições

  • Um inventário de dependências de artefatos

  • Uma função de substituição e EWI para o método pyspark.sql.types.StructType.fieldNames para o atributo snowflake.snowpark.types.StructType.fieldNames.

  • As seguintes funções PySpark com o status:

Direct Status
  • pyspark.sql.functions.bitmap_bit_position

  • pyspark.sql.functions.bitmap_bucket_number

  • pyspark.sql.functions.bitmap_construct_agg

  • pyspark.sql.functions.equal_null

  • pyspark.sql.functions.ifnull

  • pyspark.sql.functions.localtimestamp

  • pyspark.sql.functions.max_by

  • pyspark.sql.functions.min_by

  • pyspark.sql.functions.nvl

  • pyspark.sql.functions.regr_avgx

  • pyspark.sql.functions.regr_avgy

  • pyspark.sql.functions.regr_count

  • pyspark.sql.functions.regr_intercept

  • pyspark.sql.functions.regr_slope

  • pyspark.sql.functions.regr_sxx

  • pyspark.sql.functions.regr_sxy

  • pyspark.sql.functions.regr

NotSupported

  • pyspark.sql.functions.map_contains_key

  • pyspark.sql.functions.position

  • pyspark.sql.functions.regr_r2

  • pyspark.sql.functions.try_to_binary

As seguintes funções Pandas com o status:

  • pandas.core.series.Series.str.ljust

  • pandas.core.series.Series.str.center

  • pandas.core.series.Series.str.pad

  • pandas.core.series.Series.str.rjust

Atualizadas as seguintes funções PySpark com o status:

De WorkAround para Direto

  • pyspark.sql.functions.acosh

  • pyspark.sql.functions.asinh

  • pyspark.sql.functions.atanh

  • pyspark.sql.functions.instr

  • pyspark.sql.functions.log10

  • pyspark.sql.functions.log1p

  • pyspark.sql.functions.log2

De NotSupported para Direto

  • pyspark.sql.functions.bit_length

  • pyspark.sql.functions.cbrt

  • pyspark.sql.functions.nth_value

  • pyspark.sql.functions.octet_length

  • pyspark.sql.functions.base64

  • pyspark.sql.functions.unbase64

Atualizadas as seguintes funções do Pandas com o status:

De NotSupported para Direto

  • pandas.core.frame.DataFrame.pop

  • pandas.core.series.Series.between

  • pandas.core.series.Series.pop

Versão 2.6.3 (6 de março de 2025)

Aplicativo e CLI versão 2.6.3

Incluídas versões principais do SMA

  • Snowpark Conversion Core 7.1.13

Adições

  • Adicionada classe geradora de CSV para criação de novos inventários.

  • Adicionada coluna «full_name» para importar inventários de uso.

  • Adicionada transformação de pyspark.sql.functions.concat_ws para snowflake.snowpark.functions._concat_ws_ignore_nulls.

  • Adicionada lógica para geração de checkpoints.json.

  • Adicionados os inventários:

    • DataFramesInventory.csv.

    • CheckpointsInventory.csv

Versão 2.6.0 (21 de fevereiro de 2025)

Aplicativo e CLI versão 2.6.0

Aplicativo para desktop

  • Atualizado o contrato de licenciamento; a aceitação é necessária.

Incluídas versões principais do SMA

  • Snowpark Conversion Core 7.1.2

Adicionado

Updated the mapping status for the following PySpark elements, from NotSupported to Direct
  • pyspark.sql.types.ArrayType.json

  • pyspark.sql.types.ArrayType.jsonValue

  • pyspark.sql.types.ArrayType.simpleString

  • pyspark.sql.types.ArrayType.typeName

  • pyspark.sql.types.AtomicType.json

  • pyspark.sql.types.AtomicType.jsonValue

  • pyspark.sql.types.AtomicType.simpleString

  • pyspark.sql.types.AtomicType.typeName

  • pyspark.sql.types.BinaryType.json

  • pyspark.sql.types.BinaryType.jsonValue

  • pyspark.sql.types.BinaryType.simpleString

  • pyspark.sql.types.BinaryType.typeName

  • pyspark.sql.types.BooleanType.json

  • pyspark.sql.types.BooleanType.jsonValue

  • pyspark.sql.types.BooleanType.simpleString

  • pyspark.sql.types.BooleanType.typeName

  • pyspark.sql.types.ByteType.json

  • pyspark.sql.types.ByteType.jsonValue

  • pyspark.sql.types.ByteType.simpleString

  • pyspark.sql.types.ByteType.typeName

  • pyspark.sql.types.DecimalType.json

  • pyspark.sql.types.DecimalType.jsonValue

  • pyspark.sql.types.DecimalType.simpleString

  • pyspark.sql.types.DecimalType.typeName

  • pyspark.sql.types.DoubleType.json

  • pyspark.sql.types.DoubleType.jsonValue

  • pyspark.sql.types.DoubleType.simpleString

  • pyspark.sql.types.DoubleType.typeName

  • pyspark.sql.types.FloatType.json

  • pyspark.sql.types.FloatType.jsonValue

  • pyspark.sql.types.FloatType.simpleString

  • pyspark.sql.types.FloatType.typeName

  • pyspark.sql.types.FractionalType.json

  • pyspark.sql.types.FractionalType.jsonValue

  • pyspark.sql.types.FractionalType.simpleString

  • pyspark.sql.types.FractionalType.typeName

  • pyspark.sql.types.IntegerType.json

  • pyspark.sql.types.IntegerType.jsonValue

  • pyspark.sql.types.IntegerType.simpleString

  • pyspark.sql.types.IntegerType.typeName

  • pyspark.sql.types.IntegralType.json

  • pyspark.sql.types.IntegralType.jsonValue

  • pyspark.sql.types.IntegralType.simpleString

  • pyspark.sql.types.IntegralType.typeName

  • pyspark.sql.types.LongType.json

  • pyspark.sql.types.LongType.jsonValue

  • pyspark.sql.types.LongType.simpleString

  • pyspark.sql.types.LongType.typeName

  • pyspark.sql.types.MapType.json

  • pyspark.sql.types.MapType.jsonValue

  • pyspark.sql.types.MapType.simpleString

  • pyspark.sql.types.MapType.typeName

  • pyspark.sql.types.NullType.json

  • pyspark.sql.types.NullType.jsonValue

  • pyspark.sql.types.NullType.simpleString

  • pyspark.sql.types.NullType.typeName

  • pyspark.sql.types.NumericType.json

  • pyspark.sql.types.NumericType.jsonValue

  • pyspark.sql.types.NumericType.simpleString

  • pyspark.sql.types.NumericType.typeName

  • pyspark.sql.types.ShortType.json

  • pyspark.sql.types.ShortType.jsonValue

  • pyspark.sql.types.ShortType.simpleString

  • pyspark.sql.types.ShortType.typeName

  • pyspark.sql.types.StringType.json

  • pyspark.sql.types.StringType.jsonValue

  • pyspark.sql.types.StringType.simpleString

  • pyspark.sql.types.StringType.typeName

  • pyspark.sql.types.StructType.json

  • pyspark.sql.types.StructType.jsonValue

  • pyspark.sql.types.StructType.simpleString

  • pyspark.sql.types.StructType.typeName

  • pyspark.sql.types.TimestampType.json

  • pyspark.sql.types.TimestampType.jsonValue

  • pyspark.sql.types.TimestampType.simpleString

  • pyspark.sql.types.TimestampType.typeName

  • pyspark.sql.types.StructField.simpleString

  • pyspark.sql.types.StructField.typeName

  • pyspark.sql.types.StructField.json

  • pyspark.sql.types.StructField.jsonValue

  • pyspark.sql.types.DataType.json

  • pyspark.sql.types.DataType.jsonValue

  • pyspark.sql.types.DataType.simpleString

  • pyspark.sql.types.DataType.typeName

  • pyspark.sql.session.SparkSession.getActiveSession

  • pyspark.sql.session.SparkSession.version

  • pandas.io.html.read_html

  • pandas.io.json._normalize.json_normalize

  • pyspark.sql.types.ArrayType.fromJson

  • pyspark.sql.types.MapType.fromJson

  • pyspark.sql.types.StructField.fromJson

  • pyspark.sql.types.StructType.fromJson

  • pandas.core.groupby.generic.DataFrameGroupBy.pct_change

  • pandas.core.groupby.generic.SeriesGroupBy.pct_change

Atualizado o status de mapeamento para os seguintes elementos do Pandas, de NotSupported para Direto

  • pandas.io.html.read_html

  • pandas.io.json._normalize.json_normalize

  • pandas.core.groupby.generic.DataFrameGroupBy.pct_change

  • pandas.core.groupby.generic.SeriesGroupBy.pct_change

Atualizado o status de mapeamento para os seguintes elementos PySpark, de Renomear para Direto

  • pyspark.sql.functions.collect_list

  • pyspark.sql.functions.size

Corrigido

  • Padronizado o formato do número da versão nos inventários.

Versão 2.5.2 (5 de fevereiro de 2025)

Hotfix: Aplicativo e CLI Versão 2.5.2

Aplicativo para desktop

  • Foi corrigido um problema durante a conversão na opção de projeto de amostra.

Incluídas versões principais do SMA

  • Snowpark Conversion Core 5.3.0

Versão 2.5.1 (4 de fevereiro de 2025)

Aplicativo e CLI Versão 2.5.1

Aplicativo para desktop

  • Adicionado um novo modal quando o usuário não tem permissão de gravação.

  • Atualizado o acordo de licenciamento, a aceitação é necessária.

CLI

  • Foi corrigido o ano na tela CLI ao mostrar «–version» ou «-v»

Incluídas versões de núcleo do SMA included-sma-core-versions

  • Snowpark Conversion Core 5.3.0

Adicionado

Added the following Python Third-Party libraries with Direct status:
  • about-time

  • affinegap

  • aiohappyeyeballs

  • alibi-detect

  • alive-progress

  • allure-nose2

  • allure-robotframework

  • anaconda-cloud-cli

  • anaconda-mirror

  • astropy-iers-data

  • asynch

  • asyncssh

  • autots

  • autoviml

  • aws-msk-iam-sasl-signer-python

  • azure-functions

  • backports.tarfile

  • blas

  • bottle

  • bson

  • cairo

  • capnproto

  • captum

  • categorical-distance

  • census

  • clickhouse-driver

  • clustergram

  • cma

  • conda-anaconda-telemetry

  • configspace

  • cpp-expected

  • dask-expr

  • data-science-utils

  • databricks-sdk

  • datetime-distance

  • db-dtypes

  • dedupe

  • dedupe-variable-datetime

  • dedupe_lehvenshtein_search

  • dedupe_levenshtein_search

  • diff-cover

  • diptest

  • dmglib

  • docstring_parser

  • doublemetaphone

  • dspy-ai

  • econml

  • emcee

  • emoji

  • environs

  • eth-abi

  • eth-hash

  • eth-typing

  • eth-utils

  • expat

  • filetype

  • fitter

  • flask-cors

  • fpdf2

  • frozendict

  • gcab

  • geojson

  • gettext

  • glib-tools

  • google-ads

  • google-ai-generativelanguage

  • google-api-python-client

  • google-auth-httplib2

  • google-cloud-bigquery

  • google-cloud-bigquery-core

  • google-cloud-bigquery-storage

  • google-cloud-bigquery-storage-core

  • google-cloud-resource-manager

  • google-generativeai

  • googlemaps

  • grapheme

  • graphene

  • graphql-relay

  • gravis

  • greykite

  • grpc-google-iam-v1

  • harfbuzz

  • hatch-fancy-pypi-readme

  • haversine

  • hiclass

  • hicolor-icon-theme

  • highered

  • hmmlearn

  • holidays-ext

  • httplib2

  • icu

  • imbalanced-ensemble

  • immutabledict

  • importlib-metadata

  • importlib-resources

  • inquirerpy

  • iterative-telemetry

  • jaraco.context

  • jaraco.test

  • jiter

  • jiwer

  • joserfc

  • jsoncpp

  • jsonpath

  • jsonpath-ng

  • jsonpath-python

  • kagglehub

  • keplergl

  • kt-legacy

  • langchain-community

  • langchain-experimental

  • langchain-snowflake

  • langchain-text-splitters

  • libabseil

  • libflac

  • libgfortran-ng

  • libgfortran5

  • libglib

  • libgomp

  • libgrpc

  • libgsf

  • libmagic

  • libogg

  • libopenblas

  • libpostal

  • libprotobuf

  • libsentencepiece

  • libsndfile

  • libstdcxx-ng

  • libtheora

  • libtiff

  • libvorbis

  • libwebp

  • lightweight-mmm

  • litestar

  • litestar-with-annotated-types

  • litestar-with-attrs

  • litestar-with-cryptography

  • litestar-with-jinja

  • litestar-with-jwt

  • litestar-with-prometheus

  • litestar-with-structlog

  • lunarcalendar-ext

  • matplotlib-venn

  • metricks

  • mimesis

  • modin-ray

  • momepy

  • mpg123

  • msgspec

  • msgspec-toml

  • msgspec-yaml

  • msitools

  • multipart

  • namex

  • nbconvert-all

  • nbconvert-core

  • nbconvert-pandoc

  • nlohmann_json

  • numba-cuda

  • numpyro

  • office365-rest-python-client

  • openapi-pydantic

  • opentelemetry-distro

  • opentelemetry-instrumentation

  • opentelemetry-instrumentation-system-metrics

  • optree

  • osmnx

  • pathlib

  • pdf2image

  • pfzy

  • pgpy

  • plumbum

  • pm4py

  • polars

  • polyfactory

  • poppler-cpp

  • postal

  • pre-commit

  • prompt-toolkit

  • propcache

  • py-partiql-parser

  • py_stringmatching

  • pyatlan

  • pyfakefs

  • pyfhel

  • pyhacrf-datamade

  • pyiceberg

  • pykrb5

  • pylbfgs

  • pymilvus

  • pymoo

  • pynisher

  • pyomo

  • pypdf

  • pypdf-with-crypto

  • pypdf-with-full

  • pypdf-with-image

  • pypng

  • pyprind

  • pyrfr

  • pysoundfile

  • pytest-codspeed

  • pytest-trio

  • python-barcode

  • python-box

  • python-docx

  • python-gssapi

  • python-iso639

  • python-magic

  • python-pandoc

  • python-zstd

  • pyuca

  • pyvinecopulib

  • pyxirr

  • qrcode

  • rai-sdk

  • ray-client

  • ray-observability

  • readline

  • rich-click

  • rouge-score

  • ruff

  • scikit-criteria

  • scikit-mobility

  • sentencepiece-python

  • sentencepiece-spm

  • setuptools-markdown

  • setuptools-scm

  • setuptools-scm-git-archive

  • shareplum

  • simdjson

  • simplecosine

  • sis-extras

  • slack-sdk

  • smac

  • snowflake-sqlalchemy

  • snowflake_legacy

  • socrata-py

  • spdlog

  • sphinxcontrib-images

  • sphinxcontrib-jquery

  • sphinxcontrib-youtube

  • splunk-opentelemetry

  • sqlfluff

  • squarify

  • st-theme

  • statistics

  • streamlit-antd-components

  • streamlit-condition-tree

  • streamlit-echarts

  • streamlit-feedback

  • streamlit-keplergl

  • streamlit-mermaid

  • streamlit-navigation-bar

  • streamlit-option-menu

  • strictyaml

  • stringdist

  • sybil

  • tensorflow-cpu

  • tensorflow-text

  • tiledb-ptorchaudio

  • torcheval

  • trio-websocket

  • trulens-connectors-snowflake

  • trulens-core

  • trulens-dashboard

  • trulens-feedback

  • trulens-otel-semconv

  • trulens-providers-cortex

  • tsdownsample

  • typing

  • typing-extensions

  • typing_extensions

  • unittest-xml-reporting

  • uritemplate

  • us

  • uuid6

  • wfdb

  • wsproto

  • zlib

  • zope.index

Added the following Python BuiltIn libraries with Direct status:
  • aifc

  • array

  • ast

  • asynchat

  • asyncio

  • asyncore

  • atexit

  • audioop

  • base64

  • bdb

  • binascii

  • bitsect

  • builtins

  • bz2

  • calendar

  • cgi

  • cgitb

  • chunk

  • cmath

  • cmd

  • code

  • codecs

  • codeop

  • colorsys

  • compileall

  • concurrent

  • contextlib

  • contextvars

  • copy

  • copyreg

  • cprofile

  • crypt

  • csv

  • ctypes

  • curses

  • dbm

  • difflib

  • dis

  • distutils

  • doctest

  • email

  • ensurepip

  • enum

  • errno

  • faulthandler

  • fcntl

  • filecmp

  • fileinput

  • fnmatch

  • fractions

  • ftplib

  • functools

  • gc

  • getopt

  • getpass

  • gettext

  • graphlib

  • grp

  • gzip

  • hashlib

  • heapq

  • hmac

  • html

  • http

  • idlelib

  • imaplib

  • imghdr

  • imp

  • importlib

  • inspect

  • ipaddress

  • itertools

  • keyword

  • linecache

  • locale

  • lzma

  • mailbox

  • mailcap

  • marshal

  • math

  • mimetypes

  • mmap

  • modulefinder

  • msilib

  • multiprocessing

  • netrc

  • nis

  • nntplib

  • numbers

  • operator

  • optparse

  • ossaudiodev

  • pdb

  • pickle

  • pickletools

  • pipes

  • pkgutil

  • platform

  • plistlib

  • poplib

  • posix

  • pprint

  • profile

  • pstats

  • pty

  • pwd

  • py_compile

  • pyclbr

  • pydoc

  • queue

  • quopri

  • random

  • re

  • reprlib

  • resource

  • rlcompleter

  • runpy

  • sched

  • segredos

  • select

  • selectors

  • shelve

  • shlex

  • signal

  • site

  • sitecustomize

  • smtpd

  • smtplib

  • sndhdr

  • socket

  • socketserver

  • spwd

  • sqlite3

  • ssl

  • stat

  • string

  • stringprep

  • struct

  • subprocess

  • sunau

  • symtable

  • sysconfig

  • syslog

  • tabnanny

  • tarfile

  • telnetlib

  • tempfile

  • termios

  • test

  • textwrap

  • threading

  • timeit

  • tkinter

  • token

  • tokenize

  • tomllib

  • trace

  • traceback

  • tracemalloc

  • tty

  • turtle

  • turtledemo

  • types

  • unicodedata

  • urllib

  • uu

  • uuid

  • venv

  • warnings

  • wave

  • weakref

  • webbrowser

  • wsgiref

  • xdrlib

  • xml

  • xmlrpc

  • zipapp

  • zipfile

  • zipimport

  • zoneinfo

Added the following Python BuiltIn libraries with NotSupported status:
  • msvcrt

  • winreg

  • winsound

Alterado

  • Atualizada a versão do .NET para v9.0.0.

  • Aprimorado EWI SPRKPY1068.

  • Aumentada a versão da API do Snowpark Python suportada pelo SMA de 1.24.0 para 1.25.0.

  • Atualizamos o modelo de relatório detalhado, agora com a versão Snowpark para Pandas.

  • As seguintes bibliotecas foram alteradas de ThirdPartyLib para BuiltIn.

    • configparser

    • dataclasses

    • pathlib

    • readline

    • statistics

    • zlib

Updated the mapping status for the following Pandas elements, from Direct to Partial:
  • pandas.core.frame.DataFrame.add

  • pandas.core.frame.DataFrame.aggregate

  • pandas.core.frame.DataFrame.all

  • pandas.core.frame.DataFrame.apply

  • pandas.core.frame.DataFrame.astype

  • pandas.core.frame.DataFrame.cumsum

  • pandas.core.frame.DataFrame.div

  • pandas.core.frame.DataFrame.dropna

  • pandas.core.frame.DataFrame.eq

  • pandas.core.frame.DataFrame.ffill

  • pandas.core.frame.DataFrame.fillna

  • pandas.core.frame.DataFrame.floordiv

  • pandas.core.frame.DataFrame.ge

  • pandas.core.frame.DataFrame.groupby

  • pandas.core.frame.DataFrame.gt

  • pandas.core.frame.DataFrame.idxmax

  • pandas.core.frame.DataFrame.idxmin

  • pandas.core.frame.DataFrame.inf

  • pandas.core.frame.DataFrame.join

  • pandas.core.frame.DataFrame.le

  • pandas.core.frame.DataFrame.loc

  • pandas.core.frame.DataFrame.lt

  • pandas.core.frame.DataFrame.mask

  • pandas.core.frame.DataFrame.merge

  • pandas.core.frame.DataFrame.mod

  • pandas.core.frame.DataFrame.mul

  • pandas.core.frame.DataFrame.ne

  • pandas.core.frame.DataFrame.nunique

  • pandas.core.frame.DataFrame.pivot_table

  • pandas.core.frame.DataFrame.pow

  • pandas.core.frame.DataFrame.radd

  • pandas.core.frame.DataFrame.rank

  • pandas.core.frame.DataFrame.rdiv

  • pandas.core.frame.DataFrame.rename

  • pandas.core.frame.DataFrame.replace

  • pandas.core.frame.DataFrame.resample

  • pandas.core.frame.DataFrame.rfloordiv

  • pandas.core.frame.DataFrame.rmod

  • pandas.core.frame.DataFrame.rmul

  • pandas.core.frame.DataFrame.rolling

  • pandas.core.frame.DataFrame.round

  • pandas.core.frame.DataFrame.rpow

  • pandas.core.frame.DataFrame.rsub

  • pandas.core.frame.DataFrame.rtruediv

  • pandas.core.frame.DataFrame.shift

  • pandas.core.frame.DataFrame.skew

  • pandas.core.frame.DataFrame.sort_index

  • pandas.core.frame.DataFrame.sort_values

  • pandas.core.frame.DataFrame.sub

  • pandas.core.frame.DataFrame.to_dict

  • pandas.core.frame.DataFrame.transform

  • pandas.core.frame.DataFrame.transpose

  • pandas.core.frame.DataFrame.truediv

  • pandas.core.frame.DataFrame.var

  • pandas.core.indexes.datetimes.date_range

  • pandas.core.reshape.concat.concat

  • pandas.core.reshape.melt.melt

  • pandas.core.reshape.merge.merge

  • pandas.core.reshape.pivot.pivot_table

  • pandas.core.reshape.tile.cut

  • pandas.core.series.Series.add

  • pandas.core.series.Series.aggregate

  • pandas.core.series.Series.all

  • pandas.core.series.Series.any

  • pandas.core.series.Series.cumsum

  • pandas.core.series.Series.div

  • pandas.core.series.Series.dropna

  • pandas.core.series.Series.eq

  • pandas.core.series.Series.ffill

  • pandas.core.series.Series.fillna

  • pandas.core.series.Series.floordiv

  • pandas.core.series.Series.ge

  • pandas.core.series.Series.gt

  • pandas.core.series.Series.lt

  • pandas.core.series.Series.mask

  • pandas.core.series.Series.mod

  • pandas.core.series.Series.mul

  • pandas.core.series.Series.multiply

  • pandas.core.series.Series.ne

  • pandas.core.series.Series.pow

  • pandas.core.series.Series.quantile

  • pandas.core.series.Series.radd

  • pandas.core.series.Series.rank

  • pandas.core.series.Series.rdiv

  • pandas.core.series.Series.rename

  • pandas.core.series.Series.replace

  • pandas.core.series.Series.resample

  • pandas.core.series.Series.rfloordiv

  • pandas.core.series.Series.rmod

  • pandas.core.series.Series.rmul

  • pandas.core.series.Series.rolling

  • pandas.core.series.Series.rpow

  • pandas.core.series.Series.rsub

  • pandas.core.series.Series.rtruediv

  • pandas.core.series.Series.sample

  • pandas.core.series.Series.shift

  • pandas.core.series.Series.skew

  • pandas.core.series.Series.sort_index

  • pandas.core.series.Series.sort_values

  • pandas.core.series.Series.std

  • pandas.core.series.Series.sub

  • pandas.core.series.Series.subtract

  • pandas.core.series.Series.truediv

  • pandas.core.series.Series.value_counts

  • pandas.core.series.Series.var

  • pandas.core.series.Series.where

  • pandas.core.tools.numeric.to_numeric

Updated the mapping status for the following Pandas elements, from NotSupported to Direct:
  • pandas.core.frame.DataFrame.attrs

  • pandas.core.indexes.base.Index.to_numpy

  • pandas.core.series.Series.str.len

  • pandas.io.html.read_html

  • pandas.io.xml.read_xml

  • pandas.core.indexes.datetimes.DatetimeIndex.mean

  • pandas.core.resample.Resampler.indices

  • pandas.core.resample.Resampler.nunique

  • pandas.core.series.Series.items

  • pandas.core.tools.datetimes.to_datetime

  • pandas.io.sas.sasreader.read_sas

  • pandas.core.frame.DataFrame.attrs

  • pandas.core.frame.DataFrame.style

  • pandas.core.frame.DataFrame.items

  • pandas.core.groupby.generic.DataFrameGroupBy.head

  • pandas.core.groupby.generic.DataFrameGroupBy.median

  • pandas.core.groupby.generic.DataFrameGroupBy.min

  • pandas.core.groupby.generic.DataFrameGroupBy.nunique

  • pandas.core.groupby.generic.DataFrameGroupBy.tail

  • pandas.core.indexes.base.Index.is_boolean

  • pandas.core.indexes.base.Index.is_floating

  • pandas.core.indexes.base.Index.is_integer

  • pandas.core.indexes.base.Index.is_monotonic_decreasing

  • pandas.core.indexes.base.Index.is_monotonic_increasing

  • pandas.core.indexes.base.Index.is_numeric

  • pandas.core.indexes.base.Index.is_object

  • pandas.core.indexes.base.Index.max

  • pandas.core.indexes.base.Index.min

  • pandas.core.indexes.base.Index.name

  • pandas.core.indexes.base.Index.names

  • pandas.core.indexes.base.Index.rename

  • pandas.core.indexes.base.Index.set_names

  • pandas.core.indexes.datetimes.DatetimeIndex.day_name

  • pandas.core.indexes.datetimes.DatetimeIndex.month_name

  • pandas.core.indexes.datetimes.DatetimeIndex.time

  • pandas.core.indexes.timedeltas.TimedeltaIndex.ceil

  • pandas.core.indexes.timedeltas.TimedeltaIndex.days

  • pandas.core.indexes.timedeltas.TimedeltaIndex.floor

  • pandas.core.indexes.timedeltas.TimedeltaIndex.microseconds

  • pandas.core.indexes.timedeltas.TimedeltaIndex.nanoseconds

  • pandas.core.indexes.timedeltas.TimedeltaIndex.round

  • pandas.core.indexes.timedeltas.TimedeltaIndex.seconds

  • pandas.core.reshape.pivot.crosstab

  • pandas.core.series.Series.dt.round

  • pandas.core.series.Series.dt.time

  • pandas.core.series.Series.dt.weekday

  • pandas.core.series.Series.is_monotonic_decreasing

  • pandas.core.series.Series.is_monotonic_increasing

Updated the mapping status for the following Pandas elements, from NotSupported to Partial:
  • pandas.core.frame.DataFrame.align

  • pandas.core.series.Series.align

  • pandas.core.frame.DataFrame.tz_convert

  • pandas.core.frame.DataFrame.tz_localize

  • pandas.core.groupby.generic.DataFrameGroupBy.fillna

  • pandas.core.groupby.generic.SeriesGroupBy.fillna

  • pandas.core.indexes.datetimes.bdate_range

  • pandas.core.indexes.datetimes.DatetimeIndex.std

  • pandas.core.indexes.timedeltas.TimedeltaIndex.mean

  • pandas.core.resample.Resampler.asfreq

  • pandas.core.resample.Resampler.quantile

  • pandas.core.series.Series.map

  • pandas.core.series.Series.tz_convert

  • pandas.core.series.Series.tz_localize

  • pandas.core.window.expanding.Expanding.count

  • pandas.core.window.rolling.Rolling.count

  • pandas.core.groupby.generic.DataFrameGroupBy.aggregate

  • pandas.core.groupby.generic.SeriesGroupBy.aggregate

  • pandas.core.frame.DataFrame.applymap

  • pandas.core.series.Series.apply

  • pandas.core.groupby.generic.DataFrameGroupBy.bfill

  • pandas.core.groupby.generic.DataFrameGroupBy.ffill

  • pandas.core.groupby.generic.SeriesGroupBy.bfill

  • pandas.core.groupby.generic.SeriesGroupBy.ffill

  • pandas.core.frame.DataFrame.backfill

  • pandas.core.frame.DataFrame.bfill

  • pandas.core.frame.DataFrame.compare

  • pandas.core.frame.DataFrame.unstack

  • pandas.core.frame.DataFrame.asfreq

  • pandas.core.series.Series.backfill

  • pandas.core.series.Series.bfill

  • pandas.core.series.Series.compare

  • pandas.core.series.Series.unstack

  • pandas.core.series.Series.asfreq

  • pandas.core.series.Series.argmax

  • pandas.core.series.Series.argmin

  • pandas.core.indexes.accessors.CombinedDatetimelikeProperties.microsecond

  • pandas.core.indexes.accessors.CombinedDatetimelikeProperties.nanosecond

  • pandas.core.indexes.accessors.CombinedDatetimelikeProperties.day_name

  • pandas.core.indexes.accessors.CombinedDatetimelikeProperties.month_name

  • pandas.core.indexes.accessors.CombinedDatetimelikeProperties.month_start

  • pandas.core.indexes.accessors.CombinedDatetimelikeProperties.month_end

  • pandas.core.indexes.accessors.CombinedDatetimelikeProperties.is_year_start

  • pandas.core.indexes.accessors.CombinedDatetimelikeProperties.is_year_end

  • pandas.core.indexes.accessors.CombinedDatetimelikeProperties.is_quarter_start

  • pandas.core.indexes.accessors.CombinedDatetimelikeProperties.is_quarter_end

  • pandas.core.indexes.accessors.CombinedDatetimelikeProperties.is_leap_year

  • pandas.core.indexes.accessors.CombinedDatetimelikeProperties.floor

  • pandas.core.indexes.accessors.CombinedDatetimelikeProperties.ceil

  • pandas.core.groupby.generic.DataFrameGroupBy.idxmax

  • pandas.core.groupby.generic.DataFrameGroupBy.idxmin

  • pandas.core.groupby.generic.DataFrameGroupBy.std

  • pandas.core.indexes.timedeltas.TimedeltaIndex.mean

  • pandas.core.tools.timedeltas.to_timedelta

Problema conhecido

  • Esta versão inclui um problema quando a conversão do projeto de amostra não funciona nesta versão, que será corrigido na próxima versão

Versão 2.4.3 (9 de janeiro de 2025)

Aplicativo e CLI Versão 2.4.3

Aplicativo para desktop

  • Foi adicionado um link para o guia de solução de problemas no modal de relatório de falhas.

Incluídas versões principais do SMA

  • Snowpark Conversion Core 4.15.0

Adicionado

  • Você adicionou os seguintes elementos PySpark ao arquivo ConversionStatusPySpark. csv como NotSupported:

    • pyspark.sql.streaming.readwriter.DataStreamReader.table

    • pyspark.sql.streaming.readwriter.DataStreamReader.schema

    • pyspark.sql.streaming.readwriter.DataStreamReader.options

    • pyspark.sql.streaming.readwriter.DataStreamReader.option

    • pyspark.sql.streaming.readwriter.DataStreamReader.load

    • pyspark.sql.streaming.readwriter.DataStreamReader.format

    • pyspark.sql.streaming.query.StreamingQuery.awaitTermination

    • pyspark.sql.streaming.readwriter.DataStreamWriter.partitionBy

    • pyspark.sql.streaming.readwriter.DataStreamWriter.toTable

    • pyspark.sql.streaming.readwriter.DataStreamWriter.trigger

    • pyspark.sql.streaming.readwriter.DataStreamWriter.queryName

    • pyspark.sql.streaming.readwriter.DataStreamWriter.outputMode

    • pyspark.sql.streaming.readwriter.DataStreamWriter.format

    • pyspark.sql.streaming.readwriter.DataStreamWriter.option

    • pyspark.sql.streaming.readwriter.DataStreamWriter.foreachBatch

    • pyspark.sql.streaming.readwriter.DataStreamWriter.start

Alterado

  • Formato atualizado do Hive SQL EWIs.

    • SPRKHVSQL1001

    • SPRKHVSQL1002

    • SPRKHVSQL1003

    • SPRKHVSQL1004

    • SPRKHVSQL1005

    • SPRKHVSQL1006

  • Formato atualizado do Spark SQL EWIs.

    • SPRKSPSQL1001

    • SPRKSPSQL1002

    • SPRKSPSQL1003

    • SPRKSPSQL1004

    • SPRKSPSQL1005

    • SPRKSPSQL1006

Corrigido

  • Foi corrigido um bug que fazia com que alguns elementos do PySpark não fossem identificados pela ferramenta.

  • Foi corrigida a incompatibilidade entre as chamadas identificadas em ThirdParty e o número de chamadas de importação em ThirdParty.

Versão 2.4.2 (13 de dezembro de 2024)

Aplicativo e CLI versão 2.4.2

Incluídas versões principais do SMA

  • Snowpark Conversion Core 4.14.0

Adicionado added

  • Foram adicionados os seguintes elementos do Spark a ConversionStatusPySpark.csv:

    • pyspark.broadcast.Broadcast.value

    • pyspark.conf.SparkConf.getAll

    • pyspark.conf.SparkConf.setAll

    • pyspark.conf.SparkConf.setMaster

    • pyspark.context.SparkContext.addFile

    • pyspark.context.SparkContext.addPyFile

    • pyspark.context.SparkContext.binaryFiles

    • pyspark.context.SparkContext.setSystemProperty

    • pyspark.context.SparkContext.version

    • pyspark.files.SparkFiles

    • pyspark.files.SparkFiles.get

    • pyspark.rdd.RDD.count

    • pyspark.rdd.RDD.distinct

    • pyspark.rdd.RDD.reduceByKey

    • pyspark.rdd.RDD.saveAsTextFile

    • pyspark.rdd.RDD.take

    • pyspark.rdd.RDD.zipWithIndex

    • pyspark.sql.context.SQLContext.udf

    • pyspark.sql.types.StructType.simpleString

Alterado

  • Atualizada a documentação dos Pandas EWIs, PNDSPY1001, PNDSPY1002 e PNDSPY1003 SPRKSCL1137 para alinhar com um formato padronizado, garantindo consistência e clareza em todos os EWIs.

  • Atualizada a documentação dos seguintes Scala EWIs: SPRKSCL1106 e SPRKSCL1107. Para estar alinhado com um formato padronizado, garantindo consistência e clareza em todos os EWIs.

Corrigido

  • Foi corrigido o erro que estava causando a exibição dos símbolos UserDefined no inventário de usos de terceiros.

Versão 2.4.1 (4 de dezembro de 2024)

Aplicativo e CLI versão 2.4.1

Incluídas versões principais do SMA

  • Snowpark Conversion Core 4.13.1

Interface de linha de comando

Alterado

  • Adicionado o registro de data e hora à pasta de saída.

Snowpark Conversion Core 4.13.1

Adicionado

  • Adicionada a coluna “Source Language” à tabela de mapeamentos de bibliotecas

  • Adicionado Others como uma nova categoria na tabela Pandas API Summary do DetailedReport.docx

Alterado

  • Atualização da documentação do Python EWI SPRKPY1058.

  • Atualizada a mensagem para o Pandas EWI PNDSPY1002 para mostrar o elemento pandas relacionado.

  • Atualizamos a forma como criamos os relatórios .csv, que agora são sobrescritos após uma segunda execução.

Corrigido

  • Foi corrigido um erro que fazia com que os arquivos do Notebook não fossem gerados na saída.

  • Corrigido o substituto dos métodos get e set do pyspark.sql.conf.RuntimeConfig, o substituto agora corresponde aos nomes completos corretos.

  • Correção da versão incorreta da tag de consulta.

  • Correção dos pacotes UserDefined relatados como ThirdPartyLib.

\

Versão 2.3.1 (14 de novembro de 2024)

Aplicativo e CLI versão 2.3.1

Incluídas versões principais do SMA

  • Snowpark Conversion Core 4.12.0

Aplicativo para desktop

Corrigido

  • Correção de problemas de distinção entre maiúsculas e minúsculas nas opções –sql.

Removido

  • Removido o nome da plataforma da mensagem show-ac.

Snowpark Conversion Core 4.12.0

Adicionado

  • Adicionado suporte ao Snowpark Python 1.23.0 e 1.24.0.

  • Adicionado novo EWI para a função pyspark.sql.dataframe.DataFrame.writeTo. Todos os usos dessa função agora terão o EWI SPRKPY1087.

Alterado

  • Atualizada a documentação dos Scala EWIs de SPRKSCL1137 para SPRKSCL1156 para alinhar-se a um formato padronizado, garantindo consistência e clareza em todos os EWIs.

  • Atualizada a documentação dos Scala EWIs de SPRKSCL1117 para SPRKSCL1136 para alinhar-se a um formato padronizado, garantindo consistência e clareza em todos os EWIs.

  • Atualizada a mensagem que é exibida nos seguintes EWIs:

    • SPRKPY1082

    • SPRKPY1083

  • Atualização da documentação dos Scala EWIs de SPRKSCL1100 para SPRKSCL1105, de SPRKSCL1108 para SPRKSCL1116; de SPRKSCL1157 para SPRKSCL1175; para alinhar-se a um formato padronizado, garantindo consistência e clareza em todos os EWIs.

  • Atualizado o status de mapeamento dos seguintes elementos PySpark de NotSupported para . Direto com EWI:

    • pyspark.sql.readwriter.DataFrameWriter.option => snowflake.snowpark.DataFrameWriter.option: Todos os usos dessa função agora têm o EWI SPRKPY1088

    • pyspark.sql.readwriter.DataFrameWriter.options => snowflake.snowpark.DataFrameWriter.options: Todos os usos dessa função agora têm o EWI SPRKPY1089

  • Atualizado o status de mapeamento dos seguintes elementos PySpark de Solução alternativa para Renomear:

    • pyspark.sql.readwriter.DataFrameWriter.partitionBy => snowflake.snowpark.DataFrameWriter.partition_by

  • Documentação EWI atualizada: SPRKSCL1000, SPRKSCL1001, SPRKSCL1002, SPRKSCL1100, SPRKSCL1101, SPRKSCL1102, SPRKSCL1103, SPRKSCL1104, SPRKSCL1105.

Removida

  • Removido o elemento pyspark.sql.dataframe.DataFrameStatFunctions.writeTo do status de conversão, pois esse elemento não existe.

Obsoleto

  • Depreciados os seguintes códigos EWI:

    • SPRKPY1081

    • SPRKPY1084

Versão 2.3.0 (30 de outubro de 2024)

Aplicativo e CLI Versão 2.3.0

  • Snowpark Conversion Core 4.11.0

Snowpark Conversion Core 4.11.0

Adicionado

  • Foi adicionada uma nova coluna chamada Url ao arquivo Issues.csv, que redireciona para a documentação correspondente do EWI.

  • Adicionados novos EWIs para os seguintes elementos do Spark:

    • [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

  • Foram adicionados 38 novos elementos 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

Versão 2.2.3 (24 de outubro de 2024)

Aplicativo versão 2.2.3

Incluídas versões principais do SMA

  • Snowpark Conversion Core 4.10.0

Aplicativo para desktop

Corrigido

  • Foi corrigido um erro que fazia com que o SMA mostrasse o rótulo SnowConvert em vez de Snowpark Migration Accelerator na barra de menus da versão Windows.

  • Foi corrigido um bug que fazia com que o SMA travasse quando não tinha permissões de leitura e gravação no diretório .config no macOS e no diretório AppData no Windows.

Interface de linha de comando

Alterado

  • O nome do executável da CLI foi renomeado de snowct para sma.

  • Removido o argumento da linguagem de origem para que o usuário não precise mais especificar se está executando uma avaliação/conversão de Python ou Scala.

  • Expandidos os argumentos de linha de comando suportados pela CLI, adicionando os seguintes novos argumentos:

    • --enableJupyter | -j: Sinalizador para indicar se a conversão de notebooks do Databricks para o Jupyter está ativada ou não.

    • --sql | -f: Sintaxe do mecanismo de banco de dados a ser usada quando um comando SQL for detectado.

    • --customerEmail | -e: Configurar o e-mail do cliente.

    • --customerCompany | -c: Configurar a empresa do cliente.

    • --projectName | -p: Configure o projeto do cliente.

  • Atualização de alguns textos para refletir o nome correto do aplicativo, garantindo consistência e clareza em todas as mensagens.

  • Atualizados os termos de uso do aplicativo.

  • Atualizada e ampliada a documentação da CLI para refletir os recursos, aprimoramentos e alterações mais recentes.

  • Atualizado o texto que é mostrado antes de prosseguir com a execução do SMA para melhorar

  • Atualizado a CLI para aceitar «Yes» como um argumento válido ao solicitar a confirmação do usuário.

  • Permitimos que a CLI continue a execução sem esperar pela interação do usuário, especificando o argumento -y ou --yes.

  • Atualizadas as informações de ajuda do argumento --sql para mostrar os valores que esse argumento espera.

Snowpark Conversion Core Versão 4.10.0

Adicionado

  • Adicionado um novo EWI para a função pyspark.sql.readwriter.DataFrameWriter.partitionBy. Todos os usos dessa função agora terão o EWI SPRKPY1081.

  • Adicionada uma nova coluna chamada Technology ao arquivo ImportUsagesInventory. csv.

Alterado

  • Atualizada a pontuação de preparação das bibliotecas de terceiros para levar em conta também as bibliotecas Unknown.

  • Atualizado o arquivo AssessmentFiles.zip para incluir os arquivos .json em vez dos arquivos .pam.

  • Aprimorado o mecanismo de conversão de CSV para JSON para tornar o processamento de inventários mais eficiente.

  • Aprimorada a documentação dos seguintes EWIs:

    • SPRKPY1029

    • SPRKPY1054

    • SPRKPY1055

    • SPRKPY1063

    • SPRKPY1075

    • SPRKPY1076

  • Atualização do status de mapeamento dos seguintes elementos Spark Scala de Direto para Renomear.

    • org.apache.spark.sql.functions.shiftLeft => com.snowflake.snowpark.functions.shiftleft

    • org.apache.spark.sql.functions.shiftRight => com.snowflake.snowpark.functions.shiftright

  • Atualizado o status de mapeamento dos seguintes elementos do Spark Scala foi atualizado de Não suportado para Direto.

    • org.apache.spark.sql.functions.shiftleft => com.snowflake.snowpark.functions.shiftleft

    • org.apache.spark.sql.functions.shiftright => com.snowflake.snowpark.functions.shiftright

Corrigido

  • Foi corrigido um erro que fazia com que o SMA preenchesse incorretamente a coluna Origin do arquivo ImportUsagesInventory.csv.

  • Foi corrigido um bug que fazia com que o SMA não classificasse as importações das bibliotecas io, json, logging e unittest como importações incorporadas do Python no arquivo ImportUsagesInventory.csv e no arquivo DetailedReport.docx.

Versão 2.2.2 (11 de outubro de 2024)

Versão do aplicativo 2.2.2

As atualizações de recursos incluem:

  • Snowpark Conversion Core 4.8.0

Snowpark Conversion Core Versão 4.8.0

Adicionado

  • Adicionados os arquivos EwiCatalog.csv e .md para reorganizar a documentação

  • Adicionado o status de mapeamento de Diretopyspark.sql.functions.ln.

  • Adicionada uma transformação para pyspark.context.SparkContext.getOrCreate

    • Consulte o EWI SPRKPY1080 para obter mais detalhes.

  • Adicionado um aprimoramento para SymbolTable, inferir o tipo de parâmetros em funções.

  • SymbolTable adicionada suporta métodos estáticos e não assume que o primeiro parâmetro será self para eles.

  • Foi adicionada documentação sobre a falta de EWIs

    • SPRKHVSQL1005

    • SPRKHVSQL1006

    • SPRKSPSQL1005

    • SPRKSPSQL1006

    • SPRKSCL1002

    • SPRKSCL1170

    • SPRKSCL1171

    • SPRKPY1057

    • SPRKPY1058

    • SPRKPY1059

    • SPRKPY1060

    • SPRKPY1061

    • SPRKPY1064

    • SPRKPY1065

    • SPRKPY1066

    • SPRKPY1067

    • SPRKPY1069

    • SPRKPY1070

    • SPRKPY1077

    • SPRKPY1078

    • SPRKPY1079

    • SPRKPY1101

Alterado

  • Atualizado o status de mapeamento de:

    • pyspark.sql.functions.array_remove de NotSupported para Direto.

Corrigido

  • Corrigida a tabela de dimensionamento de arquivos de código no relatório de detalhes para excluir arquivos .sql e .hql e adicionada a linha Extra Large na tabela.

  • Foi corrigida a falta da tag update_query_tag quando SparkSession é definido em várias linhas em Python.

  • Foi corrigida a falta da tag update_query_tag quando SparkSession é definido em várias linhas em Scala.

  • Foi corrigida a falta do EWI SPRKHVSQL1001 em algumas instruções SQL com erros de análise.

  • Correção da manutenção de valores de novas linhas dentro de literais de cadeia de caracteres

  • Corrigido o total de linhas de código mostrado na tabela de resumo do tipo de arquivo

  • Corrigido o Parsing Score mostrado como 0 quando os arquivos eram reconhecidos com sucesso

  • Corrigida a contagem de LOC no inventário de células para Databricks Magic SQL Cells

Versão 2.2.0 (26 de setembro de 2024)

Aplicativo versão 2.2.0

As atualizações de recursos incluem:

  • Snowpark Conversion Core 4.6.0

Snowpark Conversion Core Versão 4.6.0

Adicionado

  • Adicionada transformação para pyspark.sql.readwriter.DataFrameReader.parquet.

  • Adicionada transformação para pyspark.sql.readwriter.DataFrameReader.option quando for um método Parquet.

Alterado

  • Atualizado o status de mapeamento de:

    • pyspark.sql.types.StructType. fields de NotSupported para Direto.

    • pyspark.sql.types.StructType. names de NotSupported para Direto.

    • pyspark.context.SparkContext.setLogLevel de Solução alternativa para Transformação.

      • Mais detalhes podem ser encontrados nos EWIs SPRKPY1078 e SPRKPY1079

    • org.apache.spark.sql.functions.round de WorkAround para Direto.

    • org.apache.spark.sql.functions.udf de NotDefined para Transformação.

      • Mais detalhes podem ser encontrados nos EWIs SPRKSCL1174 e SPRKSCL1175

  • Atualização do status de mapeamento dos seguintes elementos Spark de DirectHelper para Direto:

    • org.apache.spark.sql.functions.hex

    • org.apache.spark.sql.functions.unhex

    • org.apache.spark.sql.functions.shiftleft

    • org.apache.spark.sql.functions.shiftright

    • org.apache.spark.sql.functions.reverse

    • org.apache.spark.sql.functions.isnull

    • org.apache.spark.sql.functions.unix_timestamp

    • org.apache.spark.sql.functions.randn

    • org.apache.spark.sql.functions.signum

    • org.apache.spark.sql.functions.sign

    • org.apache.spark.sql.functions.collect_list

    • org.apache.spark.sql.functions.log10

    • org.apache.spark.sql.functions.log1p

    • org.apache.spark.sql.functions.base64

    • org.apache.spark.sql.functions.unbase64

    • org.apache.spark.sql.functions.regexp_extract

    • org.apache.spark.sql.functions.expr

    • org.apache.spark.sql.functions.date_format

    • org.apache.spark.sql.functions.desc

    • org.apache.spark.sql.functions.asc

    • org.apache.spark.sql.functions.size

    • org.apache.spark.sql.functions.locate

    • org.apache.spark.sql.functions.ntile

Corrigido

  • Corrigido valor mostrado na Porcentagem do total da Api do Pandas

  • Corrigido percentual total na tabela ImportCalls no DetailReport

Obsoleto

  • Desativado o seguinte código EWI:

    • SPRKSCL1115

Versão 2.1.7 (12 de setembro de 2024)

Versão do aplicativo 2.1.7

As atualizações de recursos incluem:

  • Snowpark Conversion Core 4.5.7

  • Snowpark Conversion Core 4.5.2

Snowpark Conversion Core Versão 4.5.7

Corrigido

  • Corrigida linha Total adicionada nos resumos de usos do Spark quando não há usos

  • Aumento do Python Assembly para Version=1.3.111

    • Analisar vírgula de trilha em argumentos de várias linhas

Snowpark Conversion Core Versão 4.5.2

Adicionado

  • Adicionada transformação para pyspark.sql.readwriter.DataFrameReader.option:

    • Quando a cadeia é de uma chamada de método CSV.

    • Quando a cadeia é de uma chamada de método JSON.

  • Adicionada transformação para pyspark.sql.readwriter.DataFrameReader.json.

Alterado

  • Executado SMA em cadeias de caracteres SQL passadas para funções Python/Scala

    • Criar AST em Scala/Python para emitir a unidade temporária SQL

    • Criar inventário em SqlEmbeddedUsages.csv

    • Desativar SqlStatementsInventroy.csv e SqlExtractionInventory.csv

    • Integrar EWI quando o literal SQL não puder ser processado

    • Criar nova tarefa para processar código SQL incorporado

    • Coletar informações para o inventário SqlEmbeddedUsages.csv em Python

    • Substituir código transformado SQL para Literal em Python

    • Atualizar os casos de teste após a implementação

    • Criar tabela e exibições para telemetria no inventário SqlEmbeddedUsages

    • Coletar informações para o relatório SqlEmbeddedUsages.csv em Scala

    • Substituir código transformado SQL para Literal em Scala

    • Verificar a ordem do número da linha para o relatório SQL incorporado

  • Preenchido o arquivo SqlFunctionsInfo.csv com as funções SQL documentadas para SparkSQL e HiveSQL

  • Atualizado o status do mapeamento para:

    • org.apache.spark.sql.SparkSession.sparkContext de NotSupported para Transformação.

    • org.apache.spark.sql.Builder.config de NotSupported para Transformação. Com esse novo status de mapeamento, o SMA removerá todos os usos dessa função do código-fonte.

Versão 2.1.6 (5 de setembro de 2024)

Versão do aplicativo 2.1.6

  • Mudança de hotfix para a versão 4.5.1 do Snowpark Engines Core

Spark Conversion Core Versão 4.5.1

Hotfix

  • Foi adicionado um mecanismo para converter os notebooks temporais do Databricks gerados pelo SMA em notebooks exportados do Databricks

Versão 2.1.5 (29 de agosto de 2024)

Versão do aplicativo 2.1.5

As atualizações de recursos incluem:

  • Updated Spark Conversion Core: 4.3.2

Spark Conversion Core Versão 4.3.2

Adicionado

  • Foi adicionado o mecanismo (via decoração) para obter a linha e a coluna dos elementos identificados nas células dos notebooks

  • Adicionado um EWI para pyspark.sql.functions.from_json.

  • Adicionada uma transformação para pyspark.sql.readwriter.DataFrameReader.csv.

  • Ativado o mecanismo de tag de consulta para arquivos Scala.

  • Adicionada a pontuação da análise de código e links adicionais para o relatório detalhado.

  • Foi adicionada uma coluna chamada OriginFilePath ao arquivo InputFilesInventory.csv

Alterado

  • Atualizamos o status do mapeamento de pyspark.sql.functions.from_json de Não suportado para Transformação.

  • Atualizamos o status de mapeamento dos seguintes elementos Spark de Solução alternativa para Direto:

    • org.apache.spark.sql.functions.countDistinct

    • org.apache.spark.sql.functions.max

    • org.apache.spark.sql.functions.min

    • org.apache.spark.sql.functions.mean

Obsoleto

  • Depreciados os seguintes códigos EWI:

    • SPRKSCL1135

    • SPRKSCL1136

    • SPRKSCL1153

    • SPRKSCL1155

Corrigido

  • Foi corrigido um bug que causava um cálculo incorreto da pontuação da API do Spark.

  • Foi corrigido um erro que evitava a cópia de SQL arquivos vazios ou comentados na pasta de saída.

  • Corrigido um bug no DetailedReport, o LOC das estatísticas do notebook e a contagem de células não são precisas.

Versão 2.1.2 (14 de agosto de 2024)

Versão do aplicativo 2.1.2

As atualizações de recursos incluem:

  • Updated Spark Conversion Core: 4.2.0

Spark Conversion Core Versão 4.2.0

Adicionado

  • Adicionar coluna de tecnologia ao SparkUsagesInventory

  • Foi adicionado um EWI para elementos SQL não definidos.

  • Adicionado inventário de SqlFunctions

  • Coletar informações para inventário de SqlFunctions

Alterado

  • O mecanismo agora processa e imprime arquivos Python parcialmente analisados em vez de deixar o arquivo original sem modificações.

  • As células do notebook Python que apresentarem erros de análise também serão processadas e impressas.

Corrigido

  • Corrigido pandas.core.indexes.datetimes.DatetimeIndex.strftime estava sendo relatado erroneamente.

  • Corrigir a incompatibilidade entre a pontuação de preparação de SQL e usos de SQL por status de suporte.

  • Foi corrigido um bug que fazia com que o SMA informasse pandas.core.series.Series.empty com um status de mapeamento incorreto.

  • Corrigir a incompatibilidade entre o Spark API Usages Ready for Conversion em DetailedReport.docx; é diferente da linha UsagesReadyForConversion em Assessment.json.

Versão 2.1.1 (8 de agosto de 2024)

Versão do aplicativo 2.1.1

As atualizações de recursos incluem:

  • Atualizado Spark Conversion Core: 4.1.0

Spark Conversion Core Versão 4.1.0

Adicionado

  • Foram adicionadas as seguintes informações ao arquivo AssessmentReport.json

    • A pontuação de preparação das bibliotecas de terceiros.

    • O número de chamadas de bibliotecas de terceiros que foram identificadas.

    • O número de chamadas de bibliotecas de terceiros que são compatíveis com o Snowpark.

    • O código de cores associado à pontuação de preparação de terceiros, à pontuação de preparação da API do Spark e à pontuação de preparação de SQL.

  • Transformado SqlSimpleDataType no Spark para criar tabelas.

  • Adicionado o mapeamento de pyspark.sql.functions.get como direto.

  • Adicionado o mapeamento de pyspark.sql.functions.to_varchar como direto.

  • Como parte das alterações após a unificação, a ferramenta agora gera um arquivo de informações de execução no Engine.

  • Adicionado um substituto para pyspark.sql.SparkSession.builder.appName.

Alterado

  • Atualização do status de mapeamento dos seguintes elementos Spark

    • De Não suportado para mapeamento Direto:

      • pyspark.sql.functions.sign

      • pyspark.sql.functions.signum

  • Alterado o relatório Notebook Cells Inventory para indicar o tipo de conteúdo de cada célula na coluna Element

  • Foi adicionada uma coluna SCALA_READINESS_SCORE que informa a pontuação de preparação relacionada apenas a referências à API do Spark em arquivos Scala.

  • Suporte parcial para transformar as propriedades da tabela em ALTER TABLE e ALTER VIEW

  • Atualização do status de conversão do nó SqlSimpleDataType de Pending para Transformation nas tabelas de criação do Spark

  • Atualizada a versão da API do Snowpark Scala suportada pelo SMA de 1.7.0 para 1.12.1:

    • Atualizado o status de mapeamento de:

      • org.apache.spark.sql.SparkSession.getOrCreate de Renomear para Direto

      • org.apache.spark.sql.functions.sum de Solução alternativa para Direto

  • Atualizada a versão da API do Snowpark Python suportada pelo SMA de 1.15.0 para 1.20.0:

    • Atualizado o status de mapeamento de:

      • pyspark.sql.functions.arrays_zip de Não suportado para Direto

  • Atualização do status de mapeamento dos seguintes elementos do Pandas:

    • Mapeamentos diretos:

      • pandas.core.frame.DataFrame.any

      • pandas.core.frame.DataFrame.applymap

  • Atualização do status de mapeamento dos seguintes elementos do Pandas:

    • De Não suportado para mapeamento Direto:

      • pandas.core.frame.DataFrame.groupby

      • pandas.core.frame.DataFrame.index

      • pandas.core.frame.DataFrame.T

      • pandas.core.frame.DataFrame.to_dict

    • De Não suportado para Renomear mapeamento:

      • pandas.core.frame.DataFrame.map

  • Atualização do status de mapeamento dos seguintes elementos do Pandas:

    • Mapeamentos diretos:

      • pandas.core.frame.DataFrame.where

      • pandas.core.groupby.generic.SeriesGroupBy.agg

      • pandas.core.groupby.generic.SeriesGroupBy.aggregate

      • pandas.core.groupby.generic.DataFrameGroupBy.agg

      • pandas.core.groupby.generic.DataFrameGroupBy.aggregate

      • pandas.core.groupby.generic.DataFrameGroupBy.apply

    • Mapeamentos não suportados:

      • pandas.core.frame.DataFrame.to_parquet

      • pandas.core.generic.NDFrame.to_csv

      • pandas.core.generic.NDFrame.to_excel

      • pandas.core.generic.NDFrame.to_sql

  • Atualização do status de mapeamento dos seguintes elementos do Pandas:

    • Mapeamentos diretos:

      • pandas.core.series.Series.empty

      • pandas.core.series.Series.apply

      • pandas.core.reshape.tile.qcut

    • Direct mappings with EWI:

      • pandas.core.series.Series.fillna

      • pandas.core.series.Series.astype

      • pandas.core.reshape.melt.melt

      • pandas.core.reshape.tile.cut

      • pandas.core.reshape.pivot.pivot_table

  • Atualização do status de mapeamento dos seguintes elementos do Pandas:

    • Mapeamentos diretos:

      • pandas.core.series.Series.dt

      • pandas.core.series.Series.groupby

      • pandas.core.series.Series.loc

      • pandas.core.series.Series.shape

      • pandas.core.tools.datetimes.to_datetime

      • pandas.io.excel._base.ExcelFile

    • Mapeamentos não suportados:

      • pandas.core.series.Series.dt.strftime

  • Atualização do status de mapeamento dos seguintes elementos do Pandas:

    • De Não suportado para mapeamento Direto:

      • pandas.io.parquet.read_parquet

      • pandas.io.parsers.readers.read_csv

  • Atualização do status de mapeamento dos seguintes elementos do Pandas:

    • De Não suportado para mapeamento Direto:

      • pandas.io.pickle.read_pickle

      • pandas.io.sql.read_sql

      • pandas.io.sql.read_sql_query

  • Atualizada a descrição como entender a pontuação de preparação de SQL.

  • Atualizado o PyProgramCollector para coletar os pacotes e preencher o inventário de pacotes atual com dados do código-fonte do Python.

  • Atualizado o status de mapeamento de pyspark.sql.SparkSession.builder.appName de Renomear para Transformação.

  • Removidos os seguintes testes de integração do Scala:

    • AssesmentReportTest_AssessmentMode.ValidateReports_AssessmentMode

    • AssessmentReportTest_PythonAndScala_Files.ValidateReports_PythonAndScala

    • AssessmentReportTestWithoutSparkUsages.ValidateReports_WithoutSparkUsages

  • Atualização do status de mapeamento de pandas.core.generic.NDFrame.shape de Não suportado para Direto.

  • Atualizado o status de mapeamento de pandas.core.series de Não suportado para Direto.

Obsoleto

  • O código EWI SPRKSCL1160 foi descontinuado, pois org.apache.spark.sql.functions.sum agora é um mapeamento direto.

Corrigido

  • Foi corrigido um erro que impedia o suporte a Custom Magics sem argumentos nas células do Jupyter Notebook.

  • Foi corrigida a geração incorreta de EWIs no relatório issues.csv quando ocorriam erros de análise.

  • Foi corrigido um erro que fazia com que o SMA não processasse o notebook exportado do Databricks como Databricks Notebooks.

  • Foi corrigido um erro de estouro de pilha ao processar nomes de tipos conflitantes de instruções criadas dentro de objetos de pacotes.

  • Corrigido o processamento de nomes de tipos lambda complexos envolvendo genéricos, por exemplo, def func[X,Y](f: (Map[Option[X], Y] => Map[Y, X]))...

  • Foi corrigido um bug que fazia com que o SMA adicionasse um código PySpark EWI em vez de um código Pandas EWI aos elementos Pandas que ainda não eram reconhecidos.

  • Corrigido um erro de digitação no modelo de relatório detalhado: renomeando uma coluna de «Percentage of all Python Files» para «Percentage of all files».

  • Foi corrigido um bug em que pandas.core.series.Series.shape era relatado erroneamente.