Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

vercel build error #208

Open
Ran-Xing opened this issue Apr 28, 2023 · 19 comments
Open

vercel build error #208

Ran-Xing opened this issue Apr 28, 2023 · 19 comments

Comments

@Ran-Xing
Copy link

git clone https://github.com/doocs/md.git /tmp/www && cp -r  /tmp/www/* . && npm i && npm run build:h5-netlify
[20:36:34.874] Running build in Cleveland, USA (East) – cle1
[20:36:34.926] Cloning github.com/XRSec/wxweb (Branch: main, Commit: a299430)
[20:36:35.170] Previous build cache not available
[20:36:35.729] Cloning completed: 803.536ms
[20:36:35.837] Running "vercel build"
[20:36:36.247] Vercel CLI 28.18.5
[20:36:36.771] Cloning into '/tmp/www'...
[20:36:50.487] npm WARN deprecated urix@0.1.0: Please see https://github.com/lydell/urix#deprecated
[20:36:51.979] npm WARN deprecated svgo@1.3.2: This SVGO version is no longer supported. Upgrade to v2.x.x.
[20:36:52.416] npm WARN deprecated stable@0.1.8: Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility
[20:36:52.653] npm WARN deprecated source-map-url@0.4.1: See https://github.com/lydell/source-map-url#deprecated
[20:36:52.720] npm WARN deprecated source-map-resolve@0.5.3: See https://github.com/lydell/source-map-resolve#deprecated
[20:36:53.930] npm WARN deprecated resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated
[20:36:54.069] npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
[20:36:54.557] npm WARN deprecated querystring@0.2.0: The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
[20:37:01.662] npm WARN deprecated html-webpack-plugin@3.2.0: 3.x is no longer supported
[20:37:02.147] npm WARN deprecated har-validator@5.1.5: this library is no longer supported
[20:37:03.888] npm WARN deprecated eslint-loader@2.2.1: This loader has been deprecated. Please use eslint-webpack-plugin
[20:37:08.011] npm WARN deprecated babel-eslint@10.1.0: babel-eslint is now @babel/eslint-parser. This package will no longer receive updates.
[20:37:11.426] npm WARN deprecated @hapi/joi@15.1.1: Switch to 'npm install joi'
[20:37:11.462] npm WARN deprecated @hapi/hoek@8.5.1: This version has been deprecated and is no longer supported or maintained
[20:37:11.482] npm WARN deprecated @hapi/topo@3.1.6: This version has been deprecated and is no longer supported or maintained
[20:37:11.487] npm WARN deprecated @hapi/bourne@1.3.2: This version has been deprecated and is no longer supported or maintained
[20:37:11.501] npm WARN deprecated @hapi/address@2.1.4: Moved to 'npm install @sideway/address'
[20:37:13.746] npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
[20:37:14.238] npm WARN deprecated chokidar@2.1.8: Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies
[20:37:14.579] npm WARN deprecated chokidar@2.1.8: Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies
[20:37:16.707] npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
[20:37:16.992] npm WARN deprecated querystring@0.2.1: The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
[20:37:19.893] npm WARN deprecated mkdirp@0.3.5: Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)
[20:37:25.905] npm WARN deprecated core-js@2.6.12: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.
[20:37:27.223] npm WARN deprecated core-js@2.6.12: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.
[20:37:28.078] 
[20:37:28.079] > md@1.5.9 prepare
[20:37:28.079] > husky install
[20:37:28.079] 
[20:37:28.139] husky - Git hooks installed
[20:37:28.161] 
[20:37:28.161] added 2175 packages, and audited 2176 packages in 45s
[20:37:28.212] 
[20:37:28.212] 56 vulnerabilities (1 low, 22 moderate, 21 high, 12 critical)
[20:37:28.212] 
[20:37:28.212] To address issues that do not require attention, run:
[20:37:28.212]   npm audit fix
[20:37:28.212] 
[20:37:28.212] To address all issues possible (including breaking changes), run:
[20:37:28.212] 
[20:37:28.212] Some issues need review, and may require choosing
[20:37:28.213] a different dependency.
[20:37:28.213] 
[20:37:28.213] Run `npm audit` for details.
[20:37:28.476] 
[20:37:28.476] > md@1.5.9 build:h5-netlify
[20:37:28.476] > cross-env SERVER_ENV=NETLIFY vue-cli-service build
[20:37:28.476] 
[20:37:28.993] 
[20:37:28.994] -  Building for production...
[20:37:30.258]  ERROR  Failed to compile with 1 error12:37:30 PM
[20:37:30.258] 
[20:37:30.258] Syntax Error: Thread Loader (Worker 0)
[20:37:30.258] No ESLint configuration found in /vercel/path0/src.
[20:37:30.258] 
[20:37:30.258] 
[20:37:30.258] You may use special comments to disable some warnings.
[20:37:30.259] Use // eslint-disable-next-line to ignore the next line.
[20:37:30.259] Use /* eslint-disable */ to ignore all warnings in a file.
[20:37:30.259]  ERROR  Build failed with errors.
[20:37:30.283] Error: Command "git clone https://github.com/doocs/md.git /tmp/www && cp -r  /tmp/www/* . && npm i && npm run build:h5-netlify" exited with 1
[20:37:31.062] Deployment completed
[20:37:30.685] BUILD_UTILS_SPAWN_1: Command "git clone https://github.com/doocs/md.git /tmp/www && cp -r  /tmp/www/* . && npm i && npm run build:h5-netlify" exited with 1
@Ran-Xing
Copy link
Author

