salesforce/utam-js-recipes

[Bug] jasmine 3.6.3 is not compatible with Node 16

khawkins opened this issue · 1 comments

Actual behavior

If you have Node.js 16 installed as your default—or if you use Volta it doesn't matter what your default Node version is—yarn install will fail with the following error:

$ yarn install
yarn install v1.22.5
[1/5] 🔍  Validating package.json...
[2/5] 🔍  Resolving packages...
[3/5] 🚚  Fetching packages...
error jasmine@3.6.3: The engine "node" is incompatible with this module. Expected version "^10 || ^12 || ^14". Got "16.18.1"
error Found incompatible module.

jasmine 3.6.3 is the required dependency version for @wdio/jasmine-framework ^6.11.0. Since the utam-js-recipes project's package.json specifies a node engine >=14.15.4, and a Volta node version of 16.18.1, this presents a fatal incompatibility for users with any version of Node > 14.

Looks like jasmine 3.6.4 specifically removed the engines field from their package.json, citing more problems than it was worth (including the one reported here). Probably time to update to a version of Jasmine that doesn't break for Node > 14. Looks like @wdio/jasmine-framework 7.0.0 was the first version of jasmine-framework to move to jasmine 3.6.4.

What is your expected behavior?

Any version of Node supported in this repo should support a full project install and build.

Steps to reproduce

  • Install Node.js 16.x as your current Node version.
  • Run yarn install from the project root.

Environment

  • Node.js: 16.18.1
  • OS: macOS 12.6.1
  • Browser: N/A
  • Browser Version: N/A

Additional context

None

Awesome! Thanks for the quick turnaround @lizaiv77 !