Notes de version de Snowflake Connector for Python pour 2024

Cet article contient les notes de version Snowflake Connector for Python, 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 Snowflake Connector for Python.

Voir Connecteur Snowflake pour Python pour la documentation.

Version 3.12.3 (24 octobre 2024)

Correctifs de sécurité

  • Résolution des problèmes soulevés par CVE-2024-49750. Pour plus d’informations, voir l’avis GHSA-5vvg-pvhp-hv2m.

Nouvelles fonctions et mises à jour

  • Amélioration du message d’erreur pour les problèmes liés à SSL afin de fournir des indications de résolution plus claires.

  • Amélioration du message d’erreur pour les annulations d’exécutions SQL causées par un délai d’expiration.

Corrections de bogues

  • Aucun.

Version 3.12.2 (11 septembre 2024)

Nouvelles fonctions et mises à jour

  • Aucun.

Corrections de bogues

  • Amélioration de la gestion des erreurs pour les requêtes asynchrones, fournissant des messages d’erreur plus détaillés et informatifs lorsqu’une requête asynchrone échoue.

  • Amélioration de l’inférence des domaines de premier niveau pour les comptes spécifiant une région en Chine, désormais par défaut :codenowrap :snowflakecomputing.cn.

  • Amélioration de la mise en œuvre de snowflake.connector.util_text.random_string pour réduire le risque de collision.

  • Mise à jour du niveau de journalisation pour les messages d’avertissement de type fail-open d’OCSP, passant de ERROR à WARNING.

Version 3.12.1 (20 août 2024)

Nouvelles fonctions et mises à jour

  • Aucun.

Corrections de bogues

  • Correction d’un bogue qui enregistrait le jeton de session lors du renouvellement d’une session.

  • Correction d’un bogue où la désactivation de la télémétrie client ne fonctionnait pas.

  • Correction d’un bogue où le passage de login_timeout en tant que chaîne provoquait une erreur TypeError lors de l’étape de réessai de connexion.

  • Mise à jour du connecteur pour utiliser pathlib au lieu de os pour résoudre l’emplacement du fichier de configuration par défaut.

  • Suppression de l’épinglage de la version supérieure pour cryptogaphy.

  • Suppression des références au script snowflake-export-certs car son module de sauvegarde a été supprimé dans une version précédente.

  • Amélioration du mécanisme de nouvelle tentative pour gérer les échecs réseau transitoires lors de l’interrogation des résultats de requête lorsqu’aucune réponse du serveur n’est reçue.

Version 3.12.0 (26 juillet 2024)

Nouvelles fonctions et mises à jour

  • Définissez le délai d’expiration de connexion par défaut sur 10 secondes et le temps de lecture du socket sur 10 minutes pour les appels HTTP dans les transferts de fichiers.

  • Ajout de la possibilité de se connecter à plusieurs domaines.

  • Performances to_pandas() optimisées en utilisant une logique de téléchargement entièrement parallèle.

  • Mise à jour de la dépendance keyring, passant de g>=23.1.0,<25.0.0 à g>=23.1.0,<26.0.0.

Corrections de bogues

  • Correction d’un bogue où la spécification de client_session_keep_alive_heartbeat_frequency dans snowflake-sqlalchemy pouvait rendre le connecteur insensible.

  • Correction d’une indication de type incorrecte pour le paramètre de connexion private_key.

Version 3.11.0 (18 juin 2024)

Nouvelles fonctions et mises à jour

  • Ajout de la prise en charge du paramètre de connexion token_file_path pour lire un jeton OAuth d’un fichier lors de la connexion à Snowflake.

  • Ajout de la prise en charge du paramètre de connexion debug_arrow_chunk pour permettre le débogage des données Arrow brutes en cas d’échec d’analyse des données Arrow.

  • Ajout de la prise en charge du paramètre de connexion disable_saml_url_check pour désactiver les vérifications des URL SAMLdans l’authentification OKTA.

Corrections de bogues

  • Correction d’un bogue où les certificats OCSP signés à l’aide de l’algorithme SHA384 ne pouvaient pas être vérifiés.

  • Correction d’un bogue où le code de statut s’affichait comme téléchargé lorsqu’un PUT la commande a échoué avec une erreur 400.

  • Correction d’un bogue où un PermissionError était déclenché lorsque l’utilisateur actuel n’avait pas l’autorisation appropriée sur le répertoire parent du chemin du fichier de configuration.

  • Correction d’un bogue où l’URL GET OCSP n’est pas codée correctement lorsqu’elle contient une barre oblique.

  • Correction d’un bogue où l’URL SSO n’acceptait pas : dans un paramètre de requête, comme dans https://sso.abc.com/idp/startSSO.ping?PartnerSpId=https://xyz.snowflakecomputing.com/.

Version 3.10.1 (21 mai 2024)

Nouvelles fonctions et mises à jour

  • Aucun.

Corrections de bogues

  • Suppression d’un message d’erreur erroné qui pouvait survenir lors de la conversion des données Arrow.