大佬,真机 也报错了

@Ran-Xing
Copy link
Author

root@86ec0a5ce0f0:/# npm run build:h5-netlify

> md@1.5.9 build:h5-netlify
> cross-env SERVER_ENV=NETLIFY vue-cli-service build

All browser targets in the browserslist configuration have supported ES module.
Therefore we don't build two separate bundles for differential loading.


⠸  Building for production...[@vue/compiler-sfc] the >>> and /deep/ combinators have been deprecated. Use :deep() instead.

⠋  Building for production...[@vue/compiler-sfc] the >>> and /deep/ combinators have been deprecated. Use :deep() instead.

[@vue/compiler-sfc] ::v-deep usage as a combinator has been deprecated. Use :deep(<inner-selector>) instead.

[@vue/compiler-sfc] the >>> and /deep/ combinators have been deprecated. Use :deep() instead.

[@vue/compiler-sfc] the >>> and /deep/ combinators have been deprecated. Use :deep() instead.

[@vue/compiler-sfc] the >>> and /deep/ combinators have been deprecated. Use :deep() instead.

[@vue/compiler-sfc] the >>> and /deep/ combinators have been deprecated. Use :deep() instead.

[@vue/compiler-sfc] the >>> and /deep/ combinators have been deprecated. Use :deep() instead.

[@vue/compiler-sfc] the >>> and /deep/ combinators have been deprecated. Use :deep() instead.

[@vue/compiler-sfc] the >>> and /deep/ combinators have been deprecated. Use :deep() instead.

[@vue/compiler-sfc] the >>> and /deep/ combinators have been deprecated. Use :deep() instead.

[@vue/compiler-sfc] ::v-deep usage as a combinator has been deprecated. Use :deep(<inner-selector>) instead.

⠴  Building for production...[@vue/compiler-sfc] the >>> and /deep/ combinators have been deprecated. Use :deep() instead.

⠸  Building for production...

 ERROR  Failed to compile with 13 errors                                  12:42:08 PM

[eslint] ESLint is not a constructor

You may use special comments to disable some warnings.
Use // eslint-disable-next-line to ignore the next line.
Use /* eslint-disable */ to ignore all warnings in a file.
 error  in /node_modules/amdefine/amdefine.js

Module not found: Error: Can't resolve 'path' in '/node_modules/amdefine'

BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
	- add a fallback 'resolve.fallback: { "path": require.resolve("path-browserify") }'
	- install 'path-browserify'
If you don't want to include a polyfill, you can use an empty module like this:
	resolve.fallback: { "path": false }

 error  in /src/api/file.js

Module not found: Error: Can't resolve 'ali-oss' in '/src/api'

 error  in /node_modules/minio/dist/main/minio.js

Module not found: Error: Can't resolve 'crypto' in '/node_modules/minio/dist/main'

BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
	- add a fallback 'resolve.fallback: { "crypto": require.resolve("crypto-browserify") }'
	- install 'crypto-browserify'
If you don't want to include a polyfill, you can use an empty module like this:
	resolve.fallback: { "crypto": false }

 error  in /node_modules/minio/dist/main/minio.js

Module not found: Error: Can't resolve 'http' in '/node_modules/minio/dist/main'

BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
	- add a fallback 'resolve.fallback: { "http": require.resolve("stream-http") }'
	- install 'stream-http'
If you don't want to include a polyfill, you can use an empty module like this:
	resolve.fallback: { "http": false }

 error  in /node_modules/minio/dist/main/minio.js

Module not found: Error: Can't resolve 'https' in '/node_modules/minio/dist/main'

BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
	- add a fallback 'resolve.fallback: { "https": require.resolve("https-browserify") }'
	- install 'https-browserify'
If you don't want to include a polyfill, you can use an empty module like this:
	resolve.fallback: { "https": false }

 error  in /node_modules/minio/dist/main/minio.js

Module not found: Error: Can't resolve 'stream' in '/node_modules/minio/dist/main'

BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
	- add a fallback 'resolve.fallback: { "stream": require.resolve("stream-browserify") }'
	- install 'stream-browserify'
