Mozilla 开发者预览版 (Gecko 1.9.3a2) 现已推出

我们发布了 Mozilla 开发者预览版系列的新版本,作为测试我们正在添加到 Mozilla 平台的新特性的一种方式。这些特性可能或可能不会在未来 Firefox 桌面版或手机版的版本中发布。但这正是我们发布这些版本的原因 - 尽早进行测试并获得反馈,以便我们知道如何处理它们。

请注意,此版本不包含最近有新闻报道的两个内容:D2D 或我们一直在进行的新 JavaScript VM 工作。

由于这是一个专注于 Web 开发者的博客,我认为谈论对你们所有人来说有什么新功能很重要。所以我们将直接进入主题。

进程外插件

大约三周前,我们发布了一个 a1 版本,以对一些新的 Web 开发者功能进行测试(我们将在下面再次列出)。该版本与这个版本之间最大的区别是包含了 Windows 和 Linux 的进程外插件。(Mac 需要更多工作,我们正在尽快努力完成。)

网络上有很多插件,它们的质量参差不齐。因此,我们将插件推向进程外,这样当 其中一个插件崩溃 时,它不会带走整个浏览器。(它还有很多其他好处 - 我们可以更好地控制内存使用、CPU 使用率,并且也有助于改善整体 UI 延迟。)

如果你想了解更多信息,请查看 Ben Smedberg 的这篇文章,文章介绍了它的工作原理、可以设置的偏好设置以及如何帮助进行测试。如果你能帮助我们,将对我们有很大帮助。

(如果你真的想加入测试队伍,我们强烈建议你开始运行我们的 夜间构建版本,它们是最前沿的,但通常足够稳定,可以用于日常使用。)

无论如何,让我们来看一下来自 发布公告 的功能列表和性能改进。

Web 开发者功能

  • 支持 内容安全策略。这基本上已经完成,只是缺少禁用 eval() 的功能。
  • 现在支持 <input/><textarea> 的占位符属性。
  • 支持 SVG 中的 SMIL 动画。对某些 SVG 属性进行动画的支持仍在开发中,animateMotion 元素尚不支持。
  • 支持 CSS 过渡。这种支持还不完全:对转换和渐变的动画支持尚未实现。
  • 支持 WebGL,默认情况下禁用,但可以通过更改偏好设置来启用。有关更多详细信息,请参见 这篇博文这篇博文
  • 支持 Range 对象上的 getClientRectsgetBoundingClientRect 方法。有关详细信息,请参见 错误 396392
  • 支持 DOM 元素上的 setCapturereleaseCapture 方法。有关详细信息,请参见 错误 503943
  • 支持 HTML5 History.pushState()History.replaceState() 方法以及 popstate 事件。有关详细信息,请参见 错误 500328
  • 支持 <a href="https://mdn.org.cn/en/CSS/background-image">-moz-image-rect()</a> 的 background-image 值。有关更多详细信息,请参见 错误 113577

有关新的 Web 开发者功能的完整列表,请访问我们关于 Web 开发者即将推出的功能 的页面。

性能改进

  • 我们已从主线程中删除链接历史记录查找,并将其更改为异步。这会导致 页面加载期间 I/O 减少,并改善整体浏览器响应速度。
  • 加载 HTML5 规范 不会再导致浏览器长时间暂停。
  • 对布局性能进行了大量改进,包括处理 DOM 访问时间、颜色管理性能、文本区域改进以及布局引擎中的许多其他热点问题。
  • JavaScript 引擎进行了许多改进:字符串处理得到改进,闭包速度更快,TraceMonkey 中对递归的某些支持等等。
  • 对在 <foreignObject> 中重绘 HTML 的性能进行了改进。
  • 字符串不会在主 DOM 代码和 Web Workers 之间复制,这提高了在将大型数据块在线程之间移动的线程化 JavaScript 的性能。

