火车上的新发现:Firefox 37、开发者版以及更多

欢迎来到火车上的新发现,这是一个 Mozilla Hacks 上的新系列,旨在帮助忙碌的 Web 开发人员了解所有 Firefox 版本、Web 平台以及构建 Web 的工具中有哪些新功能、更改和即将发布的内容!

Mozilla 使用“火车模型”开发 Gecko 和 Firefox - 我们会分支代码,并按照时间表(每六周)发布一个版本。如果某个功能未完成,它将被还原或禁用,我们称之为乘坐下一班火车。这意味着我们每六周向用户提供新功能、性能改进和错误修复,而无需等待长达 18 个月。

火车上的新发现 将每六周在我们分支代码时发布 - 我们将指出任何可能需要操作或导致兼容性问题的更改,以及 Web 开发人员想要利用的新功能。

Firefox 37

有关此版本中所有已知更改的详细列表,请查看 Firefox 37 的官方发布说明。以下是值得注意的功能、文档链接以及开发者或网站运营商需要采取的操作。

桌面功能

  • Media Source Extensions (MSE) API 的一个子集已实现并已启用,以允许在 YouTube 等网站上原生播放 HTML5 视频。您可以在 MDN 上了解各种 MSE API 及其用法
  • Bing 搜索现在使用 HTTPS。为私密和安全的搜索欢呼!
  • Heartbeat 是 Firefox 桌面版中的一项新反馈功能:每天,Firefox 用户的随机子集将看到一个通知栏,有机会提供有关其体验的反馈。您可以在 Heartbeat 项目页面 上查看屏幕截图并详细了解其工作原理。

Firefox for Android

这一次,Firefox for Android 将进行安全性和稳定性版本更新。对用户影响最大的变化是:文件下载性能提升,以及添加了一些新的语言环境:阿尔巴尼亚语、缅甸语、下索布语、松海语、上索布语、乌兹别克语。请阅读 Firefox Android 37 的所有安全修复列表完整的发布说明

HTML5 和 Web 平台

您现在可以在 Firefox 37 的生产内容中使用大量新的 Web 平台功能,以下是一些示例

请继续阅读 MDN 上的 Firefox 37 for Developers 文章,详细了解其他所有内容。

开发者工具

如果您使用的是 Firefox Developer Edition,那么这些添加不会是新闻,但如果您一直使用发布版本进行开发,那么有一些新功能值得注意

  • 新的 网络监视器中的安全面板 显示网络请求的安全详细信息,例如为每个资源协商了哪些密码,以及更多信息。 在此查看屏幕截图。以前,我们只显示站点信息对话框,其中包含顶级加载的信息,有时会误导人。新的 UI 还显示连接是否受 HTTP 严格传输安全或密钥固定保护。在 MDN 上详细了解 安全面板
  • 新的 页面检查器中的动画面板 显示有关您的动画的信息,并为您提供播放/暂停按钮。请阅读 Firefox DevTools 动画指南观看视频
  • WebIDE 现在可以在将您的应用程序推送到设备之前运行自定义构建步骤,如果您想缩小代码或与您选择的 Web 应用程序构建工具集成,则可以使用此功能。 MDN 上的 WebIDE 文档 解释了如何使用此功能。

安全性

Firefox 37 进行了大量安全更改。大多数更改不需要采取任何操作,但如果您是网站运营商,您应该查看这些更改是否会影响您。非常感谢 Firefox 安全工程师 David Keeler 帮助破译发布说明的这一部分。

  • 我们删除了对证书和 TLS 中 DSA 的支持,因为我们发现几乎没有人使用这些。如果您是网站运营商,并且您的证书确实使用 DSA 算法签名,请与您的 CA 联系并获取新证书。您可以使用 `openssl x509 -in {证书文件} -text -noout` 检查并搜索“签名算法”。如果您确实拥有这些证书之一,并且没有更改它,用户将看到一个可覆盖的错误。
  • 由于错误,HTTP/2 AltSvc 暂时被禁用我们实现了对机会加密的 HTTP/2 AltSvc 支持。此功能允许对原本是明文的未经身份验证的连接进行 TLS 加密。配置非常简单,Patrick McManus 已编写了 在您的服务器上设置它的说明
  • 我们禁用了不安全的 TLS 版本回退。如果安全的站点无法正常工作,您可以尝试在 about:config 中将“security.tls.version.fallback-limit”首选项设置为 1,看看是否可以正常工作。如果您在任何地方看到此问题,请 提交技术传道错误,并注明站点的 URL,以便我们与运营商一起更新它。网站运营商应确保其服务器不是 TLS 不容忍的,您可以使用 SSL Labs 工具 进行此操作。
  • 用户现在可以报告各种与证书无关的错误的 SSL 连接问题。例如,如果用户遇到不可覆盖的 TLS 错误,他们现在可以直接从错误页面将报告发送到 Mozilla。报告中包含的信息包括您尝试访问的域、服务器发送的证书、时间、遇到的错误以及一些用户代理信息。我们使用此信息与网站运营商合作修复其配置,并改进检测这些问题的软件,因此请务必发送报告。查看 此问题的外观截图
  • TLS 快速启动优化现在需要使用 AEAD 结构的密码套件。如果您正在运行服务器,并且快速启动未按预期工作,请尝试使用 AEAD 密码套件。了解有关 Wikipedia 上的 AEADRFC 5288 中的更多信息。Firefox 目前仅支持 AES-GCM 这种 AEAD 密码套件。
  • 我们现在将弱密码的使用情况记录到 Web 控制台。例如,如果您访问使用 SHA-1 证书的站点,并且打开了 Web 控制台,您现在将看到类似这样的消息:“此站点使用 SHA-1 证书;建议您使用使用比 SHA-1 更强大的哈希函数的签名算法的证书。了解详情…” 如果您运行站点,并且您的证书使用 SHA-1 签名,请从您的 CA 获取新证书。