Version 3.10.0 (29 avril 2024)

Nouvelles fonctions et mises à jour

  • La prise en charge des types structurés a été ajoutée à fetch_pandas_all.

Corrections de bogues

  • Correction d’un problème lié à des points de terminaison en Chine S3 mal formés.

Version 3.9.1 (22 avril 2024)

Nouvelles fonctions et mises à jour

  • Correction d’une erreur qui provoquait une erreur HTTP 400 lors de la connexion à un point de terminaison en Chine.

Corrections de bogues

  • Aucun.

Version 3.9.0 (18 avril 2024)

Nouvelles fonctions et mises à jour

  • Ajout de la prise en charge des paramètres de journalisation dans un fichier de configuration de journalisation.

  • Amélioration de la logique d’accélération S3 lors de la connexion à un point de terminaison en Chine.

Corrections de bogues

  • Aucun.

Version 3.8.1 (09 avril 2024)

Nouvelles fonctions et mises à jour

  • Amélioration de l’authentification externalbrowser dans les environnements conteneurisés :

    • Indique au navigateur de ne pas récupérer /favicon sur une page de succès.

    • Utilise une stratégie de relance simple pour un appel socket.recv vide.

    • Ajoute un indicateur SNOWFLAKE_AUTH_SOCKET_REUSE_PORT (SNOWFLAKE_AUTH_SOCKET_REUSE_PORT=true) pour définir l’indicateur SO_REUSEPORT du socket sous-jacent (comme décrit dans la page socket man).

      • L’activation de cet indicateur peut être utile lorsque le port aléatoire utilisé dans l’url de rappel localhost est suivi avant que le moteur de conteneur ne termine la redirection de port vers l’hôte.

      • Vous pouvez ensuite mapper statiquement un port entre votre hôte et votre conteneur et permettre à ce port d’être réutilisé en succession rapide à l’aide d’une commande similaire à la suivante :

        SF_AUTH_SOCKET_PORT=3037 SNOWFLAKE_AUTH_SOCKET_REUSE_PORT=true poetry run python somescript.py
        
        Copy
    • Ajoute un indicateur SNOWFLAKE_AUTH_SOCKET_MSG_DONTWAIT (SNOWFLAKE_AUTH_SOCKET_MSG_DONTWAIT=true) pour effectuer un appel socket.recv non bloquant et réessayer en cas d’erreur.

  • Ajout de la prise en charge de l’analyse des informations de type structurées dans les requêtes de schéma.

  • Passage de platformdirs de >=2.6.0,<4.0.0 à >=2.6.0,<5.0.0.

  • Mise à jour des diagnostics pour utiliser system$allowlist au lieu de system$whitelist.

  • Amélioration de la logique de nettoyage afin que les connexions s’appuient désormais sur un arrêt de l’interpréteur au lieu de la méthode __del__.

  • Mise à jour du niveau de journalisation de INFO à DEBUG lors de la journalisation de la requête exécutée à l’aide de SnowflakeCursor.execute.

Corrections de bogues

  • Correction d’un bogue qui faisait que le mot de passe tronqué dans le journal n’était pas masqué.

Version 3.7.1 (22 février 2024)

Nouvelles fonctions et mises à jour

  • Les dépendances suivantes ont été supprimées :

    • pandas à partir de la version >=1.0.0,<2.2.0 à >=1.0.0,<3.0.0

    • cryptography à partir de la version <42.0.0,>=3.1.0 à >=3.1.0,<43.0.0

    • pyOpenSSL à partir de la version >=16.2.0,<24.0.0 à >=16.2.0,<25.0.0

  • Augmentation de la limite inférieure de la dépendance du « trousseau » à la version 23.1.0 pour corriger une vulnérabilité de sécurité.

Corrections de bogues

  • Correction d’une fuite de mémoire dans la conversion des données décimales.

  • Correction d’un bogue où write_pandas ne tronquait pas la table cible.

Version 3.7.0 (26 janvier 2024)

Nouvelles fonctions et mises à jour

  • Ajout de la prise en charge de Python 3.12.

  • Ajout d’un nouveau paramètre booléen force_return_table à SnowflakeCursor.fetch_arrow_all pour forcer le renvoi de pyarrow.Table en cas de lignes nulles.

  • Nettoyage de certains avertissements concernant le code C++ et de problèmes de performance.

  • Les tests locaux sont plus robustes face aux hypothèses implicites.

  • Ajout de la prise en charge de la connexion en utilisant une connexion existante via la session et le jeton maître.

  • Ajout de la prise en charge de la connexion à Snowflake en s’authentifiant avec plusieurs SAML IDP à l’aide d’un navigateur externe.

  • Amélioration du message d’avertissement concernant les autorisations de configuration.

Corrections de bogues

  • Correction d’un problème avec l’indication du type de table PyArrow.

  • Correction d’un problème de compilation dû à un en-tête cstdint manquant sur gcc13.