If you don't want to include a polyfill, you can use an empty module like this:
	resolve.fallback: { "stream": false }

 error  in /node_modules/minio/node_modules/source-map-support/source-map-support.js

Module not found: Error: Can't resolve 'path' in '/node_modules/minio/node_modules/source-map-support'

BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
	- add a fallback 'resolve.fallback: { "path": require.resolve("path-browserify") }'
	- install 'path-browserify'
If you don't want to include a polyfill, you can use an empty module like this:
	resolve.fallback: { "path": false }

 error  in /node_modules/minio/node_modules/source-map-support/source-map-support.js

Module not found: Error: Can't resolve 'fs' in '/node_modules/minio/node_modules/source-map-support'

 error  in /node_modules/through2/node_modules/readable-stream/lib/_stream_readable.js

Module not found: Error: Can't resolve 'stream' in '/node_modules/through2/node_modules/readable-stream/lib'

BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
	- add a fallback 'resolve.fallback: { "stream": require.resolve("stream-browserify") }'
	- install 'stream-browserify'
If you don't want to include a polyfill, you can use an empty module like this:
	resolve.fallback: { "stream": false }

 error  in /node_modules/through2/through2.js

Module not found: Error: Can't resolve 'util' in '/node_modules/through2'

BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
	- add a fallback 'resolve.fallback: { "util": require.resolve("util/") }'
	- install 'util'
If you don't want to include a polyfill, you can use an empty module like this:
	resolve.fallback: { "util": false }

 error  in /node_modules/xml/lib/xml.js

Module not found: Error: Can't resolve 'stream' in '/node_modules/xml/lib'

BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
	- add a fallback 'resolve.fallback: { "stream": require.resolve("stream-browserify") }'
	- install 'stream-browserify'
If you don't want to include a polyfill, you can use an empty module like this:
	resolve.fallback: { "stream": false }

  Error: Child compilation failed:
  [eslint] ESLint is not a constructor

  - child-compiler.js:169
    [cli-service]/[html-webpack-plugin]/lib/child-compiler.js:169:18

  - Compiler.js:551 finalCallback
    [cli-service]/[webpack]/lib/Compiler.js:551:5

  - Compiler.js:577
    [cli-service]/[webpack]/lib/Compiler.js:577:11

  - Compiler.js:1199
    [cli-service]/[webpack]/lib/Compiler.js:1199:17


  - Hook.js:18 Hook.CALL_ASYNC_DELEGATE [as _callAsync]
    [cli-service]/[tapable]/lib/Hook.js:18:14

  - Compiler.js:1195
    [cli-service]/[webpack]/lib/Compiler.js:1195:33

  - Compilation.js:2787 finalCallback
    [cli-service]/[webpack]/lib/Compilation.js:2787:11

  - Compilation.js:3092
    [cli-service]/[webpack]/lib/Compilation.js:3092:11



 ERROR  Error: Build failed with errors.
Error: Build failed with errors.
    at /node_modules/@vue/cli-service/lib/commands/build/index.js:207:23
    at /node_modules/@vue/cli-service/node_modules/webpack/lib/webpack.js:148:8
    at /node_modules/@vue/cli-service/node_modules/webpack/lib/HookWebpackError.js:68:3
    at Hook.eval [as callAsync] (eval at create (/node_modules/@vue/cli-service/node_modules/tapable/lib/HookCodeFactory.js:33:10), <anonymous>:6:1)
    at Hook.CALL_ASYNC_DELEGATE [as _callAsync] (/node_modules/@vue/cli-service/node_modules/tapable/lib/Hook.js:18:14)
    at Cache.shutdown (/node_modules/@vue/cli-service/node_modules/webpack/lib/Cache.js:150:23)
    at /node_modules/@vue/cli-service/node_modules/webpack/lib/Compiler.js:1228:15
    at Hook.eval [as callAsync] (eval at create (/node_modules/@vue/cli-service/node_modules/tapable/lib/HookCodeFactory.js:33:10), <anonymous>:6:1)
    at Hook.CALL_ASYNC_DELEGATE [as _callAsync] (/node_modules/@vue/cli-service/node_modules/tapable/lib/Hook.js:18:14)
    at Compiler.close (/node_modules/@vue/cli-service/node_modules/webpack/lib/Compiler.js:1221:23)
root@86ec0a5ce0f0:/#

@yanglbme
Copy link
Member

啊,不会吧,线上最新代码我们是 build 通过的

@Ran-Xing
Copy link
Author

docker run -it --name nodejs --rm node bash

git clone https://github.com/doocs/md.git /tmp/www && cp -r  /tmp/www/* . && npm i && npm run build:h5-netlify

@Ran-Xing
Copy link
Author

Ran-Xing commented Apr 28, 2023

@yanglbme 你试试,也许有可能是node版本问题

