AMP 项目路线图
AMP 的持续开发由工作组进行,每个工作组都具有 AMP 特定领域的知识或兴趣。
为了使他们的工作对社区可见,所有小组都会定期提供状态更新,详细说明他们已完成的工作以及接下来的工作。
此处列出的所有更新都可以在 GitHub 上以 issue 的形式找到,我们希望您能加入那里的讨论!
选择工作组
故事
状态更新:2022 年 8 月 1 日,星期一盈利
状态更新:2022 年 5 月 9 日,星期一已完成的工作
Amp 盈利 - 2 个新的广告网络集成 - Google 广告现在已推出顶部粘性广告
故事广告 - 新一轮自动广告 + CTA 实验正在启动 - 正在测试新的 CTA 按钮选项 - 修复了进度条溢出错误 - 故事广告点击率下降调查
性能
状态更新:2022 年 5 月 9 日,星期一故事
状态更新:2022 年 5 月 2 日,星期一已完成的工作
故事预览
amp 故事 360
- 🐛 删除 GL 上下文处理 #38144
Amp 故事字幕
- 允许播放器获取/设置字幕状态 #37898
- 当在 amp-story 文档中并通过缓存提供时,使用 amp-story-captions 呈现视频字幕 #37899
- 实现默认的、可覆盖的 CSS #37900
- ✨ 具有样式的 style-preset 属性 #37967
- ✨ 从查看器获取和设置字幕状态 #38009
i18n
- 不要在可本地化的 UI 字符串中使用串联 #38060
amp 故事购物
amp-story-shopping
故事附件
- 🐛 修复 cta-image=none 显示链接图标的问题 #38109
故事系统层
- ✨ 添加切换字幕的 CC 图标 #37884
amp-animation
- ✨ 添加一个新属性,允许覆盖平移缩放因子。 #37965
其他
- amp-story-cta-layer I2D #34450
- 🚀 amp-story:使用 Services.urlForDoc 而不是 util 函数 #38026
- 🐛 如果所有标签都无效,则 amp-story-shopping 不显示 CTA,并修复页面附件打开时刷新时加载远程购物数据的问题 #38035
- 🌐 amp 故事购物“立即购买”CTA 大小写 #38096
- 🧪 实验:故事自动前进和新的 cta 按钮 #38097
- 🐛 移动 md 文件的目录以修复断开的链接(story-shopping、story-page-attachment、story-page-outlink) #38134
- 向故事消息 API 添加了获取页面计数的可能性 #38170
接下来是什么
盈利
状态更新:2022 年 5 月 2 日,星期一故事
状态更新:2022 年 4 月 8 日,星期五已完成的工作
amp-animation
- ✨ 添加一个新属性,允许覆盖平移缩放因子。 #37965
故事性能
故事动画
- 🐛 居中垂直平移 #38017
amp-story-shopping
- 向所有模板添加 productDescription 和最大长度 #37993
amp 故事字幕
- 🐛 在示例 html .vtt 文件中关闭语音标签 #37977
页面附件
amp 故事购物
amp 故事页面附件
- 🐛 添加路径元数据文档 #37988
AMP 故事付费墙
- ✨ 处理授予状态并在 amp-story-subscriptions 中显示/隐藏付费墙对话框 #37892
故事分析
- 🐛 修复预渲染分析未触发的问题 #37975
故事本地化
- 🚀 #37969
其他
接下来是什么
- 故事中的广告加载体验:视频海报和视频播放之间出现白屏
- ✨ [故事交互] 启用交互式免责声明对话框
- 🐛 [故事性能] 首次加载时在初始页面上禁用动画
- amp-story-player:Safari 中看不到上一个和下一个故事按钮
- [I2R] 通过 amp-orig-src 的 amp-video 缓存
- 🌐 [amp 故事购物] i18n “评论”字符串大小写描述
- ✨ [amp-animation] 添加一个新属性,允许覆盖平移缩放因子。
性能
状态更新:2022 年 4 月 2 日,星期六性能
状态更新:2022 年 4 月 1 日,星期五故事
状态更新:2022 年 3 月 2 日,星期三Observable
- ✨ 使 observable 在触发时可以安全移除处理程序。#37887
故事系统层
- 🚮 移除未使用的 storyHasAudio 状态属性 #37220
amp 故事购物
接下来是什么
- 发布 amp-story-shopping (分析,验证和文档)
- amp-story-captions(具有智能默认值的可自定义 CSS,自动使用 amp-story-captions 组件)
盈利
状态更新:2022 年 3 月 2 日,星期三已完成的工作
Amp 变现 - 为 amp-ad-exit 用途添加了同步 UACH 宏 - 对顶部粘性广告指标的分析
故事广告 - 重构故事页面以包含广告页面 - 分析故事广告性能上发生的回归
用户界面和可访问性
状态更新 2022 年 3 月 1 日 星期二已完成的工作
Alan * 本次冲刺休假
Beck * 在设计审查中展示了 Bento 调整大小保护
Dhruv * 调查了 amp-analytics 与 GA4 兼容所需的更改 * 调查了与 amp-img 和 amp-render 相关的错误
Keshav * 维护测试工作,例如重新映射依赖项,增强独立单元测试和 e2e 测试
William * 与 formidable 合作进行其 bento PRS 的移植
经验教训
接下来是什么
- 实现 bento 调整大小保护
- 为 bento 日期显示和日期倒计时 Web 组件发布 Mustache 支持
- 升级 third_part/ 中的 Mustache
- 继续增强测试
故事
状态更新 2022 年 3 月 1 日 星期二已完成的工作
故事本地化
- ✨ 将内联 JSON 用于本地化包 #37836
故事附件
- 🐛 因 closeButton 为 null 而导致的打开外部链接错误 #37833
盈利
状态更新 2022 年 3 月 1 日 星期二盈利
状态更新 2022 年 2 月 2 日 星期三已完成的工作
Amp 变现 - 自动广告允许供应商修改远程广告配置 - 修复查看器和顶部粘性广告冲突:现在广告将显示在锚点下方
故事广告 - 广告徽章和图标位置更新 PR
故事
状态更新 2022 年 2 月 1 日 星期二已完成的工作
故事视频
- 🚀 对于第一个 Web 故事页面的第一个视频,使用内联视频响应而不是发出 XHR 请求 #37499
故事文档
- 📖 修复页面附件文档位置 #37669
amp 故事页面附件
amp 故事购物
- 产品标签功能 #36734
- 附件模板逻辑 #36735
- PLP 模板逻辑 #36736
- PDP 模板逻辑 #36738
- PDP 轮播 #37091
- 🐛 如果页面上没有购物标签,则不要渲染购物 CTA #37503
- ✅ 将 i18n CTA 标签逻辑移到 shopping-attachment 组件中 #37515
- ♻️ 将 tag-id 重命名为 product-id #37527
其他
- 🖍 在太靠右的位置添加了购物标签翻转 #37195
- ✨ 为 amp-story-shoppping 组件添加了 camelCase #37533
- 🐛 amp-story-shopping 为 RTL 模式添加了正确的边距 #37568
接下来是什么
- 购物开发预览
- Amp 故事订阅(付费墙)
- 性能
盈利
状态更新 2022 年 2 月 1 日 星期二故事
状态更新 2022 年 1 月 4 日 星期二已完成的工作
性能
- 🧪 在桌面上按需延迟加载共享菜单 #37044
- 🚀 如果故事已转换,则禁用第一页的动画 #37135
- ♻️ 将性能服务提取到变量中 #37137
- 🚀 从本地化包中删除未使用的字符串 #37229
- 🚀 从主 amp-story 包中删除共享菜单 #37235
- 🌐 在从系统层移除后删除了声音文本本地化 #37218
- 🚀 将共享菜单移到单独的包中 #37179
分页按钮
- 🐛 分页前进按钮可见性状态 #37098
购物
系统层图标
- 🖍 替换了图标和样式 #37122
视频
- ✨ 添加了 ACAO 标头 #37160
接下来是什么
- 通过删除更多页面附件 UI、本地化字符串和 CSS 来进一步减小包大小
- 处理购物标签和附件
- 使系统层更具响应性,添加 CC 图标并更新“广告”标签
盈利
状态更新 2022 年 1 月 4 日 星期二性能
状态更新 2022 年 1 月 4 日 星期二已完成的工作
- 🚀 发布 amp-story 内联 CSS 实验。
- 🐛 修复 amp-toolbox 中的“latestVersion”错误。
- 🧪 为关于 LTS 的
amp-toolbox
AmpStoryCssTransformer 创建了测试。 - 💅 向 Core 和 Bento 添加 TS。
- 🚀 将构建系统迁移到 esbuild。
- 🐛 修复 amp-analytics 中各种 LCP 问题的 AMP LCP 问题。
接下来是什么
- 对 amp-geo 实验进行手动测试
- amp-toolbox 中的 AMP 缓存 URL 重写代码
- 对更多 Bento 目录进行类型检查
- WASM Jolt 原型
故事
状态更新 2022 年 1 月 3 日 星期一故事视频
- ✨ 检查缓存响应是否包含音频 #36283
故事性能
- 🚀 删除交互式主机样式 #37472
amp 故事
- 🐛 将 toggleAttribute 更改为 set/removeAttribute #37420
接下来是什么
- 购物 PLP 和标签
- Amp 故事订阅(付费墙)
- 性能
用户界面和可访问性
状态更新 2022 年 1 月 1 日 星期六已完成的工作
- 修复了客户端 ID 在查看器中的下一页上丢失的长期存在的错误 (#36984)
- 继续进行 Bento 重构工作,以更新 Bento 和 AMP 组件的类层次结构
- 继续进行 React storybook 测试
经验教训
接下来是什么
- 构建并发布 @bentoproject/core
- 删除
bento
实验标志 - 开始研究 bento-analytics,amp-analytics 的 bento 端口
- 完成 React storybook 测试
盈利
状态更新 2022 年 1 月 1 日 星期六已完成的工作
Amp 变现 - Web 插页式广告用户体验讨论
故事广告 - 广告徽章与关闭按钮重叠的修复 UX 讨论 - 新的分析宏提案:用于故事广告
- 分析了故事广告的明显回归 - amp-img 服务器端渲染在 Google 转换器上启动
盈利
状态更新 2021 年 12 月 6 日 星期一盈利
状态更新 2021 年 11 月 8 日 星期一已完成的工作
Amp 变现 - amp-ad 粘性广告查询参数修复和 doubleclick 的自动隐藏修复 - 审查了 Bento Google Ads 的提案
故事广告 - 缺少广告 CTA 的调查
接下来是什么
Amp 变现 - Web 插页式广告实施 - 广告转换器:实验删除 amp-pixel 服务器端渲染
故事广告 - 使用 Adsense/DoubleClick 从流量中收集故事指标
用户界面和可访问性
状态更新 2021 年 11 月 5 日 星期五已完成的工作
- 将共享依赖项移动到
bento.js
- Bento 独立组件的端到端测试
- 为 Bento 发布做准备
- 重构 stories 模板,使用 JSX(而不是
htmlFor()
和其他模板策略)
经验教训
故事
状态更新 2021 年 11 月 5 日 星期五故事
- 当在索引 != 0 的页面上加载故事时,storyContentLoaded 事件不会触发 #36571
其他
接下来是什么
- 继续进行 故事购物计划 的工作
- 调查嵌入故事的技术方法
- 调查
amp-subscriptions
在amp-story
中的兼容性 - 调查初始页面加载的性能和用户体验改进
故事
2021 年 11 月 02 日星期二的状态更新已完成的工作
Amp 故事购物
故事性能
- 🚀 如果可用,使用 dvh,而不是 vh #37003
故事响应性
- 🐛 需要使用预设溢出可见内容 #36912
故事音频
- 🖍 将音频均衡器从视频移动到故事系统层 #36264
文档
- 📖 添加了 amp-video 文档,说明缓存与 crossorigin 不兼容 #36772
amp 故事 360
- ♻️ 使用 JSX #36942
amp 故事平移媒体
提示:随时按 control+c 进入 REPL。
已完成的工作
Amp 故事购物
故事性能
- 🚀 如果可用,使用 dvh,而不是 vh #37003
故事响应性
- 🐛 需要使用预设溢出可见内容 #36912
故事音频
- 🖍 将音频均衡器从视频移动到故事系统层 #36264
文档
- 📖 添加了 amp-video 文档,说明缓存与 crossorigin 不兼容 #36772
amp 故事 360
- ♻️ 使用 JSX #36942
amp 故事平移媒体
amp-story-page-attachment
- ♻️ 修订文档中的 cta 文本 #36426
故事文档
- 📖 更新嵌入组件文档 #36904
故事嵌入
- 🚀 移除对像 amp-twitter 这样的扩展组件的支持 #36851
rel=stylesheet
- ✨ 允许链接指向转换后的 amp 文档中的 amp-story-1.0.css #36844
其他
- Firefox 浏览器中的 Web Stories 预览虚拟设备溢出屏幕 #36964
接下来是什么
- ✨ [故事交互] 启用交互式免责声明对话框
- 🐛 [故事性能] 首次加载时在初始页面上禁用动画
- ✨ [故事视频] 检查缓存响应是否包含音频
- 🚀 [故事性能] 移除重复的共享样式 [WIP]
- 🚀 [故事性能] 仅当转换器尚未执行此操作时才更改 dvh。故事中加载体验不佳:视频海报和视频播放之间出现白屏
用户界面和可访问性
2021 年 10 月 02 日星期六的状态更新已完成的工作
- 手动验证 Bento 独立模式 + 更新 README 中的代码片段
- Bento 独立模式的端到端测试
bento-timeago
bento-youtube
bento-fit-text
- 将 Bento 独立版作为 NPM 的一部分发布
- 发布
bento.js
- 从 z-index CSS 检查中移除
dist/
经验教训
接下来是什么
- 将共享依赖项移动到
bento.js
- 在没有 Mustache 的情况下,以独立模式渲染动态模板
- 在 Bento 中实现
dailymotion
的 AMP
故事
2021 年 10 月 02 日星期六的状态更新已完成的工作
故事性能
amp-story-page-outlink
- 🐛 强制页面 outlink 使用 target='_top',以防止 Safari 上导航中断 #36428
story-ads
- 🐛 使用 target=_top #36419
amp 故事 360
- 🚮 移除不必要的 .then 语句 #36409
故事文档
- 📖 添加了视频需要自动播放的内容 #36398
故事开发者工具
- 🐛 修复了验证器未加载的问题 #36404
故事加载
- 🐛 在预渲染期间发送 storyContentLoaded #36307
Amp 故事平移媒体
- 🐛 设置 amp img 元素的宽度和高度 #36340
桌面单页
- 2021-background 预设未进行最佳对齐 #35796
接下来是什么
- 购物体验开发 - LCP 改进
盈利
2021 年 10 月 02 日星期六的状态更新已完成的工作
Amp 货币化 - 修复了 amp-lightbox amp-ad 粘性 CSS 冲突 - 更新了 amp-ad 粘性属性验证器以允许顶部和右下角 - amp-ad 粘性广告查询参数修复和 doubleclick 的自动隐藏修复
故事广告 - 修复了分析时间戳丢失问题 - 探索放松 amp 广告要求的想法 - 修复了黄色进度条未正确填充的错误 - 修复了在滑动时使用 top=_blank 的错误
接下来是什么
Amp 货币化 - 重新启动粘性广告实验 - Web 插页式广告频率限制讨论
故事广告 - 分析重新设计 - 运行带有新 CTA 的自动前进以监控影响 - 完成添加新库存的文档 - 用于选择加入实验的新演示页面
故事
2021 年 10 月 01 日星期五的状态更新amp-story-panning-media
- 🐛 在 amp-img el 上设置宽度 #36217
其他
接下来是什么
- 开发 amp-story-shopping 设计文档
- 故事视频编解码器开发
盈利
2021 年 10 月 01 日星期五的状态更新已完成的工作
Amp 货币化 - 已启动粘性广告槽(120 像素宽,视口 > 1024 像素宽)- amp-sticky-ad 到 amp-ad 升级实验再次运行:性能优于修复前,但仍需调查 - amp-auto-ads 支持插入顶部粘性广告 - 解决大量新网络集成 PR 的积压
故事广告 - 分析重新设计讨论 - 自动前进发布分析
接下来是什么
Amp 货币化 - amp-sticky-ad 到 amp-ad 升级实验调查 - 快速获取广告网络时间戳
故事广告 - 分析重新设计 - 分析时间戳调查 - 运行带有新 CTA 的自动前进以监控影响
Bento
2021 年 10 月 01 日星期五的状态更新故事
2021 年 9 月 02 日星期四的状态更新故事性能
- 🖍 为单元和示例故事添加了 CSS 规则 #36007
视频
- 如果对视频缓存的请求失败,则回退到原始来源 #36071
其他
接下来是什么
- Amp 故事购物技术设计
- LCP 改进
盈利
2021 年 9 月 02 日星期四的状态更新已完成的工作
Amp 货币化 - 粘性广告槽代码完成(120 像素宽,在视口 > 1024 像素宽时)- amp-sticky-ad 到 amp-ad 升级实验修复 - 查看器中 attribution-reporting
工作代码完成
故事广告 - 管道修复 - 分析改进文档
Bento
2021 年 9 月 02 日星期四的状态更新完成了什么 🍱
amp-reddit
:测试amp-iframe
:实现 可见性功能amp-mathml
:已转换为 Bentoamp-lightbox-gallery
:错误修复worker-dom
:提高性能- 更多文档!
下一步 ⏩
amp-dailymotion
:转换为 bentoamp-analytics
:转换为 bentoamp-jwplayer
:转换为 bento- 将 bento 包发布到 npm
故事
2021 年 9 月 01 日星期三的状态更新已完成的工作
故事性能
- 🚀 将“仅加载第一页”实验设置为 50% #35770
- 🚀 设置故事预样式 #35829
- ♻️ 通过使用 attr 而不是类来简化模板 CSS #35861
- 🚀 将“仅加载第一页”实验设置为 1 #35970
故事动画
- 🐛 修复预渲染恢复动画 #35987
故事视频
- 📖 添加了 Google 缓存的视频文档 #35609
故事图像
- 在 iOS 15 故事中,长按图像会展开图像 #35381
Amp 故事页面附件
- 🐛 将 title 属性传播到可拖动抽屉标题 #35863
动画预设
- 桌面面板模式,在页面转换后启动动画 #29753
其他
- amp-story-page-outlink cta-accent-color 属性的默认值 #34983
- 故事播放器上的暂停按钮不起作用 #35640
- 🐛 在附件关闭时重置页面附件滚动位置 #35778
- 移除桌面 3 面板 UI 和相关代码。 #35623
- 解决 Chrome 上 ScreenOrientation 锁非法调用错误 #35659
- 🐛 在工具提示覆盖层上切换桌面属性 #35772
接下来是什么
- 故事中的购物集成
- 翻译字符串更新
盈利
2021 年 9 月 01 日星期三的状态更新已完成的工作
Amp 货币化 - attribution-reporting
端到端测试
故事广告 - 生态系统分析改进 - 新的 CTA 实验开始 - 自动前进发布推出
接下来是什么
Amp 货币化 - attribution-reporting
对不同查看器的支持 - Web 插页式广告
故事广告 - 监控新 CTA 性能 - 确定自动生成的 DV3 广告的范围
性能
2021 年 9 月 01 日星期三的状态更新Bento
2021 年 9 月 01 日星期三的状态更新完成了什么 🍱
组件
BentoDailymotion
代码完成useIntersectionObserver
自定义 Hook 已合并,并被amp-timeago
、amp-iframe
使用BentoCarousel
错误修复,支持 RTL- 添加了对切换占位符和回退的支持,并在 AMP 模式 ampproject/amphtml#35821 中使用
- 将 Bento Preact 组件重命名为以
Bento
为前缀
工具
- 从旋钮(已弃用)到控件的 Storybook 迁移正在进行中
- Storybook 文档更新为
testing.md
和样式建议 - 修复了
eslint-plugin-react
将小写名称 (<div>
) 视为已使用变量的问题 https://github.com/yannickcr/eslint-plugin-react/pull/3070 - 为现有 Bento 组件创建了用于 npm 发布的
README.md
文件
下一步 ⏩
- 为 Bento 和 AMP Web Components 构建两次扩展(bento-.js 和 amp-.js)
- 上次冲刺后文档的最后阶段内容
amp-mathml
/bento-mathml
/BentoMathml
继续进展amp-dailymotion
/bento-dailymotion
继续进展
故事
2021 年 8 月 3 日星期二状态更新Bento
2021 年 8 月 3 日星期二状态更新完成了什么 🍱
amp-date-display
:支持timeZoneName
和timeZoneNameShort
amp-iframe
:将 iframe 包装在 shadow-dom 和 ContainWrapper 中- 修复了损坏的 npm bento 包
- 修复了在 SSR 的 AMP 页面上零星出现的渲染问题
下一步 ⏩
- 文档冲刺
useIntersectionObserver
:自定义钩子amp-tiktok
:修复 CLS 问题bento-dailymotion
:正在进行中bento-reddit
:正在进行中- 修复 Bento 组件之间占位符/回退切换问题
故事
2021 年 8 月 2 日星期一状态更新已完成的工作
故事性能
故事互动
- 在滑块上添加对表情符号的支持 #35113
- 🖍 图像测验的 A/B/C/D 气泡的颜色逻辑 #35174
- 🐛 图像测验和投票的选择后填充错误修复 #35274
- 🐛 修复图像测验的选择后动画不准确的问题 #35292
- ✨ 激活交互式免责声明并添加文档 #35293
- 🖍 图像测验和投票的百分比文本的文本阴影 #35324
- 在移动设备上拖动时禁用滑块上的覆盖 #35358
- ✅ 将带有无效端点的图像测验和投票添加到示例中 #35359
- ✨ 新结果组件的脚手架 #35400
- 🖍 带有缺失图像的图像测验和投票的样式 #35420
- 🖍 调整滑块样式以在 Firefox 上工作 #35432
- RTL 支持 #35340
Amp 故事播放器
视频
- 通过 CSI 跟踪视频缓存实验。 #35242
- 统一传统和远程视频缓存系统的 CacheState 跟踪。 #35252
- 预渲染和预加载远程视频缓存。 #35272
- 仅向爬虫提供常绿的非缓存视频源。 #35357
- 实验限制故事第一页的最大视频比特率。 #35389
其他
- 不能在故事中使用带有 <feBlend> 的 SVG #35430
- 改进故事的屏幕方向锁定 #35478
- amp-story-desktop-one-panelbackground-blur 在选择器中包括视频 #35131
接下来是什么
- 新交互组件(图像测验和投票/滑块)的文档/验证和发布
- 桌面单面板发布
- 视频改进
- iOS15 错误修复
盈利
2021 年 8 月 2 日星期一状态更新接下来是什么
Amp 货币化 - 本周开始增加使用 amp-ad 进行服务器端控制的 amp-sticky-ad 渲染实验 - 进一步改进 Web 插页式广告 UI - 支持具有保守大小限制的左/右粘性广告实验
故事广告
Bento
2021 年 8 月 2 日星期一状态更新常规更新 🆕
- 欢迎 @kvchari 加入团队 🎉 🎉 🎉
完成了什么 🍱
amp-audio
实现已开始amp-brightcove
移植完成amp-copy
实现已开始amp-dailymotion
移植正在进行中(Preact 层已完成)amp-iframe
针对原生 iframe 的调查 - 发现amp-lightbox-gallery
移植完成,除了手势功能amp-sidebar
移植完成,除了手势功能amp-render
发布后续错误修复amp-twitter
占位符错误修复
下一步 ⏩
amp-analytics
早期调查和设计amp-audio
继续进展amp-copy
在设计审查中的讨论amp-dailymotion
移植正在进行中(AMP 层)amp-iframe
继续进展- 调查现有手势库和 Bento 的未来解决方案
用户界面和可访问性
2021 年 8 月 1 日星期日状态更新已完成的工作
- 修复了两个关于单模板根元素的
amp-render
问题。 amp-dailymotion
(Classic) 的自动播放解决方法amp-consent
:- 删除两个旧的实验标志。
- 允许
SOURCE_URL
替换。 - 支持
CONSENT_INFO
和CONSENT_PAGE_VIEW_ID_64
- 调查
promptUI
闪烁问题,为防止该问题设计一个新的 API。 - 清除
amp-story-consent
未定义的行为 - 为
amp-audio
操作删除冗余的amp-story
检查 - 修复 CSS 选择器泄漏到渲染的 amp.dev 示例中的问题
- 禁用词语维护
- Bento 移植和兼容性方面的进展
amp-iframe
调整大小amp-analytics
设计amp-dailymotion
的移植amp-reddit
的移植
经验教训
接下来是什么
Kidist 本周离开我们。请务必说再见!
- 完成
amp-iframe
的功能(交叉条目) - 修复了
amp-next-page
问题 - Bento 移植和兼容性方面的进展
amp-iframe
调整大小amp-analytics
设计amp-dailymotion
的移植amp-reddit
的移植- 构建单独的
bento-*
二进制文件 amp-consent
:支持根据服务器响应重新标记提示后按钮。
盈利
2021 年 8 月 1 日星期日状态更新已完成的工作
Amp 货币化 - 调查有关 Safari 11 上广告报告的问题 - 提出并实施用户代理客户端提示参数 - 允许广告归因报告 - 更正 amp-ad 粘性广告的 Doubleclick 扩展广告请求参数 - 清理 amp.dev 上的 amp-ad 供应商列表(添加缺失的供应商) - 防止高频率重复的广告调整大小请求
故事广告
Bento
2021 年 8 月 1 日星期日状态更新完成了什么 🍱
- 自动信封已准备就绪
amp-analytics:0.1
功能范围界定和设计讨论amp-facebook-*
组件现在是有效的 AMPamp-iframe
正在进行中,通过IntersectionObserver
进行无运行时动态调整大小 https://github.com/ampproject/amphtml/pull/35566amp-ima-video
正在进行中- 准备 React/Preact 和 Bento 模式的示例文档
- 从 AMP 特定的运行时依赖项(构建常量、
getMode
等)中推断ProxyIframeEmbed
下一步 ⏩
amp-analytics
服务清单和调查amp-dailymotion
WIPamp-iframe
WIPamp-ima-video
WIPamp-reddit
WIP- React/Preact 兼容性改进
用户界面和可访问性
2021 年 7 月 7 日星期三状态更新已完成的工作
amp-render
代码已完成。 🎉amp-tiktok
代码已完成。 🎉- 完成
amp-analytics
上的会话支持。 - 完成
amp-analytics
上视频事件的多个元素选择。 - 修复
amp-next-page
和amp-analytics
上的错误 - 支持 IE 上的
new Set(iterable)
- 修复了无效的多行自闭合标记的
html-template
lint 规则,并自动修复了相关的 SVG 标记。
经验教训
接下来是什么
- 将
amp-iframe
移植到 Bento。 amp-carousel
在 iOS 15 上的问题。amp-dailymotion
到 Bento。- 落地 Auto-Envelope 以在没有
v0.js
的情况下运行组件 - 将浏览器事件通用地传播为分析事件
Bento
2021 年 7 月 7 日星期三状态更新已完成的工作
- auto envelope 更改为使用限制性方法
- IE 新 Set 的 polyfill
amp-lightbox-gallery
基本、分组、字幕和唯一性功能- AMP 层的 Bento 组件中的
forceChangeHeight
->attemptChangeHeight
- 开始使用
amp-iframe
amp-render
最终发布位,包括resizeToContents
、验证和博客amp-tiktok
已合并- 使 Bento 编译器线程安全
- 删除
amp-viz-vega
- 在设计审查中讨论 + 实现整合
amp-facebook
PreactBaseElement
中的overflow
支持
接下来是什么
- 接管 GA4
- 落地 auto-envelope,将工作拆分以限制对此方法的访问
- amp-lightbox-gallery 视频支持、分析事件和验证
- 未来几周内 AMP 0.1 组件将进行更改,以从其
buildCallback
中提取 - 分离修改 DOM 的部分,包括amp-fit-text
amp-dailymotion
实现
用户界面和可访问性
2021 年 7 月 1 日星期四状态更新已完成的工作
- 将浏览器事件传播到 Analytics 的进展。
- Bento amp-iframe 正在进行中(基本 PR、占位符行为)
- 修复了
amp-titkok
中跳过的测试 - 验证了
amp-carousel
上的 iOS 滚动捕捉错误 - 修复了输出文件名中带有
~
的 Storybook 问题 - 修复了损坏的
z-index
格式,并生成了它
经验教训
一些 WebKit 更改仅在上游浏览器测试版上进行,并且一些引入的错误仅出现在 iOS 上。重要的是在发布之前在 iOS 测试版上运行手动测试。
接下来是什么
(@dmanek 本周请假)(@alanorozco 是构建管理员)
- Bento
amp-iframe
:运行时调整大小和同意数据 - Bento
amp-dailymotion
- 落地传播浏览器事件
- GA4
盈利
2021 年 7 月 1 日星期四状态更新已完成的工作
Amp 货币化 - Web 插页式广告规划。与 Google AdSense 和 GAM 团队合作,澄清 AMP 和供应商之间的技术边界,最终确定接口。 - Web 插页式广告原型有效。下周进行设计审查。 - 修复旧式粘性广告弃用通知
故事广告 - 关于新兴市场故事广告策略的讨论 - 开始与用户共享自动前进广告和页面的实验 - 修复了桌面支持发送正确尺寸的错误 - 修复了不稳定的实验测试
用户界面和可访问性
状态更新 2021 年 6 月 7 日 星期一已完成的工作
- 会话分析 PR 发布,包含 SessionId、CreationTimestamp 和 SessionCount(https://github.com/ampproject/amphtml/issues/33990)
- AMP 表单回滚,添加对更改时验证的缺失支持(https://github.com/ampproject/amphtml/pull/34849)
amp-render
绑定 API 更改amp-render
验证更改- 发布了
amp-tiktok
amp-dailymotion
Bento 版本 PR
经验教训
接下来是什么
- 会话分析:
LastEventTimestamp
和Engaged
- 用于快速链接的新 AMP 组件,设计
amp-iframe
错误amp-render
完成其他 PR-
amp-dailymotion
继续工作
盈利
状态更新 2021 年 6 月 7 日 星期一已完成的工作
Amp 变现 - 顶部粘性广告实现已合并 - 顶部粘性广告性能分析 - Web 插页式广告原型开始 - 关闭 inabox 上的 INI InOb,以缓解性能问题 - 修复了无签名中的 <gwd-animation>
错误 - 在 amp-ad-exit 中支持新的转化跟踪 API
故事广告 - 新的黄色进度条变体实现
Bento
状态更新 2021 年 6 月 7 日 星期一已完成的工作
通用 - 提高 ...rest
对象展开运算符的性能: - 在模块之间共享 objectWithoutProperties
辅助函数(减小大小,ampproject/amphtml#34601) - 提升省略的键(运行时性能,babel/babel#13384) - Bento 入门文档 是 Bento 相关资源的中心位置 - npm 自动发布现已上线
组件 - amp-dailymotion
的实现已经开始 - Facebook
和 amp-facebook
现在代码完成 - amp-render
最后阶段: - binding
支持 - 文档 - 剩余的 TODO 和错误修复 - LightboxGallery
、Facebook
、amp-fit-text
的单元测试 - 合并到 Sidebar
的 Toolbar
添加
接下来是什么
通用 - 自动封装(这样 Bento 组件就可以在页面上没有 v0 的情况下使用!) - 3p Iframe Bento 贡献指南 - src/core
迁移继续,我们可能可以在此 sprint 中开始类型检查 Bento 组件
组件 - 继续开发 amp-dailymotion
- 用于 amp-ima-video
实现的 VideoProxyIframe
- amp-facebook-page
和 amp-facebook-like
- LightboxGallery
UI 功能
用户界面和可访问性
状态更新 2021 年 6 月 2 日 星期三已完成的工作
- 完成了
amp-tiktok
的最后细节 - 继续开发 Bento
amp-dailymotion
- 为
amp-analytics
引入了SessionId
(https://github.com/ampproject/amphtml/pull/34521) - 发布了会话分析的 PR:上次事件时间戳 (https://github.com/ampproject/amphtml/pull/34816) 和会话计数 (https://github.com/ampproject/amphtml/pull/34850)
- 为链接器选择加入相同域匹配 (https://github.com/ampproject/amphtml/pull/34821)
amp-ima-video
直播控件的错误修复 (https://github.com/ampproject/amphtml/pull/34865)amp-analytics
中多视频选择器的 PR 正在进行中 (https://github.com/ampproject/amphtml/pull/34841)
经验教训
接下来是什么
- 引入会话分析的其余部分 + 参与宏
- GeoHash 实验的设计评审
- 引入自动封装
- 引入 Bento dailymotion
amp-analytics
的自定义浏览器事件设计- 发布
amp-render
盈利
状态更新 2021 年 6 月 2 日 星期三用户界面和可访问性
状态更新 2021 年 5 月 2 日 星期日已完成的工作
- 会话分析隐私审查通过,开始支持
sessionId
宏 - 继续研究 SSR
amp-consent
内联同意对话框 amp-render
占位符、后备、加载器和绑定属性支持以及文档amp-tiktok
占位符、加载器和验证
经验教训
接下来是什么
- Bento dailymotion 组件
- 补充会话数据支持
amp-render
研究布局容器支持 + 其他任务amp-next-page
问题- 研究
amp-consent
报告的问题
盈利
状态更新 2021 年 5 月 2 日 星期日已完成的工作
Amp 变现 - 顶部粘性广告不调整 padding-top - 在 amp-auto-ads 中,在上方插入广告大多不可见,但会导致 CLS - 3p 供应商拆分正在增加到 50% - 调查了基础设施的一个回归
故事广告
Bento
状态更新 2021 年 5 月 2 日 星期日已完成的工作
amp-facebook
正在整合内部实现和测试amp-render
- 后备支持
- 占位符支持
- 验证
amp-sidebar
- 工具栏的 Preact SSR 实现
- NPM 发布
- 与 Dev Rel 就 NPM 自述文件创建进行初步对话
- 完成了发布所需的 13 个组件转换(最新的是
amp-base-carousel
)
接下来是什么
amp-render
- 加载指示器
- 绑定支持
amp-sidebar
- 工具栏的 amp SSR 实现
- NPM 发布
- 转换来自 Dev Preview 的剩余两个组件
- 需要更新包文件和生成脚本
用户界面和可访问性
状态更新 2021 年 5 月 1 日 星期六已完成的工作
- 支持在查看器中突出显示文本片段
amp-render
URL 变量替换支持amp-analytics
会话分析设计评审- 删除查看器上
amp-consent
同意存储限制
经验教训
接下来是什么
- 会话分析设计评审 补充数据的隐私审查
amp-analytics
SESSION_ID
低熵支持amp-consent
减少内联同意提示的 LCPamp-render
后备/占位符支持 + 其他修复amp-next-page
错误修复
Bento
状态更新 2021 年 5 月 1 日 星期六已完成的工作
- 构建 Bento 视频播放器的指南
- 支持
amp make-extension
标志--nojss
- 合并了具有验证的
amp-video-iframe
- 合并了具有验证的
amp-vimeo
amp-ima-video
端口正在进行中- 需要重组
ProxyIframeEmbed
以便与VideoBaseElement
结合使用 - 两个版本加载的 iframe 的更改:结构化子项和统一的方法名称
- OWNERS 更改和测试清理
amp-ima-video
用户体验改进- 研究向
amp-facebook-*
组件引入sandbox
属性 - 合并了 Preact
Twitter
组件和 Storybook - npm 发布
- npm 上有 10 个组件,例如
amp-fit-text
- 另外 4 个组件需要文件结构转换才能发布
- 合并了
amp-sidebar
工具栏 Preact 实现 - (无效的 AMP):支持与
amp-img
集成的组件中的img
正在进行中
接下来是什么
- 继续进行中的任务
amp-ima-video
amp-sidebar
工具栏img
支持- npm 发布
- Bento 视频播放器通过 AMP 层中的同意服务传递同意
amp-brightcove
的 Bento 端口- 研究安全删除
examples/
,这些示例已通过 Storybook 示例充分涵盖 - 其他
amp-facebook
组件的 Bento 端口 amp-render
支持placeholder
用户界面和可访问性
状态更新 2021 年 4 月 2 日 星期五已完成的工作
amp-next-page
错误修复,其中子阴影文档不像宿主页面那样使用查看器 CID- GA4 会议,在
amp-analytics
中创建会话分析的设计文档 - 与查看器团队讨论现有的 localStorage 大小限制,以允许存储更大的同意信息条目
amp-render
:XSSI 前缀支持和刷新功能amp-next-page
错误修复,用于在查看器中提供时错误地替换历史记录amp-tiktok
:验证器支持、加载器支持和后备支持
经验教训
接下来是什么
- 会话分析设计评审
- 实习生计划
amp-render
url 替换支持amp-render
占位符和后备支持- 更多
amp-next-page
P1 amp-img
弃用amp-analytics
中的SESSION_ID
盈利
状态更新 2021 年 4 月 2 日 星期五已完成的工作
Amp 变现 - 3p 供应商拆分已增加到 10% 的生产环境 - 顶部粘性广告实现完成 - 合并了初步修复,解决了 amp-auto-ads 上的 CLS 问题,但仍需进一步调查 - 推出了一项保留实验,以测试 amp-auto-ads CLS 修复的收入影响 - 修复了开发服务器上由于缺少 CORS 标头而导致的 A4A 损坏的信封 - Web 插页式广告的项目规划会议。与 AdSense 和 Arrow 团队审查了设计草案。- 推出了无签名
故事广告 - 自动前进广告实验 - 视频服务增强规划 - 向展示位置实验添加了一个新分支(10 密度) - 新的广告徽章 - 修复了自动分析中广告页面被计为自然页面的错误
接下来是什么
Amp 变现 - Web 插页式广告设计 - 顶部粘性广告 - amp-auto-ads CLS 的进一步调查
故事广告 - 自动前进广告 - 视频服务跟进 - 审查广告展示位置实验结果
Bento
状态更新 2021 年 4 月 2 日 星期五已完成的工作
amp-facebook-comments
的初始实现amp-render
xssi-prefix
和子对象支持- 正在审查中的 URL 替换
- 在设计评审中讨论的
amp-sidebar
工具栏功能 - 正在审查中的
amp-video-iframe
实现 amp-vimeo
实现- 开发人员预览组件的验证贡献
- 删除了“精简”查看器的概念
- 扩展生成器实现现在在 Bento 和 Classic 中共享。
- 琐事:弃用 Storybook 对
withAlly
的使用,并替换为更新的配置 - 琐事:更新了一些 OWNERS 文件,使其属于 Bento/Components
接下来是什么
amp-facebook-*
后续任务和组件- 尝试包含
sandbox
(以前仅为这些组件排除) - 通过枚举而不是自定义元素标签名称分支组件嵌入
amp-render
- 占位符和后备支持
layout=container
amp-sidebar
- 调查 CLS
- 利用设计评审学习成果执行工具栏功能
- 手动将 Bento 组件发布到 npm
- 深入研究第三方问题和贡献的处理
- 将 mustache 编译为 JSX 的设计评审
- 重新设计自动播放检测。
- 下一个 Bento 视频播放器,可能是
amp-brightcove
或amp-dailymotion
用户界面和可访问性
状态更新 2021 年 4 月 1 日 星期四已完成的工作
- 合并了
amp-tiktok
- 正在处理独立图像的
amp-img
验证 - 开始在
amp-analytics
中为SESSION_ID
宏工作 - 开发
amp-render
(amp-script 支持、后备/占位符) - 修复了
amp-next-page
提前触发滚动事件的错误 - 修复了
amp-carousel
索引和抖动幻灯片错误
经验教训
接下来是什么
- GA4 MVP 支持的设计
amp-next-page
CLIENT_ID 错误- 实现
session_id
宏 - 完成 TikTok 测试
- 继续
amp-render
工作
Bento
状态更新 2021 年 4 月 1 日 星期四完成了什么 🍱 ✅
amp-render
可绑定 src 的 PR 已合并- 与缓存团队合作,对开发者预览组件进行验证器更改(仍在实验中)
- Storybook 已升级到 6 版本
- 由于 Chrome 团队 API 的更改,
amp-accordion
中移除了显示锁定 - 早期 Bento 反馈(技术/产品)在此
- Bento 编译器正在进行安全和隐私审查
- 在 4/6 的深度探讨中介绍了 Shadow DOM - 幻灯片,视频
下一步 ⏩
- 继续对所有开发者预览组件进行验证器工作(仍在实验中)
amp-render
支持 object 和 amp-renderamp-sidebar
工具栏功能在 AMP 模式下amp-twitter
正在进行中amp-next-page
的初步评估
用户界面和可访问性
状态更新 2021 年 3 月 3 日,星期三已完成的工作
- 各种
amp-render
PR 已发布 amp-next-page
分析amp-next-page-scroll
错误amp-tiktok
e2e 测试已发布SESSION_ID
宏设计评审amp-carousel
事件传播到查看器错误修复- 美国隐私字符串已发送至 A4A 中的 doubleclick 和 adsense
经验教训
接下来是什么
- 继续开发
amp-render
(占位符 + 回退,动态调整大小,amp-script 案例) SESSION_ID
实现- 提交
amp-tiktok
PR amp-img
折旧amp-analytics
中的用户代理客户端提示低熵amp-analytics
中的人口统计和兴趣分析
Bento
状态更新 2021 年 3 月 2 日,星期二完成了什么 🍱 ✅
- 自动设计评审问题创建
- 开始验证开发者预览组件(仍在实验中)
- 完成了轮播组件的 CLS 调查
- 为 Bento 组件引入了调度,即灯箱和侧边栏
- 合并了 Preact 模式下的
Sidebar
Toolbar
功能 - 现在在构建/分发期间生成 npm 二进制文件,以进行 npm 发布
amp-render
的初始实现,支持远程、可绑定的src
和amp-state
协议amp-twitter
的原型
下一步 ⏩
- 与基础设施团队合作 👋 🏗️ 发布 npm 二进制文件
- 验证所有开发者预览组件(仍在实验中)
amp-sidebar
工具栏功能在 AMP 模式下amp-render
支持amp-script
协议和placeholder
amp-twitter
正在进行中- 请关注下周深度探讨中的 shadow DOM 演示
用户界面和可访问性
状态更新 2021 年 3 月 1 日,星期一已完成的工作
amp-tiktok
PR 已发布以供审查amp-render
继续工作amp-next-page
scrollTo 错误修复- 围绕在 a4a 中支持
us_privacy
参数的讨论 - 部分启动 TCF PostMessage API
- 精细化同意开发者文档
- 支持
<input>
在amp-form
之外的form
属性
经验教训
接下来是什么
- 提交
amp-tiktok
- 完成
amp-render
amp-next-page
替换历史记录错误amp-analytics
中的session_id
宏- 从
amp-analytics
和amp-consent
设计中拆分链接器/Cookie 写入器模块
用户界面和可访问性
状态更新 2021 年 3 月 1 日,星期一已完成的工作
- 性能
- 修复周,专注于代码健康和测试覆盖率(已关闭 12 个问题,另外 7 个正在进行中)
amp-consent
TCF PostMessage 代理 API 已发布,正在收集反馈addtl_consent
已添加到 doubleclick 和 adsense 请求 url- 文本片段突出显示,探索服务器端转换
经验教训
接下来是什么
amp-consent
精细化同意启动amp-analytics
中的session_id
宏amp-tiktok
实现amp-render
实现
盈利
状态更新 2021 年 3 月 1 日,星期一已完成的工作
AMP 变现 - 将版本信息从广告传递到 FIE - 启动免签名 - 使用 esbuild 提高了供应商 JS 构建性能,在测试和发布过程中重新启动了它们的构建
故事广告 - 引入了滑动跟踪触发器 - 修复了媒体池无法识别广告页面距离的错误 - 引入了新的 StoryAdPagemanager
类作为布局算法重构的一部分
接下来是什么
AMP 变现 - 启动供应商拆分实验!
故事广告 - 将现有算法实现为新的 StoryAdPlacementAlgorithm
子类 - 实现新的布局算法
盈利
状态更新 2021 年 3 月 1 日,星期一已完成的工作
修复周 - 修复/关闭了 7 个问题。另外 2 个正在进行中 - (代码完成,等待安全审查)更改 3p iframe 以使用 frame.html 的确定性域 - 重新启用 AMPHTML-AD 可视差异测试 https://github.com/ampproject/amphtml/issues/31199 - 允许在免签名中使用 AMP polyfills - 使 test-amp-a4a.js 不再不稳定 - 将故事广告 CTA 移动到 shadow DOM - 更新故事广告的 Adsense 文档
AMP 变现
故事广告
接下来是什么
AMP 变现 - 由于影响 CI 性能,3p 框架拆分 PR 已还原,修复后将开始实验 - 启动免签名!
故事广告 - 会议讨论新的布局权衡。- 布局算法的封装。- 实现滑动跟踪
Bento
状态更新 2021 年 3 月 1 日,星期一完成了什么 🍱 ✅
amp-fit-text
服务器端实验,用于衡量 v0 的性能amp-render
基本实现amp-sidebar
工具栏设计- 正在调查
amp-carousel
、amp-base-carousel
和相关组件中的 CLS
经验教训 👩🎓
下一步 ⏩
- Bento npm 发布
amp-render
- 从
amp-script
加载 - 占位符支持
- 从
- 修复一些轮播 CLS 问题
- 初次查看
amp-twitter
- 视频停靠正在积极开发中
Bento
状态更新 2021 年 3 月 1 日,星期一已完成 ✅
修复周 🔨
amp-youtube
在命令式 API 中支持currentTime
和duration
https://github.com/ampproject/amphtml/pull/32804amp-selector
对混合的disabled
+selected
状态具有样式支持 https://github.com/ampproject/amphtml/pull/32825amp-accordion
0.1
和1.0
尊重预先存在的role
属性 https://github.com/ampproject/amphtml/pull/32915amp-timeago
0.1
和1.0
已迁移到最新的timeago.js
库(从third_party/
到node_modules
),现在支持 7 种以上语言amp-sidebar
https://github.com/ampproject/amphtml/pull/32837、amp-social-share
https://github.com/ampproject/amphtml/pull/32881 和amp-accordion
https://github.com/ampproject/amphtml/pull/32958 的 e2e 测试- 记录了 基于媒体的属性 并将其启用在
amp-fit-text
上 https://github.com/ampproject/amphtml/pull/32824 BaseElement['props']
重构以简化子配置 https://github.com/ampproject/amphtml/pull/32936objstr
:- 在更多组件中使用 https://github.com/ampproject/amphtml/pull/32893
- 编译下降 https://github.com/ampproject/amphtml/pull/32872
- JSS
- 将编译后的输出转换为
export const className
以获取文件大小 https://github.com/ampproject/amphtml/pull/32888 - 收集 z-index https://github.com/ampproject/amphtml/pull/32847
- 将编译后的输出转换为
- Shadow DOM polyfill https://github.com/ampproject/amphtml/pull/32820
常规 🍱
LightboxGallery
Preact 实现- 用于 npm 打包的组件文件重组
- 使用 ES 构建生成 NPM 二进制文件
- 为延迟构建和异步暂停系统的设计评审
- 使用
gulp get-zindex [--fix]
确保css/Z_INDEX.md
是最新的
经验教训 👩🎓
- 我们可以通过为
<head>
节点禁用 prettier 来阻止 prettier 在 HTML 文档上展开样板代码。
下一步 ⏩
amp-lightbox-gallery
AMP 层amp-sidebar
正在积极开发中- 视频停靠正在积极开发中
- 分析
amp-fit-text
0.1
->1.0
自动升级的性能影响
用户界面和可访问性
状态更新 2021 年 2 月 1 日,星期一已完成的工作
amp-next-page
处理提交的多个同意amp-render
设计评审amp-tiktok
工作amp-fit-text
消除 e2e 测试的不稳定性amp-consent
TCF 2.0 PostMessage API 和精细化同意 PR
经验教训
接下来是什么
amp-render
实现amp-next-page
阅读器 ID 问题amp-tiktok
amp-fit-text
CSS 问题amp-consent
TCF 2.0 PostMessage API 和精细化同意- 拆分链接器/Cookie 写入器设计
- 在 a4a url 请求中使用
addtl_consent
用户界面和可访问性
状态更新 2021 年 2 月 1 日,星期一已完成的工作
- 在
amp-next-page
中处理amp-consent
的 PR amp-render
设计amp-tiktok
设计评审amp-fit-text
添加更好的测试- 通过 CookieWriter 在
amp-consent
中进行 CID 同步 amp-consent
TCF PostMessage API 法律批准
经验教训
盈利
状态更新 2021 年 2 月 1 日,星期一已完成的工作
AMP 变现 - AMP 现在构建单独的 3p iframe integration.js,并且进行了重构以允许为 3p iframe 动态选择 JS - 启用了 AMP-AD CSS 实验(阻止顶部横幅粘性广告) - 运行了 CWV 实验,该实验关闭了广告按需渲染。结果非常嘈杂。没有从金丝雀流量中获得足够的数据点。 - 启动了 fie/inabox amp 元素的急切构建 - 允许广告网络选择退出免签名中的客户端验证
故事广告 - 探索新的故事广告算法的影响
Bento
状态更新 2021 年 2 月 1 日,星期一已完成的工作
- npm 打包正在进行中
- 视频停靠正在进行中
- 为改进的类名构造贡献 obj-str Babel 转换
- 侧边栏动画已完成
- 开始使用 amp-fit-text 在 AMP 中进行 Bento 组件的加载实验
- 组件隔离的进展:测量、暂停/恢复和延迟构建。在明天的设计评审中展示。
- 纵横比推出正在继续
- 开始重构日志写入器的项目。
- 开始开发灯箱画廊
经验教训
- 我们一直在不同的浏览器版本上渲染和测试视觉差异,这解释了一些不稳定性。
Bento
状态更新 2021 年 2 月 1 日,星期一已完成的工作
- 🎉 我们发布了 dev 预览!
- 🎯
amp-social-share:focus
通过 shadow DOM 提供支持 - ⬆️
amp-date-countdown
countUp
功能 - 📦 在 npm 上发布 Bento 组件的设计文档
- ✅ e2e 测试现在支持跨组件版本共享 fixtures
- ⏰ 在 Bento 组件中分发 DOM 事件
- 📝 记录 Bento 模式的命令式 API
- 🛥️ 草案 Preact 停靠实现
- 📸
aspect-ratio
推出 - 🐛 各种错误修复
- iOS 网络滚动
[placeholder]
元素的非零line-height
- 媒体属性
经验教训
接下来是什么
- 📝
delegatesFocus
的文档/深度探讨 - 📂 组件文件结构中的演示更改,为在 npm 上发布做准备
- 🛥️ 媒体停靠的持续进展
- 💡
LightboxGallery
设计和实现 - 🔖
Sidebar
的持续进展
用户界面和可访问性
状态更新 2021 年 1 月 5 日,星期二已完成的工作
amp-consent
的 CSS 修复,用于从查看器提供的文档amp-carousel
樱桃挑选还原,用于 CSS 样式覆盖发布者样式- 与 DevRel 和 Bento 团队讨论
amp-render
block-rtc
和always-serve-npa
PR 已合并
经验教训
- 请小心使用
!important
样式,因为发布者可能想要使用自己的样式
Bento
状态更新 2021 年 1 月 5 日,星期二已完成的工作
- 大多数人 OOO
- 年底错误冲刺的错误修复
- 命令式 API
- 开始开发 amp-sidebar
经验教训
- 通过
display: contents
的框样式传播 1 页
用户界面和可访问性
状态更新 2021 年 1 月 1 日,星期五已完成的工作
- 正在解决
amp-next-page
查看器错误 amp-render
头脑风暴和需求 -amp-list
的子集amp-fit-text
ResizeObserver 错误修复和测试amp-carousel
观察子元素错误修复- TCF PostMessage 代理 API 的法律审查
经验教训
盈利
状态更新 2021 年 1 月 1 日,星期五已完成的工作
AMP 变现 - 引入 CLIENT_ID 宏用于 RTC 请求 - FIE 广告的单独资源管理器 100% 推出(实验结果积极) - RTC 更改捕获的回归问题被确定为可能是 WAI。已开始另一项实验来验证该假设。 - AMP-AD CSS 更改实验开始 - 调查了滚动响应式广告的实现及其性能限制
故事广告 - 开始广告位的设计文档 - 展示次数统计更改以小百分比运行
接下来是什么
AMP 变现 - 顶部横幅粘性广告实现 - 动画粘性广告创意格式 - wg-monetization 接管 amp-access
故事广告 - 完成广告位的设计文档
Bento
状态更新 2021 年 1 月 1 日,星期五已完成的工作
- 准备进行开发预览。正在等待一些 amp.dev 更新公开。
- 与开发预览相关的小修复。
- 侧边栏:RTL 和样式修复
- 我们现在在所有 AMP 中都有 ResizeObserver polyfill
- 初始调整大小代码重构。
经验教训
接下来是什么
- 继续:视频停靠
- 开始:灯箱画廊
- 社交分享:焦点轮廓工作
- 继续:amp-truncated-text
- 升级 storybook
- 开始:用于 (P)react 组件的 npm 包
基础设施
状态更新 2020 年 12 月 07 日 星期一Bento
状态更新 2020 年 12 月 07 日 星期一用户界面和可访问性
状态更新 2020 年 12 月 02 日 星期三已完成的工作
amp-render
的设计文档已完成,设计评审于 12/02- 服务 NPA 广告的代码完成(将于 2021 年第一季度发布)
amp-ima-video
错误修复amp-fit-text
无障碍修复正在审查中
接下来是什么
- 在收到设计评审的反馈后开始实施
amp-render
- 开始设计
amp-list
v2 - 致力于完成细粒度同意的设计
- 致力于为
amp-fit-text
a11y 更新进行 e2e 测试 - GA4 团队将于 12/4 发布更新
基础设施
状态更新 2020 年 11 月 09 日 星期一已完成的工作
- 引导了为期 2 周的发布冻结(测试版通道已更新,但不是稳定版/lts)
- 将 AMP 项目 CLA 迁移到最新的 OpenJS 协议
- 可视化差异基础设施重新设计的进展
- 在 E2E 测试期间检测缩小代码以进行覆盖率测量的进展
接下来是什么
- 修复了 AMP closure 编译器构建管道
- 探索 AMP 状态页面的技术选项
- 探索自动化资产下载 + 页面冻结以进行可视化差异测试
- 继续进行其他正在进行的项目
Bento
状态更新 2020 年 11 月 09 日 星期一已完成的工作
- 用于 Preact 的视频 iframe 代码已合并
- 停靠的进展
- 静态 Storybook 部署
- 将 CE 断开/连接实现为 Preact 安装/卸载
- 构建了对媒体属性的支持,包括布尔媒体属性
- Storybook 中支持 amp-bind
- 手风琴的命令式 API 已完成
- 手风琴的绑定协议已完成
- 继续在删除 viewportCallback 方面取得进展
- 开始灯箱的实现
经验教训
接下来是什么
- 用于视频 iframe 的 amp-video-iframe 绑定
- 轮播中的自动前进
- 轮播缩略图
- 轮播对齐功能
- 手风琴的 DOM 事件支持
- 重组手风琴以获得更好的 Preact 语义并支持显示锁定
- 灯箱的 Preact 和 AMP 绑定实现
用户界面和可访问性
状态更新 2020 年 11 月 02 日 星期一已完成的工作
- 在
amp-autocomplete
中添加了对prefetch
的支持 amp-sidebar
布局错误修复amp-render
设计- 协调
amp-img
弃用的验证更改的文档和公告 - 在 iframe 中运行工作器的设计已完成
analytics-chunk
实验清理backupCid
实验在金丝雀版和生产版中开启- 发布商发出信号始终提供 NPA 的设计已完成
- 修复了视频分析的单个百分比错误
- 修复了
amp-base-carousel
的 RTL 边缘计算错误 - 修复了
amp-carousel
的滚动对齐
接下来是什么
amp-render
完成设计- iframe 中的 worker-dom 实现
- 继续与 GA 团队沟通,为
amp-analytics
中的 GA4 支持创建设计 - 目的 1 同意信号
Bento
状态更新 2020 年 11 月 02 日 星期一已完成的工作
amp-accordion
:- 外部 API 重组
- 无障碍属性
amp-base-carousel
的snap-align
功能可在轮播视口的start
或center
处查看幻灯片amp-lightbox
的初始实现amp-selector
:- 箭头键导航和选择配置的
keyboard-select-mode
功能 - Preact 单元测试
- 资源加载器和交叉观察器的持续修复
- 命令式 API 设计和讨论
- 为
amp-instagram
、amp-youtube
、amp-lightbox
编写的文档 - 从
BaseElement
中删除viewportCallback
- PR 部署机器人与 Storybook 集成
经验教训
- 可以通过在故事开头添加
import 'preact/debug';
在 Storybook 中运行 Preact Devtools。 - 我们确保
hidden
在 AMP 中是display:none
,但在 Bento 模式下使用它会更加脆弱(可覆盖)。
接下来是什么
- 完成开发预览功能集并计划 Beta 版
- 命令式 API 的持续进展
amp-accordion
:- 显示锁定
- 最后润色
amp-base-carousel
:- e2e 测试
- 用于将轮播配置为水平或垂直滚动的
orientation
功能 dir="rtl"
支持amp-selector
与表单集成
基础设施
状态更新 2020 年 10 月 02 日 星期五已完成的工作
- 从 10/26-11/8 开始的发布冻结的基础设施更新
- AMP 已完全从 Google CLA 迁移到 OpenJS CLA
- 软件包管理已从 Yarn 迁移到 NPM
- Travis 集成已从 travis-ci.org 迁移到 travis-ci.com
Bento
状态更新 2020 年 10 月 02 日 星期五已完成的工作
- 为混合长度和流式轮播类型创建的原型
- 手风琴:a11y 支持和样式。
- 手风琴:开始使用命令式 API。
- 视频 iframe 和 YouTube 组件的代码已完成。
- 开始使用灯箱组件。在设计评审中介绍。
- 在整个运行时中使用
IntersectionObserver
替换viewportCallback
。
经验教训
基础设施
状态更新 2020 年 10 月 01 日 星期四已完成的工作
- 内部改进发布过程,包括从 10/26-11/8 开始的冻结
- 测试版浏览器/操作系统包含在手动测试矩阵中
- 现在可以在 E2E 和手动测试期间收集覆盖率数据
- 为
ampproject
部署了新的 OpenJS CLA(尚未阻止,最终将取代 Google CLA) - 修复了软件包管理(Yarn 1 即将结束生命周期)
接下来是什么
- 软件包管理解决方案的设计评审(Yarn 1 vs. Yarn 2 vs. NPM)
- 自动化测试的测试结果收集和报告
- 发布过程和错误报告的文档
- OWNERS 文件的语法检查
- 继续处理正在进行的发布项目
基础设施
状态更新 2020 年 09 月 02 日 星期三已完成的工作
- IE 11 集成测试现在处于阻止状态
- 调查在 iOS 模拟器上运行 Karma 测试
- 内部基础设施改进,以进行 cherry-pick 和可视化测试的生成
- 将自定义 AMP closure 编译器升级到 9 月,发现崩溃 (https://github.com/ampproject/amp-closure-compiler/issues/22#issuecomment-699145802)
接下来是什么
- 修复 closure 崩溃
- 重构内部 CI 代码
- 调查允许进行 iOS 测试的替代方案
- 在手动测试矩阵中合并测试版浏览器/操作系统
- 继续进行正在进行的项目(覆盖率、发布基础设施、编译工具链)
分析
状态更新 2020 年 09 月 02 日 星期三已完成的工作
- 内嵌广告可见性跟踪:监听窗口调整大小事件
- 允许 CMP iframe 在后台运行 1 秒,以便它们可以在用户操作后发送更新
- 易于配置以始终提供非个性化广告
- 在 localStorage 中备份 CLIENT_ID
- 调试:当用户快速滚动到底部时,分析未加载
接下来会发生什么
- 分析服务监听 img 的 onload 事件(
<amp-img>
弃用工作的一部分) - 讨论:元素级细粒度同意决策支持
- 讨论:通过 postMessages 将 TCF 2.0 同意字符串传递给 iframe
基础设施
状态更新 2020 年 09 月 01 日 星期二已完成的工作
- 可视化差异内部的更新(以及发布过程中的稳定性修复)
- 发布过程中 cherry-pick 内部的更新
- CI 管道改进的初始计划
- 检测缩小的构建以进行代码覆盖率测量
运行时
状态更新 2020 年 09 月 01 日 星期二已完成
- 贾斯汀
- Bento 自动封装的进展
- 使自动注入的脚本标记在 ESM 中解析为模块
- 修复 Closure 编译器以正确支持解构中的序列表达式
- 杰克
- Bento 样式
- 设计评审 (https://docs.google.com/document/d/1EiBj4Hy7cxhgl8GXw-8FeW7zIyL8reRI7NC9dJB7SR0)
- 确定性的类名生成和 watch 模式支持 (https://github.com/ampproject/amphtml/pull/30065, https://github.com/ampproject/amphtml/pull/30115)
- 修复
- 教 babel-plugin-tests 如何在 Windows 计算机上通过测试 (https://github.com/ampproject/amphtml/pull/30165)
- 协议适配器:支持 load-more 属性 (https://github.com/ampproject/amphtml/pull/30101)
- 资源系统 IntersectionObserver 实验错误
- 使用过时的测量:https://github.com/ampproject/amphtml/pull/30188
- 填充布局跳过布局:https://github.com/ampproject/amphtml/pull/30167
下一步
- 贾斯汀
- 完成自动封装,编写文档
- 开始 amp-img SSR 测试
- 更新性能指标以处理 SSR 实验
- 杰克
- Docker 化的优化器:等待审核
- 构建期间布局尺寸调整的集成测试
- 完成 Bento 样式工作
- 研究运行时/内部 csi 的更好实验分析
分析
状态更新 2020 年 09 月 01 日 星期二已完成的工作
- 支持通过宏收集 Consent 元数据
- 报告可见性时,除了 intersectRatio 之外,还检查元素大小
- 设计:在 localStorage 中备份 CLIENT_ID
- 调试:由于视口中流体 inabox 广告调整大小导致不正确的可见性触发
- 调试:视频播放百分比触发器与 Stories 团队的问题
基础设施
状态更新 2020 年 8 月 3 日星期一已完成的工作
- 改进视觉测试的内部机制
- 改进生成 github 发布的流程
- AMP 现在可以在 Windows 上构建和测试
- 发现 Safari 上测试不稳定的原因(iframe 清理不完整)
- 调查了缩小构建的代码覆盖率
运行时
状态更新 2020 年 8 月 3 日星期一已完成
- 贾斯汀
- amp-img SSR CL 已提交
- 确保 SSR 的
<img>
可见:https://github.com/ampproject/amphtml/pull/29955
- 确保 SSR 的
- 各种错误修复
- https://github.com/ampproject/amphtml/pull/29951
- https://github.com/ampproject/amphtml/pull/29950
- https://github.com/ampproject/amphtml/pull/29947
- 致力于自动信封
- amp-img SSR CL 已提交
- 杰克
- 🎉 启动严格实验 (ampproject/amphtml/pull/29929)
- 合并了 bento 样式 babel 转换 (ampproject/amphtml/pull/29777)
- 📈 打开拉取请求,将 Docker 化的 AMP Optimizer 添加到 amp-toolbox
- 修复
<amp-script>
: 如果初始化失败,则不分配 onerror (ampproject/amphtml/pull/29875)<amp-script>
: 改进的错误消息 (ampproject/amphtml/pull/29875)worker-dom
: 值水合的脏标志 (ampproject/worker-dom/pull/913)worker-dom
: .click() 支持 (ampproject/worker-dom/pull/919)
- 威尔
- 离开了 wg-runtime。再见,威尔!🎺😿
已学习
下一步
- 贾斯汀
- 完成自动信封
- 修复 amp-img SSR 的后续问题
- 快速修复:
- 扩展中的 amp-bind SSR 支持
- 杰克
- 通过 amp-toolbox 审核 AMP Optimizer
- Bento 样式:
- 设计审查
- 确定性的类名生成
- 运行 css 优化器/决定 jss 插件
- 快速修复:
<amp-script>
验证器扩展错误: ampproject/amphtml#29457
运行时
状态更新 2020 年 8 月 3 日星期一已完成的工作
- amp-img SSR 工作即将完成,现在正在清理代码,然后再创建 CL
- Bento 上下文和样式的审查
- TC39:逻辑赋值运算符将出现在 ES2021 中
- 合并了 amp-list、
amp-script[nodom]
的协议适配器 (https://github.com/ampproject/amphtml/pull/29329, https://github.com/ampproject/amphtml/pull/29541) - worker-dom 的 “nodom” 二进制文件 (https://github.com/ampproject/worker-dom/pull/882)
- 调查了
intersect-resources
中 1% 的广告查询回归,并创建了另一个候选修复
经验教训
- 对于可能影响广告的更改,从最小开始并逐步分化,而不是从大型重构开始并逐渐缩减
接下来是什么
- Bento 二进制文件的自动信封模式
- 修复 amp-img SSR 的更多 TODO
- 支持
<link rel=preload imagesrcset>
- 支持为 SSR 的
<img>
自动生成 srcset - 清理代码路径
- 研究 inputmask 错误,以查看是否与严格实验相关
- 跟进 removeCalcTask 和内容优先级。CSI 效果似乎可以忽略不计。
- 用于新的 amp-list/amps-script 功能的文档和启动实验: ampproject/amphtml#29603
- 实现 Bento JSS 提案
- 快速修复
- 清理 “layoutbox-invalidate-on-scroll” 实验 ampproject/amphtml#25203
- amp-bind:删除对 treewalking 的需求 ampproject/amphtml#27590
- 快速修复
<amp-script>
改进哈希错误:ampproject/amphtml#29614<amp-script>
验证器扩展错误: ampproject/amphtml#29457- 快速修复:AMP.navigateTo
- ampproject/amphtml#26248
- ampproject/amphtml#24798
分析
状态更新 2020 年 8 月 3 日星期一分析
状态更新 2020 年 8 月 3 日星期一已完成的工作
SESSION_ID
: 决定存储到会话存储并作为第一步绕过存储 API。- 分析:临时收集最大相交率下的元素宽度/高度和视口宽度/高度(用于调试)
- 同意 UI 以支持 dir=rtl
- 禁用
<amp-story-consent>
中的promptUISrc
基础设施
状态更新 2020 年 8 月 1 日星期六已完成的工作
- 开始弃用 6 个月以上的旧 RTV
- 开始自动化新版本创建,作为 cherry-pick 工作流程的一部分
- 向
ampproject/amp-closure-compiler
添加了 Windows 本机编译器 - 修复了默认
gulp
服务器的watch
逻辑中的竞争 - 用于单元/集成测试的测试用例级别报告的新数据库
- 模块/非模块推出的错误报告/监视
接下来是什么
- 围绕版本创建/标记的基础架构增强
- 扩大视觉测试
- 在
@ampproject/amp-closure-compiler
下将本机编译器发布到 npm - 为 E2E 测试添加报告
- 使用映射到原始源代码的映射来检测缩小代码
- 自动化错误报告问题创建
运行时
状态更新 2020 年 8 月 1 日星期六已完成的工作
贾斯汀
- amp-img ssr 工作的 CL 审核,在其他 go 转换器中查找错误
- 帮助调试 cherry-pick 问题
- https://github.com/ampproject/amphtml/pull/29771
- https://github.com/ampproject/amphtml/pull/29775
- 清理了 2 个古老的实验(快速修复!)
- https://github.com/ampproject/amphtml/pull/29728
- https://github.com/ampproject/amphtml/pull/29665
- 致力于自动信封,但对此不满意
- 对于 amp-mode,捆绑 2 个元素实现似乎很浪费,并且在 bento-mode 中捆绑特定代码
- 为 amp-bind 创建了实验性缓存转换
杰克
- 🎉 启动协议适配器 (ampproject/amphtml/pull/29689)
- 📈 在 bento css 集成方面取得了进展 (ampproject/amphtml/pull/29713, ampproject/amphtml/pull/29794)
- 🔎 制作了 amp-optimizer docker 镜像原型
- 🛠️ 修复
- inputmask 使用不正确的静态 this:ampproject/amphtml/pull/29646
- inputmask 尝试屏蔽 svgs:ampproject/amphtml/pull/29624
<amp-script>
改进哈希错误:ampproject/amphtml#29614
威尔
- 将 “intersect-resources” 部署到 100% 生产环境
- 修复了 amp-list 中一些与电子邮件相关的错误 (ampproject/amphtml#29726)
- 与 AMP.navigateTo 相关的快速修复错误
经验教训
- 在我们的错误日志中,我们得到了一个引用 URL,它可以显着帮助重现问题
接下来是什么
贾斯汀
- 完成 amp-img ssr 和相关转换器的 CL
- 完成 Bento 的自动信封
- 更新 amp-bind 代码以支持 SSR 转换
杰克
- 继续致力于 bento css + amp-optimizer docker 镜像
- 🤞 启动 StrictCompilation
- 快速修复
<amp-script>
验证器扩展错误: ampproject/amphtml#29457
威尔
- 过渡计划
- 快速修复:清理旧的 TODO
分析
状态更新 2020 年 8 月 1 日星期六已完成的工作
- iframe 中的 Web Worker:非原点 iframe:初始化时大约有 80 毫秒的延迟,但仍然可以访问 IndexDb 数据库。3P iframe:初始化时延迟大约 300 毫秒。
- 支持非 AMP 元素的可见性跟踪
- 同意 UI 灯箱模式 PR 已合并
接下来是什么
- 同意:当未使用 Storage API 时,取消对发布商来源的同意字符串大小限制。
- 将 CID 存储到原点 localStorage 作为备份
- 分析:可见性跟踪以在使用 IntersectionObserver 中的 intersectionRatio 值之前检查元素的大小。
分析
状态更新 2020 年 7 月 6 日星期一已完成的工作
- 修复了 amp-analytics FID、LCP 收集
- 调查并修复了 inabox 中的 IntersectionObserver polyfill 问题
- 修复了滚动触发问题
- 扩展了
<amp-story-consent>
配置支持
运行时
状态更新 2020 年 7 月 2 日星期四已完成的工作
- 合并了验证器以支持 amp-img SSR 的 PR
- Bento 的代码审查,包括 AMP 代码中的 Context API
- 合并了用于删除 calcTaskTimeout 的实验 (https://github.com/ampproject/amphtml/pull/28453/commits)
- 合并了用于在严格模式下编译 v0/扩展的服务器实验 (https://github.com/ampproject/amphtml/pull/28793)
- 合并了 AMP.goBack 的跨文档导航 (https://github.com/ampproject/amphtml/pull/26585)
- 修复了 “intersect-resources” 中太小的 rootMargin 与 loadRect 的问题
经验教训
- 小猫很可爱
接下来是什么
- 完成 amp-img SSR 缓存转换
- 原型设计 Bento “自动信封” 模式,以支持 AMP 运行时内部/外部的组件
- 完成正在进行的 worker-dom 功能工作
- worker-dom 的轻量级二进制文件 (https://github.com/ampproject/worker-dom/pull/882)
- 协议适配器 (https://github.com/ampproject/amphtml/pull/29329)
- 继续调查 “intersect-resources” 的广告查询中 ~1% 的回归
分析
状态更新 2020 年 7 月 2 日星期四已完成的工作
- 更新
<amp-story-consent>
以支持新格式的配置 <amp-consent>
文档改进 (metaData、TCF 支持、promptUISrc、内联 postPromptUI)- 当初始高度大于 80vh 时,
<amp-consent>
UI 灯箱模式。(#29204) - 决定在 ampdoc 变为非活动状态时保持分析服务运行并维护状态。(这意味着除非有
stopSpec
,否则较低级别的计时器触发器将继续触发) - 未经特殊批准,AMP 中不允许所有第 3 方后台跨域 iframe 使用。(#28471)
分析
状态更新 2020 年 6 月 2 日星期二已完成的工作
- 快速修复第 9 周已关闭的问题
- 同意元数据 PR 已提交。引入了
getConsentMetadata
以获取 TCF v2 相关的同意元数据,包括同意字符串类型、gdprApplies 和其他同意字符串信息。 - 同意 UI 灯箱设计
- 默认情况下为分析事件启用了
data-vars
属性 - 进一步将同意信息存储限制扩展到 1200 个字符
- 为 amp-consent 重新提示操作添加
expireCache
支持 - 弃用并清理了分析 mApp 支持。
接下来是什么
- OpenJS 世界峰会
- 同意 UI 灯箱模式 API 设计
- 分析中 InOb Polyfill 的使用调查
- 将 iframe 传输功能扩展到所有分析供应商(仍在讨论中)
基础设施
状态更新 2020 年 5 月 2 日星期六已完成的工作
- 部署 错误监视器 UI(测试版)
gulp
任务现在可以在测试期间以编程方式构建运行时 (#28326)- 为 Renovate PR 建立了分组和审核者分配 (#28322)
- 调查/调试了由于 Sauce Labs 导致的断开连接故障 (#28343)
- 将性能测试添加到 Travis CI (#28148)
接下来是什么
- 通过
gulp release
将发布二进制文件的生成转移到开源 - 为常见的运行时错误自动创建问题
- 为
renovate
配置更改添加预提交检查 - 测试/部署新版本的
karma-sauce-launcher
运行时
状态更新 2020 年 5 月 2 日星期六回顾
贾斯汀 * 为延迟 buildCallback 打开了 PR * 对 LCP 的影响不如我们想象的那么大,也许它会帮助 FID * PR 审查
杰克 * 提交了一个修复程序,以便我们不会在 documentHeight 准备就绪之前发送它。可能是一石二鸟地解决两个错误:(b/154603596, b/143078110)。 * 进行中 * 新指标 eer/ser (https://github.com/ampproject/amphtml/pull/28401) * 改进的 e2e 查看器测试 (https://github.com/ampproject/amphtml/pull/28531)。 * 将运行时页面添加到 gulp 性能 (https://github.com/ampproject/amphtml/pull/28503)。 * 协议适配器 worker-dom 实现 (https://github.com/ampproject/worker-dom/pull/850)。
威尔 * intersect-resources * 空闲渲染的候选修复已合并,等待广告指标
已学习
- 使用 DCL 来规范 LCP 等指标
下一步
贾斯汀 * 完成 buildCallback PR * 最后写一篇关于 WorkerDOM/amp-bind 在同源 iframe 中(使用同步消息)的文档 * 研究删除 Owners System,替换为 InOb polyfill
Jake
Will
分析
状态更新 2020 年 5 月 2 日星期六已完成的工作
- 在 canary 中启用了
analytics-chunks
实验。 - 将同意字符串大小限制扩大到 1kb
- 决定引入同意 UI 新的灯箱模式 文档
- 决定暂时不推进 AMPHTML 广告的独立分析解决方案。
- 决定保留现有的链接器覆盖率。暂时不会为所有浏览器自动启动链接器。
接下来是什么
- 同意元数据 & 同意供应商 API 重新设计
- 同意 UI 灯箱模式
- 细粒度同意支持的下一步
- 为 CustomEvent & StoryEvent 分组目标元素 问题
运行时
状态更新 2020 年 5 月 1 日 星期五回顾
- 贾斯汀
- 将错误报告中的堆栈跟踪帧自动链接到代码
- 添加了对 module/nomodule 脚本对的支持
- 修复了 closure 类型缩小 的 devAssert/userAssert
- 持久化的 browserify 缓存!
- 帮助删除了 AmpPass,对基础设施构建进行了各种修复
- 为 chai 断言添加了 linting,修复了测试
- 添加了一些缺失的未解析元素 CSS 样式
- 使模糊图像在
opacity: 0
时不可交互。 - 修复了 Safari 9 和 Yandex 中的 CEv1
- 使
getMode().test
及其相关函数在生产环境中进行 DCE(再次)
- 杰克
- documentHeight 错误修复、单元测试和集成测试。
- amp-script 工作线程异常捕获为用户错误而不是开发错误。
- 协议适配器单元测试和手动 e2e 测试。
- 对 e2e 测试流程进行了一些小的改进(--extensions 和 --fast 选项)
- 威尔
- “intersect-resources” 实验
- 修复了广告回归
- 看起来 LCP 提高了 1-2%,FID 提高了 5-6%
- 审查了 CSI 数据中代码紫红色方面的最新进展
- “intersect-resources” 实验
已学习
- 单元测试中持久化的模块状态很棘手
- 旧版浏览器仍然在流量中占据较小(但很明显)的百分比
- 这是否有效地限制了我们真正的浏览器支持集?
下一步
- 贾斯汀
- 希望向 Babel 添加持久化的文件转换缓存
- 推迟 buildCallback(现在我研究过它了,应该更容易了)
- 查看是否有任何元素期望非常早期的 buildCallback
- 杰克
- 用于视口内但未渲染的延迟的新指标
- worker-dom 协议适配器 PR
- IE11 最低支持探索
- 威尔
- 制定并运行手动 QA 计划,并开始产品发布🤞
分析
状态更新 2020 年 5 月 1 日 星期五已完成的工作
- 性能提升
- 在 canary 中运行
analytics-chunks
实验。(排除 AMPHTML 广告) -
同意
- 关于允许同意对话框在页面加载时接管全屏的讨论 问题
- 在原始同意字符串之上添加元数据。 PR
- 修复了当显示导航栏时同意对话框 UI。 问题
- 同意将原始同意字符串存储限制扩大到 1kb。
- AMP 团队将监控“存储大小超出限制”的错误率。
- 来自 Google AMP Viewer 的更新:如果当前限制对于 TCF V2 同意字符串来说太小,则可以扩大每个域的大小限制。
Bento
状态更新 2020 年 4 月 6 日 星期一完成了什么 🍱 ✅
amp-render
可绑定 src 的 PR 已合并- 与缓存团队合作,对开发者预览组件进行验证器更改(仍在实验中)
- Storybook 已升级到 6 版本
- 调查输出 CLS 更改的视觉差异测试
- 与 bento.dev 和法务部门讨论命名
- 审查可能导致现有/未来 bento 迁移问题的元素
下一步 ⏩
- 根据 Chromium 团队支持的更改,删除每个显示锁定的现有实现
- 与基础设施团队合作 👋 🏗️ 发布 npm 二进制文件
- 验证所有开发者预览组件(仍在实验中)
amp-sidebar
工具栏功能在 AMP 模式下amp-render
支持amp-script
协议和placeholder
amp-twitter
正在进行中- 请关注今天深度探索中的影子 DOM 演示
运行时
状态更新 2020 年 4 月 2 日 星期四回顾
- 贾斯汀
- 再次修复了 IE 11 中的 CEv1
- 修复了 IE11 中的集成测试,添加了简单的 amp-img 测试
- 基于是否使用大写/小写字母,打开了使用 localName/tagName 的 PR
- 快速
Promise.resolve()
转换以共享实例 - 禁用较新的 ES 功能,删除 Promise.p.finally 用法
- 杰克
- 与紫红色相关
- 从 toggleLoading 中删除了 force 选项。之后:修复了它引起的错误(gh/27508,gh/27905)
- 从 hide() 和视频播放器中的 toggleLoading 调用中删除不必要的度量(gh/27730,gh/27654,gh/27760,)
- 其他
- 在 worker-dom 中实现了协议适配器支持的草案(gh/worker-dom/850)
- 发现/修复了 iOS 错误,其中我们缺少所需的度量(gh/27729)
- amp-script:改进了非法突变消息传递(gh/27834)
- 将 [data-tweetid] 添加到验证器(gh/27787)
- 与紫红色相关
- 威尔
- 完成了 IntersectionObserver 测试计划,修复了一些边缘情况,并在 canary 中启用(4/28)
- 在 amp-list 中完成了一些与电子邮件相关的任务
- 发现 documentHeight/过早重新测量错误
已学习
- 我们需要一个用于电子邮件的 documentHeight 集成测试(我们是否为其他查看器消息提供了任何集成测试?)
- Closure 的一致性配置不会禁用使用 BANNED_NAME 的原型访问
下一步
- 贾斯汀
- 完成 connectedCallback PR
- 减少 DOM 突变
- 推迟 buildCallback
- 完成 connectedCallback PR
- 杰克
- 紫红色
- 修复 documentHeight 错误
- 运行时性能测试页面
- 其他
- 协议适配器
- 讨论:实习生/步骤
- 紫红色
- 威尔
- 尝试在 canary 中使用 IntersectionObserver
分析
状态更新 2020 年 4 月 2 日 星期四已完成的工作
- amp-geo
- 实现了
preset-us-ca
支持 - 自托管 amp-geo API 支持细分
- 性能提升
- 将分析初始化拆分为多个块。(需要先使用 AMPHTML 广告运行“analytics-chunks”实验)
- 向性能测试添加了分析请求处理程序,以查找页面视图延迟的潜在延迟
- 创建了测试页面数组
- 同意
- 修复了不稳定的 e2e 测试
- 改进了面向供应商的文档
- 关于传递 TCF 所需的
gdprApplies
变量和同意字符串类型的 PR - 允许用户通过
postPromptUI
按钮打开全屏同意对话框
接下来是什么
- 计划向所有浏览器推出 Linker(仍在讨论中)
- AMP 同意 TCF v2 相关功能支持
- 测试并启动
analytics-chunks
实验 - 可见性触发器以支持非 AMP 元素
运行时
状态更新 2020 年 4 月 1 日 星期三已完成的工作
- 第一个
PreactBaseElement
已合并! - 启动了最小 CEv1 Polyfill
- 基于 IntersectionObserver 的资源工作,现在在实验性构建中启用
- 更新了 amp-script 的启用开发模式
- amp-state 现在可以是 amp-list 的源
- 使用
performance.now
获取指标增量 - 对于具有多个 amp-mustache 模板的页面,DomPurify 现在快得多
- 缓存 amp-access 评估,以加快评估速度
- 多次修复了源映射。
- 修复了 iOS 滚动问题
- 从 toggleLoading 中删除了重新测量
经验教训
- 历史悠久的 2015 MBP 正在慢慢显示出它的老态…
- 在真实页面上验证资源原型
接下来是什么
- 将
BaseElement
构造延迟到connectedCallback
- 加快/优先处理
connectedCallback
/buildCallback
- 用于远程数据的协议适配器
- InOb 验证和修复
- 更多性能工作!
运行时
状态更新 2020 年 4 月 1 日 星期三回顾
- 贾斯汀
- TC39
- 与 Babel 缩小器转换一起审查
- 修复源映射(再次)
- 打开了将 BaseElement 构造延迟到 connectedCallback 的 PR
- 杰克
- 优化:从 toggleLoading 中删除了重新测量(gh/27482)
- 重构:稍微清理了 toggleLoading 流(gh/27527)
- 更多正在进行的 toggleLoading 更改
- 威尔
- IntersectionObserver 测试和边缘情况
- 其他事项
已学习
- Justin 需要购买一台新电脑
下一步
- 贾斯汀
- 将 BaseElement 构造延迟到 connectedCallback
- 降低 connectedCallback 的成本
- 杰克
- 完成对 toggleLoading 的进行中更改
- 为
loader.js
和amp-loader.js
创建单元测试 - 协议适配器
- 性能
- 跳过 amp-bind 树遍历
- 降低重新父元素的成本
- 优先处理视口内元素的布局
- 威尔
- 完成测试并在 canary 中启用 IntersectionObserver
分析
状态更新 2020 年 4 月 1 日 星期三已完成的工作
- 打开了用于 Gulp 性能任务的 PR,以测试本地托管的网站
- 修复了分析变量扩展处理空值的错误
- 致力于 amp-consent 中 CMP 和发布商的 TCF v2
gdprApplies
字段 - 允许每个 AMP 文档一个跟踪 iframe
- 通过
preset-us-ca
支持<amp-geo>
中的美国-加利福尼亚州检测
盈利
状态更新 2020 年 4 月 1 日 星期三已完成的工作
AMP 变现 - 在 Google 上添加 type=module crossorigin=anonymous
的实验准备启动 - 对无签名集成故障的调查
故事广告 - 修复故事广告点击回归 - 自动前进实验的设计 - 监控展示位置更改结果
AMP for Email
状态更新 2020 年 3 月 4 日 星期三亮点
- 关于标准化工作达成了很多共识
WG 会议记录(12/13、1/10、2/13)
- 统一发件人注册表仍在各提供商之间审核中
- 关于在规范中允许 CSS 属性选择器达成共识
- 关于禁止在
amp-form
中使用AMP-Redirect-To
功能达成共识 - 关于标准化基于
meta
的白名单达成共识 (https://github.com/ampproject/amphtml/issues/27094) - 关于在规范中允许
input[type=button]
和使用tel:
URI 方案的链接达成共识 - 审查了新 AMP 组件逐步采用的流程 提案
- 讨论了验证器中可选的强制电子邮件 CSS 规则
- 讨论了标准化 DMARC 的强制执行
- 讨论了标准化电子邮件“超折叠”
- 讨论了 MIME 树边缘情况的标准化
- 继续审查新的电子邮件身份验证提案
- 创建了新的“AMP for Email Ecosystem”小组 和 Slack 频道
分析
状态更新 2020 年 3 月 3 日 星期二已完成的工作
- 增强了 Gulp 性能任务,以根据不同团队的需求拦截和计时请求(还有助于查明回归)
- 启动可见性触发器多选择器功能以配置 amp-analytics 中的大小
- 决定按触发器对分析初始化进行分块,以减少长时间的任务
- 服务器上更多美国-加利福尼亚州的支持工作
接下来是什么
- 使用 master 上的性能任务监控分析请求延迟以获取噪声并评估其有效性
- 可见性触发器的 QuerySelectorAll
- amp-consent 中 CMP 和发布商的 TCF v2
gdprApplies
字段 - 广告设计的分析
盈利
状态更新 2020 年 3 月 3 日 星期二已完成的工作
AMP 变现 - 供应商拆分和 ES 模块代码 100% 完成,正在进行实验 - 与 Greg 讨论了在 Google AMP 查看器上设置客户端实验的技术路线,设计文档待定 - IMA 视频未获取规范 URL 导致广告收入损失:首先协调修复了 IMA SDK - Web 插页式广告设计正在进行中 - 修复了围绕 body 属性没有 sing 的错误并重新开始实验。- 修复了在基于模板的广告中设置扩展版本的错误。
故事广告 - 完成了故事广告的重构,以隔离展示逻辑。- 开始了新的实验,以测试在较短故事中的展示位置
接下来是什么
AMP 变现 - 通知广告供应商测试供应商拆分 - 评估供应商拆分结果 - 顶部粘性广告实现 - IMA 视频 RTC 设计
故事广告 - 设置自动前进实验 - 展示位置设计审查
分析
状态更新 2020 年 3 月 2 日星期一已完成的工作
- ANALYTICS_VENDOR_SPLIT 清理已完成。供应商将来需要提交 .json 文件而不是 .js 文件
- 同意字符串大小限制从 150 字节增加到 200 字节。未来是否增加仍在讨论中
- 当地理位置热补丁不可用时,
<amp-geo>
将回退到geoApi
。(例如,自托管) <amp-analytics>
的可见性触发器改进:多选择器、querySelectorAll 和非 amp 元素<amp-consent>
UX 和 a11y 改进已推出
分析
状态更新 2020 年 3 月 1 日星期日已完成的工作
- 基准测试
<amp-analytics>
性能和 pageView 延迟 - 使用现有的性能测试框架来衡量请求延迟。
- 探索减少与分析相关的长任务的解决方案。(分块、worker)
接下来是什么
<amp-consent>
gdprApplies
字段- 继续努力减少与分析相关的长任务
- 减少
<amp-analytics>
pageView 延迟。一些建议包括:内联包含供应商预定义的配置,为广告引入轻量级组件。
基础设施
状态更新 2020 年 2 月 3 日星期一我们做了什么
- 更新了 amp.dev 发布时间表 页面
- 发布标记已启用(
PR Use: In Stable / Beta / Experimental
) - 使用新的发布渠道名称更新了 cherry-pick 模板
- 添加了一种仅通过
gulp build | dist | watch --core_runtime_only
构建核心运行时的方法 - 阐明了使用
yarn
添加amphtml
依赖项的过程 - 对基础设施问题的积压进行了分类
- 将
AMP_CANARY
Cookie 重命名为__Host-AMP_OPT_IN
接下来是什么
- 默认的缩小版本(
gulp dist
)现在会将AMP_CONFIG
添加到运行时文件中 - 作为 CI / 发布工作流程一部分的性能测试
- 使 LTS 和 nightly 频道广泛可用
- 采取措施减少 CI 不稳定性(sauce labs、percy)
分析
状态更新 2020 年 2 月 3 日星期一已完成的工作
<amp-consent>
a11y 重新设计实现- 只有在用户交互后才允许使用
<amp-consent>``enterFullScreen
API <amp-consent>
支持 CMP 收集错误消息的新 API- 设计建议,让
<amp-geo>
以 ISO 3166-2 代码的格式检测加利福尼亚州
接下来是什么
- 完全启动
<amp-consent>
UI 增强功能,包括上述任务(现在受实验标志保护) - 将 ISO 3166-2 代码修补到
amp-geo-0.1.js
- 允许
<amp-geo>
回退以从远程端点获取地理位置。(来自 #25873 的讨论)
查看器
状态更新 2020 年 2 月 1 日星期六已完成的工作
- @newmuis 为 AMP 故事播放器 编写了一个 I2I,它独立于 amp-viewer 项目
- 它的范围比现有播放器窄,因此决定从头开始。
- @Enriqe 正在实现该功能。
盈利
状态更新 2020 年 2 月 1 日星期六已完成的工作
AMP 变现 - 合并了一些 amp-ad 3p 供应商拆分的先决条件,构建特定于供应商的集成 Javascript 文件 - FIE 元素急切构建已准备好启动 - 通过 amp-ad 合并的粘性广告 - PageEx + AMP 广告研讨会
故事广告 - 故事广告展示位置设计 - 在某些窗口大小下,桌面 CTD 广告损坏的错误
接下来是什么
AMP 变现 - Amp-ad 3p 供应商拆分(即将推出 I2I) - 顶部粘性广告 (https://github.com/ampproject/amphtml/issues/31513) - 与 Kargo 合作提供某些新广告格式的参考实现 - 为 inabox 交付急切构建 - 再次尝试无签名优化
故事广告 - 封装布局算法的逻辑 - 开始新的算法实现
基础设施
状态更新 2020 年 1 月 6 日星期一我们做了什么
- LTS:更新了验证器和其他部分以支持新的发布类型
- GH 版本现在自动发布
- WIP:发布时间表的更新
- 发布仪表板的新 cherry picking 部分
- E2E 测试的网络日志记录
- 为未缩小版本添加了覆盖率检测
基础设施
状态更新 2020 年 1 月 2 日星期四我们做了什么
- 更新了发布文档
- 禁止使用 iframe 嵌入实验页面以防止点击劫持
- 发布标记有效
- 使用新的 selenium 版本更新了/取消了 e2e 测试
- 在源代码中强制执行基于 JSDoc 的访问控制
gulp {build|watch|dist}
的新--core_runtime_only
标志- 发布了 OpenJS 的 Infra 文档
接下来是什么
- 发布时间表/节奏的交互式可视化
- 宣布/监控 LTS 发布
- 将
AMP_CANARY
cookie 重命名为__Host-AMP_OPT_IN
- 自动化内部 GitHub 应用程序的部署
- 重构
gulp changelog
- 将性能测试集成到 CI 中
- 修复 Sauce Labs 断开连接(在 Karma 和 Sauce 的帮助下)
基础设施
状态更新 2019 年 12 月 9 日星期一我们做了什么
- 发布名称:
stable、beta、experimental、nightly、lts
- nightly 和 lts 的设计审查
- 任意 RTV 的选择加入 cookie
- 修复了大约 5k 个使用全局沙箱的单元/集成测试
- 添加了对检查所有 JS 文件捆绑包大小的支持
- 旧版 bluebird promise 清理
接下来是什么
- 部署自动化发布标记器
- 在 LTS 和 nightly 版本上进行更多工作
- 验证器更改以识别 LTS 版本
- E2E 测试的网络日志记录
- 强制执行选择加入的 JS 文件的捆绑包大小检查
AMP for Email
状态更新 2019 年 12 月 4 日星期三亮点
- 在纽约的 ACS 2019 举行了电子邮件小型峰会
- Outlook.com 推出面向开发人员预览的 AMP for Email
- VerizonMedia 合并了 AMP 验证器的 OSS Java 实现
- Gmail 将 AMP for Email 推广到 Android
WG 会议记录(9/12、10/17、11/8)
- 正在处理统一的发送者注册流程(正在审核的共享表格)
- 收到了有关拟议的共享 HTML/CSS 白名单标准的反馈
- 就标准化最大电子邮件大小 (200KB)、最大模板 SSR 大小等达成共识 (#4)
- 更多关于“电子邮件的 CORS”提案的讨论 (#7)
- 用于电子邮件发件人身份验证的新提案(对代理断言令牌的生态系统友好替代方案)
- 讨论了 AMP 验证器版本控制以及如何缓解跨提供商的版本偏差
- 就允许有限的 CSS 属性选择器达成共识(例如,对
amp-selector
有用) - 在 AMP4EMAIL 规范中提出了一个新组件:
amp-autocomplete
- 自托管 AMP JS 和推出模式
- 面向电子邮件发件人和 ESP 的新外展渠道
基础设施
状态更新 2019 年 11 月 1 日星期五我们做了什么
- 通过 API 进行 OWNERS 语法检查
- 消除全局 sinon 的使用
- 修复了因新的 Node LTS 导致的崩溃
- Owners bot GCE → GAE(带有树、团队和语法指南)
- amp-github-apps 的测试基础设施
- 修复了 npm 安全漏洞
- 高级 Travis VM 已上线
基础设施
状态更新 2019 年 10 月 2 日星期三我们做了什么
- 新的构建管道检查,用于查找未知依赖项
- 自动化 GitHub 版本发布(跟踪发布 CL)
- Owners Bot 迁移到 AppEngine,带有虚拟存储库
- 面向公众的 Owners 树 & 状态页面
- 非 JS 文件(OWNERS、文档)的新样式检查:
gulp prettify
- 大量小型文档修复
接下来是什么
- 使 owners bot 存储库不可知
- Travis 检查 OWNERS 语法
- 每月发布渠道的第一步
- 自动化 GitHub 版本创建并改进内容
- 跟踪扩展的捆绑包大小
- 采用新的捆绑包大小检查器
- 为旧版本 Node 的用户取消损坏的
amphtml-validator
- 自动化所有
package.json
文件中的节点升级
运行时
状态更新 2019 年 10 月 2 日星期三已完成的工作
- Custom Elements v1 已发布
- 带有 IE11 cherry-pick
- CL 支持受支持浏览器中的非 polyfill
- 资源现在使滚动框的子项失效
- 图层失败后的目标
- 用于删除导航前查询参数的 CL (ITP 2.3)
- 用于操作信任的 CL
- 操作应传播它们接收到的信任
- 打破异步循环
经验教训
- IE11 的 HTMLElement 类不扩展 Function
- 因此,HTMLElement.call 不存在
- 跨域脚本中的错误仍然未报告。
缓存
状态更新 2019 年 10 月 2 日星期三完成了什么?
- 删除了 AMP 验证器中的错误类别,并将其修订为 Node 12。
- 以上导致了一些不兼容问题,这些问题现在已得到解决。
- 向 AMP CID cookie 添加了
SameSite=none
。
基础设施
状态更新 2019 年 10 月 1 日星期二我们做了什么
- Owners 检查现在已阻止
- 启用了自动审阅者分配
- 为任意二进制文件/扩展程序添加了
bundle-size
支持 - 重新组织了
build-system
和存储库根目录,以获得更好的代码所有权边界 - 调查了在 CI 期间检查 owners 文件更改的方法
- 在贡献者峰会期间介绍了 2019 年基础设施亮点
接下来是什么
- 为一些非
v0.js
文件部署bundle-size
检查 - 调查/修复某些人缺少 PR 部署按钮的问题
- 为
OWNERS
文件格式添加 CI 检查 - 跟进贡献者峰会的公开请求
运行时
状态更新 2019 年 10 月 1 日星期二接下来是什么
- 📧电子邮件
- 递归 XHR 问题
- 统一发件人注册
- SSR 相关的“documentHeight”消息
- 🍱基于 React 的 AMP 组件
- 发布计划
- ⚙运行时
- CSI 迁移设计
运行时
状态更新 2019 年 9 月 3 日星期二运行时
状态更新 2019 年 9 月 2 日星期一已完成的工作
- 现在,选择加入单个 AMP 实验使用 LocalStorage 而不是 cookie。
- 大量关于 amp-bind 的工作
- 性能改进
- amp-script 已发布!
- 内联脚本支持
- Canvas 支持
- LocalStorage 支持
- AMP setState 支持
- 1 次传递构建工作
- 将中间模块依赖项连接和修剪成单个最终 JS 文件
- 修复 sourcemap
- 修复周
- 通过
JSON.parse
更快地解析广告/分析配置 - amp-list DOM 差异而不是
innerHTML
- Bento
- 探索在内部使用 React 来简化组件
- 探索如何在 AMP 和“Bento”模式中包装 React
- 图层已被禁用和删除
基础设施
状态更新 2019 年 9 月 1 日星期日我们做了什么
- 设计审查后部署了 owners bot
- Owners 现在是 Github 上的非阻塞检查
- 通过捆绑包大小 bot 启用了 brotli 大小跟踪(尚未默认)
- Lazy-build 是默认的
gulp
模式(要禁用:--eager_build
) - 将开发服务器重写为进程内服务器
- Linux 和 Mac OS 支持 Sauce Labs 启动/停止脚本
- 修复了导致频繁 Travis 缓存损坏的错误
缓存
状态更新 2019 年 9 月 1 日星期日完成了什么?
- 将 amppkg 从 dep 转换为 go mod
- 验证器验证 template=”” 是否与页面上的模板 ID 匹配
- 开始在 amppkg 中进行 ACME 证书续订的工作
- 欢迎 Allan Banaag 加入 https://github.com/ampproject/wg-caching
<style amp-custom-length-check>
在 AMP 验证器中的特殊错误
此更新包括前几周的进展。
AMP for Email
状态更新 2019 年 8 月 1 日星期四亮点
- 计划在纽约的 ACS 2019 举行面对面会议
- 微软和 VerizonMedia 的实施仍在进行中
WG 会议纪要(6/14、7/12、8/9)
- 扩展了 wg-amp4email GitHub 成员资格
- 在提供商特定的 HTML/CSS 白名单和 AMP4EMAIL 规范之间进行对齐的进展
- 就弃用代理断言令牌达成共识,以避免发送者可能只支持大型提供商
- 记录了 AMP 查看器实施指南
- 就共享发送者注册/白名单的方法达成共识(长期目标是不再使用发送者白名单)
- 讨论了专门针对 AMP4EMAIL 的新 CORS 机制 (#7)
- 讨论了 AMP MIME 部分过期时间、最大大小和最大 AMP 元素数量的标准化 (#4)
运行时
状态更新 2019 年 8 月 1 日星期四已完成的工作
- 修复
- 启动 amp-script
jsonConfiguration()
- amp-list:DOM diffing 和错误 UI
经验教训
- 在 const 私有属性上进行代码分支不会被 DCE 掉
/** @const */
this.nope_ = false;
if (this.nope_) {
foo(); // Still bundled.
}
分析
状态更新 2019 年 8 月 1 日星期四已完成的工作
- 添加
PAGE_VIEW_ID_64
支持 - 在视频分析中添加
AD_START
AD_END
事件 - 分析链接器:不再装饰内部导航
- 延迟加载分析供应商的配置(当前正在运行实验)
- 根据性能计时信号更早地解析
NAV_TIMING
宏
基础设施
状态更新 2019 年 7 月 8 日星期一发布质量
- PR 部署机器人的初始版本
- 修复了
amp-date-picker
错误,撰写了事后报告 - 为运行时代码启用了休眠一致性检查
开发者体验
- 将 CJS 运行时依赖项迁移到 ESM
- 多遍 Babel 转换
- 修复了 babel 全局转换配置
- 修复了
gulp watch
错误(编译错误时取消)
分析
状态更新 2019 年 7 月 8 日星期一已完成的工作
问题分类 - 分类了 120 个问题。附加了 component
标签。关闭了 16 个过时的标签。为修复周优先处理了约 20 个。
错误修复 - 调查了由 [PR] (https://github.com/ampproject/amphtml/pull/22812) 引起的回归。将还原 PR 精选到 inabox canary。
amp-experiment v2 - 支持选择多个元素的 PR 待定
运行时
状态更新 2019 年 7 月 2 日星期二已完成的工作
- amp-script:本地存储,更好的参考文档
- worker-dom:解包作者脚本,升级 TS,错误修复和代码清理
- 1 遍:中间包的源地图兼容性
- AMP4EMAIL:调查运行时 mustache 规则
- amp-bind:修复 canary 中的错误
- @jridgewell 负责发布
经验教训
- 仔细阅读 API 以了解 DOM 遍历的边缘情况
接下来是什么
- 启动 amp-script
- amp-script:作为组件接口的操作/事件
- Bento:开始服务解耦的设计和原型制作
- AMP4EMAIL:amp-list 和 DOM diffing 的错误 UI
查看器
状态更新 2019 年 7 月 1 日星期一基础设施
状态更新 2019 年 6 月 2 日星期日发布质量
- 修复了 saucelabs safari 12.1 错误
- 在 IE 11 上运行集成测试
开发者体验
- 将
gulp test
重构为gulp unit|integration|a4a
- WIP:用于演示/测试(按需)部署正在进行中的 PR 代码的机器人
- 将未缩小版本的构建速度提高了 15%
缓存
状态更新 2019 年 6 月 2 日星期日完成了什么?
- 发布了 amppkg v2。
- 修复了 AMP Packager 的证书的 etag 问题。
- 元标签修复了 AMP 缓存中的转换器,停止将它们全部移动到头部。
分析
状态更新 2019 年 6 月 2 日星期日已完成的工作
新功能 - <amp-experiment>
支持修改 class 属性 PR - 将 requestOrigin
引入到 <amp-analytics>
请求配置字段。 Issue - 在 <amp-analytics>
中引入 $EQUALS
宏支持 Issue - 将所有 Analytics 供应商配置从 js 文件转换为 json 文件。这是延迟加载分析供应商配置的工作的一部分。 - 更改 Analytics Linker 的默认行为以装饰所有子域 - 在 <amp-analytics>
中引入 $COOKIE
宏支持 Issue - 允许在使用 <amp-analytics>
的 cookie 配置设置 cookie 时设置自定义 cookie 过期时间 Issue
错误修复 - 修复 Analytics Linker 装饰片段 URL 的回归 - 修复在解析 performanceTiming.loadEventEnd
时出现的竞争条件 [PR] (https://github.com/ampproject/amphtml/pull/22812) - 修复 video-percentage-played
不触发的竞争条件 Issue - 修复嵌套宏扩展错误 Issue
接下来是什么
<amp-experiment>
v2 支持选择多个元素<amp-experiment>
v2 支持修改style
和src
属性- 延迟加载分析供应商配置
缓存
状态更新 2019 年 6 月 1 日星期六完成了什么?
- 恢复 dns-prefetch 缓存转换器;最近已损坏。
- 对电子邮件验证器进行了重大更改,以更好地匹配 Gmail 的过滤规则。
- Javascript 修复以实现 1000 字节的内联 CSS 限制。
- 修复了 amppackager 中的 inner != outer 问题。
- WIP 改进/定义 amppkg 发布流程
AMP for Email
状态更新 2019 年 5 月 1 日星期三亮点
- 3 月在 Gmail 中启动!
- 来自微软、雅虎和 Mail.ru 的承诺
- AMP Conf '19: "AMP for Email: Pushing the boundaries of email with AMP"
- 早期的 Gmail 合作伙伴结果令人鼓舞:一个的点击率提高了 2 倍,另一个的点击率和转化率提高了 60%。
WG 会议纪要 (5/10)
- 共同目标:AMP4EMAIL 规范是电子邮件提供商呈现兼容性的事实来源
- 推论:跨提供商工作的共享发送者工具
- 推论:将提供商特定的白名单(HTML/CSS)迁移到 AMP4EMAIL 规范
- 提供商采用的实施细节,例如集成生产级 AMP 验证器
- @ampproject/wg-caching 正在调查开源内部 C++ 验证器
- 与 代理断言令牌 讨论了 3P 身份验证
- 讨论了 wg-amp4email GitHub 成员资格
重点领域
- 每个 AMP4EMAIL 规范的跨提供商兼容性(如上所述)
- 在 AMP4EMAIL 中允许更多组件,例如 amp-animation、amp-analytics
/cc @jasti
分析
状态更新 2019 年 5 月 1 日星期三已完成的工作
修复周 - 为 Linker 通配符功能添加了文档 - 为 PWA 添加了 amp-analytics 集成测试 - 修复了 var 中的嵌套宏错误 - 将 cookie 写入 eTLD+1 以与 CLIENT_ID 一致 - WIP amp-call-tracking 错误
amp-experiment v2 - 引入突变限制和配置大小限制
接下来是什么
amp-experiment v2 - 与 Optimizely 合作,朝着 GA 发布迈进
Linker - 默认情况下为 eTLD+1 启用 Linker
分析
状态更新 2019 年 4 月 2 日星期二接下来是什么
amp-experiment v2 - 与 Optimizely 合作,朝着 GA 发布迈进
ITP2.2 - 评估影响
错误 - 修复嵌套宏错误 #20816 - AdWords 中的 amp-call-tracking #20551
分析
状态更新 2019 年 3 月 1 日星期五已完成的工作
amp-experiment v2 - 修复了渲染延迟服务回归 #21193
amp-analytics - 为用户提供一种 CSP 友好的方式来选择退出跟踪 WIP
Linker - 允许在 WIP 外部使用 LINKER_PARAM
接下来是什么
amp-experiment v2 - 版本更新 - 实现配置解析器 - 安全审查
Linker - 允许在 cookie 写入器外部使用 LINKER_PARAM
amp-analytics - 为用户提供一种 CSP 友好的方式来选择退出跟踪
分析
状态更新 2019 年 2 月 2 日星期六接下来是什么
amp-experiment v2 - 版本更新 - 实现配置解析器 - 修复渲染延迟服务 - 安全审查
Linker - 允许在 cookie 写入器外部使用 LINKER_PARAM
amp-analytics - 延迟加载供应商配置设计 - 为用户提供一种 CSP 友好的方式来选择退出跟踪
缓存
状态更新 2019 年 1 月 2 日星期三已完成的工作
- AMP 操作验证器规则现已可用。
- 正确处理缓存中的文档片段。#19688
- 转换后的 AMP SXG 现在包含
- 使用的转换器版本
- 原始 CSS 字符串片段
- 防止 CSS 中的 data:...
- css 转义逻辑
- 验证转换器 cdn 和版本