Notas de lançamento do Go Snowflake Driver para 2026

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

Consulte Driver Go Snowflake para ver a documentação.

Versão 2.0.1 (8 de abril de 2026)

Correções de bugs

  • Redução da configuração padrão CrlDownloadMaxSize de 200 MB para 20 MB para impedir erros potenciais de falta de memória.

  • Corrigido um problema em que os valores dos parâmetros podiam mudar entre conexões no mesmo pool de conexões.

  • Correção dos carregamentos de arquivos de várias partes do Azure para preencher corretamente a propriedade MD5 de conteúdo do blob.

  • Correção dos erros 403 nas consultas PUT do Google Cloud Storage em áreas de preparação com controle de versão.

  • Correção do cache de contexto de consulta que não era atualizado para consultas com falha, o que poderia resultar em dados de sessão obsoletos.

  • Desempenho aprimorado do tratamento de conexão por uma otimização da sincronização de parâmetros.

Mudanças internas

  • Configuração movida para um pacote interno dedicado.

  • Idiomas da sintaxe Go modernizados em toda a base de código.

  • Adição da família, da versão e do marcador de vinculação dinâmica libc à telemetria do ambiente de cliente.

  • Dependências atualizadas para resolver vulnerabilidades de segurança:

    • golang.org/x/crypto de v0.41.0 para v0.46.0

    • golang.org/x/net de v0.43.0 para v0.48.0

    • golang.org/x/oauth2 de v0.30.0 para v0.34.0

    • golang.org/x/sys de v0.35.0 para v0.40.0

    • golang.org/x/mod de v0.27.0 para v0.30.0

    • golang.org/x/sync de v0.16.0 para v0.19.0

    • golang.org/x/term de v0.34.0 para v0.38.0

    • golang.org/x/text de v0.28.0 para v0.32.0

    • golang.org/x/tools de v0.36.0 para v0.39.0

    • google.golang.org/grpc de v1.73.0 para v1.79.3

    • :codenowrap:` google.golang.org/protobuf` de v1.36.6 para v1.36.10

    • Pacotes OpenTelemetry de v1.37.0 para v1.40.0

  • Remoção da indireção do ponteiro do cache de contexto de consulta snowflakeConn.

Versão 1.9.1 (8 de abril de 2026)

Novos recursos e atualizações

  • Suporte adicionado para Go 1.26 e suporte descartado para Go 1.23.

Correções de bugs

  • Corrigidas falhas no minicore (SIGFPE) em binários Linux totalmente vinculados estaticamente por meio da detecção da vinculação estática por meio de uma inspeção ELF PT_INTERP e ignorando dlopen totalmente.

Mudanças internas

  • Adição da família, da versão e do marcador de vinculação dinâmica libc à telemetria do ambiente de cliente.