@Ran-Xing
Copy link
Author

Last login: Fri Apr 28 20:34:40 2023 from xxx.xxx.xxx.xxx
➜  ~ docker run -it --name nodejs --rm node bash
root@15924c7392db:/# git clone https://github.com/doocs/md.git /tmp/www && cp -r  /tmp/www/* . && npm i && npm run build:h5-netlify
Cloning into '/tmp/www'...
remote: Enumerating objects: 5631, done.
remote: Total 5631 (delta 0), reused 0 (delta 0), pack-reused 5631
Receiving objects: 100% (5631/5631), 165.69 MiB | 5.29 MiB/s, done.
Resolving deltas: 100% (3272/3272), done.
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@achrinza/node-ipc@9.2.2',
npm WARN EBADENGINE   required: { node: '8 || 10 || 12 || 14 || 16 || 17' },
npm WARN EBADENGINE   current: { node: 'v20.0.0', npm: '9.6.4' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'minio@7.0.29',
npm WARN EBADENGINE   required: { node: '>8  <=18' },
npm WARN EBADENGINE   current: { node: 'v20.0.0', npm: '9.6.4' }
npm WARN EBADENGINE }
npm WARN deprecated urix@0.1.0: Please see https://github.com/lydell/urix#deprecated
npm WARN deprecated svgo@1.3.2: This SVGO version is no longer supported. Upgrade to v2.x.x.
npm WARN deprecated stable@0.1.8: Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility
npm WARN deprecated source-map-resolve@0.5.3: See https://github.com/lydell/source-map-resolve#deprecated
npm WARN deprecated source-map-url@0.4.1: See https://github.com/lydell/source-map-url#deprecated
npm WARN deprecated resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN deprecated querystring@0.2.0: The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
npm WARN deprecated html-webpack-plugin@3.2.0: 3.x is no longer supported
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm WARN deprecated eslint-loader@2.2.1: This loader has been deprecated. Please use eslint-webpack-plugin
npm WARN deprecated babel-eslint@10.1.0: babel-eslint is now @babel/eslint-parser. This package will no longer receive updates.
npm WARN deprecated @hapi/bourne@1.3.2: This version has been deprecated and is no longer supported or maintained
npm WARN deprecated @hapi/hoek@8.5.1: This version has been deprecated and is no longer supported or maintained
npm WARN deprecated @hapi/topo@3.1.6: This version has been deprecated and is no longer supported or maintained
npm WARN deprecated @hapi/joi@15.1.1: Switch to 'npm install joi'
npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated chokidar@2.1.8: Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies
npm WARN deprecated chokidar@2.1.8: Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies
npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated querystring@0.2.1: The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
npm WARN deprecated mkdirp@0.3.5: Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)
npm WARN deprecated core-js@2.6.12: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.
npm WARN deprecated @hapi/address@2.1.4: Moved to 'npm install @sideway/address'
npm WARN deprecated core-js@2.6.12: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.

> md@1.5.9 prepare
> husky install

fatal: not a git repository (or any of the parent directories): .git

added 2175 packages, and audited 2176 packages in 3m

56 vulnerabilities (1 low, 22 moderate, 21 high, 12 critical)

To address issues that do not require attention, run:
  npm audit fix

To address all issues possible (including breaking changes), run:
  npm audit fix --force

Some issues need review, and may require choosing
a different dependency.

Run `npm audit` for details.
npm notice
npm notice New patch version of npm available! 9.6.4 -> 9.6.5
npm notice Changelog: https://github.com/npm/cli/releases/tag/v9.6.5
npm notice Run npm install -g npm@9.6.5 to update!
npm notice

> md@1.5.9 build:h5-netlify
> cross-env SERVER_ENV=NETLIFY vue-cli-service build


⠸  Building for production...Error: error:0308010C:digital envelope routines::unsupported
    at new Hash (node:internal/crypto/hash:69:19)
    at Object.createHash (node:crypto:138:10)
    at module.exports (/node_modules/webpack/lib/util/createHash.js:135:53)
    at NormalModule._initBuildHash (/node_modules/webpack/lib/NormalModule.js:417:16)
    at handleParseError (/node_modules/webpack/lib/NormalModule.js:471:10)
    at /node_modules/webpack/lib/NormalModule.js:503:5
    at /node_modules/webpack/lib/NormalModule.js:358:12
    at /node_modules/loader-runner/lib/LoaderRunner.js:373:3
    at iterateNormalLoaders (/node_modules/loader-runner/lib/LoaderRunner.js:214:10)
    at iterateNormalLoaders (/node_modules/loader-runner/lib/LoaderRunner.js:221:10)
    at /node_modules/loader-runner/lib/LoaderRunner.js:236:3
    at runSyncOrAsync (/node_modules/loader-runner/lib/LoaderRunner.js:130:11)
    at iterateNormalLoaders (/node_modules/loader-runner/lib/LoaderRunner.js:232:2)
    at Array.<anonymous> (/node_modules/loader-runner/lib/LoaderRunner.js:205:4)
    at Storage.finished (/node_modules/enhanced-resolve/lib/CachedInputFileSystem.js:55:16)
    at /node_modules/enhanced-resolve/lib/CachedInputFileSystem.js:91:9
