npm shrinkwrap

결론 먼저 : 사용하는 패키지의 디펜던시의 버전을 수정해야 하는 경우 사용

잘되던 프로젝트가 build가 안되는 문제가 발생햇다.

왜 그런지 확인을 해보니 capacitor가 2에서 3으로 업데이트되면서 뭔가가 바뀐것 같다.

일단 뭐가 바뀌엇는지는 따로해결하기로 하고 빌드부터 해결하기로 햇다.

원인을 찾아보니 ionic-appauth 패키지가 capacitor-secure-storage-plugin 을 사용한다.

현재는 0.4.0을 사용하는데 이 버전을 0.5.1로 해주면 해결이 된다.

문제는 ionic-appauth 에서 관리되는 버전을 어떻게 바꾸는지가 문제가 됬다.

검색을 해보니 npm shrinkwrap 가 보인다.

npm shrinkwrap

일단 프로젝트에 npm-shrinkwrap.json 파일이 생긴다. 다음처럼 작성했다.

{
  "dependencies": {
    "capacitor-secure-storage-plugin": {
      "version": "0.5.1",
      "dependencies": {
        "@capacitor/core": {
          "version": "2.4.7"
        }
      }
    }
  }
}

ioinc build를 해보면 문제없이 잘 되는것을 알수있다.

일단 해결 완료.

vscode에서 warning

5000 -> 50000으로 일단 변경해두고 사용하자.

todo

그런데 프로젝트를 바꾼게 없는데 왜 안될가? 어디서 바뀌었을가? 현재는 capacitor 3을 쓰고 잇는것인가? 이상하네..

https://npmjs.org/doc/shrinkwrap.html

teamsmiley's profile image

teamsmiley

2021-07-01 00:00

Read more posts by this author