[Yarn] 간접 의존성 문제 해결 (Selective dependency resolutions)

서해빈·2021년 4월 25일
0

Trouble

목록 보기
6/15

패키지를 설치하다보면 내가 직접 설치하지 않은 패키지에서 deprecated 등의 에러나 경고를 발생시킬 때가 있다. 이는 다른 패키지의 의존성 때문에 설치된(sub-dependency) 패키지인데 yarn upgrade로는 이 문제가 해결되지 않았다.

이 때 사용할 수 있는 방법이 Selective dependency resolutions이다. package.json에 해결하고자 하는 패키지와 버전을 작성하면 된다. 이후 yarn install 명령어을 실행해준다.

// package.json
{
  "name": "project",
  "version": "1.0.0",
  "dependencies": {
    "left-pad": "1.0.0",
    "c": "file:../c-1",
    "d2": "file:../d2-1"
  },
  "resolutions": {
    "d2/left-pad": "1.1.1",
    "c/**/left-pad": "^1.1.2"
  }
}

이러면 resolutions에 작성한 버전대로 sub-dependency 패키지가 설치된다.

참고 및 출처

  • [Yarn Docs] Selective dependency resolutions - 바로가기

0개의 댓글