2025 年 Go Snowflake Driver 版本说明¶
本文包含 Go Snowflake Driver 的版本说明,包括以下内容(如果适用):
行为变更
新功能
面向客户的错误修复
Snowflake 对 Go Snowflake Driver 更新使用语义版本控制。
有关文档,请参阅 Go Snowflake 驱动程序。
Version 1.17.0 (September 29, 2025)¶
新功能和更新¶
Added support for Go 1.25, dropped support for Go 1.22.
Added ability to configure OCSP for each individual connection.
Added
DECFLOATsupport. See the gosnowflake documentation (https://pkg.go.dev/github.com/snowflakedb/gosnowflake) for details.Added proxy options to connection parameters.
Added
client_session_keep_alive_heartbeat_frequencyconnection paramameter.Added support for multi-part downloads for S3, Azure and Google Cloud.
Added
Config.singleAuthenticationPromptto control authentication flow. Whentrue, only one authentication is performed at a time, allowing for manual interactions such as MFA or OAuth. Default istrue.
错误修复¶
Fixed missing
DisableTelemetryoption inConfig.Fixed multistatements in large result sets.
Fixed unnecessary retries when a context is cancelled.
Fixed a regression in loading TOML connection files.
Fixed race conditions in stage downloads.
Version 1.16.0 (August 14, 2025)¶
新功能和更新¶
Added support for workload identity federation in the AWS, Azure, Google Cloud, and Kubernetes platforms.
Added the
WorkloadIdentityProviderconnection parameter.Added
AuthTypeWorkloadIdentityFederationto the values for theauthenticatorconnection parameter.
Implemented a new CRL (Certificate Revocation List) checking mechanism.
Enabling CRLs improves security by checking for revoked certificates during the TLS handshake process. For more information, see the Replacing OCSP with CRL as the method of certificate revocation checking (https://community.snowflake.com/s/article/Replacing-OCSP-with-CRL-as-the-method-of-certificate-revocation-checking) Knowledge Base article.
This feature is disabled by default. For information on enabling this feature, see CertRevocationCheckMode (https://pkg.go.dev/github.com/snowflakedb/gosnowflake#CertRevocationCheckMode). We recommend you test this feature in advisory mode before enabling it in production.
Added support for opt-in single-use refresh tokens in the OAuth flow.
Implemented a connectivity diagnostic tool.
Added a session ID to logs produced by the connection and heartbeat modules.
Added the
RegisterTLSConfigfunction that lets you pass your ownTLSConfigfor the driver to use. Please use this function instead of modifyingSnowflakeTransportdirectly.Removed the dependency to static list of root CAs for OCSP checking. Now, the default list of root CAs is used.
错误修复¶
Fixed an issue where error messages were not displayed while reading in structured types.
Fixed a memory leak in the arrow batches example.
Fixed issues with query cancellation.
Removed the trailing slash from the default
RedirectUriwithin the OAuth Authorization process.Fixed an issue with ignoring the maximum retry count when the timeout is not set.
版本 1.15.0(2025 年 7 月 1 日)¶
非公开预览版 (PrPr) 功能¶
Added support for workload identity federation in the AWS, Azure, GCP, and Kubernetes platforms.
免责声明:
只有将
SF_ENABLE_EXPERIMENTAL_AUTHENTICATION环境变量设置为true时,才能使用此功能。应仅在非生产数据中使用此功能。
此 PrPr 功能不在支持范围内。但在 PrPr 阶段,产品和工程团队可提供服务。
如需了解参与情况和相关文档,请联系您的客户团队。
新功能和更新¶
添加了对蛇形命名法连接参数的支持。
优化了执行 PUT 命令期间的内存消耗。
错误修复¶
修复了
configuration.toml文件权限处理的问题。
版本 1.14.1(2025 年 5 月 28 日)¶
新功能和更新¶
添加了对 OpenTelemetry 上下文传播到 GS 的支持。
添加了对 OAuth 授权代码流中默认客户端凭据的支持。
将 OCSP 初始化移至第一次 HTTPS 调用。
错误修复¶
将针对 NUMBERs 的扫描类型和实际返回的类型保持一致。
修复了在原始上下文仍然有效的情况下,
nil发生内部超时(例如对于云提供商调用)时取消引用的问题。修复了在超时或取消上下文争用时,
nil取消引用的问题。修复了从不返回错误的加密错误。
修复了将
smkId向下转换为int的问题,该问题会导致极大的暂存区发生解密问题。修复了对 GCP 上虚拟式域的支持。
修复了安全存储锁目录所有者的验证问题。
版本 1.14.0(2025 年 4 月 30 日)¶
新功能和更新¶
实现了对 OAuth2 授权码和客户端凭据流的支持。
添加了对 PAT(编程式访问令牌)的支持:
为参数身份验证添加了 PROGRAMMATIC_ACCESS_TOKEN 参数。
增加了对 GCP 暂存区虚拟端点的支持。
错误修复¶
修复了启用更高精度时 NUMBER 列的扫描类型问题。
版本 1.13.3(2025 年 4 月 28 日)¶
非公开预览版 (PrPr) 功能¶
实现了对 OAuth2 授权码和客户端凭据流的支持。
免责声明:
这些功能只能通过将
SF_ENABLE_EXPERIMENTAL_AUTHENTICATION环境变量设置为true来访问。这些功能仅应在非生产数据中使用。
这些 PrPr 功能不在支持服务的覆盖范围内。但在 PrPr 阶段,产品和工程团队可提供服务。
如需了解参与情况和相关文档,请联系您的客户团队。
新功能和更新¶
无。
错误修复¶
修复了每次重试请求时重新加密文件的问题。
修复了检查 Easy Logging 配置文件访问权限时的 Time-of-check Time-of-use (TOCTOU) 争用条件。有关更多信息,请参阅 CVE-2025-46327 (https://github.com/snowflakedb/gosnowflake/security/advisories/GHSA-6jgm-j7h2-2fqg)。
版本 1.13.2(2025 年 3 月 31 日)¶
新功能和更新¶
将 JWT 库版本从 5.2.1 提升到 5.2.2。
Implemented and improved the file-based credentials cache for Linux, including enhanced token caching.
错误修复¶
修正了查询以换行开头时的 PUT/GET 处理方法。
为证书链验证添加了更多日志记录。
只有在 POST 请求的响应形式不当时,才会退回到 OCSP GET 请求。
修正了与未清除 OCSP 缓存有关的内存泄漏问题。
版本 1.13.1(2025 年 3 月 5 日)¶
非公开预览版 (PrPr) 功能¶
在非公开预览版中添加了对 PAT(程序化访问令牌)的支持。
为参数身份验证器添加了
PROGRAMMATIC_ACCESS_TOKEN参数。
免责声明:
只有将
SF_ENABLE_EXPERIMENTAL_AUTHENTICATION环境变量设置为true时,才能使用此功能。这些功能仅应在非生产数据中使用。
这些 PrPr 功能不在支持服务的覆盖范围内。但在 PrPr 阶段,产品和工程团队可提供服务。
如需了解参与情况和相关文档,请联系您的客户团队。
新功能和更新¶
删除了对 Go 1.21 的支持,并添加了对 Go 1.24 的支持。
Arrow 升级到了 v18。
添加了 JWT 声明的日志。
错误修复¶
修复了 HTTP 重试的错误消息。
版本 1.13.0(2025 年 1 月 29 日)¶
新功能和更新¶
现在,驱动程序将 UUID 作为 varchars 处理。
在绑定参数时,驱动程序支持
driver.Valuer/fmt.Stringer接口。驱动程序会检测响应是否基于 JSON,并在启用 Arrow 批处理模式时运行常规块下载器,以便以行的形式获取响应。
为云提供商调用添加了超时配置。
添加了对 GCS 区域特定端点的支持。
修复了少量文档格式问题。
在向 GCP 调用 HEAD 请求时添加了重试功能。
将 x/crypto 库升级到了版本 v0.31.0。
错误修复¶
修复了处理 Arrow 响应时导致 64 字节内存泄漏的问题。
修复了使用 us-west-2 时忽略区域的问题。
在尝试从空私钥生成 JWT 前,添加了对空私钥的检查。
驱动程序使用正确的传输方式进行云提供商调用。
禁用 OCSP 时,驱动程序不再为云提供商执行 OCSP 调用。