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

Please specificy which node versions are compatible #1021

Open
laszukdawid opened this issue Dec 28, 2022 · 2 comments
Open

Please specificy which node versions are compatible #1021

laszukdawid opened this issue Dec 28, 2022 · 2 comments
Labels

Comments

@laszukdawid
Copy link

Version

create-nuxt-app/5.0.0 linux-x64 node-v18.12.1

Steps to reproduce

npx create-nuxt-app

What is Expected?

Template to work.

It is really demotivating experience when starting a new, empty project and be hit with JS ecosystem of things not working. Please specify somewhere which node versions are required to successfully create a new project. The minimum range in Readme would do. If possible, adding verification during installation "wizard" would also help.

What is actually happening?

Error

◯ Server
  

node:internal/crypto/hash:71
  this[kHandle] = new _Hash(algorithm, xofLen);
                  ^

Error: error:0308010C:digital envelope routines::unsupported
    at new Hash (node:internal/crypto/hash:71:19)
    at Object.createHash (node:crypto:133:10)
    at module.exports ({redacted}/node_modules/webpack/lib/util/createHash.js:135:53)
    at NormalModule._initBuildHash ({redacted}/node_modules/webpack/lib/NormalModule.js:417:16)
    at handleParseError ({redacted}/node_modules/webpack/lib/NormalModule.js:471:10)
    at /{redacted}/node_modules/webpack/lib/NormalModule.js:503:5
    at {redacted}/node_modules/webpack/lib/NormalModule.js:358:12
    at {redacted}/node_modules/webpack/node_modules/loader-runner/lib/LoaderRunner.js:373:3
    at iterateNormalLoaders ({redacted}/node_modules/webpack/node_modules/loader-runner/lib/LoaderRunner.js:214:10)
    at Array.<anonymous> ({redacted}/node_modules/webpack/node_modules/loader-runner/lib/LoaderRunner.js:205:4)
    at Storage.finished ({redacted}/node_modules/webpack/node_modules/enhanced-resolve/lib/CachedInputFileSystem.js:55:16)
    at {redacted}/node_modules/webpack/node_modules/enhanced-resolve/lib/CachedInputFileSystem.js:91:9
    at {redacted}/node_modules/graceful-fs/graceful-fs.js:123:16
    at FSReqCallback.readFileAfterClose [as oncomplete] (node:internal/fs/read_file_context:68:3) {
  opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ],
  library: 'digital envelope routines',
  reason: 'unsupported',
  code: 'ERR_OSSL_EVP_UNSUPPORTED'
}

Node.js v18.12.1
@robertcoroianu
Copy link

robertcoroianu commented Feb 2, 2023

Hello,
For Nuxt 2 you need to use Node 16. I think is because Node 18> uses OpenSSL 3 or something like this I've read

@scscgit
Copy link
Contributor

scscgit commented Jan 22, 2024

For Node version 17+, add env NODE_OPTIONS=--openssl-legacy-provider

If you want to support both versions, here is one annoying solution (which will make the start take longer by trying both variants): the dev script in package.json becomes (with cross-env to support Windows+Linux):
"dev": "nuxt || echo Trying to re-run dev script with --openssl-legacy-provider to cover the case if you got error ERR_OSSL_EVP_UNSUPPORTED due to having Node.js version 17+ && cross-env NODE_OPTIONS=--openssl-legacy-provider nuxt"

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

No branches or pull requests

3 participants