Yarn 대신 pnpm으로 넘어간 3가지 이유
(hiddenest.dev)Airbridge의 프론트엔드에서 사용하는 패키지 매니저를 Yarn Berry에서 pnpm으로 옮긴 후 1년 동안 사용하며 느낀 점들을 정리해본 글입니다.
Yarn Berry에서 느낀 불편한 점
- Yarn PnP가 Git에 지속적으로 주는 부하
- Ghost Dependency와의 끈질긴 싸움
- Yarn Workspace의 자잘한 버그들
pnpm을 적용함으로서 얻은 해결법
- 배포 과정 중 패키지 설치 시간이 30초 ~ 1분 정도 빨라짐
- 전역 저장소(Virtual Store)에 패키지 저장 / 프로젝트의
node_modules
와는 symlink로 연결 - 중복된 패키지를 설치하지 않아 저장 공간과 네트워크 절약
- 전역 저장소(Virtual Store)에 패키지 저장 / 프로젝트의
- 자동으로 패키지간 링크가 되어 보다 간단하게 모노레포 셋업
-
patch-package
,dedupe
등 Yarn Berry에서 사용했던 기능들 거의 그대로 사용 가능