git switch master
git clean -xfd
npm ci
npm run test:v4
Repeat the test after executing
npm install semantic-release@19.0.3 -D
Logs
semantic-release@15.13.18
$ npm run test:v4
> eslint-plugin-cypress@0.0.0-development test:v4
> npm i eslint@4.x && npm run test
npm WARN npm npm does not support Node.js v16.15.0
npm WARN npm You should probably upgrade to a newer version of node as we
npm WARN npm can't make any promises that npm will work with this version.
npm WARN npm Supported releases of Node.js are the latest release of 6, 8, 9, 10, 11, 12.
npm WARN npm You can find the latest version at https://nodejs.org/
npm WARN read-shrinkwrap This version of npm is compatible with lockfileVersion@1, but package-lock.json was generated for lockfileVersion@2. I'll try to do my best with it!
npm WARN deprecated circular-json@0.3.3: CircularJSON is in maintenance only, flatted is its successor.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.9 (node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.9: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
+ eslint@4.19.1
added 25 packages from 93 contributors, removed 16 packages, updated 1239 packages and audited 1332 packages in 19.762s
found 622 vulnerabilities (42 low, 221 moderate, 253 high, 106 critical)
run `npm audit fix` to fix them, or `npm audit` for details
npm WARN npm npm does not support Node.js v16.15.0
npm WARN npm You should probably upgrade to a newer version of node as we
npm WARN npm can't make any promises that npm will work with this version.
npm WARN npm Supported releases of Node.js are the latest release of 6, 8, 9, 10, 11, 12.
npm WARN npm You can find the latest version at https://nodejs.org/
> eslint-plugin-cypress@0.0.0-development test /home/mike/github/cypress-io/eslint-plugin-cypress
> jest
PASS tests/lib/rules/no-unnecessary-waiting.js
PASS tests/lib/rules/assertion-before-screenshot.js
PASS tests/lib/rules/no-force.js
PASS tests/lib/rules/no-assigning-return-values.js
PASS tests/lib/rules/no-async-before.js
PASS tests/lib/rules/require-data-selectors.js
PASS tests/lib/rules/no-pause.js
PASS tests/lib/rules/unsafe-to-chain-command.js
PASS tests/lib/rules/no-async-tests.js
PASS tests/config.js
Test Suites: 10 passed, 10 total
Tests: 133 passed, 133 total
Snapshots: 0 total
Time: 1.758s, estimated 2s
Ran all test suites.
semantic-release@19.0.3
$ npm install semantic-release@19.0.3 -D
added 148 packages, removed 405 packages, changed 236 packages, and audited 1084 packages in 16s
47 packages are looking for funding
run `npm fund` for details
44 vulnerabilities (1 low, 28 moderate, 10 high, 5 critical)
To address issues that do not require attention, run:
npm audit fix
To address all issues (including breaking changes), run:
npm audit fix --force
Run `npm audit` for details.
$ npm run test:v4
> eslint-plugin-cypress@0.0.0-development test:v4
> npm i eslint@4.x && npm run test
npm ERR! code ERESOLVE
npm ERR! ERESOLVE could not resolve
npm ERR!
npm ERR! While resolving: @cypress/eslint-plugin-dev@3.2.0
npm ERR! Found: eslint@4.19.1
npm ERR! node_modules/eslint
npm ERR! dev eslint@"4.x" from the root project
npm ERR! peer eslint@">= 3.2.1 < 6" from @cypress/eslint-plugin-dev@3.2.0
npm ERR! node_modules/@cypress/eslint-plugin-dev
npm ERR! dev @cypress/eslint-plugin-dev@"3.2.0" from the root project
npm ERR! 1 more (@cypress/eslint-plugin-json)
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! peer @typescript-eslint/eslint-plugin@">= 1.11.0" from @cypress/eslint-plugin-dev@3.2.0
npm ERR! node_modules/@cypress/eslint-plugin-dev
npm ERR! dev @cypress/eslint-plugin-dev@"3.2.0" from the root project
npm ERR!
npm ERR! Conflicting peer dependency: eslint@5.16.0
npm ERR! node_modules/eslint
npm ERR! peer eslint@"^8.56.0" from @typescript-eslint/eslint-plugin@7.6.0
npm ERR! node_modules/@typescript-eslint/eslint-plugin
npm ERR! peer @typescript-eslint/eslint-plugin@">= 1.11.0" from @cypress/eslint-plugin-dev@3.2.0
npm ERR! node_modules/@cypress/eslint-plugin-dev
npm ERR! dev @cypress/eslint-plugin-dev@"3.2.0" from the root project
npm ERR!
npm ERR! Fix the upstream dependency conflict, or retry
npm ERR! this command with --force, or --legacy-peer-deps
npm ERR! to accept an incorrect (and potentially broken) dependency resolution.
npm ERR!
npm ERR! See /home/mike/.npm/eresolve-report.txt for a full report.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/mike/.npm/_logs/2024-04-12T17_55_41_300Z-debug-0.log
Suggestion
If the installation of alternative ESLint versions is not run from a script, then npm 8.5.5 from Node.js v16.15.0 is used and there is no conflict with the package-lock.json lockfile version, nor with peer dependencies.
Issue
The script definitions
"test:v4": "npm i eslint@4.x && npm run test"
"test:v6": "npm i eslint@6.x && npm run test"
cause
npm@6.10.1
from semantic-release@15.13.18 -> @semantic-release/npm@5.1.13 to be used.This causes a warning to be issued because the
package-lock.json
is at"lockfileVersion": 2
whereas npmv6
is only compatible with lockfileVersion1
.https://github.com/cypress-io/eslint-plugin-cypress/blob/1e9520dce0705bf7a2e17f586342d63f86ae9c1f/package-lock.json#L4
If semantic-release@19.0.3 is installed, then @semantic-release/npm@9.0.2 installs
npm@8.19.4
Steps to reproduce
On Ubuntu
22.04.4
LTS with Node.js16.15.0
Repeat the test after executing
Logs
semantic-release@15.13.18
semantic-release@19.0.3
Suggestion
If the installation of alternative ESLint versions is not run from a script, then npm
8.5.5
from Node.jsv16.15.0
is used and there is no conflict with the package-lock.json lockfile version, nor with peer dependencies.