Rust가 JavaScript 툴체인을 집어삼켰다. 그리고 Cloudflare가 이를 인수했다.
Vite의 작동 방식이 바뀌었습니다. 두 개의 도구에서 하나의 단일 파이프라인으로 전환되었습니다.
기존 방식은 개발에는 esbuild를, 프로덕션에는 Rollup을 사용했습니다. 이는 문제를 일으켰습니다. 두 개의 설정을 관리해야 했고, 개발 환경과 프로덕션 환경에서 코드가 다르게 동작할 수도 있었습니다.
Vite 8은 이 문제를 해결합니다. Rolldown이라는 단일 번들러를 사용합니다. Rolldown은 Rust로 작성되었습니다. TypeScript와 JSX를 처리하기 위해 Oxc를 사용합니다.
속도 향상이 엄청납니다. • 빌드 시간을 46초에서 6초로 단축했습니다. • Vite는 이전보다 빌드 속도가 10배에서 30배 더 빨라졌다고 보고합니다. • 대규모 프로젝트에서는 3배에서 8배의 성능 향상이 나타납니다.
의존성 그래프가 크거나 CI가 느리다면 이 변화를 체감할 수 있을 것입니다. 이미 빌드 속도가 빠르다면 이는 사소한 업데이트가 될 것입니다.
마이그레이션은 쉽게 설계되었습니다. Rolldown은 Rollup plugin API를 사용합니다. 즉, 모든 것을 새로 배울 필요가 없다는 뜻입니다.
다음과 같은 기술적 변화에 주의하세요:
- transformWithEsbuild를 사용하는 플러그인은 실패합니다. 대신 transformWithOxc를 사용해야 합니다.
- build.rollupOptions는 이제 build.rolldownOptions입니다.
- CJS interop 및 Yarn PnP에서 마찰이 발생할 수 있습니다.
안전하게 업그레이드하려면 다음 단계를 따르세요:
1단계: Vite 7을 유지하면서 번들러를 교체합니다.
실행: npm install rolldown-vite@latest
빌드를 테스트하고 플러그인을 확인하세요.
2단계: Vite 8로 업그레이드합니다.
실행: npm install vite@8
1단계가 완벽하게 작동한 후에만 이 단계를 진행하세요.
소유권에 관한 큰 뉴스도 있습니다. Cloudflare가 VoidZero를 인수했습니다. VoidZero는 Evan You가 설립한 회사입니다. VoidZero는 Vite, Vitest, Rolldown, Oxc를 만듭니다.
Cloudflare는 몇 가지 사항을 약속했습니다:
- 모든 프로젝트는 MIT 라이선스를 유지합니다.
- 벤더 중립성(vendor-neutral)을 유지합니다.
- 생태계 유지 관리자들을 위한 100만 달러 규모의 펀드를 조성했습니다.
이번 인수는 개발자들의 자금 문제를 해결해 줍니다. 하지만 권력이 집중되는 문제도 있습니다. Cloudflare는 이미 Astro 팀을 인수했습니다. 이제 한 회사가 기초적인 웹 도구들에 대해 막대한 영향력을 갖게 되었습니다.
오픈 소스는 신뢰에 기반합니다. 도구들은 더 빨라지고 더 좋아졌습니다. 성능을 위해 이 도구들을 사용하세요. 장기적인 관점에서 소유권 변화를 면밀히 지켜보시기 바랍니다.
출처: https://dev.to/andresclua/rust-ate-the-javascript-toolchain-then-cloudflare-bought-it-4d87
