Githubにリポジトリを公開していると、"A new security advisory on minimist affects"というタイトルの警告メールが来ることがあります。
私の場合、npmとyarnを使っているリポジトリでセキュリティの脆弱性があるライブラリが入っていることが原因でした。
この警告に対応しない場合、該当リポジトリに警告が表示され続けます。今回はこの警告に対応する方法と、そのときに出てきたエラーへの対象方法を紹介します。
- 1. 基本的な手順
- 2. checkPermissions Missing write access to /usr/local/lib/node_modulesが出てnpmの実行が失敗する
- 3. No Xcode or CLT version detected!が出てインストールが失敗する
- 4. おわりに
1. 基本的な手順
使っているライブラリの脆弱性が問題なので、package.json、package-lock.json、yarn.lockの記述を直すことで解決します。
該当するバージョンが書かれたファイルを1つ1つ修正するのは大変なので、yarnまたはnpmの自動チェック、更新コマンドを使用します。
■yarnの場合
$ yarn upgrade --latest
■npmの場合
$ npm install -g npm-check-updates $ ncu $ ncu -u
こちらを参考にさせていただきました。
これらを実行後、変更に関係するyarn.lock、package-lock.json、package.jsonなどをpushすると、Githubのリポジトリから以下のSecurity Alertが消えます。
2. checkPermissions Missing write access to /usr/local/lib/node_modulesが出てnpmの実行が失敗する
以下を実行して、該当するパスにアクセスできるようにします。
$ sudo chown -R $USER /usr/local/lib/node_modules
こちらを参考にさせていただきました。
3. No Xcode or CLT version detected!が出てインストールが失敗する
こちらを参考にしました。XCodeのコマンドラインツールを一度削除してから、再度インストールすると解決しました。
$ sudo rm -r -f /Library/Developer/CommandLineTools $ xcode-select --install
なお、2行目でrmをしないまま3行目のインストールを実行すると、以下のようなエラーが出ます。
% xcode-select --install xcode-select: error: command line tools are already installed, use "Software Update" to install updates
4. おわりに
時々対応していたのですが、いつも手順を忘れるので備忘録のために書いてみました。