Notas de lançamento de Node.js Driver para 2023

Este artigo contém as notas de versão do Node.js Driver, 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 Node.js Driver.

Versão 1.9.2 (07 de dezembro de 2023)

Novos recursos e atualizações

  • Observabilidade aprimorada para casos de uso genéricos e de proxy.

  • Atualizadas as seguintes bibliotecas:

    • glob para a versão 9.0.0.

    • https-proxy-agent para a versão 7.0.2.

Correções de bugs

  • Nenhum.

Versão 1.9.1 (14 de novembro de 2023)

Novos recursos e atualizações

  • Adicionado suporte para Node.js versão 20.

  • As conexões agora são consideradas válidas se estiverem em estado de renovação ou conexão.

  • Adicionado suporte para execução de consultas assíncronas.

  • Adicionados os parâmetros de conexão retryTimeout, sfRetryStartingSleepTime e sfRetryMaxLoginRetries para gerenciar a frequência de novas tentativas para solicitações de conexão malsucedidas. O padrão para retryTimeout é 300.

  • Adicionada validação de parâmetro account.

  • Atualizadas as seguintes bibliotecas:
    • Versão do axios atualizada para 1.6.0

    • Versão do mocha atualizada para 10.2.0

    • Versão do bignumber.js atualizada para 9.1.2

    • Adicionado asn1.js a peerDependency e versão @techteamer/ocsp atualizada para 1.0.1

Correções de bugs

  • Corrigido um problema em que sqlText era substituído quando especificado por um usuário.

  • Corrigido um problema com o armazenamento em cache de todos os tipos de agentes HTTPS.

  • Corrigido um problema relacionado ao uso de um httpclient axios para autenticação Okta.

  • Corrigido um problema com a autenticação SSO do navegador externo com proxy.

  • Corrigido o tratamento de respostas para autenticação Okta.

Versão 1.9.0 (28 de setembro de 2023)

Mudança do BCR(versão da mudança de comportamento)

  • Removido o suporte para a versão da biblioteca Node.js 12 no driver Node.js. O Node.js não oferece mais suporte oficial à versão 12 de sua biblioteca. Snowflake incentiva todos que usam o ambiente Node.js versão 12 a atualizar para a versão Node.js 18.

Novos recursos e atualizações

  • Adicionado suporte para processamento transacional e analítico híbrido:

    • Adicionado contexto de nova tentativa em novas tentativas para solicitações de consulta.

    • Adicionado cache de contexto de consulta.

  • Atualizadas as seguintes bibliotecas:

    • Substituída a biblioteca urlib2 por axios.

    • aws-sdk atualizado para a versão v3.

    • uuid atualizado para a versão 8.

Correções de bugs

  • O analisador JSON padrão agora retorna o resultado de um novo objeto Function.

Versão 1.8.0 (29 de agosto de 2023)

Novos recursos e atualizações

  • Adicionado suporte para Node.js versão 18.

  • Adicionada uma nova opção de configuração rowMode para especificar como retornar conjuntos de resultados que contêm nomes de colunas duplicados, inclusive como:

    • array

    • object

    • object_with_renamed_duplicate_columns

    Para obter mais informações, consulte Como retornar conjuntos de resultados que contêm nomes de colunas duplicados.

  • Atualizada uma versão secundária de urllib e excluída a exclusão de vm2.

Correções de bugs

  • Corrigido um problema em que a biblioteca moment.js preenchia incorretamente a posição de milissegundos para horários nas mensagens de log.

  • Corrigido um problema ao obter arquivos de estágios em ambientes Windows e Azure.

  • Corrigido um problema em que a autenticação do navegador externo exigia incorretamente um nome de usuário e senha.

Versão 1.7.0 (28 de julho de 2023)

Novos recursos e atualizações

  • Adicionada a função connection.isValidAsync() para determinar se uma conexão está ativa e utilizável.

Correções de bugs

  • Corrigido um problema em que alguns arquivos de estágio não eram baixados corretamente durante um download de vários arquivos.

  • Modificada a mensagem de erro fetchAsString para incluir «Buffer» como um tipo aceito.

  • Corrigido um problema de desempenho com vinculações de estágio.

  • Corrigido o problema em que connection.execute() não retornava uma instrução no modo de vinculação.

  • Corrigido o connection.heartbeatAsync() para usar o mesmo ponto de extremidade que a função connection.heartbeat() está usando em vez de consultar com SELECT 1.

