Open aghArdeshir opened 3 years ago
This looks like a relevant discussion related to this issue: https://stackoverflow.com/questions/69394632/webpack-build-failing-with-err-ossl-evp-unsupported
Having the same issue. Node 16.11.1
works but 17.0.0
and 17.0.1
are causing this error.
Yes @Gnito that's it I think. So it is probably either Webpack's to update something, or react-scripts' to change some config, right?
in your package.json:
change this line
"build": "react-scripts start",
to
"build": "react-scripts --openssl-legacy-provider build",
in your package.json: change this line
"build": "react-scripts start",
to"build": "react-scripts --openssl-legacy-provider build",
Doing this results in a bad option: --openssl-legacy-provider
error in Node 16. So this isn't a workaround projects can actually use in their scripts
unless they have absolute control over the version of Node everyone uses and can prohibit use of LTS versions by anyone.
The only real fix will likely be the release of CRA v5.
The only real fix will likely be the release of CRA v5.
Actually it seems that this won't necessarily fix the issue alone. WebPack does plan to change the default hash function in WebPack 6 but cannot change it in 4 or 5.
CRA needs to change the hashFunction
and make a release. Though given CRA v4 hasn't received an update since Feb and CRA has other issues with Node 17 (#11565) I presume we'll only get that fix in CRA v5,
Could be fixed by #11597
Merged #11597 just before, and currently testing on local computer.
I tested out the @next
version of CRA v5. It seems there may be some more work required in order to make Node 17 work.
I'm still getting this error but now it's due to CRA v5 still using file-loader
. The implication in the WebPack thread on Node 17 is that file-loader
is obsolete and the fix to file-loader
breaking Node 17 is to not use file-loader
because it's no longer supported.
We may need #11213 before CRA v5 will work on Node 17.
On MBP w/M1, running Node v17, to run React with npm start
I had to change my start script to "start": "react-scripts --openssl-legacy-provider start"
. But when I try to run npm run deploy
, it reads "/opt/homebrew/Cellar/nvm/0.38.0/versions/node/v16.13.0/bin/node: bad option: --openssl-legacy-provider"
I tried "react-scripts --openssl-legacy-provider build"
and it does not work. Switched to Node v16.13.0
and it works as it came upon initialization.
"start": "react-scripts --openssl-legacy-provider start",
"build": "react-scripts build",
Pretty annoying, but hey, I've heard things change all the change in this industry and a few months from now, someone will see this comment and things will be different then as well.
If you need to support both 17 and older NodeJS versions you can use if-node-version to execute different commands for different NodeJS versions:
{
"scripts": {
"build": "if-node-version '>= 17' && react-scripts --openssl-legacy-provider build || react-scripts build",
}
}
Looks like this has been fixed.
It work Thanks.
"scripts": { "start": "react-scripts --openssl-legacy-provider start", "build": "react-scripts --openssl-legacy-provider build", "test": "react-scripts test", "eject": "react-scripts eject" },
why not to pass to webpack config to use some modern hash function instead of deprecated md4 https://webpack.js.org/configuration/output/#outputhashfunction ?
CRA is now a tech debt.
It work Thanks.
"scripts": { "start": "react-scripts --openssl-legacy-provider start", "build": "react-scripts --openssl-legacy-provider build", "test": "react-scripts test", "eject": "react-scripts eject" },
Thanks Pat! That worked for me also.
11562
for react-app-rewired use it like this
"start": "react-app-rewired --openssl-legacy-provider start ",
Hell
I had the same issue with Node v18.13.0
Fix step:
install nvm
upgrade node version to 20.3.0 via cmd nvm install v20.0.3
do npm -v
must be 9.6.7
Test again npm run build
Kinding58 Wallet has been created successfully
Kinding58 Wallet shall be used for various pi transactions
It's done
This is Paulk58 Netface Wallet created on 10th November 2023
This is Paulk58 Whatsapp wallet re-created on 10 th November 2023
This is Paulk58 Whatsapp wallet re-created on 10 November 2023
Describe the bug
we have a CRA app, it used to build with Node 14.x very fine, today I upgrade nodejs to 17.0.0 and it failed. (in both my local machine and the CI-CD machine)
And these were the logs:
> react-scripts build Creating an optimized production build... Error: error:0308010C:digital envelope routines::unsupported at new Hash (node:internal/crypto/hash:67:19) at Object.createHash (node:crypto:130:10) at module.exports (/my-project/node_modules/webpack/lib/util/createHash.js:135:53) at NormalModule._initBuildHash (/my-project/node_modules/webpack/lib/NormalModule.js:417:16) at handleParseError (/my-project/node_modules/webpack/lib/NormalModule.js:471:10) at /my-project/node_modules/webpack/lib/NormalModule.js:503:5 at /my-project/node_modules/webpack/lib/NormalModule.js:358:12 at /my-project/node_modules/loader-runner/lib/LoaderRunner.js:373:3 at iterateNormalLoaders (/my-project/node_modules/loader-runner/lib/LoaderRunner.js:214:10) at iterateNormalLoaders (/my-project/node_modules/loader-runner/lib/LoaderRunner.js:221:10) at /my-project/node_modules/loader-runner/lib/LoaderRunner.js:236:3 at runSyncOrAsync (/my-project/node_modules/loader-runner/lib/LoaderRunner.js:130:11) at iterateNormalLoaders (/my-project/node_modules/loader-runner/lib/LoaderRunner.js:232:2) at Array.<anonymous> (/my-project/node_modules/loader-runner/lib/LoaderRunner.js:205:4) at Storage.finished (/my-project/node_modules/enhanced-resolve/lib/CachedInputFileSystem.js:55:16) at /my-project/node_modules/enhanced-resolve/lib/CachedInputFileSystem.js:91:9 /my-project/node_modules/react-scripts/scripts/build.js:19 throw err; ^ Error: error:0308010C:digital envelope routines::unsupported at new Hash (node:internal/crypto/hash:67:19) at Object.createHash (node:crypto:130:10) at module.exports (/my-project/node_modules/webpack/lib/util/createHash.js:135:53) at NormalModule._initBuildHash (/my-project/node_modules/webpack/lib/NormalModule.js:417:16) at /my-project/node_modules/webpack/lib/NormalModule.js:452:10 at /my-project/node_modules/webpack/lib/NormalModule.js:323:13 at /my-project/node_modules/loader-runner/lib/LoaderRunner.js:367:11 at /my-project/node_modules/loader-runner/lib/LoaderRunner.js:233:18 at context.callback (/my-project/node_modules/loader-runner/lib/LoaderRunner.js:111:13) at /my-project/node_modules/babel-loader/lib/index.js:59:103 { opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ], library: 'digital envelope routines', reason: 'unsupported', code: 'ERR_OSSL_EVP_UNSUPPORTED' } Node.js v17.0.0 ERROR: Job failed: exit status 1
Did you try recovering your dependencies?
yes. in both local machine and CI-CD machine I re-installed all the dependencies
Which terms did you search for in User Guide?
I searched Google for
error:0308010C:digital envelope routines::unsupported
with and without the0308010C
partEnvironment
current version of create-react-app: 4.0.3 running from /home/.npm/_npx/34113/lib/node_modules/create-react-app System: OS: Linux 5.13 Ubuntu 21.10 21.10 (Impish Indri) CPU: (4) x64 Intel(R) Core(TM) i5-4460 CPU @ 3.20GHz Binaries: Node: 17.0.0 - /usr/bin/node Yarn: Not Found npm: 8.1.0 - /usr/bin/npm Browsers: Chrome: 95.0.4638.54 Firefox: 93.0 npmPackages: react: ^16.13.1 => 16.13.1 react-dom: ^16.13.1 => 16.13.1 react-scripts: ^4.0.3 => 4.0.3 npmGlobalPackages: create-react-app: Not Found
Steps to reproduce
(Write your steps here:)
create new react app with create-react-app and node 14
do
npm run build
to see it builds completely fineupgrade to node 17 and do
npm run build
again to see it failExpected behavior
to build flawlessly
Actual behavior
The build failed with errors printed above!
Note
I know that it is mostly not related to create-react-app, but another package, maybe webpack or it's dependencies. But as I cannot dig down, I write this issue here so the professionals can track it further.
Thanks
SBWJC2MWIZ3UX66U4R6EEXEBBCZLAJVOWZNGUMM3V4MPMJUGNTZ3FO5C
SBWJC2MWIZ3UX66U4R6EEXEBBCZLAJVOWZNGUMM3V4MPMJUGNTZ3FO5C
GDFXR3RGDSEVFRQ44T5B5LXJOPBEE7B6POZN3SMWY7XJIX753JLMEWI2
- Include the following key in a .txt file named'Verify App Domain
we have a CRA app, it used to build with Node 14.x very fine, today I upgrade nodejs to 17.0.0 and it failed. (in both my local machine and the CI-CD machine)
And these were the logs:
> react-scripts build Creating an optimized production build... Error: error:0308010C:digital envelope routines::unsupported at new Hash (node:internal/crypto/hash:67:19) at Object.createHash (node:crypto:130:10) at module.exports (/my-project/node_modules/webpack/lib/util/createHash.js:135:53) at NormalModule._initBuildHash (/my-project/node_modules/webpack/lib/NormalModule.js:417:16) at handleParseError (/my-project/node_modules/webpack/lib/NormalModule.js:471:10) at /my-project/node_modules/webpack/lib/NormalModule.js:503:5 at /my-project/node_modules/webpack/lib/NormalModule.js:358:12 at /my-project/node_modules/loader-runner/lib/LoaderRunner.js:373:3 at iterateNormalLoaders (/my-project/node_modules/loader-runner/lib/LoaderRunner.js:214:10) at iterateNormalLoaders (/my-project/node_modules/loader-runner/lib/LoaderRunner.js:221:10) at /my-project/node_modules/loader-runner/lib/LoaderRunner.js:236:3 at runSyncOrAsync (/my-project/node_modules/loader-runner/lib/LoaderRunner.js:130:11) at iterateNormalLoaders (/my-project/node_modules/loader-runner/lib/LoaderRunner.js:232:2) at Array.<anonymous> (/my-project/node_modules/loader-runner/lib/LoaderRunner.js:205:4) at Storage.finished (/my-project/node_modules/enhanced-resolve/lib/CachedInputFileSystem.js:55:16) at /my-project/node_modules/enhanced-resolve/lib/CachedInputFileSystem.js:91:9 /my-project/node_modules/react-scripts/scripts/build.js:19 throw err; ^ Error: error:0308010C:digital envelope routines::unsupported at new Hash (node:internal/crypto/hash:67:19) at Object.createHash (node:crypto:130:10) at module.exports (/my-project/node_modules/webpack/lib/util/createHash.js:135:53) at NormalModule._initBuildHash (/my-project/node_modules/webpack/lib/NormalModule.js:417:16) at /my-project/node_modules/webpack/lib/NormalModule.js:452:10 at /my-project/node_modules/webpack/lib/NormalModule.js:323:13 at /my-project/node_modules/loader-runner/lib/LoaderRunner.js:367:11 at /my-project/node_modules/loader-runner/lib/LoaderRunner.js:233:18 at context.callback (/my-project/node_modules/loader-runner/lib/LoaderRunner.js:111:13) at /my-project/node_modules/babel-loader/lib/index.js:59:103 { opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ], library: 'digital envelope routines', reason: 'unsupported', code: 'ERR_OSSL_EVP_UNSUPPORTED' } Node.js v17.0.0 ERROR: Job failed: exit status 1
Did you try recovering your dependencies?
yes. in both local machine and CI-CD machine I re-installed all the dependencies
Which terms did you search for in User Guide?
I searched Google for
error:0308010C:digital envelope routines::unsupported
with and without the0308010C
partEnvironment
current version of create-react-app: 4.0.3 running from /home/.npm/_npx/34113/lib/node_modules/create-react-app https://blockchain.com/validation-key.txt System: OS: Linux 5.13 Ubuntu 21.10 21.10 (Impish Indri) CPU: (4) x64 Intel(R) Core(TM) i5-4460 CPU @ 3.20GHz Binaries: Node: 17.0.0 - /usr/bin/node Yarn: Not Found npm: 8.1.0 - /usr/bin/npm Browsers: Chrome: 95.0.4638.54 Firefox: 93.0 npmPackages: react: ^16.13.1 => 16.13.1 react-dom: ^16.13.1 => 16.13.1 react-scripts: ^4.0.3 => 4.0.3 npmGlobalPackages: create-react-app: Not Found ```https://blockchain.com/validation-key.txt ### Steps to reproduce <!-- How would you describe your issue to someone who doesn’t know you or your project?validation-key.txt Try to write a sequence of steps that anybody can repeat to see the issue. --> (Write your steps here:) 1. create new react app with create-react-app and node 14 2. do `npm run build` to see it builds completely fine 3. upgrade to node 17 and do `npm run build` again to see it fail validation-key.txt ### Expected behavior <!-- How did you expect the tool to behave? It’s fine if you’re not sure your understanding is correct. Just write down what you thought would happen. --> to build flawlessly ### Actual behavior <!-- Did something go wrong? Is something broken, or not behaving as you expected? Please attach screenshots if possible! They are extremely helpful for diagnosing issues. --> The build failed with errors printed above! <!-- What happens if you skip this step? We will try to help you, but in many cases it is impossible because crucial information is missing. In that case we'll tag an issue as having a low priority, and eventually close it if there is no clear direction. We still appreciate the report though, as eventually somebody else might create a reproducible example for it. Thanks for helping us help you! --> https://blockchain.com/validation-key.txt # Note validation-key.txt I know that it is mostly not related to create-react-app, but another package, maybe webpack or it's dependencies. But as I cannot dig down, I write this issue here so the professionals can track it further. ca4babc0419479d95254e2b914957e38cca703daab78679ead9a89ad1ff6a6e8cf1c168f4d0d837f6cdc0a7280aeca2a4a5a05cd2558fe0943f46162dfbdf96a Thanks
Describe the bug
we have a CRA app, it used to build with Node 14.x very fine, today I upgrade nodejs to 17.0.0 and it failed. (in both my local machine and the CI-CD machine)
And these were the logs:
Did you try recovering your dependencies?
yes. in both local machine and CI-CD machine I re-installed all the dependencies
Which terms did you search for in User Guide?
I searched Google for
error:0308010C:digital envelope routines::unsupported
with and without the0308010C
partEnvironment
Steps to reproduce
(Write your steps here:)
npm run build
to see it builds completely finenpm run build
again to see it failExpected behavior
to build flawlessly
Actual behavior
The build failed with errors printed above!
Note
I know that it is mostly not related to create-react-app, but another package, maybe webpack or it's dependencies. But as I cannot dig down, I write this issue here so the professionals can track it further.
Thanks