Versão 2.0.0 (3 de março de 2026)

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

  • Removido RaisePutGetError de SnowflakeFileTransferOptions para garantir que os erros sejam exibidos para operações PUT/GET.

  • Removido GetFileToStream de SnowflakeFileTransferOptions. Use WithFileGetStream para habilitar automaticamente a transmissão de arquivos para operações GET.

  • Removido WithOriginalTimestamp. Use WithArrowBatchesTimestampOption(UseOriginalTimestamp) em vez disso.

  • Removido o campo ClientIP da estrutura Config. Esse campo nunca foi usado e não é necessário para nenhuma funcionalidade.

  • Removido o campo InsecureMode da estrutura Config. Use DisableOCSPChecks em vez disso.

  • Removido o campo DisableTelemetry da estrutura Config. Em vez disso, use o parâmetro de sessão CLIENT_TELEMETRY_ENABLED.

  • Removido o downloader de partes do fluxo. Use o downloader padrão em vez disso.

  • Removido SnowflakeTransport. Use Config.Transporter, ou apenas registre sua própria configuração do TLS com RegisterTLSConfig se precisar apenas de um conjunto personalizado de certificados raiz.

  • WithFileStream renomeado para WithFilePutStream para manter a consistência.

  • O campo KeepSessionAlive foi renomeado na estrutura Config para ServerSessionKeepAlive para manter a consistência com os outros drivers.

  • Agora a função Array retorna um erro para tipos não compatíveis.

  • WithMultiStatement não retorna mais um erro.

  • WithMapValuesNullable e WithArrayValuesNullable combinados na opção única WithEmbeddedValuesNullable.

  • Oculte o downloader de partes do streaming. Ele será removido completamente em um lançamento futuro.

  • O número máximo de goroutines de download de partes agora está configurado com o parâmetro de sessão CLIENT_PREFETCH_THREADS.

  • Corrigido um erro de digitação na variável de ambiente GOSNOWFLAKE_SKIP_REGISTRATION.

  • MfaToken e IdToken não exportados.

  • Mudanças nos lotes arrow:

    • Os lotes arrow foram extraídos para um pacote separado, o que deve reduzir significativamente o tamanho da compilação para aqueles que não precisam de lotes arrow (aprox. 34MB -> aprox. 18MB).

    • GetArrowBatches removido de SnowflakeRows e SnowflakeResult. Use arrowbatches.GetArrowBatches(rows.(SnowflakeRows)) em vez disso.

    • As seguintes funções foram migradas:

      • sf.WithArrowBatchesTimestampOption para arrowbatches.WithTimestampOption

      • sf.WithArrowBatchesUtf8Validation para arrowbatches.WithUtf8Validation

      • sf.ArrowSnowflakeTimestampToTime para arrowbatches.ArrowSnowflakeTimestampToTime

  • Mudanças no registro em log:

    • O agente de log Logrus foi removido e migrado para slog.

    • Simplificada a interface de SFLogger.

    • Adicionada a interface de SFSlogLogger para configurar um manipulador de slog personalizado.

Novos recursos e atualizações

  • Adicionado o suporte para Go 1.26, e descartado o suporte para Go 1.23.

  • Adição de suporte para o modo somente FIPS.

Correções de bugs

  • Adicionado um bloco de recuperação de pânico para operações de carregamento e download de arquivos de estágio.

  • Corrigida uma solicitação de metadados WIF de um contêiner Azure que se manifestou como um erro HTTP 400.

  • Corrigido um contorno de validação de porta de autenticação do SAML em isPrefixEqual em que a porta do segundo URL nunca era verificada.

  • Corrigida uma condição de corrida no limpador de cache do OCSP.

  • Agora a consulta context.Context é propagada para operações de armazenamento em nuvem para consultas PUT e GET, permitindo melhor tratamento do cancelamento.

  • Corrigidas falhas no minicore (SIGFPE) em binários Linux totalmente vinculados estaticamente por meio da detecção da vinculação estática por meio de uma inspeção ELF PT_INTERP e ignorando dlopen totalmente.

Versão 1.19.0 (3 de fevereiro de 2026)

Novos recursos e atualizações

  • Exposto tokenFilePath na estrutura Config, além da opção DSN existente.

  • tokenFilePath agora é lido para cada nova conexão, não apenas uma vez na inicialização do driver.

  • Inclusão de suporte para representação de identidade ao usar a federação de identidade de carga de trabalho.

  • Adição da capacidade de desabilitar o carregamento do minicore em tempo de compilação usando o parâmetro -tags minicore_disabled.

Correções de bugs

  • Correção de um problema com a obtenção de arquivos de uma área de preparação não criptografada.

  • Correção da coleta de nomes de arquivos do minicore no ambiente do cliente.

  • Correção do escape de caminho para URLs do GCS que se manifestava em respostas 403 do GCS quando um arquivo ou diretório continha espaços.

  • Correção do vazamento de descritores de arquivo ao enviar arquivos para áreas de preparação (especialmente no GCS).