Versão 1.6.23 (14 de junho de 2023)

Novos recursos e atualizações

  • Adicionado suporte para inicializar o analisador JSON e XmlParser com uma configuração personalizada.

Correções de bugs

  • Excluída uma dependência transitiva vm2 vulnerável.

  • Adicionado o parâmetro de conexão browserActionTimeout para corrigir um problema de autenticação em um navegador externo.

  • Corrigido um problema com chaves privadas que continham novas linhas no final da chave.

  • Corrigimos um problema relacionado à importação de uma biblioteca uuid.

  • Removida uma dependência qs não utilizada.

  • Corrigido um problema de nova tentativa em um LargeResultSet.

  • Substituído o pacote best-eval por vm.

  • Remoção do requisito de nome de usuário para conexões OAuth.

Versão 1.6.22 (24 de maio de 2023)

Novos recursos e atualizações

  • Nenhum.

Correções de bugs

  • Adicionadas as dependências bn e https-proxy-agent ausentes.

  • Corrigido um problema em que os códigos de erro econnreset e etimedout não tentavam novamente a conexão.

  • Corrigida a mensagem de erro retornada ao chamar connection.execute() com um requestId com falha.

  • Corrigida a mensagem de erro retornada por falha na chamada de connect() ao usar OKTA ou um autenticador de navegador externo.

  • Corrigido o erro de variável indefinida maskedtxt.

  • Corrigido um problema que ocorria em múltiplas conexões ao usar um autenticador OAuth.

  • Corrigido um problema em que chamar connection.execute() com espaço em branco extra em sqltext causava erros.

  • Corrigido um problema em que a nova tentativa de conexão falhava devido ao uso do valor errado no temporizador.

Versão 1.6.21 (18 de abril de 2023)

Novos recursos e atualizações

  • Adicionado suporte para token de acesso GCS para PUT/GET.

  • Adicionado suporte para logins do Okta Identity Engine (OIE).

  • Segurança aprimorada ao analisar cadeias de caracteres JSON com a função eval.

Correções de bugs

  • Corrigido um problema de análise com dados XML carregados de colunas VARIANT.

  • Corrigido um problema em que o cache OCSP não era atualizado quando expirava.

  • Corrigido um problema em que o uso de um caminho completo da tabela na vinculação de matriz poderia travar o aplicativo.

  • Para resolver um problema de aviso de suspensão de uso relacionado à suspensão de uso Buffer(), reinstale o snowflake-sdk. A reinstalação atualiza a biblioteca formstream para a versão mais recente, como formstream 1.2.0, e resolve o problema.

Versão 1.6.20 (23 de março de 2023)

Novos recursos e atualizações

  • Nenhum.

Correções de bugs

  • O driver Node.js agora oferece suporte a novas tentativas em um código de erro HTTP 429.

  • Corrigido um problema em que o driver Node.js não enviava solicitações de OCSP por meio de proxies.

  • Corrigido um problema em que ocorriam erros quando a quantidade de dados enviados usando a vinculação de matriz excedia o limite de vinculação de matriz. O driver agora produz saída para ingestão em vez de falhar na instrução SQL.

  • Correção de um problema que gerava incorretamente mensagens de erro «Variável de vinculação? Não definida» após a atualização da versão 1.6.13 para uma versão superior.

Versão 1.6.19 (27 de fevereiro de 2023)

Novos recursos e atualizações

  • Nenhum.

Correções de bugs

  • Corrigido um problema em que uma consulta de inserção falhava intermitentemente ao tentar inserir grandes quantidades de dados com vinculação de matriz.

Versão 1.6.18 (31 de janeiro de 2023)

Novos recursos e atualizações

  • Adicionada capacidade de executar um lote de instruções SQL (suporte a várias instruções).

  • Biblioteca jsonwebtoken atualizada para a versão 9.0.0.

Correções de bugs

  • Desempenho aprimorado enviando mensagens de pulsação em vez de chamadas selecionadas para verificar conexões de ponto de extremidade.

  • Adicionados detalhes de erro às mensagens de log para falhas em aberto do OCSP e alterado o nível de log de informação para aviso.

  • Adicionada uma verificação para verificar se o cache OCSP foi inicializado antes de definir a entrada do cache.