⠏  Building for production.../node_modules/loader-runner/lib/LoaderRunner.js:114
			throw e;
			^

Error: error:0308010C:digital envelope routines::unsupported
    at new Hash (node:internal/crypto/hash:69:19)
    at Object.createHash (node:crypto:138:10)
    at module.exports (/node_modules/webpack/lib/util/createHash.js:135:53)
    at NormalModule._initBuildHash (/node_modules/webpack/lib/NormalModule.js:417:16)
    at /node_modules/webpack/lib/NormalModule.js:452:10
    at /node_modules/webpack/lib/NormalModule.js:323:13
    at /node_modules/loader-runner/lib/LoaderRunner.js:367:11
    at /node_modules/loader-runner/lib/LoaderRunner.js:182:20
    at context.callback (/node_modules/loader-runner/lib/LoaderRunner.js:111:13)
    at Object.callback (/node_modules/thread-loader/dist/index.js:46:7)
    at done (/node_modules/neo-async/async.js:8069:18)
    at callback (/node_modules/thread-loader/dist/WorkerPool.js:178:19)
    at /node_modules/thread-loader/dist/WorkerPool.js:204:15
    at mapSeries (/node_modules/neo-async/async.js:3625:14)
    at PoolWorker.onWorkerMessage (/node_modules/thread-loader/dist/WorkerPool.js:170:35)
    at /node_modules/thread-loader/dist/WorkerPool.js:152:14 {
  opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ],
  library: 'digital envelope routines',
  reason: 'unsupported',
  code: 'ERR_OSSL_EVP_UNSUPPORTED'
}

Node.js v20.0.0
root@15924c7392db:/#

@HysenX-LI
Copy link

我在vercel上使用
git clone https://github.com/doocs/md.git /tmp/www && cp -r /tmp/www/* . && npm i && npm run build:h5-netlify
进行部署,也出现了如下错误

Error: error:0308010C:digital envelope routines::unsupported
11:50:44.249 | at new Hash (node:internal/crypto/hash:71:19)
11:50:44.249 | at Object.createHash (node:crypto:133:10)
11:50:44.249 | at module.exports (/vercel/path0/node_modules/webpack/lib/util/createHash.js:135:53)
11:50:44.249 | at NormalModule._initBuildHash (/vercel/path0/node_modules/webpack/lib/NormalModule.js:417:16)
11:50:44.249 | at handleParseError (/vercel/path0/node_modules/webpack/lib/NormalModule.js:471:10)
11:50:44.250 | at /vercel/path0/node_modules/webpack/lib/NormalModule.js:503:5
11:50:44.250 | at /vercel/path0/node_modules/webpack/lib/NormalModule.js:358:12
11:50:44.250 | at /vercel/path0/node_modules/loader-runner/lib/LoaderRunner.js:373:3
11:50:44.250 | at iterateNormalLoaders (/vercel/path0/node_modules/loader-runner/lib/LoaderRunner.js:214:10)
11:50:44.250 | at iterateNormalLoaders (/vercel/path0/node_modules/loader-runner/lib/LoaderRunner.js:221:10)
11:50:44.250 | at /vercel/path0/node_modules/loader-runner/lib/LoaderRunner.js:236:3
11:50:44.250 | at runSyncOrAsync (/vercel/path0/node_modules/loader-runner/lib/LoaderRunner.js:130:11)
11:50:44.250 | at iterateNormalLoaders (/vercel/path0/node_modules/loader-runner/lib/LoaderRunner.js:232:2)
11:50:44.250 | at Array. (/vercel/path0/node_modules/loader-runner/lib/LoaderRunner.js:205:4)
11:50:44.250 | at Storage.finished (/vercel/path0/node_modules/enhanced-resolve/lib/CachedInputFileSystem.js:55:16)
11:50:44.250 | at /vercel/path0/node_modules/enhanced-resolve/lib/CachedInputFileSystem.js:91:9
11:50:45.255 | /vercel/path0/node_modules/loader-runner/lib/LoaderRunner.js:114
11:50:45.255 | throw e;
11:50:45.255 | ^
11:50:45.255 |  
11:50:45.255 | Error: error:0308010C:digital envelope routines::unsupported
11:50:45.255 | at new Hash (node:internal/crypto/hash:71:19)
11:50:45.255 | at Object.createHash (node:crypto:133:10)
11:50:45.257 | at module.exports (/vercel/path0/node_modules/webpack/lib/util/createHash.js:135:53)
11:50:45.257 | at NormalModule._initBuildHash (/vercel/path0/node_modules/webpack/lib/NormalModule.js:417:16)
11:50:45.257 | at handleParseError (/vercel/path0/node_modules/webpack/lib/NormalModule.js:471:10)
11:50:45.258 | at /vercel/path0/node_modules/webpack/lib/NormalModule.js:503:5
11:50:45.258 | at /vercel/path0/node_modules/webpack/lib/NormalModule.js:358:12
11:50:45.258 | at /vercel/path0/node_modules/loader-runner/lib/LoaderRunner.js:373:3
11:50:45.258 | at iterateNormalLoaders (/vercel/path0/node_modules/loader-runner/lib/LoaderRunner.js:214:10)
11:50:45.258 | at iterateNormalLoaders (/vercel/path0/node_modules/loader-runner/lib/LoaderRunner.js:221:10)
11:50:45.258 | at /vercel/path0/node_modules/loader-runner/lib/LoaderRunner.js:236:3
11:50:45.258 | at context.callback (/vercel/path0/node_modules/loader-runner/lib/LoaderRunner.js:111:13)
11:50:45.258 | at /vercel/path0/node_modules/cache-loader/dist/index.js:147:7
11:50:45.258 | at /vercel/path0/node_modules/graceful-fs/graceful-fs.js:61:14
11:50:45.258 | at FSReqCallback.oncomplete (node:fs:198:23) {
11:50:45.258 | opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ],
11:50:45.259 | library: 'digital envelope routines',
11:50:45.259 | reason: 'unsupported',
11:50:45.259 | code: 'ERR_OSSL_EVP_UNSUPPORTED'
11:50:45.259 | }
11:50:45.259 |  
11:50:45.259 | Node.js v18.15.0
11:50:45.287 | Error: Command "git clone https://github.com/doocs/md.git /tmp/www && cp -r /tmp/www/* . && npm i && npm run build:h5-netlify" exited with 1
11:50:45.550 | Deployment completed
11:50:45.514

