尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
如何用 dart_roll_helper.py 把新的 Dart SDK 版本 roll 进 Flutter 引擎
如何用 dart_roll_helper.py 把新的 Dart SDK 版本 roll 进 Flutter 引擎【免费下载链接】flutterFlutter makes it easy and fast to build beautiful apps for mobile and beyond项目地址: https://gitcode.com/GitHub_Trending/flutter41/flutterFlutter 仓库通过DEPS文件维护与其他仓库的版本对应关系Flutter 引擎使用哪个版本的 Dart SDK 就由它决定。Rolling-Dart.md 说明 Dart SDK 目前已由 autoroller 定期自动 roll 进 Flutter 仓库同一篇文档也完整记录了如何用dart_roll_helper.py手动完成一次 roll。当你明确知道要引入的目标 Dart 修订、需要自己执行并跟踪一次完整 roll 时走这条路径脚本负责更新DEPS、同步依赖、生成 GN、构建引擎、跑测试并生成 commit脚本无错误结束后再按文档走完 PR 审查与 build bot 验证整个 roll 才算完成。执行前的准备按 CONTRIBUTING.md 中 contributing guide 的指引设置好 Engine 与 Flutter 开发环境并且能够按 Compiling-the-engine.md 构建引擎。这两点来自文档手动 roll 流程的第 1、2 步是执行 roll 的前置条件。确定以下三个路径可以用环境变量设置也可以在命令行上为每个仓库提供--REPO-home参数。文档明确说明这些路径是工具运行的必要条件$FLUTTER_HOMEflutter目录的绝对路径$ENGINE_HOMEengine/src目录的绝对路径$DART_SDK_HOMEDart SDK 项目根目录的绝对路径。确保仓库处于干净状态。脚本会执行gclient sync文档特别提示它可能删除文件所以未提交或本地修改过的内容应先处理。选定目标 Dart 修订即命令中的$TARGET_SDK_HASH。文档手动流程中的选择标准是通常选用最新修订并确认该修订在 Dart buildbot 与 Internal Dart Flutter buildbot 上的测试全部通过all green。运行脚本完成 roll 的自动步骤文档给出的命令python $ENGINE_HOME/tools/dart/dart_roll_helper.py --create-commit $TARGET_SDK_HASH其中$TARGET_SDK_HASH替换为你选定的 Dart 修订 hash。--create-commit用于生成包含相关 Dart SDK commit 日志的 commit——文档把“生成 commit”列为脚本的可选能力之一命令示例中保留了该参数。如果上文三个环境变量没有设置需要为每个仓库补充--REPO-home参数。一次运行中脚本自动完成的工作包括均出自文档更新DEPS中的 Dart 修订与 Dart 依赖通过gclient sync同步依赖为相关引擎配置生成 GN 文件并构建这些配置在example/flutter_gallery与packages/flutter中运行测试以 release 和 debug 模式启动 flutter_gallery运行license.sh并更新flutter/ci/licenses_golden中的 license 文件生成包含相关 Dart SDK commit 日志的 commit可选。这些动作都会改动工作区DEPS、生成文件、构建产物、license 文件因此第 3 条“仓库保持干净状态”不是可选项。脚本结束后的验证与合入文档给出的成功条件是脚本无错误地完成。此时按同一文档手动流程的第 10 步起继续推送 roll 分支git push origin your_roll_branch_nameyour_roll_branch_name替换为你实际使用的分支名。为 PR 完成 code review确认 flutter engine build bot 是 green然后合入 PR。等 build bot 构建你的变更并保持 green。bot 变 green 后Autorollers 会把引擎 roll 进 flutter/flutter 仓库。此时需要监控 flutter build bots 与 benchmarks dashboard出现失败在 flutter/engine 中 revert 这次 Dart roll调试问题并修复或向 Dart 提 P0 issue发现性能回归为所有回归提 P0 issue并且 revert Dart roll这些问题修复之前下一次 roll 会被阻塞。文档第 14 步还要求roll 完成后在团队维护的 roll 记录表中登记 roll 进引擎的 Dart 修订 hash并通知列表中的下一位接手 roll 的人。该链接指向 Google 内部系统属于团队内部流程。边界与限制Dart 现在默认由 autoroller 定期自动 roll本文的手动路径面向明确选择目标修订、由人执行并跟踪的场景两者不是并行竞争的两条主流程。脚本只覆盖 roll 的自动部分到生成 commit 为止PR 审查、build bot 验证、失败后的 revert 与后续监控都需要人工完成。手动流程中提到的create_updated_flutter_deps.py、libraries.yaml更新等步骤属于手工 roll 的对应操作dart_roll_helper.py路径下文档未要求单独执行这里不作展开。【免费下载链接】flutterFlutter makes it easy and fast to build beautiful apps for mobile and beyond项目地址: https://gitcode.com/GitHub_Trending/flutter41/flutter创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED

