Skip to content

Vite 5.0이 출시되었습니다!

2023년 11월 16일

Vite 5 발표 커버 이미지

Vite 4가 거의 1년 전에 릴리스되었고, 생태계에 견고한 기반을 제공했습니다. 프로젝트들이 공유 인프라를 기반으로 계속 구축하면서 주간 npm 다운로드 수는 250만 건에서 750만 건으로 급증했습니다. 프레임워크들은 지속적으로 혁신을 이어갔으며, Astro, Nuxt, SvelteKit, Solid Start, Qwik City 등을 비롯해 새로운 프레임워크들이 합류하여 생태계를 더욱 강화했습니다. RedwoodJSRemix가 Vite로 전환하면서 React 생태계에서의 추가 도입 가능성을 열었습니다. Vitest는 Vite보다도 빠른 속도로 성장을 지속했습니다. Vitest 팀은 열심히 작업하고 있으며 곧 Vitest 1.0을 릴리스할 예정입니다. Storybook, Nx, Playwright와 같은 다른 도구들과 함께 사용할 때의 Vite 경험은 계속 개선되었고, DenoBun에서 Vite 개발이 작동하는 등 환경 면에서도 마찬가지였습니다.

한 달 전 StackBlitz가 주최한 두 번째 ViteConf가 있었습니다. 작년과 마찬가지로 생태계의 대부분 프로젝트들이 모여 아이디어를 공유하고 연결하여 공통 기반을 계속 확장했습니다. VolarNitro와 같은 새로운 구성 요소들이 메타 프레임워크 도구 벨트를 보완하는 것도 보고 있습니다. Rollup 팀은 같은 날 Rollup 4를 릴리스했는데, 이는 Lukas가 작년에 시작한 전통입니다.

6개월 전 Vite 4.3이 릴리스되었습니다. 이 릴리스는 개발 서버 성능을 크게 개선했습니다. 하지만 여전히 개선할 여지가 충분합니다. ViteConf에서 Evan You는 호환 가능한 API를 가진 Rollup의 Rust 포트인 Rolldown 작업에 대한 Vite의 장기 계획을 공개했습니다. 준비가 되면 Vite 코어에서 이를 사용하여 Rollup과 esbuild의 작업을 모두 담당할 예정입니다. 이는 빌드 성능 향상(그리고 나중에는 Vite 자체의 성능에 민감한 부분을 Rust로 이동하면서 개발 성능도)과 개발과 빌드 간의 불일치를 크게 줄이는 것을 의미합니다. Rolldown은 현재 초기 단계에 있으며 팀은 연말 이전에 코드베이스를 오픈소스화할 준비를 하고 있습니다. 기대해 주세요!

오늘, 우리는 Vite의 여정에서 또 다른 큰 이정표를 기록합니다. Vite , 기여자들, 그리고 생태계 파트너들이 Vite 5의 릴리스를 발표하게 되어 기쁩니다. Vite는 이제 Rollup 4를 사용하며, 이는 이미 빌드 성능에서 큰 향상을 나타냅니다. 그리고 개발 서버 성능 프로파일을 개선할 수 있는 새로운 옵션들도 있습니다.

Vite 5는 API 정리(더 이상 사용되지 않는 기능 제거)에 집중하고 여러 기능을 간소화하여 오랫동안 지속된 문제들을 해결했습니다. 예를 들어 define이 정규식 대신 적절한 AST 교체를 사용하도록 전환했습니다. 또한 Vite를 미래에 대비하는 단계를 계속 밟고 있습니다(이제 Node.js 18+가 필요하며, CJS Node API는 더 이상 사용되지 않습니다).

빠른 링크:

다른 언어의 문서:

Vite를 처음 사용하신다면 먼저 시작하기기능 가이드를 읽어보시기를 권합니다.

