Electron 31.0.0
Stack Upgrades
- Chromium 升级到 126.0.6478.36 版本,引入了新的特性和改进 。
- Node.js 升级到 20.14.0 版本,提供了性能改进和新特性 。
- V8 引擎升级到 12.6 版本,提供了更好的性能和语言特性支持 。
Breaking Changes
window.flashFrame(bool)
在 macOS 上现在会持续闪烁,直到调用 flashFrame(false)
。- 从 Chromium 升级至 126.0.6445.0 版本,移除了 WebSQL 支持 。
nativeImage.toDataURL
的行为变更,现在会保留 PNG 图像的颜色空间 。
Features
- 在
webContents
API 上添加了 navigationHistory
实例属性和 navigationHistory.getEntryAtIndex
方法,允许应用检索浏览历史中的 URL 和标题 。 - 为
Session.clearData
API 添加了 options
参数,提供更多清除数据的选项 。 - 增加了对
navigator.serial
中的服务类 ID 请求蓝牙端口的支持 。 - 增加了对 Node.js 环境变量
NODE_EXTRA_CA_CERTS
的支持,提高了 TLS/SSL 安全性 。 - 扩展了
webContents.setWindowOpenHandler
,支持自定义 BrowserWindow
的创建逻辑 。 - 实现了对 Web 标准文件系统 API 的支持,为应用提供了更丰富的文件操作功能 。
WebContentsView
现在可以接受预先存在的 webContents
实例,提高了应用的灵活性和可定制性 。
Improvements
- 扩展了
WebContentsView
以接受预先存在的 webContents
对象 。 - 改进了
ses.cookies.set
失败时的错误消息 。 - 重新添加了在 macOS 上检查应用程序是否作为登录服务启动的功能 。
Fixes
- 添加了对
fs.{readdir|readdirSync}
和 fs.promises.{readdir|readdirSync}
中的 recursive
选项缺失的支持 。 - 添加了在 Asar 存档中使用
recursive
调用 fs.{readdir|readdirSync}
时的 withFileTypes
支持 。 - 修复了 macOS 上的 ASAN 构建 。
- 修复了禁用最大化并启用 WCO 的窗口仍会显示其最大化按钮的错误 。
- 修复了使用
showInactive
显示的窗口为空白的问题 。