相关推荐

SQL基础语句精要:从查询到优化的实用指南

SQL基础语句精要:从查询到优化的实用指南

1. SQL基础语句概述SQL作为关系型数据库的标准查询语言,是每个开发者必须掌握的核心技能。我在实际工作中发现,80%的数据库操作都集中在20%的基础SQL语句上。本文将系统梳理这些高频使用的SQL基础语句,涵盖数据查询、操作、表管理等核心功能模…

📅 2026/9/10 15:36:06
Gogs 连接 MySQL 报 Error 1071 “key was too long“ 怎么处理

Gogs 连接 MySQL 报 Error 1071 “key was too long“ 怎么处理

Gogs 连接 MySQL 报 Error 1071 "key was too long" 怎么处理 【免费下载链接】gogs The painless way to host your own Git service 项目地址: https://gitcode.com/GitHub_Trending/go/gogs 用 MySQL 或 MariaDB 作为 Gogs 的后端数据库时,启动…

📅 2026/9/10 15:36:06
【2026最新测评】实测10款全网热门写小说软件,打破码字瓶颈,附小说生成器直达链接

【2026最新测评】实测10款全网热门写小说软件,打破码字瓶颈,附小说生成器直达链接

凌晨两点,我盯着屏幕上闪烁的光标,一连删了三个开头。连小说人物名字生成器都点烂了,依然凑不出一句满意的话。讲真,这种对着电脑干瞪眼、灵感枯竭的滋味,每一个写小说的人都深有体会。 以前我总觉得,用AI代…

📅 2026/9/10 15:36:06
MORE NEWS

更多资讯

📰

会议录音不发云端:Buzz 三步离线转文字的完整走法

会议录音不发云端:Buzz 三步离线转文字的完整走法 【免费下载链接】buzz Buzz transcribes and translates audio offline on your personal computer. Powered by OpenAIs Whisper. 项目地址: https://gitcode.com/GitHub_Trending/buz/buzz Buzz 是一款离线…

📰

Telegram Bot API自定义扩展终极指南:如何快速添加新的API端点和方法

Telegram Bot API自定义扩展终极指南:如何快速添加新的API端点和方法 Telegram Bot API是一个功能强大的机器人开发框架,而telegram-bot-api项目提供了Golang语言的完整绑定支持。📱 本文将详细介绍如何在这个库中自定义扩展,添加…

📰

ABAP异常治理框架设计与实施指南

1. 为什么ABAP项目需要可治理的异常体系在SAP项目实施过程中,我们经常遇到这样的场景:开发人员随手抛出CX_STATIC_CHECK异常,调用层捕获后简单记录日志就结束处理。这种粗放式的错误处理方式会导致三个典型问题:错误信息碎片化&am…

📰

多组学整合分析在胶质母细胞瘤研究中的应用与流程解析

1. 项目概述:多组学整合分析在胶质母细胞瘤研究中的应用这篇发表在Cell期刊上的胶质母细胞瘤研究文章,采用了五种前沿组学技术(bulk转录组、单细胞测序、空间转录组、ATAC-seq和代谢组)结合临床验证的创新方法,为肿瘤异…

📰

Qwen-Agent:3行代码跑通千份文档的批量问答

Qwen-Agent:3行代码跑通千份文档的批量问答 【免费下载链接】Qwen-Agent Agent framework and applications built upon Qwen>3.0, featuring Function Calling, MCP, Code Interpreter, RAG, Chrome extension, etc. 项目地址: https://gitcode.com/GitHub_Tr…

📰

LlamaIndex TablestoreChatStore:把聊天历史持久化到阿里云表格存储(Tablestore)的 Chat Store 集成

LlamaIndex TablestoreChatStore:把聊天历史持久化到阿里云表格存储(Tablestore)的 Chat Store 集成 【免费下载链接】llama_index LlamaIndex is the leading document agent and OCR platform 项目地址: https://gitcode.com/GitHub_Tren…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