Safari Technology Preview 33 发布说明

Safari Technology Preview Release 33 现已提供下载,适用于 macOS Sierra 和 macOS High Sierra 的测试版。如果您已安装 Safari Technology Preview,可以从 Mac App Store 的“更新”标签页进行更新。此版本涵盖 WebKit 修订版本 217407-217978

性能

  • 修复了在安装某些 Safari 扩展时,可能导致 Safari Technology Preview 和网页内容进程占用大量内存的问题

JavaScript

  • 修复了字节码生成器中 for-in 优化的静态分析问题 (r217438)
  • 提升了 String.prototype.concat 的性能 (r217648)
  • 改进了为 toLength 提供的字节码和类型信息 (r217530)
  • 优化了 MapSet 构造函数 (r217525)

WebRTC

媒体流和捕获

  • 修复了 getUserMedia 提示过于频繁的问题 (r217910)
  • 阻止 getUserMedia 请求来自后台标签页,除非该标签页已在捕获 (r217930)
  • 如果用户拒绝了访问,则阻止 getUserMedia 再次提示 (r217945)

媒体

  • 使客户端能够指定一个需要硬件解码支持的编解码器列表 (r217799)
  • 对于仅连接电源的设备,豁免客户端要求的硬件编解码器支持 (r217906)
  • 将 Web Audio 实现与规范对齐,当客户端向 createScriptProcessor() 方法传入 bufferSize 的值为 0 时 (r217919)

CSS Grid

  • 添加了对正交定位的网格项的支持 (r217486)
  • 修复了没有特定尺寸的定位项的行为 (r217411)
  • 修复了自动轨道在轨道尺寸计算算法中应用的逻辑外边距问题 (r217709)
  • 修复了在固定尺寸轨道中拉伸正交项时应用的外边距问题 (r217705)

Web API

  • 根据最新的 HTML 规范,对齐了 <col span><colgroup span> 的限制 (r217907)
  • 修复了使用 XHR 获取 Blob URL 时,content-typecontent-length 为 null 的问题 (r217901)
  • 修复了 getComputedStyle() 为 left, right, top, bottom 返回像素值的问题,使其符合规范 (r217522)
  • DOMMatrix 实现了 fromFloat32ArrayfromFloat64ArraytoFloat32ArraytoFloat64Array (r217764)
  • 实现了 DOMPointReadOnly.matrixTransform() (r217763)
  • 使脚本模块可以通过 data URLs 导入 (r217760)
  • 根据最新的标准草案,更新了自定义元素名称的略微严格的规则 (r217864)
  • 使用父框样式调整 RenderStyle 以进行对齐 (r217536)
  • 添加了对媒体预加载的条件支持,并对齐了媒体 as 值 (r217863)
  • 将预加载实现与规范对齐,强制要求 as 值并进行其他对齐 (r217962)

渲染

  • 更改了行为,移除视口外部图层的后备存储 (r217696)
  • 修复了当帧具有 visibility:hidden 时,其合成内容仍然可见的问题 (r217472)
  • 更改了行为,当 display:contents 节点被删除时,销毁相关的渲染器子树 (r217794)

Web Inspector

  • 添加了上下文菜单项,用于将 WebSocket 对象记录到控制台 (r217912)
  • 在“设置”标签页中添加了“调试”视图,用于调试设置和实验性功能 (r217625)
  • 添加了用户在创建新规则时选择样式表的能力 (r217911)
  • 更改了“节点详细信息”侧边栏,允许在“属性”表中编辑键和值 (r217744)
  • 阻止了在侧边栏折叠时调整大小导致不必要的布局触发 (r217452)
  • 修复了在“搜索”标签页中重新加载页面时,对现有查询执行搜索的问题 (r217733)
  • 修复了从 Web Inspector 拖到桌面上的图像被命名为“Unknown.png”的问题 (r217584)
  • 修复了从“资源”标签页切换后重新加载页面又切换回来的问题 (r217505)
  • 修复了 ConsolePrompt 中的 CodeMirror 实例每次显示时都会刷新的问题 (r217746)
  • 修复了打开 Web Inspector 时显示活动 WebSocket 的问题 (r217721)
  • 修复了阻止检查每秒接收 >50 条消息的 WebSocket 的“跳转箭头”的问题 (r217690)
  • 提高了在检查 JSContext 时自动附加自动暂停的可靠性 (r217509)

错误修复

  • 使 AirPods 可以在 Netflix 上使用 (r217858)
  • 修复了页面可见性改变时 YouTube 音频卡顿的问题 (r217936)