Firefox Beta

在短短六周内,Beta 版将可供所有人使用,成为 Firefox 38。以下是您将获得的一些功能

  • 所有 Firefox 首选项现在都在一个新的基于选项卡的 UI 中。
  • 通过推测连接预热,改进页面加载时间。
  • Mac OS X 上的 MSE 支持。
  • 对加密媒体播放的 EME 支持。
  • Web 平台功能:Web Worker 中的 WebSockets、KeyboardEvent.code 和 BroadcastChannel API。

请阅读 Firefox 38 Beta 版本说明,获取完整列表。

Firefox Developer Edition

这个版本的 Firefox Developer Edition(将是 Firefox 39)简直令人难以置信。开发者工具越来越接近于无法与魔法区分开的东西。向开发者工具团队为即将推出的功能表示衷心的感谢。

  • 开发者工具: 从 WebIDE 中对 Firefox OS 设备进行 Wi-Fi 调试、在检查器的标记视图中拖放节点、Web 控制台输入历史记录持久化、在您离线时 localhost 可与 WebSocket 连接一起使用,以及三次贝塞尔曲线工具提示现在显示了一个您可以从中选择的预设库,让您的 CSS 动画变得超级流畅。
  • Web 平台功能 包括 Aria 1.1 中的“switch”角色、CSS 滚动捕捉点、缓存 API、Fetch API、<link rel=”preconnect”> 等等。

阅读本版本 Firefox Developer Edition 的完整发行说明

Nightly

在 Firefox 的Nightly 分支中,许多功能都处于积极开发阶段。在这里,您可以测试实验性的 Web API,并查看尚未面向数亿用户发布的用户界面浏览器功能。您可能会遇到一两次崩溃,也可能会丢失会话数据,但您也可能会体验到未来愿景和奇观的魅力。它是浏览器的 Mos Eisley – 一个危险的地方,但我们为了行动而留在这里。

许多功能已经完成并包含在 Nightly 版本中,这些功能默认启用或通过预设启用。

  • E10s – Web 内容在与浏览器 UI 分开的进程中运行。
  • 部分实现 Service Workers。
  • Shumway – 用 JavaScript 实现的 Flash 针对某些网站启用。

至此,第一版《Trainspotting》结束。请在评论中告诉我们您的想法,以及您想看到更多什么内容!

关于 Dietrich Ayala

更多 Dietrich Ayala 的文章……


5 条评论

  1. tranche

    哇,太酷了:我们有了 IndexDB Web Workers!

    Firefox 的改进令人印象深刻。
    作为一名 Web 应用开发者,我仍然担心一件事,也许这是 Web 应用中最令人讨厌的未实现功能:Firefox 中缺少 Date 输入支持:https://bugzilla.mozilla.org/show_bug.cgi?id=888320
    而且没有人正在开发它。
    希望我在接下来的几期“Trainspotting”中读到对该功能的支持……在 IE/Spartan 支持它之前。

    2015 年 4 月 8 日 02:27

  2. Christian

    感谢您的总结。干得好。

    openssl 命令中缺少命令
    `openssl -in {certificate file} -text -noout` 应改为
    `openssl x509 -in {certificate file} -text -noout`

    此致
    Christian

    2015 年 4 月 8 日 07:34

    1. dietrich@mozilla.com

      很好,我更新了帖子。感谢 Christian!

      2015 年 4 月 8 日 10:35

  3. Ping

    我认为 DOM 检查器中存在一个错误。当 DOM 通过 CSS 转换进行缩放时。检查器显示的蒙版大小不正确。

    2015 年 4 月 13 日 18:20

    1. dietrich@mozilla.com

      您好 Ping!感谢您告知我们。

      您能提供更多信息吗?我询问的 DevTools 团队开发人员说他无法重现问题。

      您是否有我们可以测试的页面 URL?

      谢谢!

      2015 年 4 月 13 日 19:51

本篇文章的评论已关闭。