Safari 技术预览版 3 发布说明

Safari 技术预览版 第 3 版现已可供下载。如果您已安装 Safari 技术预览版,可以从Mac App Store 的“更新”选项卡进行更新。Safari 技术预览版第 3 版涵盖 WebKit 修订版本 199086–199865

JavaScript

  • 根据 ES6 规范增加了对 Symbol.isConcatSpreadable 的支持 (r199397)
  • 根据 ES6 规范,使 RegExp 构造函数获取 Symbol.match 属性,以决定一个对象是否应像 RegExp 对象一样构造 (r199106)
  • 根据 ES6 规范,将 String.matchString.search 更改为使用 RegExp 构造函数 (r199144)
  • 根据 ES6 规范,更正了函数声明的提升方式 (r199179)
  • 改进了 ES6 箭头函数的解析 (r199352)
  • 根据 ES6 规范添加了 RegExp.prototype[@@split],并使 String.prototype.split 使用它 (r199731)
  • 添加了 RegExp.prototype[@@search] (r199748)
  • 根据 ES6 规范更新了调用 RegExp.prototype 方法的处理方式 (r199545)
  • 使更多测试用例通过 ES6 RegExp unicode 标志 (r199523)
  • 增加了对 arguments.length 访问缓存的支持,以提高性能 (r199240)
  • 根据 ECMAScript 规范草案,更正了生成器向内部生成器 yield 时 throw() 的行为 (r199652)

CSS

  • 实现了功能性 :host() 伪类 (r199291)
  • 改进了对 SVG 光标图像的支持 (r199625)
  • 默认开始使用 OpenType 数学字体用于 MathML (r199773)
  • 修复了悬挂标点符号的测量问题 (r199777)
  • 改进了当段落最后一行只包含单词的一个音节时的连字符处理 (r199818)
  • 修复了在 RTL 语言中,CSS Grid 项没有静态内联位置时的布局问题 (r199098)
  • 修复了 CSS Grid 中带间隙的定位项 (r199223)
  • 增加了对 CSS Grid grid-template-columnsrepeat(auto-fill, …)repeat(auto-fit, …) 的支持 (r199343)
  • 修复了 CSS Grids 中带内容对齐的定位项 (r199657)
  • 开始使用 grid-template-areas 来确定显式网格 (r199661)
  • 通过对非自动最小尺寸使用外边距框,更正了 CSS Grid 布局 (r199728)

Web API

  • 增加了在 IndexedDB 中设置和检索 Blob 值的支持 (r199120, r199230, r199499, r199524, r199708, r199730)
  • 更正了 window 完全创建后 MessageEvent.source 的结果 (r199087)
  • 改进了当影子根的第一个子节点是注释节点时的稳定性 (r199097)
  • 使 CSS 成为 window 对象上带有静态函数的正确构造函数 (r199112)
  • window 对象上暴露了 Crypto 构造函数 (r199159)
  • 增加了对 <slot> 元素上 display: contents 的支持 (r199151)
  • 修复了 FontFace,使其在内容安全策略阻止所有 URL 时能正确拒绝返回的 Promise (r199611)
  • 使 FontFaceSet 正确处理 null 值 (r199216)
  • 更正了 DOMTokenList.contains(),使其不再抛出异常 (r199296)
  • 根据规范,使 Selection.deleteFromDocument 在选择为插入符时不会删除字符 (r199585)
  • 改进了 IndexedDB 绑定以更好地符合规范 (r199750, r199774)
  • 使 AudioBufferSourceNode.buffer 可为空 (r199751)
  • 改进了处理关闭帧的滚轮事件时的稳定性 (r199181)

Web 检查器

  • 现在可以在“实例堆快照”视图中展开对象以查看其保留的内容 (r199379)
  • 显著提高了“时间线”选项卡在记录具有大量快速活动和长时间记录的页面时的性能 (r199747)
  • 通过使用 Esprima 并不再阻塞主线程,提高了 JavaScript 代码美化打印的性能 (r199168, r199169)
  • 提高了分析器的采样率,使其接近 1ms 采样频率 (r199092)
  • 改进了“快速打开”对话框中的过滤功能 (r199143, r199226)
  • 使“快速打开”对话框的资源列表保持最新 (r199207)
  • 停止尝试在 JavaScript 源代码中匹配颜色模式,以提高大型资源的性能 (r199095)
  • 将“获取快照”导航按钮更改为相机图标 (r199177)
  • 更正了 JavaScript 配置文件“调用树”视图中的源代码位置链接 (r199201)
  • 使 XHR 和 Web Workers 可以进行全文搜索 (r199263)
  • 改进了对象预览中 DOM 节点的显示效果 (r199322)
  • 改进了当标签页较小时的标签栏渲染效果 (r199325)
  • 更正了退出全屏后停靠控件从工具栏消失的问题 (r199395)
  • 开始将会话间的缩放因子作为持久设置记住 (r199396)
  • 更正了当 sourceURL 也设置时 sourceMappingURL 未被使用的问题 (r199688)
  • 开始使用 Number.prototype.toLocaleString 本地化大小和时间 (r199635)
  • 使 sourceMappingURL 在重新加载时更可靠地工作 (r199852)

渲染

  • 缩短了某些页面的显示时间——允许在其他内容稍后填充之前立即渲染一个简短的页面标题 (r199155)
  • 修复了当图形加速不可用时页面瓷砖层消失的问题 (r199130)
  • 当使用 text-rendering: optimizeLegibility 时,使 font-size: 0 渲染为 0 宽度 (r199150)
  • 更正了带有 CSS 变换的图像映射上焦点环绘制位置不正确的问题 (r199247)
  • 使负的 letter-spacing 影响内容可视溢出的右边缘 (r199516)
  • 更正了 WebGL 基于画布在改变大小后的合成问题 (r199536)
  • 当设置空文件列表时,开始清除 <input type=file> 上渲染的图标 (r199540)
  • 提高了表格上 border-collapse: collapse 的性能 (r199552)
  • 改进了 select[multiple] 的渲染效果,使其更好地匹配其他浏览器 (r199553)
  • 修复了背景滤镜,使其遵循 visibility: hidden (r199862)

安全性

  • 使为 <object><embed> 创建的嵌套浏览上下文遵循内容安全策略的 object-src 指令 (r199527)
  • 根据规范,如果内容安全策略元标签不是 <head> 的后代,则开始忽略它 (r199163)
  • 根据规范,开始忽略通过元标签传递的 report-only 内容安全策略指令 (r199538)
  • 根据规范,开始忽略重定向后内容安全策略 URL 匹配中的路径 (r199612)
  • 根据规范,移除了对 <meta>X-Frame-Options 的支持 (r199696)

网络

  • 停止推测性地重新验证缓存的重定向 (r199521)
  • 停止缓存带有 Content-Range 头的响应,以避免提供不正确的结果 (r199090)
  • 修复了在隐私偏好设置中删除网站数据时清除应用程序缓存的问题 (r199204)

辅助功能

  • application 角色描述更改为“Web 应用程序”,以避免与顶层系统应用程序描述混淆 (r199260)
  • 在 SVG 内容中,使 presentation 角色优先于子 <title><desc> 元素 (r199588)

您可以在WebKit 错误跟踪器上提交错误或功能请求,或者在Apple 的错误报告网站上向 Apple 提交反馈或错误。如有其他问题或反馈,欢迎在 Twitter 上联系我们:@webkit 或联系 Jonathan Davis:@jonathandavis