Notas de lançamento da Biblioteca Snowpark para Python para 2025

Este artigo contém as notas de versão do Snowpark Library for Python, incluindo o seguinte, quando aplicável:

  • Mudanças de comportamento

  • Novos recursos

  • Correções de bugs voltados para o cliente

Snowflake usa controle de versão semântico para atualizações de Snowpark Library for Python.

Consulte Guia do desenvolvedor de Snowpark para Python para ver a documentação.

aviso:

Como o Python 3.8 atingiu o Fim da vida útil, avisos de depreciação serão acionados ao usar o snowpark-python com o Python 3.8. Para obter mais detalhes, consulte Suporte de tempo de execução Snowflake Python. O Snowpark Python 1.24.0 será a última versão de cliente e servidor a oferecer suporte ao Python 3.8, de acordo com a política do Anaconda. Atualize seus objetos Python 3.8 existentes para Python 3.9 ou superior.

Versão 1.27.0 (05/02/2025)

Novos recursos

Adição de suporte para as seguintes funções em functions.py:

  • array_reverse

  • divnull

  • map_cat

  • map_contains_key

  • map_keys

  • nullifzero

  • snowflake_cortex_sentiment

  • acosh

  • asinh

  • atanh

  • bit_length

  • bitmap_bit_position

  • bitmap_bucket_number

  • bitmap_construct_agg

  • cbrt

  • equal_null

  • from_json

  • ifnull

  • localtimestamp

  • max_by

  • min_by

  • nth_value

  • nvl

  • octet_length

  • position

  • regr_avgx

  • regr_avgy

  • regr_count

  • regr_intercept

  • regr_r2

  • regr_slope

  • regr_sxx

  • regr_sxy

  • regr_syy

  • try_to_binary

  • base64

  • base64_decode_string

  • base64_encode

  • editdistance

  • hex

  • hex_encode

  • instr

  • log1p

  • log2

  • log10

  • percentile_approx

  • unbase64

  • Adição de suporte para a especificação de uma cadeia de caracteres de esquema (incluindo a sintaxe de estrutura implícita) ao chamar DataFrame.create_dataframe.

  • Adição de suporte para DataFrameWriter.insert_into/insertInto. Esse método também é compatível com o modo de teste local.

  • Adição de suporte para DataFrame.create_temp_view para criar uma visualização temporária. Isso falhará se a visualização já existir.

  • Adição de suporte para várias colunas nas funções map_cat e map_concat.

  • Adição de uma opção keep_column_order para manter a ordem original das colunas em DataFrame.with_column e DataFrame.with_columns.

  • Adição de opções às conversões por cast de coluna que permitem renomear ou adicionar campos nas colunas de StructType.

  • Adição de suporte para contains_null parameter a ArrayType.

  • Adição de suporte para a criação de uma visualização temporária via DataFrame.create_or_replace_temp_view a partir de um DataFrame criado pela leitura de um arquivo de um estágio.

  • Adição de suporte para o parâmetro value_contains_null a MapType.

  • Adicionado interativo à telemetria que indica se o ambiente atual é interativo.

  • Permitir que session.file.get em um Native App leia caminhos de arquivos que começam com/a partir da versão atual

  • Adição de suporte para várias funções de agregação após DataFrame.pivot.

Recursos experimentais

  • Adicionada a classe Catálogo para gerenciar objetos Snowflake. Ela pode ser acessada via Session.catalog.

    • snowflake.core é uma dependência necessária para esse recurso.

  • Permitir o esquema de entrada do usuário ao ler o arquivo JSON no estágio.

  • Adição de suporte para a especificação de uma cadeia de caracteres de esquema (incluindo a sintaxe de estrutura implícita) ao chamar DataFrame.create_dataframe.

Melhorias

  • Atualização de README.md ` para incluir instruções sobre como verificar as assinaturas de pacotes usando o cosign.

Correções de bugs

  • Correção de um bug no modo de teste local que fazia com que uma coluna contivesse Nenhum quando deveria conter 0.

  • Correção de um bug em StructField.from_json ` que impedia que TimestampTypes ` com tzinfo ` fosse analisado corretamente.

  • Correção de um bug em function date_format que causava um erro quando a coluna de entrada era do tipo data ou carimbo de data/hora.

  • Correção de um bug no DataFrame que permitia a inserção de um valor nulo em uma coluna não nula.

  • Correção de um bug em Substituir e sinalizar que gerava um erro de asserção de dica de tipo ao passar objetos de expressão de coluna.

  • Correção de um bug em pandas_udf ` e pandas_udtf ` em que o parâmetro de sessão era erroneamente ignorado.

  • Correção de um bug que gerava erro de conversão de tipo incorreto para a função do sistema chamada por meio de session.call.

Atualizações da Snowpark pandas API

Novos recursos

  • Adicionado suporte para Series.str.ljust e Series.str.rjust.

  • Adição de suporte para Series.str.center.

  • Adição de suporte para Series.str.pad.

  • Adição de suporte para a aplicação da função Snowpark Python snowflake_cortex_sentiment.

  • Adição de suporte para DataFrame.map.

  • Adição de suporte para DataFrame. from_dict e DataFrame.from_records.

  • Adição de suporte para nomes de campo com letras maiúsculas e minúsculas em colunas do tipo estruturadas.

  • Adição de suporte para SeriesGroupBy.unique

  • Adição de suporte para Series.dt.strftime com as seguintes diretivas:

    • %d: dia do mês como um número decimal com zeros.

    • %m: mês como um número decimal com zeros.

    • %Y: ano com século como um número decimal.

    • %H: hora (relógio de 24 horas) como um número decimal com zeros.

    • %M: minuto como um número decimal com zeros.

    • %S: segundo como um número decimal com zeros.

    • %f: microssegundo como um número decimal, com preenchimento de zeros para 6 dígitos.

    • %j: dia do ano como um número decimal com zeros.

    • %X: representação de hora apropriada da localidade.

    • %%: Um caractere literal “%”.

  • Adição de suporte para Series.between.

  • Adição de suporte para include_groups=False em DataFrameGroupBy.apply.

  • Adição de suporte para expand=True em Series.str.split.

  • Adicionado suporte para DataFrame.pop e Series.pop.

  • Adição de suporte para first e last em DataFrameGroupBy.agg e SeriesGroupBy.agg.

  • Adição de suporte para Index.drop_duplicates.

  • Adição de suporte para agregações "count", "median", np.median, "skew", "std", np.std "var" e np.var em pd.pivot_table(), DataFrame.pivot_table() e pd.crosstab().

Melhorias

  • Melhoria de desempenho dos métodos DataFrame.map, Series.apply e Series.map, mapeando funções numpy para funções do Snowpark, se possível.

  • Adição de documentação para DataFrame.map.

  • Melhoria do desempenho de DataFrame.apply, mapeando as funções numpy para as funções do Snowpark, se possível.

  • Adição de documentação sobre a extensão da interoperabilidade do Snowpark pandas com o scikit-learn.

  • Inferência do tipo de retorno das funções em Series.map, Series.apply e DataFrame.map se a dica de tipo não for fornecida.

  • Adição de call_count à telemetria que conta as chamadas de método, incluindo as chamadas de protocolo de intercâmbio.