Turborepo 1.5
Turborepo 1.5는 문서 및 개발자 경험의 큰 도약이며 turbo prune에 대한 주요 개선 사항을 제공합니다:
- Monorepo Handbook: 워크스페이스, 코드 공유, 일반적인 도구 통합 등에 대한 가이드인 모노레포를 위한 누락된 매뉴얼을 만들었습니다.
run생략:turbo run <task>를 이제turbo <task>로 단축할 수 있습니다turbo prune이 이제 pnpm과 yarn 2+를 지원합니다: 이제pnpm과yarn@berry에서 모노레포 프루닝이 지원됩니다.turbo.json의 환경 변수 개선: 환경 변수는 이제 Turborepo 파이프라인 구성의 일급 시민입니다.package.json해싱 변경: 작업 실행 시package.json을 해싱하는 방법을 개선했습니다.
npm install turbo@latest를 실행하여 오늘 업데이트하세요.
Monorepo Handbook
모노레포를 처음 설정하는 것은 종종 많은 새로운 개념을 탐색하는 것을 의미합니다. 워크스페이스, 패키지 설치, 코드 공유 및 종속성 관리 등을 이해해야 합니다.
이는 종종 처음부터 모노레포를 설정하려는 사람들이 다양한 문서 사이트에서 정보를 모아야 함을 의미했습니다. 먼저 pnpm, 그 다음 tsup, 다시 changesets, 그리고 마지막으로 Turborepo로 돌아왔습니다.
우리는 Monorepo Handbook로 이 격차를 메우고자 합니다. 모노레포로 배포를 성공시키는 데 필요한 모든 도구를 통합하는 방법에 대한 가이드를 만들었습니다:
run 생략
이제 turbo <task>를 사용하여 Turborepo CLI로 작업을 실행할 수 있습니다.
작업 이름이 기본 제공 turbo 하위 명령과 충돌하는 경우 대신 하위 명령을 실행합니다. 즉, prune, run 또는 login과 같은 작업 이름은 사용하지 않아야 합니다. 이들은 기본 제공 하위 명령이기 때문입니다.
turbo run <task>는 계속 작동하며 더 이상 사용하지 않을 계획은 없습니다.
pnpm 및 yarn 2+에서 이제 Prune 지원
turbo prune이 이제 pnpm, yarn 및 yarn 2+를 지원한다는 것을 발표하게 되어 기쁩니다.
turbo prune을 사용하여 주어진 대상 애플리케이션과 그 종속성에 필요한 올바른 종속성이 포함된 전용 lockfile과 함께 모노레포의 프루닝된 하위 집합을 만들 수 있습니다. 이는 Docker 이미지 내에서 Turborepo를 효율적으로 사용하는 데 특히 유용합니다.
새로운 핸드북의 일부로 turbo prune을 사용하여 Docker 이미지 빌드에 대한 섹션도 추가했습니다.
자세한 내용은 prune에 대한 이전 블로그를 확인하세요.
turbo.json의 환경 변수
turbo.json에 두 개의 새로운 키인 env와 globalEnv를 도입했습니다. 이들은 환경 변수를 작업과 별도로 구성할 수 있게 합니다:


globalEnv와 env를 사용하면 $ 접두사 없이 환경 변수 목록을 지정할 수 있습니다. 이는 구성 파일을 훨씬 더 읽기 쉽게 만듭니다. 자세한 내용은 업데이트된 문서를 참조하세요.
이전 구문에서 마이그레이션하는 데 도움이 되도록 codemod를 준비했습니다. npx @turbo/codemod migrate-env-var-dependencies를 실행할 수 있습니다.
이 작업은 1.4.0에서 추가한 자동 환경 변수 감지를 기반으로 합니다.
package.json 해싱 변경
각 워크스페이스의 package.json 파일은 이제 해당 워크스페이스의 작업에 대한 입력으로 항상 간주됩니다. 이는 package.json에서 작업의 정의를 변경하면 이전 정의의 캐시를 무효화하려는 것을 의미합니다.
이는 루트의 package.json에도 적용됩니다. 루트 package.json의 변경은 루트 워크스페이스의 작업을 무효화합니다.
이는 Turborepo의 캐시를 조금 더 스마트하게 만들고 작업 정의가 변경될 때 문제가 발생할 가능성을 줄입니다.
커뮤니티
8월에 Turborepo v1.4를 출시한 이후 놀라운 채택률과 커뮤니티 성장을 보았습니다:
- 9.5k+ GitHub Stars
- 주간 NPM 다운로드 440k
- Vercel의 Remote Caching을 통해 15년의 컴퓨팅 시간 절약, 주당 1년 이상 절약, 7월 이후 2배 증가
Turborepo는 핵심 팀을 포함한 모든 기여자들의 결합된 작업의 결과입니다.
이 릴리스는 다음 분들의 기여로 제공되었습니다: @7flash, @afady, @alexander-young, @atilafassina, @bguedes-moz, @bobaaaaa, @brunojppb, @chris-olszewski, @DoctorJohn, @erj826, @futantan, @gsoltis, @HosseinAgha, @ivov, @jaredpalmer, @joelhooks, @knownasnaffy, @laurentlucian, @leerob, @MarceloAlves, @mattpocock, @mauricekleine, @mehulkar, @Misikir, @nareshbhatia, @nathanhammond, @pakaponk, @PhentomPT, @renovate, @ruisaraiva19, @samuelhorn, @shemayas, @shuding, @t-i-0414, @theurgi, @tknickman, @yanmao-cc 등 더 많은 분들!
Turborepo를 여러분의 선택한 빌드 도구로 만들기 위한 지속적인 지원, 피드백 및 협력에 감사드립니다.