Safari Technology Preview 67 发布说明

Safari Technology Preview Release 67 现已开放下载,适用于 macOS Mojave 和 macOS High Sierra。如果您已安装 Safari Technology Preview,可在 macOS Mojave 的“系统偏好设置”的“软件更新”面板中更新,或在 macOS High Sierra 的 Mac App Store“更新”标签页中更新。更新到 macOS Mojave 后,您可能需要重新安装 Safari Technology Preview。

本次发布涵盖 WebKit 修订版本 236195-236793

指针事件

  • 在“实验性功能”菜单中添加了 PointerEvent (r236378)
  • 确保 PointerEvent 在禁用时不可见 (r236410)

WebRTC

  • 添加了 RTCCodecStats 支持 (r236346)
  • 更改为允许 localhost 上的本地连接出现 IP 不匹配 (r236316)
  • 清理了 RealtimeMediaSource 设置的更改处理 (r236646)
  • 修复了视频轨道克隆以保留原始属性 (r236536)
  • 实现了发送方和接收方的 getStats (r236207)
  • 更新了 getDisplayMedia 支持的约束 (r236476)

媒体

  • 启用了 H.264 Simulcast (r236792)
  • 在“实验性功能”菜单中默认启用了现代加密媒体 API (r236281)
  • 在 EME 中添加了 WebM 清理 (r236256, r236307)
  • 为 EME 引入了 CDMInstanceSession 的概念 (r236317)
  • 更改为在决定是否将帧附加到 MSE 中的解码队列时使用一定的容忍度 (r236258)
  • 修复了 MSE 中与未初始化的 greatestDecodeDuration 进行比较的问题 (r236314)
  • 修复了 MSE 中解码队列中意外擦除的样本 (r236566)
  • 修复了 WebVTT 提示对齐 (r236531)
  • 根据新的 region 语法更新了 WebVTT 解析器 (r236265)

CSS

  • 修复了 CSS Grid 中折叠轨道旁边带沟槽的项目对齐问题 (r236643)
  • 限制了 backdrop filters 的总组合大小 (r236306)
  • 修复了 Retina 显示屏上使用 feDisplacementMap 缓冲区损坏的 CSS 引用过滤器 (r236415)
  • 修复了元素移动时更新 CSS 中的 feMorphology 过滤器的问题 (r236416)
  • 修复了在 Retina 显示屏上对图像应用 feConvolveMatrix 时出现乱码渲染的问题 (r236412)
  • 开始实现 CSS 自定义属性和值 (r236273)
  • 实现了 CSS 自定义属性和值 API 的 initialValue 支持 (r236379)
  • overflow:overlay 作为 overflow:auto 的同义词 (r236341)
  • 修复了 quirks 模式下的 <form> 具有 margin-block-end:1em 的问题 (r236673)

JavaScript

  • 实现了 BigInt 对按位 & 运算的支持 (r236637)
  • 优化了 C++ 运行时中的 Array#indexOf (r236240)
  • 优化了 C++ 运行时中的 Array#lastIndexOf (r236496)

Web 动画

  • 修复了加速动画被暂停的问题 (r236312, r236313)
  • 修复了无限调用 DocumentTimeline::updateAnimations() 的问题 (r236308)
  • 确保带有加速动画的渲染器具有图层 (r236501, r236670)

Shadow DOM

  • 添加了用户选择跨越 shadow 边界的内容的支持 (r236519)
  • 添加了复制跨越 shadow 边界的内容的支持 (r236785)

Web API

  • 修复了反应队列中的自定义元素丢失其 JavaScript 包装器并成为 HTMLUnknownElement 的问题 (r236376)
  • 修复了在 mutation observers 中排队等待的元素丢失其 JavaScript 包装器的问题 (r236519)
  • Image.proto 更改为 Function.prototype 而非 HTMLElement.prototype (r236769)
  • 修复了单选输入和复选框输入在点击时按顺序触发“click”、“input”和“change”事件的问题 (r236779)
  • 简化了认证代码 (r236344)
  • 更改了 document.open() 以不将 URL 传播到非完全活动的文档 (r236550)
  • 更改了 document.open() 以在跨域调用时抛出错误 (r236613)
  • 更改为在 document.open() URL 传播期间剥离文档 URL 中的片段 (r236560)
  • 修复了无操作的 document.open() 调用以确保没有副作用 (r236433)
  • 放弃了对 cross-origin-window-policy header 的支持 (r236623)

Apple Pay

  • 在 PaymentDetailsUpdate 中添加了对粒度错误的支持 (r236552)
  • 移除了“in-store”按钮类型 (r236615)

Web Inspector

  • 修复了 Web Inspector 侧边停靠时标签页被隐藏的问题 (r236411)
  • 修复了 Web Inspector 全屏时停靠按钮消失的问题 (r236375)
  • “调试器”标签页现在有一个统一的部分用于所有断点类型 (r236540)
  • 修复了黑暗模式下新的 watch 表达式弹出窗口的浅色背景 (r236532)
  • 修复了选择“图像”文件夹时显示没有内容的图像资源的问题 (r236596)
  • 移除了旧版样式编辑器 (r236336)
  • 移除了视觉样式 CSS 详细信息侧边栏面板 (r236298)
  • 重做了“样式”侧边栏面板中的“计算”面板,使其与“规则”面板的样式匹配 (r236297)
  • 添加了多属性选择的实验性设置 (r236706)
  • 在“样式”侧边栏中,更改为在 mouseup 时而不是 mousedown 时开始编辑属性名称和值 (r236780)

Web Driver

  • 修复了有时发送 Tab 键按下可能会使焦点移出网页内容并导致 WebDriver 会话挂起的问题 (r236774)
  • 修复了导致 safaridriver 启动时立即中止的问题
  • 修复了如果键盘输入源指定了一个包含“pause”值但没有“key”值的 tick 时,“执行操作”命令失败的问题

存储

  • 修复了 WebSQL 的一个问题,即如果 JavaScript 提供的预期使用值过低,用户无法授予配额增加 (r236348)