Notes de version de Go Snowflake Driver pour 2026

Cet article contient les notes de version Go Snowflake Driver, y compris les éléments suivants, le cas échéant :

  • Changements de comportement

  • Nouvelles fonctionnalités

  • Corrections de bogues pour les clients

Snowflake utilise la version sémantique pour les mises à jour Go Snowflake Driver.

Voir Pilote Go Snowflake pour la documentation.

Version 2.0.0 (03 mars 2026)

Changements BCR (Version de changement de comportement)

  • Suppression de RaisePutGetError de SnowflakeFileTransferOptions pour garantir que les erreurs sont détectées pour les opérations PUT/GET.

  • Suppression de GetFileToStream de SnowflakeFileTransferOptions. Utilisez WithFileGetStream pour activer automatiquement le flux de fichiers pour les opérations GET.

  • Suppression de WithOriginalTimestamp. Utilisez WithArrowBatchesTimestampOption (UseOriginalTimestamp) à la place.

  • Suppression du champ ClientIP de la structure Config. Ce champ n’a jamais été utilisé et n’est nécessaire pour aucune fonctionnalité.

  • Suppression du champ InsecureMode de la structure Config. Utilisez DisableOCSPChecks à la place.

  • Suppression du champ DisableTelemetry de la structure Config. Utilisez le paramètre de session CLIENT_TELEMETRY_ENABLED à la place.

  • Suppression du téléchargeur de morceaux de flux. À la place, utilisez le téléchargeur par défaut.

  • Suppression de SnowflakeTransport. Utilisez Config.Transporter, ou enregistrez simplement votre propre configuration TLS avec RegisterTLSConfig si vous avez simplement besoin d’un ensemble de certificats racine personnalisé.

  • Renommage de WithFileStream en WithFilePutStream par souci de cohérence.

  • Renommage du champ KeepSessionAlive dans la structure Config en ServerSessionKeepAlive par souci de cohérence avec les autres pilotes.

  • La fonction Array renvoie désormais une erreur pour les types non pris en charge.

  • WithMultiStatement ne renvoie plus d’erreur.

  • Combinaison de WithMapValuesNullable et WithArrayValuesNullable dans une seule option WithEmbeddedValuesNullable.

  • Masquage du téléchargeur de morceaux de flux. Il sera complètement supprimé dans une prochaine version.

  • Le nombre maximum de goroutines de téléchargement de morceaux est maintenant configuré avec le paramètre de session CLIENT_PREFETCH_THREADS.

  • Correction d’une faute de frappe dans la variable d’environnement GOSNOWFLAKE_SKIP_REGISTRATION.

  • Non exportation de MfaToken et IdToken.

  • Modification des lots Arrow :

    • Les lots Arrow ont été extraits vers un paquet séparé, ce qui devrait réduire considérablement la taille de la compilation pour ceux qui ne nécessitent pas de lots Arrow (~34MB -> ~18MB).

    • Suppression de GetArrowBatches de SnowflakeRows et SnowflakeResult. Utilisez arrowbatches.GetArrowBatches(rows.(SnowflakeRows)) à la place.

    • Migration des fonctions suivantes :

      • sf.WithArrowBatchesTimestampOption en arrowbatches.WithTimestampOption

      • sf.WithArrowBatchesUtf8Validation en arrowbatches.WithUtf8Validation

      • sf.ArrowSnowflakeTimestampToTime en arrowbatches.ArrowSnowflakeTimestampToTime

  • Modifications de la journalisation :

    • Suppression du journaliseur Logrus et migration vers slog.

    • Simplification de l’interface SFLogger.

    • Ajout de l’interface SFSlogLogger pour définir un gestionnaire de slog personnalisé.

Nouvelles fonctions et mises à jour

  • Ajout de la prise en charge de Go 1.26 et suppression de la prise en charge de Go 1.23.

  • Ajout de la prise en charge du mode FIPS uniquement.

Corrections de bogues

  • Ajout d’un bloc de récupération de panique pour les opérations de chargement et de téléchargement de fichiers de zone de préparation.

  • Correction d’une requête de métadonnées WIF d’un conteneur Azure qui se manifestait sous la forme d’une erreur HTTP 400.

  • Correction d’un contournement de la validation du port d’authentification SAML dans isPrefixEqual, où le port de la deuxième URL n’était jamais vérifié.

  • Correction d’une condition de concurrence dans le nettoyage du cache OCSP.

  • La requête context.Context est désormais propagée aux opérations de stockage Cloud pour les requêtes PUT et GET, ce qui permet une meilleure gestion des annulations.

  • Correction des crashs de minicores (SIGFPE) sur les binaires Linux entièrement liés statiquement, grâce à la détection de la liaison statique par inspection ELF PT_INTERP et au contournement en douceur de dlopen.

Version 1.19.0 (03 février 2026)

Nouvelles fonctions et mises à jour

  • Exposition de tokenFilePath dans la structure Config, en plus de l’option DSN existante.

  • tokenFilePath est maintenant lu pour chaque nouvelle connexion, et pas seulement une fois au démarrage du pilote.

  • Ajout de la prise en charge de l’emprunt d’identité lors de l’utilisation de la fédération d’identité de charge de travail.

  • Ajout de la possibilité de désactiver le chargement de minicore lors de la compilation à l’aide du paramètre -tags minicore_disabled.

Corrections de bogues

  • Correction d’un problème lié à l’obtention de fichiers à partir d’une zone de préparation non chiffrée.

  • Correction de la collecte de noms de fichiers minicore dans l’environnement client.

  • Correction de l’échappement de chemin pour les URLs GCS qui se manifestait dans 403 réponses de GCS lorsqu’un fichier ou un répertoire contenait des espaces.

  • Correction des fuites des descripteurs de fichiers lors du chargement de fichiers vers des zones de préparation (surtout dans GCS).