@HysenX-LI
Copy link

如果只使用npm run build:h5-netlify的话,也会报错

@Ran-Xing
Copy link
Author

@yanglbme 老兄咋样呀,弄好了没得

@yanglbme
Copy link
Member

@Ran-Xing 拉一下最新代码试试,我刚刚用 GitHub Action 部署,是成功的

@Ran-Xing
Copy link
Author

@yanglbme 依然不行

@Ran-Xing
Copy link
Author

我用docker node16 跑了一下,也是一样不行

@yanglbme
Copy link
Member

  • npm i
  • npm start
  • npm run build

报了什么错

@yanglbme
Copy link
Member

@Ran-Xing createHash 报错的问题,昨天已经处理

@Ran-Xing
Copy link
Author

image

@Ran-Xing
Copy link
Author

Ran-Xing commented May 11, 2023

root@262401f71b69:/# git clone https://github.com/doocs/md.git /tmp/www && cp -r  /tmp/www/* . && npm i && npm run build
Cloning into '/tmp/www'...
remote: Enumerating objects: 5662, done.
remote: Counting objects: 100% (46/46), done.
remote: Compressing objects: 100% (33/33), done.
^Cceiving objects:  20% (1155/5662), 2.97 MiB | 1.92 MiB/s   s
root@262401f71b69:/# git clone https://github.com/doocs/md.git /tmp/www && cp -r  /tmp/www/* . && npm i && npm start
Cloning into '/tmp/www'...
remote: Enumerating objects: 5662, done.
remote: Counting objects: 100% (46/46), done.
remote: Compressing objects: 100% (33/33), done.
remote: Total 5662 (delta 12), reused 35 (delta 10), pack-reused 5616
Receiving objects: 100% (5662/5662), 167.32 MiB | 3.81 MiB/s, done.
Resolving deltas: 100% (3273/3273), done.
npm WARN deprecated w3c-hr-time@1.0.2: Use your platform's native performance.now() and performance.timeOrigin.
npm WARN deprecated urix@0.1.0: Please see https://github.com/lydell/urix#deprecated
npm WARN deprecated source-map-url@0.4.1: See https://github.com/lydell/source-map-url#deprecated
npm WARN deprecated sourcemap-codec@1.4.8: Please use @jridgewell/sourcemap-codec instead
npm WARN deprecated stable@0.1.8: Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility
npm WARN deprecated source-map-resolve@0.5.3: See https://github.com/lydell/source-map-resolve#deprecated
npm WARN deprecated resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated
npm WARN deprecated querystring@0.2.1: The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm WARN deprecated html-webpack-plugin@3.2.0: 3.x is no longer supported
npm WARN deprecated svgo@1.3.2: This SVGO version is no longer supported. Upgrade to v2.x.x.
npm WARN deprecated eslint-loader@2.2.1: This loader has been deprecated. Please use eslint-webpack-plugin
npm WARN deprecated babel-eslint@10.1.0: babel-eslint is now @babel/eslint-parser. This package will no longer receive updates.
npm WARN deprecated @npmcli/move-file@1.1.2: This functionality has been moved to @npmcli/fs
npm WARN deprecated @hapi/topo@3.1.6: This version has been deprecated and is no longer supported or maintained
npm WARN deprecated @hapi/bourne@1.3.2: This version has been deprecated and is no longer supported or maintained
npm WARN deprecated @hapi/address@2.1.4: Moved to 'npm install @sideway/address'
npm WARN deprecated @hapi/hoek@8.5.1: This version has been deprecated and is no longer supported or maintained
npm WARN deprecated @hapi/joi@15.1.1: Switch to 'npm install joi'
npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated chokidar@2.1.8: Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies
npm WARN deprecated chokidar@2.1.8: Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies
npm WARN deprecated querystring@0.2.0: The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated mkdirp@0.3.5: Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)
npm WARN deprecated core-js@2.6.12: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.
npm WARN deprecated core-js@2.6.12: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.