우리가 여기까지 올 수 있도록 도움을 준 850명 이상의 Vite 코어 기여자들과 Vite 플러그인, 통합, 도구, 번역의 메인테이너와 기여자들에게 감사드립니다. Vite를 함께 발전시켜 나갈 수 있도록 여러분의 지속적인 참여를 기다립니다. 기여 가이드에서 자세히 알아보실 수 있습니다. 시작하려면 이슈 트리아징, PR 리뷰, 열린 이슈를 기반으로 한 실패 테스트 PR 전송, Discussions와 Vite Land의 도움말 포럼에서 다른 사람들 돕기를 권합니다. 그 과정에서 많은 것을 배우고 프로젝트에 추가 기여할 수 있는 원활한 길을 갖게 될 것입니다. 궁금한 점이 있으시면 Discord 커뮤니티에 참여하여 #contributing 채널에서 인사해 주세요.

최신 소식을 받아보려면 X 또는 Mastodon에서 팔로우해 주세요.

Vite 5로 빠르게 시작하기

선호하는 프레임워크로 Vite 프로젝트를 시작하려면 pnpm create vite명령어를 사용하거나, vite.new에서 체험할 수 있는 시작 템플릿을 열어보세요. pnpm create vite-extra를 실행하여 다른 프레임워크와 런타임(Solid, Deno, SSR, 라이브러리 스타터)의 템플릿에 접근할 수도 있습니다. create vite-extra 템플릿은 create vite를 실행할 때 Others 옵션에서도 사용할 수 있습니다.

Vite 스타터 템플릿은 다양한 프레임워크로 Vite를 테스트하는 플레이그라운드로 사용되도록 의도되었다는 점에 유의하세요. 다음 프로젝트를 구축할 때는 각 프레임워크에서 권장하는 스타터를 사용하시기를 권합니다. 일부 프레임워크는 이제 create vite에서 자신들의 스타터로 리디렉션하기도 합니다(Vue의 경우 create-vueNuxt 3, Svelte의 경우 SvelteKit).

Node.js 지원

Vite는 더 이상 EOL에 도달한 Node.js 14 / 16 / 17 / 19를 지원하지 않습니다. 이제 Node.js 18 / 20+가 필요합니다.

성능

Rollup 4의 빌드 성능 개선 외에도, https://vite.dev/guide/performance에서 일반적인 성능 문제를 식별하고 해결하는 데 도움이 되는 새로운 가이드가 있습니다.

Vite 5는 또한 시작 시간을 개선하는 새로운 기능인 server.warmup을 도입했습니다. 이를 통해 서버가 시작되자마자 사전 변환되어야 하는 모듈 목록을 정의할 수 있습니다. --open 또는 server.open을 사용할 때, Vite는 앱의 진입점이나 열기 위해 제공된 URL도 자동으로 워밍업합니다.

주요 변경사항

Vite 5로 마이그레이션

우리는 생태계 파트너들과 협력하여 이 새로운 메이저 버전으로의 원활한 마이그레이션을 보장했습니다. 다시 한 번, vite-ecosystem-ci가 회귀를 피하면서 더 과감한 변경을 할 수 있도록 도와주는 데 중요한 역할을 했습니다. 다른 생태계들이 프로젝트와 다운스트림 메인테이너 간의 협업을 개선하기 위해 유사한 체계를 채택하는 것을 보게 되어 기쁩니다.

대부분의 프로젝트에서 Vite 5로의 업데이트는 간단할 것입니다. 하지만 업그레이드하기 전에 상세한 마이그레이션 가이드를 검토하시기를 권합니다.

Vite 코어의 전체 변경사항 목록이 포함된 저수준 분석은 Vite 5 변경 로그에서 확인할 수 있습니다.

감사의 말

Vite 5는 우리 커뮤니티의 기여자들, 다운스트림 메인테이너들, 플러그인 작성자들, 그리고 Vite 팀의 오랜 시간에 걸친 작업의 결과입니다. 이번 메이저 릴리스 과정을 이끌어준 Bjorn Lu에게 큰 박수를 보냅니다.

또한 Vite 개발을 후원하는 개인과 회사들에게도 감사드립니다. StackBlitz, Nuxt Labs, Astro는 Vite 팀 멤버를 고용하여 Vite에 지속적으로 투자하고 있습니다. Vite의 GitHub Sponsors, Vite의 Open Collective, Evan You의 GitHub Sponsors의 후원자들에게 박수를 보냅니다. Vite로 전환한 후 골드 후원자가 되어 다시 기여해준 Remix에 특별한 감사를 표합니다.

Released under the MIT License. (08070b7e)