以下是 8 月份针对代码、数据和工具的更新,这些工具用于支持MDN Web 文档
- 迁移了 95% 的兼容性数据
- 提高了性能和体验
- 维护平台
- 发布了调整和修复,合并了 400 个拉取请求,包括来自 55 位新贡献者的 78 个拉取请求
以下是 9 月份的计划
8 月完成的工作
迁移了 95% 的兼容性数据
MDN 内容团队在 8 月优先审阅和合并浏览器兼容性数据拉取请求 (PR),并实现了将打开的 PR数量减少到 50 个以下的目标。该团队审阅并合并了85 个 PR,这些 PR 在月初时是打开的,包括来自Dominique Hazael-Massieux的用于捕获重复标识符的模式更改 (PR 1415)。该团队还合并了123 个 PR,这些 PR 是在当月打开的,包括来自ExE Boss的用于 BCD 编辑的Visual Studio Code 配置 (PR 2498)。
其中许多是迁移 PR,并且迁移现在已经完成了 95%,包含了超过 6,300 个页面上的 10,000 个功能。一些剩余的迁移工作将是直接的。其他数据源将需要策略和格式讨论,例如事件支持和摘要页面。在迁移数千个更简单的功能后,这些讨论将更容易。
现有数据也得到了关注。贡献者修正了不正确的数据,澄清了浏览器支持某个功能的时间和条件,并庆祝了新浏览器版本中的支持。随着项目从迁移过渡到持续维护,我们预计会有一系列稳定的维护 PR。
Florian Scholz一直致力于将此项目打造成社区项目,通过电子表格组织工作,并过渡到问题,因为剩余的工作变得易于管理。这是一个成功的努力,GitHub 洞察显示,大多数贡献并非来自 MDN 员工。
感谢ExE Boss (24 个 PR)、Connor Shea (23 个 PR)、Claas Augner (18 个 PR)、David Ross (17 个 PR)、Lucian Condrea (13 个 PR)、Joe Medley (8 个 PR),以及我们所有的贡献者,感谢员工和工具构建者让审阅队列保持运转!
提高了性能和体验
Tim Kadlec在 7 月份对 MDN 进行了审计,并创建了性能指标和目标,以及推荐更改。在 8 月份,我们开始实施这些更改。Schalk Neethling通过优化英雄图片 (PR 4903) 和移除带有图片的部分 (PR 4912),提高了首页的加载时间。Ryan Johnson使用Speedcurve (PR 4902) 自动化了记录部署和重新计算指标。在接下来的几个月里,我们将继续致力于性能改进。
以前,如果您想链接到页面中的某个部分,例如 MDN 关于为什么应该为<input>
元素使用标签的建议,您必须使用开发者工具获取该部分的 ID。Schalk 添加了部分级别的锚链接 (PR 4901),这样您就可以快速获取链接并将其粘贴到代码评审中。
维护平台
Anthony Maton正在将 Kuma 切换到 Python 3。我们的memcached 库尚未更新到 Python 3,Anthony 并没有进行库替换,而是简化了缓存配置并切换到 Redis (PR 4870)。他继续进行增量更改 (PR 4899),目标是建立一个共享的 Python 2/Python 3 代码库,并在年底前切换到 Python 3。
我完成了 ElasticSearch 5.6 更新,这比预期要困难。从 1.7 更新到 2.4 只需要更新服务器 (PR 4192),甚至在2017 年 4 月的报告中都没有提及。ElasticSearch 不再提供跨越主要版本的库。从 2.5 更新到 5.6 需要更新客户端库、使用它们的 Kuma 代码 (PR 4906) 和服务器 (PR 4904),所有这些都需要同时进行。此更新包含一些小幅修复,使用 5.x 进行搜索似乎更快,但网站搜索仍然需要大量工作。下一个更新,到 ElasticSearch 6.x,将在 2019 年 3 月进行。
Ryan Johnson正在继续从MozMEAO迁移到 Mozilla IT 支持的工作。Ed Lim在Dave Parfitt和Josh Mize的支持下,配置了新的 Kubernetes 集群 (PR 24) 和后端服务 (PR 31)。Ryan 配置了新的 Jenkins 服务器以运行并行测试和部署 (PR 4931),并将 Docker 镜像发布到新仓库 (PR 4933)。我们现在同时部署到MozMEAO 暂存环境和MozIT 暂存环境。
我们将在 9 月份继续进行生产和灾难恢复环境,并优先处理基础设施问题。目标是在 10 月份切换流量。
发布的调整和修复
8 月份合并了 400 个 PR
- 208 个 mdn/browser-compat-data PR
- 53 个 mozilla/kuma PR
- 34 个 mdn/bob PR
- 34 个 mdn/interactive-examples PR
- 29 个 mdn/kumascript PR
- 17 个 mdn/data PR
- 16 个 mdn/infra PR
- 4 个 mdn/css-examples PR
- 2 个 mdn/learning-area PR
- 1 个 mdn/webextensions-examples PR
- 1 个 mdn/sw-test PR
- 1 个 mdn/webaudio-examples PR
其中包括一些重要的更改和修复
- 修复标准 DPI 显示屏上的调查横幅 (Kuma PR 4907),来自Schalk Neethling。
- 如果语言首选项已设置,则避免“记住此首选项”对话框 (Kuma PR 4890),来自Safwan Rahman。
- 在用户个人资料中添加 Discourse 字段 (Kuma PR 4930),来自Mihir Karbelkar。
- 改进文档清除 (Kuma PR 4934),来自我。
- 提高交互式示例性能指标的可靠性 (Kuma PR 4935),来自Schalk Neethling。
- 将
KUMA_WIKI_IFRAME_ALLOWED_HOSTS
替换为ALLOWED_IFRAME_PATTERNS
(Kuma PR 4940),来自我。 - 将调查横幅替换为 Firefox 开发横幅 (Kuma PR 4938),来自Schalk Neethling。
- 在移动设备上,在兼容性表格中显示浏览器名称而不是图标 (Kuma PR 4948),来自Schalk Neethling。
78 个拉取请求来自首次贡献者
- 在 Safari 11.1 中添加 Service Worker 支持 (BCD PR 1881),来自Abdón Rodríguez Davila。
- 修正 SMIL 兼容性信息 (BCD PR 1956),来自Robert Longson。
- 为
Element
添加兼容性数据 (BCD PR 2316),来自Bobu aka Sébastien。 - 为
PositionError
添加兼容性数据。 (BCD PR 2398),来自Deepraj Pandey。 - 修复移动版 Edge 对
gap
、row-gap
和column-gap
的支持(BCD PR 2500),来自 Kumar Harsh。 - 更新
setIcon
以包含 Edge 说明(BCD PR 2513),来自 Morgan Gangwere。 - 添加缺失的
<input type="password">
描述(BCD PR 2543),来自 weary-adventurer。 - 更新
datalist
,Android WebView 不支持。(BCD PR 2544),来自 Valentin。 - 将“ExperimentalCanvasFeatures”重命名为“Experimental Web Platform Features”(BCD PR 2547),来自 Indi Kernick。
- 移除 Safari 对 SVG
<use>
中href
的支持(BCD PR 2548),来自 Michal Miky Jankovský。 - 移除 Firefox Android 对
proxy.settings
的支持(PR 2550),来自 Martin Giger(首次贡献 BCD)。 - 移除 Edge 对
chrome_url_overrides
的支持(BCD PR 2556),来自 Lucas Everett。 - 在 Edge 17 中添加对
Upgrade-Insecure-Requests
的支持(PR 2561),以及在 Edge 中添加对:matches()
的支持(PR 2578),来自 Eric Eggert。 - 在 Chrome、Opera 和 Edge 中添加对
Request.destination
的支持(BCD PR 2562),来自 Nicolas Hoizey。 - 在 Safari 10.1 中添加对
InputEvent.getTargetRanges()
的支持(PR 2565),以及在 Opera 53 和 Chrome 66 中添加对异步剪贴板 API 的支持(PR 2703),来自 Makoto Kato。 - 在 Edge 中添加对
onbeforeunload
的支持(BCD PR 2566),来自 Sumit Chahal。 - 更新对
-webkit-overflow-scrolling
的支持,不支持(BCD PR 2577),来自 Summon528。 - 更新 Safari 和 Edge 的
X-Frame-Options
兼容性(PR 2579),以及修复 Chrome 和 Opera 的Navigator.share
兼容性(PR 2595),来自 Nick Zahn。 - 迁移
Coordinates
的兼容性数据(BCD PR 2587),来自 Omar Boukli-Hacene。 - 更新 IE 和 Edge 的
window.open
支持(BCD PR 2594),来自 David Patterson。 - 使用
menus
权限的正确名称(PR 2612),以及使用contextMenus
权限的正确名称(PR 2613),来自 Jay Linski。 - 移除移动版 Safari 对 SVG
<use>
中href
的支持(BCD PR 2616),来自 Erno。 - 在 Chrome 62 中添加对数字字体重量的支持(PR 2619),以及将 RGBA 十六进制表示法的支持从 Chrome 63 移动到 Chrome 62(PR 2630),来自 Kasper Isager。
- 在 Safari 11.1 中添加
Promise.finally
支持(PR 2623),以及在 Safari 11 中添加对 Performance API 的支持(PR 2645),来自 jakub-g。 - 更新对
NetworkInformation.effectiveType
的支持(BCD PR 2656),来自 Seul-gi Choi(Chase)。 - 在 Firefox 3 和 4 中添加对 SVG 中
xml:space
的支持(BCD PR 2670),来自 linkmauve。 - 在 IE 11 中添加对
location.origin
和.toString
的支持(BCD PR 2672),来自 Nik Rolls。 - 在 Opera 中添加对
Document.hasFocus
的支持(BCD PR 2678),来自 Mass Carl。 - 迁移有关 Firefox 3.5 对 Geolocation API 支持的说明(BCD PR 2680),来自 Mingye Wang。
<details>
在 Edge 中没有开发(PR 2688),来自 Kagami Sascha Rosylight(首次贡献 BCD)。- 更新 Firefox 和 Edge 的
NetworkInformation
支持(PR 2689),以及在 BCD 中添加对Document.exitFullscreen
的支持(PR 2699),来自 Thomas den Hollander。 - 在 BCD 中添加 Edge 15 的
Element.closest
支持版本(BCD PR 2702),来自 Randall Leeds。 - 在 Edge 中添加对
word-break
的支持(BCD PR 2704),来自 k-utsumi。 - 修复
console.error()
调用中“user-agent”的拼写错误(Kuma PR 4916),来自 Stephen Donner。 - 移除对错误的重启命令的引用(Kuma PR 4922),来自 James Hobin。
- 为异步迭代器和生成器添加示例。(PR 1036),来自 Joe Medley(首次贡献交互式示例)。
- 添加
String
的concat
、ends
/startswith
、padend
/start
活跃示例(交互式示例 PR 1068),来自 Melissa。 - 添加
String[@@iterator]()
方法(PR 1069),创建String.raw()
方法的示例(PR 1070),以及 4 个来自 Irene Smith 的 PR(首次贡献交互式示例)。 - 使变量名称一致(交互式示例 PR 1090),来自 Roy Revelt。
- 改进示例代码(交互式示例 PR 1111),来自 Arjan Einbu。
- 为 CompatibilityTable.ejs 添加日语翻译(KumaScript PR 692),来自 hmatrjp。
- 添加 XPath 规范的数据(PR 726),修复 AddonSidebar 中
<a>
和<strong>
DOM 层级结构的错误(PR 771),以及将overheadIndicator
类添加到SeeCompatTable
(PR 788),来自 ExE Boss(首次贡献 KumaScript)。 - 更新 CSS4 文本规范(PR 735),来自 Jakob Krigovsky(首次贡献 KumaScript)。
- 添加 CSS 环境变量规范(KumaScript PR 748),来自 Nicolas Hoizey。
- 本地化 WebExtensions 侧边栏(KumaScript PR 755),来自 Etienne Wan。
- 添加日语翻译(KumaScript PR 763),来自 WhiteHawk。
- 将
scroll-snap
中的几个属性标记为已弃用(PR 251),来自 Dominique Hazael-Massieux(首次贡献数据)。 - 添加
place-items
属性。(PR 252),来自 Connor Shea(首次贡献数据)。 - 将 MDN URL 添加到 CSS 属性数据(PR 256),将 MDN URL 添加到 at-rules 数据(PR 258),以及 3 个来自 Daniel D. Beck 的 PR(首次贡献数据)。
- 将初始值
auto
添加到min-width
和min-height
(PR 263),以及将offset-
逻辑属性重命名为inset-
(PR 273),来自 Rachel Andrew(首次贡献数据)。 - 将
media-document(<string>)
添加到@document
(PR 268),来自 Estelle Weyl(首次贡献数据)。 - 为可变字体指南创建代码示例(PR 4),更新宽度和间距(PR 5),以及 2 个来自 Jason Pamental 的 PR。
- 修复拼写错误(learning-area PR 74),来自 Utkarsh Nag。
- 修复拼写错误(learning-area PR 91),来自 LittleMang。
- 对安装说明进行少量调整(sw-test PR 28),来自 Zunino。
- 添加音频分析器(webaudio-examples PR 7),来自 peterchang。
计划于 9 月进行
9 月,我们将继续开发新的改进的交互式示例,转换兼容性数据,迁移 MDN 服务,以及其他长期项目。
进行无障碍方面的黑客马拉松
我们对 3 月份 巴黎 MDN 黑客马拉松活动 的成果感到满意,并将于 9 月份再次举办。MDN 工作人员将在伦敦举行一周的会议和 2019 年规划会议,然后举办第四次 MDN 黑客马拉松活动,重点关注无障碍。我们计划编写文档、构建工具,并探索帮助 Web 开发人员使互联网对所有用户更具无障碍性的方法。
发布更多性能改进
我们将继续按照今年的 性能目标,改进建议的性能改进。
改进的一个领域是优化 MDN 对自定义 Web 字体的使用。这些字体通常需要下载,从而增加页面加载时间。一些插件和客户端(例如 Firefox Focus)默认阻止这些字体,从而改善移动设备体验。我们的目标是通过在初始页面加载后下载优化后的字体,以及避免使用像 FontAwesome 这样的必需自定义字体来改善桌面用户的体验。
另一个重点是交互式示例,它们非常有用,但对页面加载时间的影响很大。 James Hobin 正在努力满足将示例 直接加载到页面(而不是通过 <iframe>
)的要求。Schalk 正在为新功能和优化资产构建改进 资产构建器。
关于 John Whitlock
John 是一名 Web 开发人员,负责 MDN Web Docs 的引擎。