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

plugin crashed - error:0308010C:digital envelope routines::unsupported #21532

Closed
smokku opened this issue May 17, 2022 · 1 comment
Closed

plugin crashed - error:0308010C:digital envelope routines::unsupported #21532

smokku opened this issue May 17, 2022 · 1 comment
Assignees
Labels
stage: investigating Someone from Cypress is looking into this

Comments

@smokku
Copy link

smokku commented May 17, 2022

Current behavior

Running tests fails.

**Title:** Error running plugin

**Message:** We stopped running your tests because a plugin crashed.

Your `pluginsFile` threw an error from: `/home/smoku/frontend/app/cypress/plugins/index.js`

**Details:** 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 (/home/smoku/.cache/Cypress/9.6.1/Cypress/resources/app/node_modules/webpack/lib/util/createHash.js:135:53)
    at NormalModule._initBuildHash (/home/smoku/.cache/Cypress/9.6.1/Cypress/resources/app/node_modules/webpack/lib/NormalModule.js:417:16)
    at handleParseError (/home/smoku/.cache/Cypress/9.6.1/Cypress/resources/app/node_modules/webpack/lib/NormalModule.js:471:10)
    at /home/smoku/.cache/Cypress/9.6.1/Cypress/resources/app/node_modules/webpack/lib/NormalModule.js:503:5
    at /home/smoku/.cache/Cypress/9.6.1/Cypress/resources/app/node_modules/webpack/lib/NormalModule.js:358:12
    at /home/smoku/.cache/Cypress/9.6.1/Cypress/resources/app/node_modules/loader-runner/lib/LoaderRunner.js:373:3
    at iterateNormalLoaders (/home/smoku/.cache/Cypress/9.6.1/Cypress/resources/app/node_modules/loader-runner/lib/LoaderRunner.js:214:10)
    at iterateNormalLoaders (/home/smoku/.cache/Cypress/9.6.1/Cypress/resources/app/node_modules/loader-runner/lib/LoaderRunner.js:221:10)
    at /home/smoku/.cache/Cypress/9.6.1/Cypress/resources/app/node_modules/loader-runner/lib/LoaderRunner.js:236:3
    at context.callback (/home/smoku/.cache/Cypress/9.6.1/Cypress/resources/app/node_modules/loader-runner/lib/LoaderRunner.js:111:13)
    at /home/smoku/.cache/Cypress/9.6.1/Cypress/resources/app/node_modules/babel-loader/lib/index.js:59:71
    at processTicksAndRejections (node:internal/process/task_queues:96:5)

Desired behavior

No response

Test code to reproduce

Any test project will do. The thing is to run on node.js v16 with OpenSSL 3.

Cypress Version

9.6.1

Other

The change merged in #19977 is not a solution for a root cause, but a workaround. Relying on the vulnerable OpenSSL algorithm is not a future-proof solution.

Now that OpenSSL 3 is becoming standard, it is not viable anymore.

$ ldd /usr/bin/node | grep ssl
        libssl.so.3 => /lib64/libssl.so.3 (0x00007f588d549000)
$ node --version
v16.14.0
$ env NODE_OPTIONS=--openssl-legacy-provider cypress open
node: --openssl-legacy-provider is not allowed in NODE_OPTIONS

The real solution is to update to Webpack 6 or use output.hashFunction: "xxhash64" option as described in webpack/webpack#14532 (comment)

@cypress-bot cypress-bot bot added the stage: investigating Someone from Cypress is looking into this label May 17, 2022
@BlueWinds
Copy link
Contributor

BlueWinds commented May 17, 2022

We have an ongoing investigation into upgrading our webpack version - #19555 is the most recent place we're tracking the work. Going to close this as duplicate.

You're absolutely right that updating gets more critical week by week. Major version updates of central dependencies are never as easy as we'd like them to be, unfortunately. >.>

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
stage: investigating Someone from Cypress is looking into this
Projects
None yet
Development

No branches or pull requests

2 participants