Turborepo 1.12
Turborepo 1.12 增加了社区热门请求的功能和反馈改进,包括:
- 任务日志中的颜色:默认使用原始 shell 日志中的颜色
- 错误全面优化:改进了配置错误消息
- 改进的
inputs人体工程学:将您的输入自定义与 Turborepo 的默认设置结合使用 - 遥测:帮助我们专注于 Turborepo 用户最关心的事项
在此版本中,我们还通过删除 --go-fallback 标志并与 1.11 相比将 turbo 二进制文件缩小 58%,完成了 Rust 迁移的清理工作。
立即运行 npx @turbo/codemod migrate 进行更新,或使用 npx create-turbo@latest 开始使用。
任务日志中的颜色
颜色是快速显示用户界面中重要信息的好方法。开发工具通常会用绿色突出显示成功,黄色突出显示警告,红色突出显示错误。


在此版本中,我们现在默认显示本地环境中底层任务的颜色。这是社区一直以来的热门请求,我们很高兴今天能发布对 macOS 和 Linux 的支持。我们将在未来的版本中跟进 Windows 支持。
错误全面优化
开发者体验的一个重要部分是确保当出现问题时,清楚地了解如何恢复正常。在此版本中,我们改进了因 Turborepo 配置错误而产生的错误消息。


在这个增强的用户界面中,我们:
- 向您显示出错的代码
- 改进您的终端中针对每种错误类型的帮助文本
- 提供文档链接,当它可以为您提供有用的上下文时
改进的 inputs 人体工程学
Turborepo 默认智能地理解任务的输入。但也存在您可能希望从任务输入中包含或排除特定文件或目录的情况。
重要的是,在任务上使用 inputs 键会使您选择退出任务的所有默认输入,例如从输入中省略 gitignored 文件。直到今天,您还必须通过自己为它们创建 glob 模式来手动恢复这些默认值。
今天,我们添加了 $TURBO_DEFAULT$ 作为在 inputs 数组中使用时的特殊值。


这个微语法允许您使用您习惯的 Turborepo 默认值,同时添加您自己的自定义 glob 以微调默认输入行为。
查看 inputs 文档 以获取更多信息。
遥测
Turborepo 发布至今已近两年,turbo 在过去两年中发展显著。随着社区的壮大,您的反馈对于帮助我们专注于 Turborepo 用户最关心的事项具有不可估量的价值。
到目前为止,我们的反馈收集过程是手动的、缓慢的且容易出错的。虽然我们始终非常感谢在 GitHub Issues 中提交问题、在 GitHub Discussions 中与我们交流以及在 Discord 中与社区聊天的用户,但这些反馈只捕捉到了 Turboverse 一小部分人的情绪。
今天,我们推出了一种完全匿名的自动化反馈方法,以了解社区使用 Turborepo 的更多方式。随着我们继续迭代 turbo,这些信息将帮助我们确保性能、确认稳定性、设计新功能并推动项目方向。
我们正在创建未来的构建系统,这些信息将对指导我们完成这项工作非常有价值。有关更多信息,请访问 turborepo.com/docs/telemetry。
如果您想选择退出遥测,请运行
您还可以通过设置环境变量选择退出
TURBO_TELEMETRY_DISABLED=1DO_NOT_TRACK=1(根据 Console Do Not Track (DNT) 规范)
其他改进
- [功能]:启用 pty 使用 (PR)
- [功能]:支持输入中的
$TURBO_DEFAULT$(PR) - [功能]:支持 Yarn 4 补丁 (PR)
- [功能]:启用遥测 (PR)
- [改进]:将空环境变量视为空置 (PR)
- [改进]:如果提供依赖标志而没有其父标志,则报错 (PR)
- [改进]:确保我们的并发检查忽略没有任务的包 (PR)
- [改进]:避免在无效目录过滤器上发生崩溃 (PR)
- [改进]:在 glob 匹配期间忽略权限错误 (PR)
- [改进]:避免重试崩溃 (PR)
- [改进]:在回车后重写前缀 (PR)
- [改进]:验证图形扩展 (PR)
- [改进]:写入时截断元数据文件 (PR)
- [改进]:正确创建目录的符号链接 (PR)
- [改进]:确保 cookie 目录在写入 cookie 之前存在 (PR)
- [改进]:示例 turbo.json 输出键 (PR)
- [改进]:过滤作为其他包子文件夹的 package.json 文件 (PR)
- [改进]:在规范化期间对依赖者和依赖项进行排序 (PR)
- [改进]:将回退日志交换到调试 (PR)
- [改进]:在回退中包含 gitignored 文件 (PR)
- [改进]:在回退中包含默认文件 (PR)
社区
自发布 Turborepo 1.11 以来,我们看到了惊人的采用和社区增长
- 2.4 万+ GitHub 星标
- 每周 NPM 下载量超过 190 万
- 使用 Vercel 远程缓存 节省了 238 年的计算时间
Turborepo 是所有贡献者(包括我们的核心团队)共同努力的成果。
感谢您持续的支持、反馈和协作,使 Turborepo 成为您的首选构建工具。