Turborepo 1.13

Turborepo 1.13

Thursday, March 21st, 2024

Greg Soltis
Name
Greg Soltis
X
@gsoltis
Chris Olszewski
Name
Chris Olszewski

Turborepo 1.13 brings a new and improved local development experience along with other enhancements, including:

Update today by running npx @turbo/codemod migrate or get started with npx create-turbo@latest.

New terminal UI

Until today, turbo would output logs as a stream while you were working on your libraries and applications. This could be overwhelming at times since the interleaved logs made it difficult to understand what was going on with a specific task.

With this release, we’re shipping a new, experimental terminal UI, which allows you to:

  • Toggle through the logs of each of your tasks, making them easier to follow and read
  • Interact with your persistent tasks by entering and exiting the task’s shell, giving you the ability to re-run unit tests, for example
  • See the duration for each of your tasks in a bar graph
A screenshot of a terminal running `turbo scan`.

To enable the new UI, either use the --experimental-ui flag or add the experimentalUI flag to your turbo.json:

{
  "experimentalUI": true
}

We are looking forward to hearing your feedback on this new feature. Please visit the RFC on GitHub Discussions (opens in a new tab) to share your thoughts.

Enable the fastest defaults

We want your local development experience to be as fast as possible - through even more than the parallelization and caching of turbo.

Running turbo scan will inspect your machine for optimizations that make your experience faster.

A screenshot of a terminal running `turbo scan`.

For more information, visit the documentation.

This command is for your local development environment. It will not optimize your CI.

CI logging improvements

This release adds support for automatically grouping successful logs in:

  • Azure Pipelines
  • TeamCity
  • Travis CI

These providers join GitHub Actions, which was already supported.

Additionally, Turborepo now ungroups any tasks that did not complete successfully so you can find errorful tasks faster.

A screenshot of a GitHub Action that ran a `turbo` task. The logs for tasks that completed successfully are folded while the errored task shows it's logs in full with red highlighting.

Enhanced package manager support for prune

Turborepo’s prune command is an important optimization for Docker users, helping them to create lightweight images from monorepos.

pnpm lockfile support has been upgraded by adding support for Workspace relative path references (opens in a new tab) and respecting the link-workspace-packages property in .npmrc (opens in a new tab).

Yarn4 support has been improved by supporting resolutions in package.json (opens in a new tab) at the root of your Workspace.

Community

Since releasing Turborepo 1.12 we've seen incredible adoption and community growth:

Turborepo is the result of the combined work of all of its contributors, including our core team.

Thank you for your continued support, feedback, and collaboration to make Turborepo your build tool of choice.