2026 年 Node.js Driver 版本说明¶
本文包含 Node.js Driver 的版本说明,包括以下内容(如果适用):
行为变更
新功能
面向客户的错误修复
Snowflake 对 Node.js Driver 更新使用语义版本控制。
有关文档,请参阅 Node.js 驱动程序。
版本 2.3.5(2026 年 3 月 17 日)¶
新功能和更新¶
添加了通过使用
SF_SKIP_TOKEN_FILE_PERMISSIONS_VERIFICATION环境变量来跳过令牌文件权限检查的功能。在引擎中添加了 Node 18+,这是自 2.x 版本以来官方支持的最低版本。
将
PLATFORM字段添加到了login-request遥测。向以前未发现的查询执行路径添加了请求重试。
添加了
rowStreamHighWaterMark连接选项,用于控制通过statement.streamRows()流式传输查询结果时缓冲的行数。添加了将查询结果转换为具有精度损失的 JavaScript 数字。
增加了在通过
createConnection()且不带参数加载connections.toml时对 snake_case 键的支持。导出了
normalizeConnectionOptions()工具函数,用于将 snake_case(蛇形命名法)的连接配置键转换为 camelCase(驼峰命名法),并支持键别名和特定缩略词的覆盖处理。在
login-request遥测中,添加了LIBC_FAMILY和LIBC_VERSION字段。添加了
crlDownloadMaxSize配置选项,用于在下载 CRL 文件时强制执行最大响应大小限制。为 CRL 验证增加了 RSASSA-PSS 签名验证支持。
改进了 OAuth 失败时的错误详细信息。
将默认的
jsonColumnVariantParser更改为JSON.parse。更新了 Linux GNU minicore 二进制文件,以 glibc 2.18 为目标版本,从而实现对旧版 Linux 发行版更广泛的兼容性。
错误修复¶
修复了使用捆绑包时 OAuth 崩溃问题。
修复了
Binds类型,使其允许只读数组。修复了
connectAsync()方法在连接完成前就已返回的问题。修复了
connect()和connectAsync()中应为可选的回调参数处理不正确的问题。修复了以下错误:如果用户在配置中意外设置了账户和主机,则会生成无效的 JWT。
修复了以下错误:当解析包含 Microsoft Identity Platform v2.0 令牌的可选参数的 JSON 媒体类型失败时,会导致 OAuth 客户端凭证流程失败。
修复了
disableSamlUrlCheck的类型,使其使用正确的大小写:disableSamlURLCheck。修复了
getDefaultCacheDir()在未配置用户主目录的环境中崩溃的问题,现在会回退到os.tmpdir()。修复了
SF_OCSP_RESPONSE_CACHE_DIR未被直接用作 OCSP 缓存目录的问题。修复了
noProxy和NO_PROXY处理中的错误:.domain.com通配符格式未能正确匹配目标主机。.被错误地匹配为“任意字符”而非“字面量点号”。部分字符串被错误地匹配了,而不是要求与目标字符串完全匹配。
修复了 CRL ADVISORY 模式以警告级别而非调试级别记录故障。
修复了在缓存的访问令牌过期时,OAuth 授权码重新认证未使用刷新后的访问令牌的问题。
修复了当 IDP 未返回新的刷新令牌时,OAuth 授权码的刷新令牌被从缓存中移除的问题。
修复了当服务器返回格式错误的查询响应时,未处理的 Promise 拒绝问题。
版本 2.3.4(2026 年 2 月 9 日)¶
新功能和更新¶
减少了 PUT 操作期间的内存使用量。
将
APPLICATION_PATH添加到了login-request遥测。将从
/etc/os-release解析的Linux 发行详细信息添加到了login-request遥测。将 axios 升级到了版本 1.13.4,以解决 axios 拦截器中的一个错误。
将其他依赖项升级到了最新次要版本。
错误修复¶
修复了 HTTP 请求中不一致的重试行为,并确保正确重试所有可恢复的失败。
修复了当连接配置中缺少
role和oauthScope时,导致的 oauth 范围无效问题。修复了连接配置中的
APPLICATION字段未传递到login-request遥测的问题。修复了由
minicore模块导致的捆绑包构建错误。