14 条评论

  1. Robert Eisenbraun

    我来试试。开始除虫了!

    2010 年 3 月 5 日 下午 2:02

  2. Ryan

    进程外插件将是一个非常受欢迎的功能。我使用了很多不稳定但有用的插件,所以不崩溃浏览器真是太棒了。

    加载 HTML5 规范时,修复挂起问题涉及哪些内容?

    2010 年 3 月 5 日 下午 8:48

  3. Boris

    Ryan,HTML5 规范修复涉及完全重写滚动的工作方式。

    2010 年 3 月 5 日 下午 8:59

    1. Magne Andersson

      你能告诉我们错误 ID 吗?

      谢谢!

      2010 年 3 月 7 日 上午 3:37

  4. zwu

    改进的 JavaScript 引擎 (Jager Monkey) 将在哪个版本中添加?可能是 3.7a3 吗?

    2010 年 3 月 6 日 上午 1:49

  5. zwu

    我发现 SunSpider JavaScript 测试比 3.6.2pre (ayakawa 构建版本) 快得多 (快 1.64 倍)。

    ayakawa 结果
    http://www2.webkit.org/perf/sunspider-0.9/sunspider-results.html?%7B%223d-cube%22:%5B89,86,92,90,91%5D,%223d-morph%22:%5B54,55,58,56,34%5D,%223d-raytrace%22:%5B139,135,143,141,139%5D,%22access-binary-trees%22:%5B52,90,92,90,84%5D,%22access-fannkuch%22:%5B133,123,131,139,124%5D,%22access-nbody%22:%5B49,30,52,49,51%5D,%22access-nsieve%22:%5B26,26,27,26,26%5D,%22bitops-3bit-bits-in-byte%22:%5B4,4,3,4,4%5D,%22bitops-bits-in-byte%22:%5B22,23,21,21,22%5D,%22bitops-bitwise-and%22:%5B6,6,6,3,6%5D,%22bitops-nsieve-bits%22:%5B53,55,56,52,59%5D,%22controlflow-recursive%22:%5B81,81,82,82,50%5D,%22crypto-aes%22:%5B64,65,59,62,60%5D,%22crypto-md5%22:%5B29,29,29,29,29%5D,%22crypto-sha1%22:%5B16,16,16,16,16%5D,%22date-format-tofte%22:%5B168,172,164,172,164%5D,%22date-format-xparb%22:%5B140,141,140,138,141%5D,%22math-cordic%22:%5B54,54,58,54,54%5D,%22math-partial-sums%22:%5B41,40,41,40,41%5D,%22math-spectral-norm%22:%5B15,14,14,12,9%5D,%22regexp-dna%22:%5B115,117,76,119,115%5D,%22string-base64%22:%5B21,22,22,22,13%5D,%22string-fasta%22:%5B118,76,129,127,131%5D,%22string-tagcloud%22:%5B155,160,163,165,171%5D,%22string-unpack-code%22:%5B170,157,158,169,161%5D,%22string-validate-input%22:%5B70,79,80,69,70%5D%7D

    3.7a3pre (0306 日构建版本) 结果
    http://www2.webkit.org/perf/sunspider-0.9/sunspider-results.html?%7B%223d-cube%22:%5B55,60,60,60,60%5D,%223d-morph%22:%5B45,54,54,54,56%5D,%223d-raytrace%22:%5B74,75,75,73,74%5D,%22access-binary-trees%22:%5B29,29,27,31,31%5D,%22access-fannkuch%22:%5B108,104,107,107,157%5D,%22access-nbody%22:%5B29,28,28,29,28%5D,%22access-nsieve%22:%5B18,24,18,18,18%5D,%22bitops-3bit-bits-in-byte%22:%5B2,2,1,2,2%5D,%22bitops-bits-in-byte%22:%5B15,15,15,15,14%5D,%22bitops-bitwise-and%22:%5B3,3,3,2,3%5D,%22bitops-nsieve-bits%22:%5B33,33,34,33,34%5D,%22controlflow-recursive%22:%5B11,11,12,11,11%5D,%22crypto-aes%22:%5B42,43,46,42,41%5D,%22crypto-md5%22:%5B17,16,16,16,16%5D,%22crypto-sha1%22:%5B9,10,10,9,9%5D,%22date-format-tofte%22:%5B78,77,79,78,78%5D,%22date-format-xparb%22:%5B81,82,82,81,81%5D,%22math-cordic%22:%5B42,41,41,41,42%5D,%22math-partial-sums%22:%5B24,23,23,23,23%5D,%22math-spectral-norm%22:%5B10,10,10,9,10%5D,%22regexp-dna%22:%5B76,78,75,75,79%5D,%22string-base64%22:%5B13,13,13,13,13%5D,%22string-fasta%22:%5B70,64,65,64,63%5D,%22string-tagcloud%22:%5B111,110,108,110,112%5D,%22string-unpack-code%22:%5B95,94,94,93,94%5D,%22string-validate-input%22:%5B44,46,50,46,50%5D%7D

    有趣的是,递归测试快了 6.71 倍。我难以置信这种改进并没有嵌入新的 Jager JavaScript 引擎。旧的 TraceMonkey 有什么特殊改进吗?

    2010 年 3 月 6 日 上午 4:42

  6. Robert O’Callahan

    实际上,a2 包含 D2D。只是它有很多错误,所以我们尽量不谈论它。:-)。(主干版本已经好多了。)

    2010 年 3 月 6 日 下午 2:12

  7. Christopher Blizzard

    是的,我考虑过添加关于 D2D 的说明,但它还没有达到很好的状态。我估计再过几周,我们就会有值得谈论的内容。

    2010 年 3 月 7 日 下午 3:23

  8. Erik Harrison

    是否计划为 OS X/Linux 创建硬件加速渲染路径?

    2010 年 3 月 7 日 下午 7:44

  9. Boris

    Erik,请查看https://bugzilla.mozilla.org/show_bug.cgi?id=546517了解 OpenGL 硬件加速渲染工作;这将在 OS X 和 Linux 上都能正常运行。

    2010 年 3 月 9 日 下午 3:05

  10. patrick

    请在 FF 的下一个版本中包含 D2D 支持。这将极大地帮助提升渲染性能,尤其是在 SVG 动画方面。

    2010 年 3 月 10 日 下午 11:49

  11. knmaoskd

    1.9.3a3 已经发布了吗?这是因为 D3D/DW 吗?

    2010 年 3 月 17 日 上午 7:00

  12. billy bob

    有人知道“本地”版本在哪里吗?

    2010 年 3 月 17 日 上午 9:28

  13. […] 甚至更详细地,您可以查看当前 Firefox 项目列表,测试最新的开发者预览版,甚至运行 nightly […]

    2010 年 3 月 22 日 下午 12:58

本文的评论已关闭。