Firefox 144 亮点速览:更快的插件、更智能的开发者工具及标签组增强

本文详细介绍了Firefox 144版本的多个技术更新,包括WebExtensions API新增getBytesInUse方法、开发者工具中新增反跟踪调试面板与CSS变量跳转定义、性能优化、以及标签组功能的改进与bug修复。

亮点

  • Leo Liu [:leoliu] 在 devtools.anti-tracking.enabled 标志后添加了反跟踪调试面板(#1972771)。
  • Alexandre Poirot [:ochameau] 在标记视图的事件工具提示中添加了“用户定义”徽章,以区别于“原生”事件(并可能发现Firefox不支持的事件)(#1977628)。
  • Nicolas Chevobbe [:nchevobbe] 在检查器的规则视图中为CSS变量添加了“跳转到定义”图标(#1278517)。

Firefox团队的朋友们

介绍/致谢

  • 新贡献者Merci chao提交了大量有效且有用的标签组bug。

已解决的bug(员工除外)

  • 修复了多个bug的志愿者:
    • Alexander Kuleshov

新贡献者(🌟 = 第一个补丁)

  • Josh Berry 为 browser.tabs.onUpdated 事件添加了 groupId
  • Jacqueline Amherst [:jqln] 将 gPrivateBrowsingUI 移至其自己的文件,并避免加载它,除非/直到我们遇到第一个隐私窗口。

项目更新

插件 / Web扩展

附加组件管理器 & about:addons

  • Firefox 144中已完全移除 InstallTrigger API 实现 🥳 – Bug 1776426 / Bug 1979227
    • 感谢Gregory Pappas在此项工作中的巨大帮助!
  • 修复了由于先前安装的附加组件中缺少新扩展元数据属性而导致附加组件更新自动取消的问题 – Bug 1984724。
  • 改进了 about:addons 附加组件卡片消息栏与附加组件卡片标题之间的间距 – Bug 1984872。
    • 感谢Sujal Singh为此项about:addons卡片改进做出的贡献!

WebExtensions 框架

  • 修复了当用户可能从附加组件安装后对话框中点击“扩展设置”链接时遇到的定制模式和键盘快捷键问题 – Bug 1983869。
  • 修复了阻止与扩展上下文菜单项关联的SVG图标成功加载的回归问题 – Bug 1986618(在Firefox 143中修复,该版本也是最初通过Bug 1979338引入此回归的版本)。

WebExtension API

  • 在Firefox 144中,browser.storage.localbrowser.storage.managed WebExtensions API 现在也提供了 getBytesInUse API 方法 – Bug 1385832。
    • 感谢Nathan Gross为WebExtensions存储API贡献了此增强功能!
  • browser.tabs.onUpdated API 方法添加了缺失的 groupId 属性 – Bug 1984553。
    • 感谢Josh Berry报告并修复了我们WebExtensions API JSONSchema定义中的这个遗漏。
    • 注意:此更改主要影响基于我们JSONSchema定义生成的TypeScript类型定义。即使没有对JSONSchema进行此修复,groupId 属性也已在 browser.tabs.onUpdated API 事件详情中设置。

开发者工具

  • Artem Manushenkov
    • 记录了“启用分离控制台”设置,并为图像添加了缺失的alt属性,并更新了截图(#1984296, #1981384, #1984788)。
    • 从debugger文件夹中移除了未使用的npm脚本(#1984661)。
    • 在清除按钮的标题中添加了用于清除控制台的键盘快捷键(#1984993)。
  • Sebastian Zartner [:sebo] 为非块容器上使用 overflow 添加了非活动CSS警告(#1583902)。
  • Riz 从网络监控器堆栈跟踪中移除了Chrome帧(#1280266)。
  • Robert Longson [:longsonr] 修复了当 devtools.netmonitor.requestBodyLimit=0 时会向用户显示无效消息的问题(#1986196)。
  • David Shin[:dshin] 修复了一个仅限Chrome的方法,以使选择器高亮器适用于 @scope 规则(#1980210)。
  • Masayuki Nakano [:masayuki] 修复了当节点因其父节点的 innerHTML 更新而被移除时的“在节点移除时中断”功能(#1984312)。
  • Holger Benl [:hbenl] 修复了响应式设计模式中截图的问题(#1979518)。
  • Alexandre Poirot [:ochameau] 使React避免为非活动/后台标签页中的开发者工具进行更新(#1897765)。
  • Alexandre Poirot [:ochameau] 修复了在调试器中获取iframe源内容的问题(#1977100)。
  • Alexandre Poirot [:ochameau] 修复了从控制台堆栈跟踪中打开一些 webpack-internal:///./ 源的问题(#1982271)。
  • Hubert Boma Manilla (:bomsy) 使得在网络监控器事件中,如果连接仍然打开,可以看到服务器发送的事件(#1830230)。
  • Julian Descottes [:jdescottes] 修复了一个会导致开发者工具崩溃的问题(#1979448)。
  • Julian Descottes [:jdescottes] 改进了我们用于检查给定网络请求是否为本地请求的正则表达式的性能(#1983755)。

WebDriver BiDi

  • Sasha 更新了 emulation.setLocaleOverrideemulation.setTimezoneOverride 命令,以同时将覆盖应用于通过WebDriver BiDi创建的现有沙箱。
  • Sasha 实现了 emulation.setScreenOrientationOverride 命令,该命令允许客户端按浏览或用户上下文覆盖屏幕方向。
  • Henrik 在Marionette中将元素的 scrollIntoView 算法恢复为始终使用即时滚动行为。这撤销了Firefox 97中引入的更改,该更改已将行为切换为auto。此恢复解决了使用平滑行为的元素滚动时潜在的竞争条件问题。
  • Julian 更新了 browsingContext.navigate,使其在导航被另一个导航中断时成功并停止抛出错误。通常,这可能发生在脚本更新 window.location 时。

代码检查、文档和工作流程

  • mlucks 启用了ESLint Lit规则 no-value-attribute
  • Standard8 修复了 mach lint 的详细日志记录。

配置文件管理

  • 我们一直在逐步推广(目前为5.5%),配置文件遥测数据看起来良好。
  • OMC和Nimbus已完成向多配置文件数据存储的迁移,其集成测试和遥测数据也看起来很健康。
  • 我们计划在144版本进行全面推广(在支持多配置文件备份之前,Windows 10用户除外)。
  • 已关闭的bug:
    • 贡献者修复!🎉 Alexander Kuleshov 修复了 bug 1987225,移除了未使用的 gRestartMode 变量。
  • 其他已关闭的bug:
    • 1950741 – 在 about:newprofile 中选择非系统主题时,过度滚动页面会在过度滚动区域显示不同的页面背景。
    • 1950743 – 在 about:newprofile 中通过Tab键切换到“探索更多主题”链接时,链接的焦点环会跨越整个容器,而不仅仅是链接本身。
    • 1966284 – 在 about:about 中隐藏新的配置文件管理器页面(新建、编辑、删除)。
    • 1979898 – 移除使用 MOZ_APP_DATA 时添加的一些无关目录。
    • 1984193 – 为头像选择器添加悬停工具提示。
    • 1985340 – 更新配置文件头像的alt文本以匹配工具提示文本。
    • 1986080 – 更新配置文件头像的aria标签文本以匹配工具提示文本。

搜索与导航

  • adw 继续致力于Google Lens功能,该功能允许用户使用上下文菜单搜索图像(1987045, 1986301)。
  • Standard8 一直在进行一项实验,通过Oblivious HTTP发送搜索建议以保护隐私(1984624)。
  • Standard8 将urlbar代码转换为使用 moz-src URI。
  • Mandy 一直在致力于为Perplexity添加本地化的热门URL结果,该功能仍隐藏在实验后面(1985515, 1984201)。
  • Dao 正在使地址栏更加模块化,以供其他功能使用。例如,已进行了一些准备工作来支持搜索栏(1985734, 1985833, 1986128, 1986129)。
  • Mortiz 和 adw 继续致力于为建议显示相关日期(1986685, 1986786, 1981490, 1986680)。
  • Daisuke 正在致力于Yelp在线建议(1986224)。
  • Dale 正在致力于统一信任面板,该面板将告知用户网站是否安全。这是一个结合了隐私盾牌和页面信息图标及对话框的新设计(1976108)。

Storybook/可复用组件/Acorn设计系统

  • 一些与Figma Code Connect相关的新文档已添加到Storybook。
    • 主要是关于添加新的Code Connects,但该部分涵盖了在Figma Dev Mode中的使用。
  • 更多的边框半径标记已填写,并出现在Storybook的标记表中。
  • Moz-promo 现在避免在必要时才换行动作按钮(倾向于保持单行)Storybook(窄示例)。
  • 使用自动Fluent data-l10n-attrs 填充的MozLitElements(在属性定义中设置 fluent: true)现在可以有额外的每个实例的 data-l10n-attrs(现在此属性是添加的,而不是被替换)Bug 1987682。
    • 这可能特别适用于 moz-buttonaccesskey,由于Bug 1945032,它目前不是Fluent属性(如果你有一个带有 accesskey 的隐藏HTML元素,它仍然会触发,将在chrome文档中停止这样做,因为XUL就是这样工作的)。

标签组

  • dwalker 完善了“折叠组中的活动标签页”功能(1979067, 1971388)。
  • jswinarton 完善了折叠标签组悬停预览面板(1981197, 1971235, 1981201, 1983054)。
    • 现已进入Nightly版本,可能在Firefox 145中发布。
  • 特别感谢贡献者Merci chao在过去一个月中提交了17个标签组bug!所有这些bug都描述清晰、可操作,有时甚至包含了修复方案。
comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计