Turborepo 1.10
Turborepo 1.10 引入新功能以改善您的本地开发体验
- 代码生成器:使用
turbo gen
生成源代码,包括创建新的工作区和复制现有的工作区。 - 改进的环境变量输入:现在可以更轻松地使用通配符和
.env
支持来依赖环境变量。 - 新的环境模式:您现在可以指定
--env-mode=strict
来控制包含在任务哈希中的环境变量。
立即更新
代码生成器
Turborepo 生成器允许您以可预测的结构化方式向存储库添加新代码。以前,您需要自己复制代码并手动将依赖项添加到新工作区。借助生成器,我们实现了创建新工作区并将其集成到存储库中的流程自动化。
您可以从头开始创建空白工作区,复制现有工作区,甚至创建自定义生成器以进行更多控制。自定义生成器利用 Plop 配置,这是 JavaScript 生态系统中常用的模板定义策略。
自定义生成器还可用于构建比工作区更细粒度的代码集。您可以显著加快以下任务的速度,例如:
- 向 UI 库添加新组件
- 创建新的单元测试
- 生成新的 MDX 博客文章
通过运行以下命令开始使用您的第一个生成器
有关更多信息,请查看文档。
改进的环境变量输入
支持 .env
文件
.env
文件通常用于加载环境变量。当使用 turbo
运行时,这可能会导致问题,因为这些变量可能是不可见的,并且不容易包含在任务的哈希中。此问题可能会在本地工作时导致意外的缓存命中。
Turborepo 现在通过自动支持 .env
文件使此过程变得更加容易。
为了确保 Turborepo 将这些变量包含在您的哈希中,请使用 dotEnv
键。例如,以下是 Next.js 应用程序的配置
有关更多信息,请查看文档。
环境变量通配符
大型应用程序最终可能会在其 turbo.json
中包含许多环境变量。这会使您的配置难以管理和维护。
借助通配符,您现在可以指定要包含在哈希中的变量模式。
有关更多信息,请查看文档。
环境模式
Turborepo 环境模式现在已退出实验模式,可供常规使用。
默认情况下,当使用 --env-mode=loose
调用 turbo run
时,计算机中的所有环境变量都可用于每个 Turborepo 任务。这可以确保最大的兼容性,同时接受任务将隐式访问您的 turbo.json
中未指定的环境变量的风险。
在新严格模式下,当使用 --env-mode=strict
调用 turbo
时,只有重要的系统环境变量和 turbo.json
中枚举的环境变量才可用于任务。
有关更多信息,请查看文档。
社区
自从发布 Turborepo v1.9 以来,我们看到了令人难以置信的采用率和社区增长
- 21.5k+ GitHub 星星
- 每周 120 万+ NPM 下载量
- 通过 Vercel 上的远程缓存节省了 85 年的计算时间
Turborepo 是其所有贡献者(包括我们的核心团队)共同努力的结果
感谢您持续的支持、反馈和协作,使 Turborepo 成为您的首选构建工具。