2024 年 Snowflake Connector for Python 版本说明¶
本文包含 Snowflake Connector for Python 的版本说明,包括以下内容(如果适用):
行为变更
新功能
面向客户的错误修复
Snowflake 对 Snowflake Connector for Python 更新使用语义版本控制。
版本 3.10.0(2024 年 4 月 29 日)¶
新功能和更新¶
向
fetch_pandas_all
添加了对结构化类型的支持。
错误修复¶
修复了与 China S3 终端格式不正确有关的问题。
版本 3.9.1(2024 年 4 月 22 日)¶
新功能和更新¶
修复了以下错误:在连接 China 终端时导致 HTTP 400 错误。
错误修复¶
无。
版本 3.9.0(2024 年 4 月 18 日)¶
新功能和更新¶
在 日志记录配置文件 中添加了对日志设置的支持。
改进了连接 China 端点时的 S3 加速逻辑。
错误修复¶
无。
版本 3.8.1(2024 年 4 月 9 日)¶
新功能和更新¶
改进了容器化环境中的
externalbrowser
身份验证:指示浏览器不要在成功页面上提取
/favicon
。对空
socket.recv
调用使用简单的重试策略。添加
SNOWFLAKE_AUTH_SOCKET_REUSE_PORT
标志 (SNOWFLAKE_AUTH_SOCKET_REUSE_PORT=true
),以设置底层套接字的SO_REUSEPORT
标志(如 套接字手册页 (https://man7.org/linux/man-pages/man7/socket.7.html) 中所述)。在容器引擎完成向主机的端口转发之前,如果遵循本地主机回调 URL 中使用的随机端口,则设置此标志会很有用。
然后,您可以使用以下类似命令,静态映射主机和容器之间的端口,并允许快速连续重复使用该端口:
SF_AUTH_SOCKET_PORT=3037 SNOWFLAKE_AUTH_SOCKET_REUSE_PORT=true poetry run python somescript.py
添加
SNOWFLAKE_AUTH_SOCKET_MSG_DONTWAIT
标志 (SNOWFLAKE_AUTH_SOCKET_MSG_DONTWAIT=true
),以进行非阻塞socket.recv
调用并在出现错误时重试。
添加了对架构查询中解析结构化类型信息的支持。
升级了
platformdirs
,从 >=2.6.0、<4.0.0 to >=2.6.0、<5.0.0。更新了诊断信息,以使用
system$allowlist
,而不是system$whitelist
。改进了清理逻辑,因此连接现在依赖解释器关闭而不是
__del__
方法。使用
SnowflakeCursor.execute
对记录执行的查询时,日志记录级别从 DEBUG 更新到 INFO。
错误修复¶
修复了以下错误:未对屏蔽日志中截断的密码进行掩码处理。
版本 3.7.1(2024 年 2 月 22 日)¶
新功能和更新¶
升级了以下依赖项:
pandas 从版本 >=1.0.0、<2.2.0 to >=1.0.0、<3.0.0
cryptography 从版本 <42.0.0,>=3.1.0 到 >=3.1.0、<43.0.0
pyOpenSSL 从版本 >=16.2.0,<24.0.0 to >=16.2.0、<25.0.0
将密钥环依赖项的下限升级到版本 23.1.0,以解决安全漏洞。
错误修复¶
修复了十进制数据转换中的内存泄漏问题。
修复了以下错误:
write_pandas
没有截断目标表。
版本 3.7.0(2024 年 1 月 26 日)¶
新功能和更新¶
添加了对 Python 3.12 的支持。
向
SnowflakeCursor.fetch_arrow_all
添加了新的布尔force_return_table
参数,在行数为零的情况下强制返回pyarrow.Table
。清理一些 C++ 代码警告和性能问题。
针对隐含假设,使本地测试更加可靠。
添加了以下支持:通过会话和主令牌使用现有连接进行连接。
添加了以下支持:使用外部浏览器通过多 SAML IDP 进行身份验证,以连接到 Snowflake。
改进了配置权限警告消息。
错误修复¶
修复了 PyArrow 表类型提示的问题。
修复了因 gcc13 缺少
cstdint
标题而导致的编译问题。