npm モジュールのセキュリティアップデート(2) - koba::blog で npm-force-resolutions を使って pug のバージョンを 3.0.2 に固定していたのだが、npm v8.7.0 ではこれがうまく動作しないようである。npm v8.3.0 以降では npm-force-resolutions を使わずとも overrides セクションを使って依存パッケージのバージョンを固定できるということなので試してみた。
package.json を以下に修正する。
@@ -5,7 +5,6 @@ "main": "src/js/majiang.js", "private": true, "scripts": { - "preinstall": "npx npm-force-resolutions", "build:html": "pug -o www -P src/html/page/", "build:js": "webpack --mode development --devtool inline-source-map", "build:css": "stylus src/css/index.styl -o www/css/majiang-1.6.9.css", @@ -25,7 +24,7 @@ "url": "https://github.com/kobalab/Majiang/issues" }, "homepage": "https://github.com/kobalab/Majiang#readme", - "resolutions": { + "overrides": { "pug": "^3.0.2" }, "devDependencies": {
node_modules/、package-lock.json を削除し、npm i を再実行する。
$ rm -rf node_modules $ rm package-lock.json $ npm i
これでOKのようである。