Closed u-ecmaker closed 1 year ago
12 vulnerabilities (6 moderate, 6 high)
npm audit fix --force が効かない
手動で直すしかない。
→ #29
package-lockをチョクで直す npm audit fix --force しても直らない!〜TypeScriptとReact/Next.js本5章で発生した問題を解決する
-> npm audit
# npm audit report
fast-xml-parser <=4.2.3
Severity: high
fast-xml-parser vulnerable to Regex Injection via Doctype Entities - https://github.com/advisories/GHSA-6w63-h3fj-q4vw
fast-xml-parser vulnerable to Prototype Pollution through tag or attribute name - https://github.com/advisories/GHSA-x3cc-x39p-42qx
fix available via `npm audit fix --force`
Will install ogp-parser@0.4.7, which is a breaking change
node_modules/ogp-parser/node_modules/fast-xml-parser
ogp-parser >=0.5.1
Depends on vulnerable versions of fast-xml-parser
node_modules/ogp-parser
semver 7.0.0 - 7.5.1
Severity: moderate
semver vulnerable to Regular Expression Denial of Service - https://github.com/advisories/GHSA-c2qf-rxjj-qqgw
fix available via `npm audit fix`
node_modules/simple-update-notifier/node_modules/semver
simple-update-notifier 1.0.7 - 1.1.0
Depends on vulnerable versions of semver
node_modules/simple-update-notifier
4 vulnerabilities (2 moderate, 2 high)
To address issues that do not require attention, run:
npm audit fix
To address all issues (including breaking changes), run:
npm audit fix --force
-> npm ls fast-xml-parser
noblog@0.1.0 C:\..\Doc\..\git\blog
└─┬ ogp-parser@0.8.1
└── fast-xml-parser@3.21.1
package-lock.jsonを書き換え
"node_modules/ogp-parser": {
"version": "0.8.1",
"resolved": "https://registry.npmjs.org/ogp-parser/-/ogp-parser-0.8.1.tgz",
"integrity": "sha512-sqBbX6BBX9YlwK5UL8qreV/mts2jKtmHlNJ6cMVLEA59BYuaWCToieUmWg+wxpxZoeCg+pbxWcd5r8wVtstB3g==",
"dependencies": {
"cheerio": "^1.0.0-rc.12",
"fast-xml-parser": "^3.16.0", // ←OLD
"fast-xml-parser": "^4.2.4", // ←NEW ここの行を書き換えただけ。
"he": "^1.2.0",
"iconv-lite": "0.5.1",
"jschardet": "2.1.1"
}
node_modulesフォルダの削除後、以下を実行
-> npm install
> noblog@0.1.0 prepare
> husky install
husky - Git hooks installed
added 1746 packages, and audited 1747 packages in 26s
369 packages are looking for funding
run `npm fund` for details
2 moderate severity vulnerabilities
To address all issues, run:
npm audit fix
Run `npm audit` for details.
-> npm ls fast-xml-parser
noblog@0.1.0 C:\..\Doc\..\git\blog
└─┬ ogp-parser@0.8.1
└── fast-xml-parser@4.2.5 // ←updateできた。
-> npm audit
# npm audit report
semver 7.0.0 - 7.5.1
Severity: moderate
semver vulnerable to Regular Expression Denial of Service - https://github.com/advisories/GHSA-c2qf-rxjj-qqgw
fix available via `npm audit fix`
node_modules/simple-update-notifier/node_modules/semver
simple-update-notifier 1.0.7 - 1.1.0
Depends on vulnerable versions of semver
node_modules/simple-update-notifier
2 moderate severity vulnerabilities
To address all issues, run:
npm audit fix
-> npm ls semver
noblog@0.1.0 C:\..\Doc\..\git\blog
├─┬ @storybook/addon-essentials@7.0.27
│ ├─┬ @storybook/addon-docs@7.0.27
│ │ └─┬ @jest/transform@29.6.1
│ │ └─┬ babel-plugin-istanbul@6.1.1
│ │ └─┬ istanbul-lib-instrument@5.2.1
│ │ └── semver@6.3.1
│ └─┬ @storybook/manager-api@7.0.27
│ └── semver@7.5.4 deduped
├─┬ @storybook/addon-postcss@2.0.0
│ ├─┬ css-loader@3.6.0
│ │ └── semver@6.3.1
│ └─┬ postcss-loader@4.3.0
│ └── semver@7.5.4 deduped
├─┬ @storybook/nextjs@7.0.27
│ ├─┬ @storybook/builder-webpack5@7.0.27
│ │ ├─┬ css-loader@6.8.1
│ │ │ └── semver@7.5.4 deduped
│ │ ├─┬ fork-ts-checker-webpack-plugin@7.3.0
│ │ │ └── semver@7.5.4 deduped
│ │ └── semver@7.5.4 deduped
│ ├─┬ @storybook/preset-react-webpack@7.0.27
│ │ ├─┬ @storybook/react-docgen-typescript-plugin@1.0.6--canary.9.0c3f3b7.0
│ │ │ └─┬ find-cache-dir@3.3.2
│ │ │ └─┬ make-dir@3.1.0
│ │ │ └── semver@6.3.1
│ │ └── semver@7.5.4 deduped
│ ├─┬ css-loader@6.8.1
│ │ └── semver@7.5.4 deduped
│ ├─┬ postcss-loader@7.3.3
│ │ └── semver@7.5.4 deduped
│ └── semver@7.5.4
├─┬ @typescript-eslint/eslint-plugin@6.0.0
│ ├─┬ @typescript-eslint/type-utils@6.0.0
│ │ └─┬ @typescript-eslint/utils@6.0.0
│ │ └── semver@7.5.4 deduped
│ ├─┬ @typescript-eslint/utils@6.0.0
│ │ └── semver@7.5.4 deduped
│ └── semver@7.5.4 deduped
├─┬ @typescript-eslint/parser@6.0.0
│ └─┬ @typescript-eslint/typescript-estree@6.0.0
│ └── semver@7.5.4 deduped
├─┬ eslint-config-next@13.4.10
│ ├─┬ @typescript-eslint/parser@5.62.0
│ │ └─┬ @typescript-eslint/typescript-estree@5.62.0
│ │ └── semver@7.5.4 deduped
│ ├─┬ eslint-plugin-jsx-a11y@6.7.1
│ │ └── semver@6.3.1
│ └─┬ eslint-plugin-react@7.32.2
│ └── semver@6.3.1
├─┬ eslint-plugin-import@2.27.5
│ └── semver@6.3.1
├─┬ eslint-plugin-storybook@0.6.12
│ └─┬ @typescript-eslint/utils@5.61.0
│ ├─┬ @typescript-eslint/typescript-estree@5.61.0
│ │ └── semver@7.5.4 deduped
│ └── semver@7.5.4 deduped
└─┬ storybook@7.0.27
└─┬ @storybook/cli@7.0.27
├─┬ @storybook/codemod@7.0.27
│ ├─┬ @babel/core@7.21.8
│ │ └── semver@6.3.1
│ └─┬ @babel/preset-env@7.21.5
│ ├─┬ babel-plugin-polyfill-corejs2@0.3.3
│ │ ├─┬ @babel/helper-define-polyfill-provider@0.3.3
│ │ │ └── semver@6.3.1 deduped
│ │ └── semver@6.3.1 deduped
│ └── semver@6.3.1 deduped
├─┬ @storybook/core-server@7.0.27
│ └── semver@7.5.4 deduped
├─┬ jscodeshift@0.14.0
│ └─┬ @babel/register@7.22.5
│ └─┬ make-dir@2.1.0
│ └── semver@5.7.2
├─┬ read-pkg-up@7.0.1
│ └─┬ read-pkg@5.2.0
│ └─┬ normalize-package-data@2.5.0
│ └── semver@5.7.2
├── semver@7.5.4 deduped
└─┬ simple-update-notifier@1.1.0
└── semver@7.0.0 // ←ここだけが問題
長いがビビることなかれ。
結局、言いたいのは、一番最後の行だけが問題となっているっぽい。
"node_modules/simple-update-notifier": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/simple-update-notifier/-/simple-update-notifier-1.1.0.tgz",
"integrity": "sha512-VpsrsJSUcJEseSbMHkrsrAVSdvVS5I96Qo1QAQ4FxQ9wXFcB+pjj7FB7/us9+GcgfW4ziHtYMc1J0PLczb55mg==",
"dev": true,
"dependencies": {
"semver": "~7.0.0" // ←OLD
"semver": "^7.5.2" // ←NEW この行を変えるだけ
},
"engines": {
"node": ">=8.10.0"
}
},
package-lock.jsonでsemver
を検索すると沢山出ましたが、
ls
した結果から、この箇所を変えれば行けるのでは?と思い、、結果、成功しました!
PS C:\..\Doc\..\git\blog> npm ls semver
noblog@0.1.0 C:\..\Doc\..\git\blog
├─┬ @storybook/addon-essentials@7.0.27
│ ├─┬ @storybook/addon-docs@7.0.27
│ │ └─┬ @jest/transform@29.6.1
│ │ └─┬ babel-plugin-istanbul@6.1.1
│ │ └─┬ istanbul-lib-instrument@5.2.1
│ │ └── semver@6.3.1
│ └─┬ @storybook/manager-api@7.0.27
│ └── semver@7.5.4 deduped
├─┬ @storybook/addon-postcss@2.0.0
│ ├─┬ css-loader@3.6.0
│ │ └── semver@6.3.1
│ └─┬ postcss-loader@4.3.0
│ └── semver@7.5.4 deduped
├─┬ @storybook/nextjs@7.0.27
│ ├─┬ @storybook/builder-webpack5@7.0.27
│ │ ├─┬ css-loader@6.8.1
│ │ │ └── semver@7.5.4 deduped
│ │ ├─┬ fork-ts-checker-webpack-plugin@7.3.0
│ │ │ └── semver@7.5.4 deduped
│ │ └── semver@7.5.4 deduped
│ ├─┬ @storybook/preset-react-webpack@7.0.27
│ │ ├─┬ @storybook/react-docgen-typescript-plugin@1.0.6--canary.9.0c3f3b7.0
│ │ │ └─┬ find-cache-dir@3.3.2
│ │ │ └─┬ make-dir@3.1.0
│ │ │ └── semver@6.3.1
│ │ └── semver@7.5.4 deduped
│ ├─┬ css-loader@6.8.1
│ │ └── semver@7.5.4 deduped
│ ├─┬ postcss-loader@7.3.3
│ │ └── semver@7.5.4 deduped
│ └── semver@7.5.4
├─┬ @typescript-eslint/eslint-plugin@6.0.0
│ ├─┬ @typescript-eslint/type-utils@6.0.0
│ │ └─┬ @typescript-eslint/utils@6.0.0
│ │ └── semver@7.5.4 deduped
│ ├─┬ @typescript-eslint/utils@6.0.0
│ │ └── semver@7.5.4 deduped
│ └── semver@7.5.4 deduped
├─┬ @typescript-eslint/parser@6.0.0
│ └─┬ @typescript-eslint/typescript-estree@6.0.0
│ └── semver@7.5.4 deduped
├─┬ eslint-config-next@13.4.10
│ ├─┬ @typescript-eslint/parser@5.62.0
│ │ └─┬ @typescript-eslint/typescript-estree@5.62.0
│ │ └── semver@7.5.4 deduped
│ ├─┬ eslint-plugin-jsx-a11y@6.7.1
│ │ └── semver@6.3.1
│ └─┬ eslint-plugin-react@7.32.2
│ └── semver@6.3.1
├─┬ eslint-plugin-import@2.27.5
│ └── semver@6.3.1
├─┬ eslint-plugin-storybook@0.6.12
│ └─┬ @typescript-eslint/utils@5.61.0
│ ├─┬ @typescript-eslint/typescript-estree@5.61.0
│ │ └── semver@7.5.4 deduped
│ └── semver@7.5.4 deduped
└─┬ storybook@7.0.27
└─┬ @storybook/cli@7.0.27
├─┬ @storybook/codemod@7.0.27
│ ├─┬ @babel/core@7.21.8
│ │ └── semver@6.3.1
│ └─┬ @babel/preset-env@7.21.5
│ ├─┬ babel-plugin-polyfill-corejs2@0.3.3
│ │ ├─┬ @babel/helper-define-polyfill-provider@0.3.3
│ │ │ └── semver@6.3.1 deduped
│ │ └── semver@6.3.1 deduped
│ └── semver@6.3.1 deduped
├─┬ @storybook/core-server@7.0.27
│ └── semver@7.5.4 deduped
├─┬ jscodeshift@0.14.0
│ └─┬ @babel/register@7.22.5
│ └─┬ make-dir@2.1.0
│ └── semver@5.7.2
├─┬ read-pkg-up@7.0.1
│ └─┬ read-pkg@5.2.0
│ └─┬ normalize-package-data@2.5.0
│ └── semver@5.7.2
├── semver@7.5.4 deduped
└─┬ simple-update-notifier@1.1.0
└── semver@7.5.4 deduped // ←ここだけ、updateできた!
→ #29
Netlifyでよくわからないエラーが出ている。
local環境で実行したときに出るエラーとも違う。環境依存?
→ 解決した
→ #28
https://rinoguchi.net/2021/11/npm-version-up-and-fix-audit.html
ncu -u
をして(package.jsonを上げて)から ↑の package-lock.json を直編集。
→ 脆弱性の問題は消えた。
→ 依存関係が変わったからか、npm run build が通らなくなってしまった。
~~→ しかし、こっちもNetlifyではエラーが出たけど、localのerrorメッセージと似ている。
こっちのほうがデバッグしやすいかも。~~
5:44:32 PM: - error sandbox/next-13-app-dir/page.tsx doesn't have a root layout. To fix this error, make sure every page has a root layout.
5:44:32 PM: build.command failed
5:44:32 PM: ────────────────────────────────────────────────────────────────
5:44:32 PM:
5:44:32 PM: Error message
5:44:32 PM: Command failed with exit code 1: npm run build (https://ntl.fyi/exit-code-1)
5:44:32 PM:
5:44:32 PM: Error location
5:44:32 PM: In Build command from Netlify app:
5:44:32 PM: npm run build
5:44:32 PM:
5:44:32 PM: Resolved config
5:44:32 PM: build:
5:44:32 PM: command: npm run build
5:44:32 PM: commandOrigin: ui
5:44:32 PM: environment:
5:44:32 PM: - NEXT_PUBLIC_GTM_ID
5:44:32 PM: - NOTION_DATABASE
5:44:32 PM: - NOTION_TOKEN
5:44:32 PM: - REVIEW_ID
5:44:32 PM: - NEXT_PRIVATE_TARGET
5:44:32 PM: publish: /opt/build/repo/.next
5:44:32 PM: publishOrigin: ui
5:44:32 PM: plugins:
5:44:32 PM: - inputs: {}
5:44:32 PM: origin: ui
5:44:32 PM: package: '@netlify/plugin-nextjs'
5:44:41 PM: Build failed due to a user error: Build script returned non-zero exit code: 2
5:44:41 PM: Failing build: Failed to build site
5:44:41 PM: Finished processing build request in 1m16.083s
エラーを追ってみたが、結局.envのところを設定しないと無りポそう
NOTION_PROFILE_PAGE_ID= NOTION_PREVIEW_PAGE_ID=
NEXT_PUBLIC_ALGOLIA_APPLICATION_ID= NEXT_PUBLIC_ALGOLIA_SEARCH_ONLY_API_KEY= ALGOLIA_APPLICATION_ID= ALGOLIA_ADMIN_API_KEY=
長い戦いだった。
調べたらみんなハマっていてふふってなった。
以下にたどり着きました。
TipTap issues: TipTap is not working on react with vite project.
npm i @tiptap/pm
する(Answer2)。npm add prosemirror-commands prosemirror-history prosemirror-keymap prosemirror-model prosemirror-schema-list prosemirror-state prosemirror-transform prosemirror-view
npm i @tiptap/pm
localでは発生しないが、netlifyにデプロイしたときにエラー発生
Module not found: Can't resolve '@tiptap/pm/state'
Module not found: Can't resolve '@tiptap/pm/keymap'
Module not found: Can't resolve '@tiptap/pm/keymap'
Module not found: Can't resolve '@tiptap/pm/transform'
9:34:13 AM: Failed to compile.
9:34:13 AM:
9:34:13 AM: ./node_modules/@tiptap/core/dist/index.js
9:34:13 AM: Module not found: Can't resolve '@tiptap/pm/state'
9:34:13 AM: Import trace for requested module:
9:34:13 AM: ./node_modules/@tiptap/extension-placeholder/dist/index.js
9:34:13 AM: ./src/components/features/contact/ContactForm/ContactForm.tsx
9:34:13 AM: ./src/components/features/contact/ContactForm/index.ts
9:34:13 AM: ./src/components/@templates/ContactTemplate.tsx
9:34:13 AM: ./pages/contact.tsx
9:34:13 AM: https://nextjs.org/docs/messages/module-not-found
9:34:13 AM: ./node_modules/@tiptap/core/dist/index.js
9:34:13 AM: Module not found: Can't resolve '@tiptap/pm/view'
9:34:13 AM: Import trace for requested module:
9:34:13 AM: ./node_modules/@tiptap/extension-placeholder/dist/index.js
9:34:13 AM: ./src/components/features/contact/ContactForm/ContactForm.tsx
9:34:13 AM: ./src/components/features/contact/ContactForm/index.ts
9:34:13 AM: ./src/components/@templates/ContactTemplate.tsx
9:34:13 AM: ./pages/contact.tsx
9:34:13 AM: https://nextjs.org/docs/messages/module-not-found
9:34:13 AM: ./node_modules/@tiptap/core/dist/index.js
9:34:13 AM: Module not found: Can't resolve '@tiptap/pm/keymap'
9:34:13 AM: Import trace for requested module:
9:34:13 AM: ./node_modules/@tiptap/extension-placeholder/dist/index.js
9:34:13 AM: ./src/components/features/contact/ContactForm/ContactForm.tsx
9:34:13 AM: ./src/components/features/contact/ContactForm/index.ts
9:34:13 AM: ./src/components/@templates/ContactTemplate.tsx
9:34:13 AM: ./pages/contact.tsx
9:34:13 AM: https://nextjs.org/docs/messages/module-not-found
9:34:13 AM: ./node_modules/@tiptap/core/dist/index.js
9:34:13 AM: Module not found: Can't resolve '@tiptap/pm/model'
9:34:13 AM: Import trace for requested module:
9:34:13 AM: ./node_modules/@tiptap/extension-placeholder/dist/index.js
9:34:13 AM: ./src/components/features/contact/ContactForm/ContactForm.tsx
9:34:13 AM: ./src/components/features/contact/ContactForm/index.ts
9:34:13 AM: ./src/components/@templates/ContactTemplate.tsx
9:34:13 AM: ./pages/contact.tsx
9:34:13 AM: https://nextjs.org/docs/messages/module-not-found
9:34:13 AM: ./node_modules/@tiptap/core/dist/index.js
9:34:13 AM: Module not found: Can't resolve '@tiptap/pm/transform'
9:34:13 AM: Import trace for requested module:
9:34:13 AM: ./node_modules/@tiptap/extension-placeholder/dist/index.js
9:34:13 AM: ./src/components/features/contact/ContactForm/ContactForm.tsx
9:34:13 AM: ./src/components/features/contact/ContactForm/index.ts
9:34:13 AM: ./src/components/@templates/ContactTemplate.tsx
9:34:13 AM: ./pages/contact.tsx
9:34:13 AM: https://nextjs.org/docs/messages/module-not-found
9:34:13 AM: > Build failed because of webpack errors
9:34:13 AM:
9:34:13 AM: build.command failed
9:34:13 AM: ────────────────────────────────────────────────────────────────
20
└ #27
Netlify build error log
3:20:46 PM: Failed to compile. 3:20:46 PM: 3:20:46 PM: ./node_modules/@tiptap/core/dist/index.js 3:20:46 PM: Module not found: Can't resolve '@tiptap/pm/state' 3:20:46 PM: Import trace for requested module: 3:20:46 PM: ./node_modules/@tiptap/extension-placeholder/dist/index.js 3:20:46 PM: ./src/components/features/contact/ContactForm/ContactForm.tsx 3:20:46 PM: ./src/components/features/contact/ContactForm/index.ts 3:20:46 PM: ./src/components/@templates/ContactTemplate.tsx 3:20:46 PM: ./pages/contact.tsx 3:20:46 PM: https://nextjs.org/docs/messages/module-not-found 3:20:46 PM: ./node_modules/@tiptap/core/dist/index.js 3:20:46 PM: Module not found: Can't resolve '@tiptap/pm/view' 3:20:46 PM: Import trace for requested module: 3:20:46 PM: ./node_modules/@tiptap/extension-placeholder/dist/index.js 3:20:46 PM: ./src/components/features/contact/ContactForm/ContactForm.tsx 3:20:46 PM: ./src/components/features/contact/ContactForm/index.ts 3:20:46 PM: ./src/components/@templates/ContactTemplate.tsx 3:20:46 PM: ./pages/contact.tsx 3:20:46 PM: https://nextjs.org/docs/messages/module-not-found 3:20:46 PM: ./node_modules/@tiptap/core/dist/index.js 3:20:46 PM: Module not found: Can't resolve '@tiptap/pm/keymap' 3:20:46 PM: Import trace for requested module: 3:20:46 PM: ./node_modules/@tiptap/extension-placeholder/dist/index.js 3:20:46 PM: ./src/components/features/contact/ContactForm/ContactForm.tsx 3:20:46 PM: ./src/components/features/contact/ContactForm/index.ts 3:20:46 PM: ./src/components/@templates/ContactTemplate.tsx 3:20:46 PM: ./pages/contact.tsx 3:20:46 PM: https://nextjs.org/docs/messages/module-not-found 3:20:46 PM: ./node_modules/@tiptap/core/dist/index.js 3:20:46 PM: Module not found: Can't resolve '@tiptap/pm/model' 3:20:46 PM: Import trace for requested module: 3:20:46 PM: ./node_modules/@tiptap/extension-placeholder/dist/index.js 3:20:46 PM: ./src/components/features/contact/ContactForm/ContactForm.tsx 3:20:46 PM: ./src/components/features/contact/ContactForm/index.ts 3:20:46 PM: ./src/components/@templates/ContactTemplate.tsx 3:20:46 PM: ./pages/contact.tsx 3:20:46 PM: https://nextjs.org/docs/messages/module-not-found 3:20:46 PM: ./node_modules/@tiptap/core/dist/index.js 3:20:46 PM: Module not found: Can't resolve '@tiptap/pm/transform' 3:20:46 PM: Import trace for requested module: 3:20:46 PM: ./node_modules/@tiptap/extension-placeholder/dist/index.js 3:20:46 PM: ./src/components/features/contact/ContactForm/ContactForm.tsx 3:20:46 PM: ./src/components/features/contact/ContactForm/index.ts 3:20:46 PM: ./src/components/@templates/ContactTemplate.tsx 3:20:46 PM: ./pages/contact.tsx 3:20:46 PM: https://nextjs.org/docs/messages/module-not-found 3:20:46 PM: > Build failed because of webpack errors 3:20:46 PM: 3:20:46 PM: build.command failed
3:20:46 PM: ──────────────────────────────────────────────────────────────── 3:20:46 PM: 3:20:46 PM: Error message 3:20:46 PM: Command failed with exit code 1: npm run build (https://ntl.fyi/exit-code-1) 3:20:46 PM: 3:20:46 PM: Error location 3:20:46 PM: In Build command from Netlify app: 3:20:46 PM: npm run build 3:20:46 PM: 3:20:46 PM: Resolved config 3:20:46 PM: build: 3:20:46 PM: command: npm run build 3:20:46 PM: commandOrigin: ui 3:20:46 PM: environment: 3:20:46 PM: - NEXT_PUBLIC_GTM_ID 3:20:46 PM: - NOTION_DATABASE 3:20:46 PM: - NOTION_TOKEN 3:20:46 PM: - REVIEW_ID 3:20:46 PM: - NEXT_PRIVATE_TARGET 3:20:46 PM: publish: /opt/build/repo/.next 3:20:46 PM: publishOrigin: ui 3:20:46 PM: plugins: 3:20:46 PM: - inputs: {} 3:20:46 PM: origin: ui 3:20:46 PM: package: '@netlify/plugin-nextjs' 3:20:47 PM: Caching artifacts 3:20:47 PM: Started saving node modules 3:20:47 PM: Finished saving node modules 3:20:47 PM: Started saving build plugins 3:20:47 PM: Finished saving build plugins 3:20:47 PM: Started saving corepack cache 3:20:47 PM: Finished saving corepack cache 3:20:47 PM: Started saving yarn cache 3:20:53 PM: Finished saving yarn cache 3:20:53 PM: Started saving pip cache 3:20:53 PM: Finished saving pip cache 3:20:53 PM: Started saving emacs cask dependencies 3:20:53 PM: Finished saving emacs cask dependencies 3:20:53 PM: Started saving maven dependencies 3:20:53 PM: Finished saving maven dependencies 3:20:53 PM: Started saving boot dependencies 3:20:53 PM: Finished saving boot dependencies 3:20:53 PM: Started saving rust rustup cache 3:20:53 PM: Finished saving rust rustup cache 3:20:53 PM: Started saving go dependencies 3:20:54 PM: Finished saving go dependencies 3:20:56 PM: Build failed due to a user error: Build script returned non-zero exit code: 2 3:20:56 PM: Failing build: Failed to build site 3:20:56 PM: Finished processing build request in 2m12.125s