2022 年 Snowflake Connector for Python 版本说明¶
本文包含 Snowflake Connector for Python 的版本说明,包括以下内容(如果适用):
行为变更
新功能
面向客户的错误修复
Snowflake 对 Snowflake Connector for Python 更新使用语义版本控制。
版本 2.9.0(2022 年 12 月 14 日)¶
新功能和更新¶
重新设计了身份验证内部机制,以允许用户插入自定义密钥对身份验证器。
现在通过
cursor.execute
和cursor.executemany
支持多语句查询执行。Snowflake 参数
MULTI_STATEMENT_COUNT
可以在账户、会话或语句级别进行更改。可以为 execute 提供一个附加实参num_statements
,以便在语句级别使用该实参。必须将它提供给executemany
以通过方法提交多语句查询。请注意,通过executemany
实现的大容量插入优化在提交多语句查询时不可用。默认情况下,该参数为 1,表示一次只能提交一个查询。
设置为 0 可在多语句查询中提交任意数量的语句。
设置为 >1 可在多语句查询中提交指定的确切语句数。
多语句的绑定接受方式与单语句查询的接受方式相同。
支持异步多语句查询执行。用户仍应使用
get_results_from_sfqid
来检索结果。要访问每个查询的结果,用户可以调用 DB 2.0 API (PEP-249) 中指定的
call SnowflakeCursor.nextset()
来遍历每个语句的结果。通过现有的
fetch*()
方法调用 execute(如果是异步,则可以调用get_results_from_sfqid
)后,可以立即访问第一条语句的结果。
错误修复¶
修复了通过 GET 命令下载的文件权限被更改的错误。
版本 2.8.3(2022 年 11 月 28 日)¶
新功能和更新¶
将加密依赖项从 <39.0.0 升级到了 <41.0.0。
错误修复¶
修复了过期的 OCSP 响应缓存在缓存加载期间导致无限递归的错误。
版本 2.8.2(2022 年 11 月 18 日)¶
新功能和更新¶
提高了 OCSP 响应缓存的性能。
执行 GET 命令时不再解析本地计算机上的目标位置。
提高了用于 PUT/GET SQL 语句检测的正则表达式的性能。
版本 2.8.1(2022 年 10 月 28 日)¶
新功能和更新¶
将加密依赖项从 <37.0.0 升级到了 <39.0.0。
关闭连接时,异步查询状态检查现在已并行化。
错误修复¶
修复了
write_pandas
不会将空DataFrame
写入 Snowflake 的问题。
版本 2.8.0(2022 年 9 月 27 日)¶
错误修复¶
修复了对空结果调用
fetch_pandas()
和fetch_arrow()
时丢失的dtypes
。修复了光标关闭时
rowcount
被删除的错误。修复了
extTypeName
即使为空时仍被使用的错误。更新了遥测条目的构造方式。
在运行时添加了导入的根包的遥测数据。
添加了使用
write_pandas
的遥测功能。write_pandas
函数现在支持提供DataFrame.to_parquet
使用的附加实参。write_pandas
的所有可选参数现在都可以提供给pd_writer
和make_pd_writer
,以便与DataFrame.to_sql
一起使用。
版本 2.7.12(2022 年 8 月 24 日)¶
新功能和更新¶
为 OCSP 响应缓存添加了文件内缓存。
添加了对 OKTA Identity Engine 的支持。
write_pandas
函数现在通过取代create_temp_table
实参的新table_type
实参支持临时表。
错误修复¶
修复了一个错误,即作为
pandas.DataFrame
或pyarrow.Table
提取的时间戳会因不必要的精度而溢出。在无法防止溢出的情况下,现在会引发一个明显的错误。修复了在执行异步查询后调用
fetch_pandas_batches
会错误地引发NotSupportedError
的错误。
版本 2.7.11(2022 年 7 月 28 日)¶
错误修复¶
向
typing_extensions
添加了最低版本 pin。
版本 2.7.10(2022 年 7 月 25 日)¶
新功能和更新¶
向 OCSP 请求添加了内存中缓存。
向
write_pandas
添加了覆盖选项。根据 PEP-249 向
SnowflakeCursor
添加了lastrowid
属性。添加了新的连接诊断功能。
更新了以下库和资源:
支持最高到 8.0.X 的 pyarrow 版本。
供应商库版本请求最高到 2.28.1,urllib3 最高到 1.26.10。
支持从 1.23.0 到 1.24.0 的 numby 依赖项版本。
错误修复¶
修复了 gzip 压缩的 HTTP 请求可能被未刷新的缓冲区损坏的问题。
版本 2.7.5(2022 年 3 月 18 日)¶
行为变更¶
已弃用对 Python 3.6 的支持。
新功能¶
为合作伙伴添加了一个通过环境变量 (
SF_PARTNER
) 注入其名称的选项。
错误修复¶
修复了一个错误,如果浏览器窗口无法打开进行 SSO 登录,我们将不会等待输入。
为
SnowflakeConnection
导出了类型定义。修复了使用
fetch_pandas_all
时最终箭头表将包含重复索引号的错误。
版本 2.7.3(2022 年 1 月 18 日)¶
错误修复¶
已将包元数据从
setup.py
移动到setup.cfg
。已将
Timezone
添加到Timestamp_TZ
。修复了与存储凭据相关的错误。
修复了 py.typed 未包含在 wheel 中的问题。
修复了使用
arrow_number_to_decimal
无法正确转换负数的问题。添加了使用 GET 时处理空文件的文件。
修复了 PyPi 的长描述渲染。
添加了当 SMS 不存在时对 DUO 的错误处理。
添加了在将 Pandas
DataFrame
写入 Snowflake 表时自动创建表格的功能。将 numpy 要求从 <1.22.0 更新到 <1.23.0。
更新了 CODEOWNERS 文件。