> md@1.5.9 prepare
> husky install

fatal: not a git repository (or any of the parent directories): .git

added 2349 packages, and audited 2807 packages in 54s

167 packages are looking for funding
  run `npm fund` for details

72 vulnerabilities (1 low, 25 moderate, 35 high, 11 critical)

To address issues that do not require attention, run:
  npm audit fix

To address all issues possible (including breaking changes), run:
  npm audit fix --force

Some issues need review, and may require choosing
a different dependency.

Run `npm audit` for details.
npm notice
npm notice New major version of npm available! 8.19.4 -> 9.6.6
npm notice Changelog: https://github.com/npm/cli/releases/tag/v9.6.6
npm notice Run npm install -g npm@9.6.6 to update!
npm notice

> md@1.5.9 start
> npm run lint -- --fix && run-p serve mm


> md@1.5.9 lint /
> vue-cli-service lint src && vue-cli-service lint mm "--fix"

error: Parsing error: Unexpected token < at src/App.vue:1:1:
> 1 | <template>
    | ^
  2 |   <div id="app">
  3 |     <router-view></router-view>
  4 |   </div>


error: Parsing error: The keyword 'const' is reserved at src/api/config.js:1:1:
> 1 | const githubConfig = {
    | ^
  2 |   username: `filess`,
  3 |   repoList: Array.from(
  4 |     [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19],


error: Parsing error: The keyword 'import' is reserved at src/api/fetch.js:1:1:
> 1 | import axios from 'axios'
    | ^
  2 |
  3 | // 创建axios实例
  4 | const service = axios.create({


error: Parsing error: The keyword 'import' is reserved at src/api/file.js:1:1:
> 1 | import fetch from './fetch'
    | ^
  2 | import { githubConfig, giteeConfig } from './config'
  3 | import CryptoJS from 'crypto-js'
  4 | import OSS from 'ali-oss'


error: Parsing error: The keyword 'export' is reserved at src/assets/scripts/config.js:1:1:
> 1 | export default {
    | ^
  2 |   builtinFonts: [
  3 |     {
  4 |       label: `无衬线`,


error: Parsing error: The keyword 'import' is reserved at src/assets/scripts/converter.js:1:1:
> 1 | import juice from 'juice'
    | ^
  2 |
  3 | export function solveWeChatImage() {
  4 |   const clipboardDiv = document.getElementById(`output`)


error: Parsing error: The keyword 'import' is reserved at src/assets/scripts/renderers/wx-renderer.js:1:1:
> 1 | import { Renderer } from "marked";
    | ^
  2 | import hljs from 'highlight.js';
  3 |
  4 | class WxRenderer {


error: Parsing error: Unexpected token baseColor at src/assets/scripts/themes/default-theme.js:1:5:
> 1 | let baseColor = `#3f3f3f`
    |     ^
  2 |
  3 | export default {
  4 |   BASE: {


error: Parsing error: The keyword 'export' is reserved at src/assets/scripts/tokenTools.js:1:1:
> 1 | export function utf16to8(str) {
    | ^
  2 |   var out, i, len, c
  3 |   out = ``
  4 |   len = str.length


error: Parsing error: The keyword 'import' is reserved at src/assets/scripts/util.js:1:1:
> 1 | import prettier from 'prettier/standalone'
    | ^
  2 | import prettierCss from 'prettier/parser-postcss'
  3 | import prettierMarkdown from 'prettier/parser-markdown'
  4 | import defaultTheme from './themes/default-theme'


error: Parsing error: Unexpected token < at src/components/CodemirrorEditor/AboutDialog.vue:1:1:
> 1 | <template>
    | ^
  2 |   <el-dialog
  3 |     title="关于"
  4 |     class="about__dialog"


error: Parsing error: Unexpected token < at src/components/CodemirrorEditor/CssEditor.vue:1:1:
> 1 | <template>
    | ^
  2 |   <transition enter-active-class="bounceInRight">
  3 |     <el-col :span="12" v-show="showCssEditor" class="cssEditor-wrapper">
  4 |       <textarea


error: Parsing error: Unexpected token < at src/components/CodemirrorEditor/EditorHeader/PostInfoDialog.vue:1:1:
> 1 | <template>
    | ^
  2 |   <el-dialog title="发布" :visible.sync="form.dialogVisible">
  3 |     <el-alert
  4 |       style="margin-bottom: 1em"


error: Parsing error: Unexpected token < at src/components/CodemirrorEditor/EditorHeader/ResetDialog.vue:1:1:
> 1 | <template>
    | ^
  2 |   <el-dialog
  3 |     title="提示"
  4 |     class="reset__dialog"


error: Parsing error: Unexpected token < at src/components/CodemirrorEditor/EditorHeader/StyleOptionMenu.vue:1:1:
> 1 | <template>
    | ^
  2 |   <el-dropdown placement="right" class="style-option-menu">
  3 |     <div class="el-dropdown-link">
  4 |       {{ label }}


error: Parsing error: Unexpected token < at src/components/CodemirrorEditor/EditorHeader/index.vue:1:1:
> 1 | <template>
    | ^
  2 |   <el-container class="header-container is-dark">
  3 |     <div class="dropdowns">
  4 |       <el-dropdown>


error: Parsing error: Unexpected token < at src/components/CodemirrorEditor/InsertFormDialog.vue:1:1:
> 1 | <template>
    | ^
  2 |   <el-dialog
  3 |     title="插入表格"
  4 |     class="insert__dialog"


error: Parsing error: Unexpected token < at src/components/CodemirrorEditor/RightClickMenu.vue:1:1:
> 1 | <template>
    | ^
  2 |   <div
  3 |     id="menu"
  4 |     class="menu"


error: Parsing error: Unexpected token < at src/components/CodemirrorEditor/UploadImgDialog.vue:1:1:
> 1 | <template>
    | ^
  2 |   <el-dialog
  3 |     title="本地上传"
  4 |     class="upload__dialog"


error: Parsing error: Unexpected token < at src/components/RunLoading.vue:1:1:
> 1 | <template>
    | ^
  2 |   <transition name="fade" v-if="loading">
  3 |     <div
  4 |       class="loading"


error: Parsing error: The keyword 'import' is reserved at src/main.js:1:1:
> 1 | import Vue from 'vue'
    | ^
  2 | import App from './App'
  3 | import store from './store'
  4 | import ElementUI from 'element-ui'


error: Parsing error: The keyword 'import' is reserved at src/plugins/element/index.js:1:1:
> 1 | import Vue from 'vue'
    | ^
  2 | import { Loading, Message } from 'element-ui'
  3 |
  4 | Vue.component(Message.name, Message)


error: Parsing error: The keyword 'import' is reserved at src/router/index.js:1:1:
> 1 | import Vue from 'vue'
    | ^
  2 | import VueRouter from 'vue-router'
  3 | import index from '@/views'
  4 |


error: Parsing error: The keyword 'import' is reserved at src/store/index.js:1:1:
> 1 | import Vue from 'vue'
    | ^
  2 | import Vuex from 'vuex'
  3 | import config from '../assets/scripts/config'
  4 | import WxRenderer from '../assets/scripts/renderers/wx-renderer'


error: Parsing error: Unexpected token < at src/views/CodemirrorEditor.vue:1:1:
> 1 | <template>
    | ^
  2 |   <div
  3 |     class="container"
  4 |     :class="{ container_night: nightMode }"


error: Parsing error: Unexpected token < at src/views/index.vue:1:1:
> 1 | <template>
    | ^
  2 |   <codemirror-editor />
  3 | </template>
  4 |


26 errors found.
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! md@1.5.9 lint: `vue-cli-service lint src && vue-cli-service lint mm "--fix"`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the md@1.5.9 lint script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2023-05-11T08_11_07_559Z-debug.log
root@262401f71b69:/# exit
➜  ~

@yanglbme
Copy link
Member

头疼,我没复现出你的问题

@Ran-Xing
Copy link
Author

@yanglbme 你用这两个命令吧,一个是新建容器,一个是克隆 编译

docker run -it --name nodejs --rm node bash

git clone https://github.com/doocs/md.git /tmp/www && cp -r  /tmp/www/* . && npm i && npm run build:h5-netlify

@yanglbme
Copy link
Member

我用 docker 容器 build 时报了另一个错,感觉这玩意儿跟 node / npm 版本有关

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants