Skip to content

[PAN-11212] release/3.0.0 fix: get npm audit to pass - #125

Merged
DanielStevenLewis merged 19 commits into
masterfrom
PAN-11212-fix-vulnerable-dependencies-v3
Apr 13, 2026
Merged

[PAN-11212] release/3.0.0 fix: get npm audit to pass#125
DanielStevenLewis merged 19 commits into
masterfrom
PAN-11212-fix-vulnerable-dependencies-v3

Conversation

@DanielStevenLewis

@DanielStevenLewis DanielStevenLewis commented Apr 2, 2026

Copy link
Copy Markdown
Contributor

PAN-11212

This PR uses #124 as a starting point.

This change is a major version upgrade because it requires higher versions of Node.

This PR also replaces Buildkite with GitHub Actions as the continuous integration system to run tests.

The only way to fix the vulnerabilities with better-docs was to get rid of it
and use an alternative: the default JSDoc template
…ncies-v2' into PAN-11212-fix-vulnerable-dependencies-v3
@DanielStevenLewis
DanielStevenLewis marked this pull request as ready for review April 2, 2026 21:33
@qodo-code-review

Copy link
Copy Markdown

Review Summary by Qodo

Replace request library with axios and fix npm audit vulnerabilities

🐞 Bug fix ✨ Enhancement

Grey Divider

Walkthroughs

Description
• Replace vulnerable request library with axios for HTTP calls
• Update Node.js requirement from 10+ to 18+ and upgrade dependencies
• Remove better-docs dependency and use default JSDoc template
• Refactor API and auth modules to use axios promise-based API
• Update test mocks to work with axios instead of request library
Diagram
flowchart LR
  A["request library<br/>vulnerable deps"] -->|replace| B["axios HTTP client"]
  C["Node 10+ support"] -->|upgrade| D["Node 18+ requirement"]
  E["better-docs template"] -->|remove| F["default JSDoc template"]
  B --> G["API module refactored"]
  B --> H["Auth module refactored"]
  D --> I["Updated dependencies"]
  I --> J["npm audit passes"]
Loading

Grey Divider

File Changes

1. lib/api.js ✨ Enhancement +97/-62

Migrate API module from request to axios

• Replace request library with axios for HTTP calls
• Convert callback-based API to promise-based with .then() and .catch()
• Create axiosConfig object with proper axios format (params, data, validateStatus)
• Build requestObj for test compatibility with URL object and headers
• Maintain existing error handling logic for 401, 4XX, 5XX status codes

lib/api.js


2. lib/auth.js ✨ Enhancement +108/-82

Migrate auth module from request to axios

• Replace request.post() with axios.request() for token requests
• Convert callback-based implementation to promise-based with .then() and .catch()
• Refactor timeout and error handling to work with axios error structure
• Consolidate error handling logic for timeout, HTTP errors, and programmatic errors
• Maintain retry strategy and token caching behavior

lib/auth.js


3. test/auth.test.js 🧪 Tests +11/-9

Update auth tests for axios mocking

• Update test mocks from jest.spyOn(request, 'post') to jest.spyOn(axios, 'request')
• Change mock implementation from callback-based to promise-based with mockRejectedValue()
• Update test assertions to use toHaveBeenCalledWith() instead of toBeCalledWith()
• Add mockRestore() calls to clean up spies after tests

test/auth.test.js


View more (3)
4. .nvmrc ⚙️ Configuration changes +1/-1

Upgrade Node.js version requirement

• Upgrade Node.js version from 12.22.10 to 18.19.1

.nvmrc


5. jsdoc.json ⚙️ Configuration changes +1/-2

Remove better-docs template dependency

• Remove template field pointing to better-docs package
• Remove readme field from opts section
• Use default JSDoc template instead of better-docs

jsdoc.json


6. package.json Dependencies +11/-13

Update dependencies and remove vulnerable packages

• Upgrade axios from 0.21.4 to 1.14.0
• Upgrade lodash from 4.17.21 to 4.17.23
• Remove request dependency (2.88.2)
• Remove better-docs dev dependency (2.7.2)
• Upgrade multiple dev dependencies (commitlint, eslint, jest, jsdoc, prettier, gh-pages,
 eslint-plugin-jest)
• Update Node.js engine requirement from ">=10" to ">=18"

package.json


Grey Divider

Qodo Logo

@qodo-code-review

qodo-code-review Bot commented Apr 2, 2026

Copy link
Copy Markdown

Code Review by Qodo

🐞 Bugs (1)   📘 Rule violations (0)   📎 Requirement gaps (0)   🎨 UX Issues (0)
🐞\ ⚙ Maintainability (1)

Grey Divider


Action required

1. Request object contract changed🐞
Description
lib/api.apiCall() no longer passes the underlying request library request instance as the 4th
callback argument, but instead passes a minimal shim with a WHATWG URL. Any consumer code relying
on request-specific properties (and the existing JSDoc contract) can break at runtime.
Code

lib/api.js[R91-103]

+          // Create a request-like object for compatibility with tests
+          // The request library provided an object with parsed URL properties
+          const requestUri = new URL(axiosConfig.url);
+          if (axiosConfig.params) {
+            Object.entries(axiosConfig.params).forEach(([key, value]) => {
+              requestUri.searchParams.append(key, value);
+            });
+          }
+          const requestObj = {
+            headers: axiosConfig.headers,
+            method: axiosConfig.method,
+            uri: requestUri, // URL object for test compatibility
+          };
Evidence
The new implementation constructs and passes a synthetic requestObj with only `{headers, method,
uri} where uri is a WHATWG URL`, while the module’s callback documentation still describes this
argument as the full request library request object—indicating a contract mismatch and a
potentially breaking public API change.

lib/api.js[79-143]
lib/api.js[219-227]

Agent prompt
The issue below was found during a code review. Follow the provided context and guidance below and implement a solution

## Issue description
`apiCall()` previously passed through the `request` library request instance as the 4th callback argument (`req`). After migrating to axios, it now passes a hand-built shim with a WHATWG `URL`. This is a public contract change and the current JSDoc still claims the 4th argument is “the full request object from the request library”, which can break downstream consumer code.
### Issue Context
- Downstream callers may inspect `req` fields that existed on the `request` library’s request/URI objects.
- The implementation currently constructs `requestObj` primarily for internal tests, not for full backward compatibility.
### Fix Focus Areas
- Decide on an explicit contract for the 4th callback arg (e.g., remove it, pass axios request/response info, or fully emulate the old `request` object shape).
- Update JSDoc (and any public docs/types) to match the new contract.
- lib/api.js[79-167]
- lib/api.js[219-227]

ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools



Remediation recommended

2. Node engine bump unversioned 🐞
Description
The package now requires Node.js >=18 (and .nvmrc pins 18.19.1) while the package version remains
2.8.0, which is a semver-breaking compatibility change for consumers running older Node versions.
This can cause runtime incompatibility (and may be enforced by tooling that respects engines).
Code

package.json[R97-99]

"engines": {
-    "node": ">=10"
+    "node": ">=18"
}
Evidence
package.json raises the minimum Node engine to >=18 while still declaring version 2.8.0, and
.nvmrc is updated to Node 18 as well—together indicating a breaking support change that should be
communicated via release notes and/or a major version bump.

package.json[1-4]
package.json[97-99]
.nvmrc[1-1]

Agent prompt
The issue below was found during a code review. Follow the provided context and guidance below and implement a solution

## Issue description
The SDK now requires Node >=18 but the package version is still 2.x. Raising the minimum supported Node version is a breaking change for consumers.
### Issue Context
Some environments enforce `engines` (CI, internal registries, or npm configs), and even when not enforced, the package may not run on older Node versions.
### Fix Focus Areas
- Consider a major version bump (or ensure the release process treats this as a breaking change).
- Update README/CHANGELOG/release notes to explicitly call out the Node >=18 requirement.
- package.json[1-4]
- package.json[97-99]
- .nvmrc[1-1]

ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools


Grey Divider

ⓘ The new review experience is currently in Beta. Learn more

Grey Divider

Qodo Logo

Comment thread lib/api.js Outdated

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the SDK’s HTTP stack and build toolchain to address npm audit findings by removing the deprecated request dependency and upgrading key packages, aligning the repo with a modern Node runtime baseline.

Changes:

  • Replace request usage with axios in the auth and core API modules.
  • Upgrade runtime/tooling dependencies (axios, jest, eslint, jsdoc, etc.) and remove request / better-docs.
  • Bump the supported Node version to >=18 and update .nvmrc accordingly.

Reviewed changes

Copilot reviewed 6 out of 7 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
lib/auth.js Migrates token retrieval from request to axios, preserving retry/error behavior.
lib/api.js Migrates core API calls from request to axios and preserves callback signature (incl. request-like object).
test/auth.test.js Updates auth URL unit tests to spy on axios instead of request.
package.json Removes request, upgrades dependencies/tooling, and raises Node engine requirement to >=18.
jsdoc.json Removes better-docs template configuration to match dependency removal.
.nvmrc Updates pinned Node version to match the new engine baseline.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread lib/api.js Outdated
Comment thread lib/api.js Outdated
Comment thread package.json
…ncies-v2' into PAN-11212-fix-vulnerable-dependencies-v3

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 6 out of 7 changed files in this pull request and generated 1 comment.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread lib/api.js
…ncies-v2' into PAN-11212-fix-vulnerable-dependencies-v3
@DanielStevenLewis DanielStevenLewis changed the title PAN-11212 fix: get npm audit to pass [PAN-11212] release/3.0.0 fix: get npm audit to pass Apr 6, 2026

@imlytvynenko imlytvynenko left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, it looks good to me.

@k163791

k163791 commented Apr 7, 2026

Copy link
Copy Markdown
Contributor

Are tests failing? I see Buildkite failing?

@DanielStevenLewis

Copy link
Copy Markdown
Contributor Author

Are tests failing? I see Buildkite failing?

Tests are passing locally. Do you have access to Buildkite (to see why it's failing) @k163791? @21LukeOs @imlytvynenko and I don't, and my access request has been approved but not yet implemented.

…tests

Buildkite might have been failing because it used an older version of Node.
We wanted to swap Buildkite for GitHub Actions anyway,
and this was the easiest way to make it use a newer version of Node.
Examples are user-facing setup code, not library code.
They shouldn't need to pass the same linting rules as the core library.
@DanielStevenLewis

Copy link
Copy Markdown
Contributor Author

Are tests failing? I see Buildkite failing?

Tests are passing locally. Do you have access to Buildkite (to see why it's failing) @k163791? @21LukeOs @imlytvynenko and I don't, and my access request has been approved but not yet implemented.

Please re-review this PR @k163791 @imlytvynenko . Buildkite might have been using a Docker image with an older version of Node and failing because of that. I've replaced the Buildkite pipeline with a GitHub Action used to run tests. This is something we want to do across the board anyway. At some point in time we can totally remove Buildkite from this repo and make the GitHub Action a required check to merge PRs.

@DanielStevenLewis

Copy link
Copy Markdown
Contributor Author

Are tests failing? I see Buildkite failing?

Tests are passing locally. Do you have access to Buildkite (to see why it's failing) @k163791? @21LukeOs @imlytvynenko and I don't, and my access request has been approved but not yet implemented.

Please re-review this PR @k163791 @imlytvynenko . Buildkite might have been using a Docker image with an older version of Node and failing because of that. I've replaced the Buildkite pipeline with a GitHub Action used to run tests. This is something we want to do across the board anyway. At some point in time we can totally remove Buildkite from this repo and make the GitHub Action a required check to merge PRs.

@kcearns-ro @juaneloti @cmiller-ro @daniel-wakefield-ro FYI

@k163791

k163791 commented Apr 8, 2026

Copy link
Copy Markdown
Contributor

Are tests failing? I see Buildkite failing?

Tests are passing locally. Do you have access to Buildkite (to see why it's failing) @k163791? @21LukeOs @imlytvynenko and I don't, and my access request has been approved but not yet implemented.

Please re-review this PR @k163791 @imlytvynenko . Buildkite might have been using a Docker image with an older version of Node and failing because of that. I've replaced the Buildkite pipeline with a GitHub Action used to run tests. This is something we want to do across the board anyway. At some point in time we can totally remove Buildkite from this repo and make the GitHub Action a required check to merge PRs.

@kcearns-ro @juaneloti @cmiller-ro @daniel-wakefield-ro FYI

We cannot merge this until buildkite is passing, the buildkite page shows 404 to me.

@k163791

k163791 commented Apr 8, 2026

Copy link
Copy Markdown
Contributor

Are tests failing? I see Buildkite failing?

Tests are passing locally. Do you have access to Buildkite (to see why it's failing) @k163791? @21LukeOs @imlytvynenko and I don't, and my access request has been approved but not yet implemented.

Please re-review this PR @k163791 @imlytvynenko . Buildkite might have been using a Docker image with an older version of Node and failing because of that. I've replaced the Buildkite pipeline with a GitHub Action used to run tests. This is something we want to do across the board anyway. At some point in time we can totally remove Buildkite from this repo and make the GitHub Action a required check to merge PRs.

@kcearns-ro @juaneloti @cmiller-ro @daniel-wakefield-ro FYI

Buildkite is failing because we deleted the buildkite folder
image

@k163791

k163791 commented Apr 8, 2026

Copy link
Copy Markdown
Contributor

@DanielStevenLewis from the pipeline.yml file it looks like buildkite is already running the tests, we don't need a github action for it, we just need to get access to the buildkite project for sdk node and fix the pipeline that buildkite is running, if we want to have a github action then we should remove buildkite all together.

@DanielStevenLewis

Copy link
Copy Markdown
Contributor Author

Are tests failing? I see Buildkite failing?

Tests are passing locally. Do you have access to Buildkite (to see why it's failing) @k163791? @21LukeOs @imlytvynenko and I don't, and my access request has been approved but not yet implemented.

Please re-review this PR @k163791 @imlytvynenko . Buildkite might have been using a Docker image with an older version of Node and failing because of that. I've replaced the Buildkite pipeline with a GitHub Action used to run tests. This is something we want to do across the board anyway. At some point in time we can totally remove Buildkite from this repo and make the GitHub Action a required check to merge PRs.

@kcearns-ro @juaneloti @cmiller-ro @daniel-wakefield-ro FYI

Buildkite is failing because we deleted the buildkite folder image

@k163791 Buildkite was failing before I deleted the Buildkite folder.

@DanielStevenLewis

DanielStevenLewis commented Apr 8, 2026

Copy link
Copy Markdown
Contributor Author

@DanielStevenLewis from the pipeline.yml file it looks like buildkite is already running the tests, we don't need a github action for it, we just need to get access to the buildkite project for sdk node and fix the pipeline that buildkite is running, if we want to have a github action then we should remove buildkite all together.

@k163791 I believe we should remove Buildkite altogether and rely on the new GitHub action instead, but I believe this is something to do after we merge this PR. It's likely just a config change to finish off getting rid of Buildkite, after we revert 72c143d

@DanielStevenLewis

Copy link
Copy Markdown
Contributor Author

Are tests failing? I see Buildkite failing?

Tests are passing locally. Do you have access to Buildkite (to see why it's failing) @k163791? @21LukeOs @imlytvynenko and I don't, and my access request has been approved but not yet implemented.

Please re-review this PR @k163791 @imlytvynenko . Buildkite might have been using a Docker image with an older version of Node and failing because of that. I've replaced the Buildkite pipeline with a GitHub Action used to run tests. This is something we want to do across the board anyway. At some point in time we can totally remove Buildkite from this repo and make the GitHub Action a required check to merge PRs.

@kcearns-ro @juaneloti @cmiller-ro @daniel-wakefield-ro FYI

We cannot merge this until buildkite is passing, the buildkite page shows 404 to me.

@k163791 do you mean we technically can't merge this PR unless Buildkite is passing, or that we shouldn't? I can, as I have privileges to do so.

@k163791

k163791 commented Apr 8, 2026

Copy link
Copy Markdown
Contributor

Are tests failing? I see Buildkite failing?

Tests are passing locally. Do you have access to Buildkite (to see why it's failing) @k163791? @21LukeOs @imlytvynenko and I don't, and my access request has been approved but not yet implemented.

Please re-review this PR @k163791 @imlytvynenko . Buildkite might have been using a Docker image with an older version of Node and failing because of that. I've replaced the Buildkite pipeline with a GitHub Action used to run tests. This is something we want to do across the board anyway. At some point in time we can totally remove Buildkite from this repo and make the GitHub Action a required check to merge PRs.

@kcearns-ro @juaneloti @cmiller-ro @daniel-wakefield-ro FYI

Buildkite is failing because we deleted the buildkite folder image

@k163791 Buildkite was failing before I deleted the Buildkite folder.

Yeah, but it is working in your other PR, which means that there was something in this PR that broke it, better to check what is happening there before merging it.

@k163791

k163791 commented Apr 8, 2026

Copy link
Copy Markdown
Contributor

Are tests failing? I see Buildkite failing?

Tests are passing locally. Do you have access to Buildkite (to see why it's failing) @k163791? @21LukeOs @imlytvynenko and I don't, and my access request has been approved but not yet implemented.

Please re-review this PR @k163791 @imlytvynenko . Buildkite might have been using a Docker image with an older version of Node and failing because of that. I've replaced the Buildkite pipeline with a GitHub Action used to run tests. This is something we want to do across the board anyway. At some point in time we can totally remove Buildkite from this repo and make the GitHub Action a required check to merge PRs.

@kcearns-ro @juaneloti @cmiller-ro @daniel-wakefield-ro FYI

We cannot merge this until buildkite is passing, the buildkite page shows 404 to me.

@k163791 do you mean we technically can't merge this PR unless Buildkite is passing, or that we shouldn't? I can, as I have privileges to do so.

I believe we shouldn't better to get access to this buildkite project so we can see exactly what is failing, then we can decide if it's ok to merge it or not with buildkite failing.

@DanielStevenLewis

Copy link
Copy Markdown
Contributor Author

Are tests failing? I see Buildkite failing?

Tests are passing locally. Do you have access to Buildkite (to see why it's failing) @k163791? @21LukeOs @imlytvynenko and I don't, and my access request has been approved but not yet implemented.

Please re-review this PR @k163791 @imlytvynenko . Buildkite might have been using a Docker image with an older version of Node and failing because of that. I've replaced the Buildkite pipeline with a GitHub Action used to run tests. This is something we want to do across the board anyway. At some point in time we can totally remove Buildkite from this repo and make the GitHub Action a required check to merge PRs.

@kcearns-ro @juaneloti @cmiller-ro @daniel-wakefield-ro FYI

We cannot merge this until buildkite is passing, the buildkite page shows 404 to me.

@k163791 do you mean we technically can't merge this PR unless Buildkite is passing, or that we shouldn't? I can, as I have privileges to do so.

I believe we shouldn't better to get access to this buildkite project so we can see exactly what is failing, then we can decide if it's ok to merge it or not with buildkite failing.

OK, I've marked https://rewardops.atlassian.net/browse/PAN-11212 as blocked by me being granted Buildkite access (in https://rewardops.atlassian.net/browse/SD-18769) @kcearns-ro

@k163791 based on the Docker image's naming conventions, and based on me likely having found the Dockerfile used to produce that image (I'm guessing it's an older version of https://github.com/rewardops/docker_pangea_ember_ci/blob/master/Dockerfile), I think it's very highly likely that the image Buildkite uses has an old version of Node, and that would cause Buildkite to fail for this PR (which requires a newer version of Node), but I can't know with absolute certainty without access to see the failures in Buildkite.

@k163791

k163791 commented Apr 9, 2026

Copy link
Copy Markdown
Contributor

Are tests failing? I see Buildkite failing?

Tests are passing locally. Do you have access to Buildkite (to see why it's failing) @k163791? @21LukeOs @imlytvynenko and I don't, and my access request has been approved but not yet implemented.

Please re-review this PR @k163791 @imlytvynenko . Buildkite might have been using a Docker image with an older version of Node and failing because of that. I've replaced the Buildkite pipeline with a GitHub Action used to run tests. This is something we want to do across the board anyway. At some point in time we can totally remove Buildkite from this repo and make the GitHub Action a required check to merge PRs.

@kcearns-ro @juaneloti @cmiller-ro @daniel-wakefield-ro FYI

We cannot merge this until buildkite is passing, the buildkite page shows 404 to me.

@k163791 do you mean we technically can't merge this PR unless Buildkite is passing, or that we shouldn't? I can, as I have privileges to do so.

I believe we shouldn't better to get access to this buildkite project so we can see exactly what is failing, then we can decide if it's ok to merge it or not with buildkite failing.

OK, I've marked https://rewardops.atlassian.net/browse/PAN-11212 as blocked by me being granted Buildkite access (in https://rewardops.atlassian.net/browse/SD-18769) @kcearns-ro

@k163791 based on the Docker image's naming conventions, and based on me likely having found the Dockerfile used to produce that image (I'm guessing it's an older version of https://github.com/rewardops/docker_pangea_ember_ci/blob/master/Dockerfile), I think it's very highly likely that the image Buildkite uses has an old version of Node, and that would cause Buildkite to fail for this PR (which requires a newer version of Node), but I can't know with absolute certainty without access to see the failures in Buildkite.

If we can confirm that it's only because of the node version after getting access, we can go ahead and remove Buildkite from this repo all together.

@DanielStevenLewis

Copy link
Copy Markdown
Contributor Author

Are tests failing? I see Buildkite failing?

Tests are passing locally. Do you have access to Buildkite (to see why it's failing) @k163791? @21LukeOs @imlytvynenko and I don't, and my access request has been approved but not yet implemented.

Please re-review this PR @k163791 @imlytvynenko . Buildkite might have been using a Docker image with an older version of Node and failing because of that. I've replaced the Buildkite pipeline with a GitHub Action used to run tests. This is something we want to do across the board anyway. At some point in time we can totally remove Buildkite from this repo and make the GitHub Action a required check to merge PRs.

@kcearns-ro @juaneloti @cmiller-ro @daniel-wakefield-ro FYI

We cannot merge this until buildkite is passing, the buildkite page shows 404 to me.

@k163791 do you mean we technically can't merge this PR unless Buildkite is passing, or that we shouldn't? I can, as I have privileges to do so.

I believe we shouldn't better to get access to this buildkite project so we can see exactly what is failing, then we can decide if it's ok to merge it or not with buildkite failing.

OK, I've marked https://rewardops.atlassian.net/browse/PAN-11212 as blocked by me being granted Buildkite access (in https://rewardops.atlassian.net/browse/SD-18769) @kcearns-ro
@k163791 based on the Docker image's naming conventions, and based on me likely having found the Dockerfile used to produce that image (I'm guessing it's an older version of https://github.com/rewardops/docker_pangea_ember_ci/blob/master/Dockerfile), I think it's very highly likely that the image Buildkite uses has an old version of Node, and that would cause Buildkite to fail for this PR (which requires a newer version of Node), but I can't know with absolute certainty without access to see the failures in Buildkite.

If we can confirm that it's only because of the node version after getting access, we can go ahead and remove Buildkite from this repo all together.

I got Buildkite access. I believe Buildkite failed because it's using an older version of Node @k163791 . I've copied and pasted the logs below.

Here are the relevant parts of Copilot's response to my question about it.

The following error occurs in Buildkite.

Is it caused by Buildkite using a Docker image with an older version of Node, or is it caused by something else?
...

Yes, this is caused by an older Node version. The Docker image is running Node 10.20.1, but your dependencies require Node 14+.

The key evidence:

Multiple npm warnings show unsupported engines:

jest@29.7.0 wants ^14.15.0 || ^16.10.0 || >=18.0.0 (current: 10.20.1)
Similar warnings for Jest subpackages, TypeScript, ESLint, etc.
The actual error is the smoking gun:

if (error?.stack) {
      ^
SyntaxError: Unexpected token .

The optional chaining operator (?.) was introduced in Node 14. Node 10 doesn't understand this syntax, so it can't even parse the Jest code.
...

Here are the Buildkite logs:


$ /bin/sh -e -c 'npm install
--
npm test'
npm WARN read-shrinkwrap This version of npm is compatible with lockfileVersion@1, but package-lock.json was generated for lockfileVersion@3. I'll try to do my best with it!
npm WARN deprecated eslint@8.57.1: This version is no longer supported. Please see https://eslint.org/version-support for other options.
npm WARN deprecated sinon@1.17.7: 16.1.1
npm WARN deprecated @humanwhocodes/config-array@0.13.0: Use @eslint/config-array instead
npm WARN deprecated git-semver-tags@4.1.1: This package is no longer maintained. For the JavaScript API, please use @conventional-changelog/git-client instead.
npm WARN deprecated samsam@1.1.2: This package has been deprecated in favour of @sinonjs/samsam
npm WARN deprecated formatio@1.1.1: This package is unmaintained. Use @sinonjs/formatio instead
npm WARN deprecated stringify-package@1.0.1: This module is not used anymore, and has been replaced by @npmcli/package-json
npm WARN deprecated q@1.5.1: You or someone you depend on is using Q, the JavaScript Promise library that gave JavaScript developers strong feelings about promises. They can almost certainly migrate to the native JavaScript promise now. Thank you literally everyone for joining me in this bet against the odds. Be excellent to each other.
npm WARN deprecated
npm WARN deprecated (For a CapTP with native promises, see @endo/eventual-send and @endo/captp)
npm WARN deprecated git-raw-commits@2.0.11: This package is no longer maintained. For the JavaScript API, please use @conventional-changelog/git-client instead.
npm WARN deprecated @humanwhocodes/object-schema@2.0.3: Use @eslint/object-schema instead
npm WARN deprecated samsam@1.1.3: This package has been deprecated in favour of @sinonjs/samsam
npm WARN deprecated glob@7.2.3: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me
npm WARN deprecated inflight@1.0.6: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
npm WARN lifecycle @rewardops/sdk-node@2.8.0~prepare: cannot run in wd @rewardops/sdk-node@2.8.0 husky install (wd=/rewardops-sdk-node)
npm WARN notsup Unsupported engine for winston@3.19.0: wanted: {"node":">= 12.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: winston@3.19.0
npm WARN notsup Unsupported engine for logform@2.7.0: wanted: {"node":">= 12.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: logform@2.7.0
npm WARN notsup Unsupported engine for triple-beam@1.4.1: wanted: {"node":">= 14.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: triple-beam@1.4.1
npm WARN notsup Unsupported engine for winston-transport@4.9.0: wanted: {"node":">= 12.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: winston-transport@4.9.0
npm WARN notsup Unsupported engine for color@5.0.3: wanted: {"node":">=18"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: color@5.0.3
npm WARN notsup Unsupported engine for color-convert@3.1.3: wanted: {"node":">=14.6"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: color-convert@3.1.3
npm WARN notsup Unsupported engine for color-string@2.1.4: wanted: {"node":">=18"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: color-string@2.1.4
npm WARN notsup Unsupported engine for color-name@2.1.0: wanted: {"node":">=12.20"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: color-name@2.1.0
npm WARN notsup Unsupported engine for @commitlint/cli@17.8.1: wanted: {"node":">=v14"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @commitlint/cli@17.8.1
npm WARN notsup Unsupported engine for @commitlint/config-conventional@16.2.4: wanted: {"node":">=v12"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @commitlint/config-conventional@16.2.4
npm WARN notsup Unsupported engine for eslint@8.57.1: wanted: {"node":"^12.22.0 \|\| ^14.17.0 \|\| >=16.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: eslint@8.57.1
npm WARN notsup Unsupported engine for @faker-js/faker@7.6.0: wanted: {"npm":">=6.0.0","node":">=14.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @faker-js/faker@7.6.0
npm WARN notsup Unsupported engine for eslint-plugin-jest@27.9.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: eslint-plugin-jest@27.9.0
npm WARN notsup Unsupported engine for eslint-plugin-jsdoc@46.10.1: wanted: {"node":">=16"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: eslint-plugin-jsdoc@46.10.1
npm WARN notsup Unsupported engine for eslint-plugin-prettier@4.2.5: wanted: {"node":">=12.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: eslint-plugin-prettier@4.2.5
npm WARN notsup Unsupported engine for husky@7.0.4: wanted: {"node":">=12"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: husky@7.0.4
npm WARN notsup Unsupported engine for jest@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: jest@29.7.0
npm WARN notsup Unsupported engine for jsdoc@4.0.5: wanted: {"node":">=12.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: jsdoc@4.0.5
npm WARN notsup Unsupported engine for lint-staged@12.5.0: wanted: {"node":"^12.20.0 \|\| ^14.13.1 \|\| >=16.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: lint-staged@12.5.0
npm WARN notsup Unsupported engine for yargs@17.7.2: wanted: {"node":">=12"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: yargs@17.7.2
npm WARN notsup Unsupported engine for @commitlint/lint@17.8.1: wanted: {"node":">=v14"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @commitlint/lint@17.8.1
npm WARN notsup Unsupported engine for @commitlint/read@17.8.1: wanted: {"node":">=v14"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @commitlint/read@17.8.1
npm WARN notsup Unsupported engine for @commitlint/load@17.8.1: wanted: {"node":">=v14"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @commitlint/load@17.8.1
npm WARN notsup Unsupported engine for @commitlint/format@17.8.1: wanted: {"node":">=v14"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @commitlint/format@17.8.1
npm WARN notsup Unsupported engine for @commitlint/types@17.8.1: wanted: {"node":">=v14"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @commitlint/types@17.8.1
npm WARN notsup Unsupported engine for @commitlint/rules@17.8.1: wanted: {"node":">=v14"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @commitlint/rules@17.8.1
npm WARN notsup Unsupported engine for @commitlint/is-ignored@17.8.1: wanted: {"node":">=v14"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @commitlint/is-ignored@17.8.1
npm WARN notsup Unsupported engine for @commitlint/parse@17.8.1: wanted: {"node":">=v14"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @commitlint/parse@17.8.1
npm WARN notsup Unsupported engine for conventional-commits-parser@4.0.0: wanted: {"node":">=14"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: conventional-commits-parser@4.0.0
npm WARN notsup Unsupported engine for conventional-changelog-angular@6.0.0: wanted: {"node":">=14"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: conventional-changelog-angular@6.0.0
npm WARN notsup Unsupported engine for @commitlint/ensure@17.8.1: wanted: {"node":">=v14"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @commitlint/ensure@17.8.1
npm WARN notsup Unsupported engine for @commitlint/to-lines@17.8.1: wanted: {"node":">=v14"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @commitlint/to-lines@17.8.1
npm WARN notsup Unsupported engine for @commitlint/message@17.8.1: wanted: {"node":">=v14"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @commitlint/message@17.8.1
npm WARN notsup Unsupported engine for cosmiconfig@8.3.6: wanted: {"node":">=14"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: cosmiconfig@8.3.6
npm WARN notsup Unsupported engine for @commitlint/config-validator@17.8.1: wanted: {"node":">=v14"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @commitlint/config-validator@17.8.1
npm WARN notsup Unsupported engine for @commitlint/resolve-extends@17.8.1: wanted: {"node":">=v14"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @commitlint/resolve-extends@17.8.1
npm WARN notsup Unsupported engine for typescript@5.9.3: wanted: {"node":">=14.17"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: typescript@5.9.3
npm WARN notsup Unsupported engine for @commitlint/execute-rule@17.8.1: wanted: {"node":">=v14"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @commitlint/execute-rule@17.8.1
npm WARN notsup Unsupported engine for cosmiconfig-typescript-loader@4.4.0: wanted: {"node":">=v14.21.3"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: cosmiconfig-typescript-loader@4.4.0
npm WARN notsup Unsupported engine for @cspotcode/source-map-support@0.8.1: wanted: {"node":">=12"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @cspotcode/source-map-support@0.8.1
npm WARN notsup Unsupported engine for fs-extra@11.3.4: wanted: {"node":">=14.14"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: fs-extra@11.3.4
npm WARN notsup Unsupported engine for @commitlint/top-level@17.8.1: wanted: {"node":">=v14"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @commitlint/top-level@17.8.1
npm WARN notsup Unsupported engine for cliui@8.0.1: wanted: {"node":">=12"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: cliui@8.0.1
npm WARN notsup Unsupported engine for yargs-parser@21.1.1: wanted: {"node":">=12"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: yargs-parser@21.1.1
npm WARN notsup Unsupported engine for espree@9.6.1: wanted: {"node":"^12.22.0 \|\| ^14.17.0 \|\| >=16.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: espree@9.6.1
npm WARN notsup Unsupported engine for @eslint/js@8.57.1: wanted: {"node":"^12.22.0 \|\| ^14.17.0 \|\| >=16.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @eslint/js@8.57.1
npm WARN notsup Unsupported engine for eslint-scope@7.2.2: wanted: {"node":"^12.22.0 \|\| ^14.17.0 \|\| >=16.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: eslint-scope@7.2.2
npm WARN notsup Unsupported engine for @eslint/eslintrc@2.1.4: wanted: {"node":"^12.22.0 \|\| ^14.17.0 \|\| >=16.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @eslint/eslintrc@2.1.4
npm WARN notsup Unsupported engine for eslint-visitor-keys@3.4.3: wanted: {"node":"^12.22.0 \|\| ^14.17.0 \|\| >=16.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: eslint-visitor-keys@3.4.3
npm WARN notsup Unsupported engine for @eslint-community/regexpp@4.12.2: wanted: {"node":"^12.0.0 \|\| ^14.0.0 \|\| >=16.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @eslint-community/regexpp@4.12.2
npm WARN notsup Unsupported engine for @eslint-community/eslint-utils@4.9.1: wanted: {"node":"^12.22.0 \|\| ^14.17.0 \|\| >=16.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @eslint-community/eslint-utils@4.9.1
npm WARN notsup Unsupported engine for @humanwhocodes/module-importer@1.0.1: wanted: {"node":">=12.22"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @humanwhocodes/module-importer@1.0.1
npm WARN notsup Unsupported engine for @typescript-eslint/utils@5.62.0: wanted: {"node":"^12.22.0 \|\| ^14.17.0 \|\| >=16.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @typescript-eslint/utils@5.62.0
npm WARN notsup Unsupported engine for @typescript-eslint/types@5.62.0: wanted: {"node":"^12.22.0 \|\| ^14.17.0 \|\| >=16.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @typescript-eslint/types@5.62.0
npm WARN notsup Unsupported engine for @typescript-eslint/scope-manager@5.62.0: wanted: {"node":"^12.22.0 \|\| ^14.17.0 \|\| >=16.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @typescript-eslint/scope-manager@5.62.0
npm WARN notsup Unsupported engine for @typescript-eslint/typescript-estree@5.62.0: wanted: {"node":"^12.22.0 \|\| ^14.17.0 \|\| >=16.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @typescript-eslint/typescript-estree@5.62.0
npm WARN notsup Unsupported engine for @typescript-eslint/visitor-keys@5.62.0: wanted: {"node":"^12.22.0 \|\| ^14.17.0 \|\| >=16.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @typescript-eslint/visitor-keys@5.62.0
npm WARN notsup Unsupported engine for comment-parser@1.4.1: wanted: {"node":">= 12.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: comment-parser@1.4.1
npm WARN notsup Unsupported engine for @es-joy/jsdoccomment@0.41.0: wanted: {"node":">=16"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @es-joy/jsdoccomment@0.41.0
npm WARN notsup Unsupported engine for are-docs-informative@0.0.2: wanted: {"node":">=14"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: are-docs-informative@0.0.2
npm WARN notsup Unsupported engine for jsdoc-type-pratt-parser@4.0.0: wanted: {"node":">=12.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: jsdoc-type-pratt-parser@4.0.0
npm WARN notsup Unsupported engine for commander@13.1.0: wanted: {"node":">=18"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: commander@13.1.0
npm WARN notsup Unsupported engine for jest-cli@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: jest-cli@29.7.0
npm WARN notsup Unsupported engine for @jest/types@29.6.3: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @jest/types@29.6.3
npm WARN notsup Unsupported engine for @jest/core@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @jest/core@29.7.0
npm WARN notsup Unsupported engine for jest-util@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: jest-util@29.7.0
npm WARN notsup Unsupported engine for jest-runner@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: jest-runner@29.7.0
npm WARN notsup Unsupported engine for jest-resolve@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: jest-resolve@29.7.0
npm WARN notsup Unsupported engine for jest-config@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: jest-config@29.7.0
npm WARN notsup Unsupported engine for jest-watcher@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: jest-watcher@29.7.0
npm WARN notsup Unsupported engine for @jest/console@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @jest/console@29.7.0
npm WARN notsup Unsupported engine for jest-runtime@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: jest-runtime@29.7.0
npm WARN notsup Unsupported engine for jest-snapshot@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: jest-snapshot@29.7.0
npm WARN notsup Unsupported engine for pretty-format@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: pretty-format@29.7.0
npm WARN notsup Unsupported engine for jest-haste-map@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: jest-haste-map@29.7.0
npm WARN notsup Unsupported engine for jest-validate@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: jest-validate@29.7.0
npm WARN notsup Unsupported engine for @jest/reporters@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @jest/reporters@29.7.0
npm WARN notsup Unsupported engine for @jest/transform@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @jest/transform@29.7.0
npm WARN notsup Unsupported engine for jest-message-util@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: jest-message-util@29.7.0
npm WARN notsup Unsupported engine for jest-changed-files@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: jest-changed-files@29.7.0
npm WARN notsup Unsupported engine for @jest/test-result@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @jest/test-result@29.7.0
npm WARN notsup Unsupported engine for jest-regex-util@29.6.3: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: jest-regex-util@29.6.3
npm WARN notsup Unsupported engine for jest-resolve-dependencies@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: jest-resolve-dependencies@29.7.0
npm WARN notsup Unsupported engine for @jest/schemas@29.6.3: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @jest/schemas@29.6.3
npm WARN notsup Unsupported engine for jest-worker@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: jest-worker@29.7.0
npm WARN notsup Unsupported engine for write-file-atomic@4.0.2: wanted: {"node":"^12.13.0 \|\| ^14.15.0 \|\| >=16.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: write-file-atomic@4.0.2
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^2.3.2 (node_modules/jest-haste-map/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.3.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm WARN notsup Unsupported engine for babel-jest@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: babel-jest@29.7.0
npm WARN notsup Unsupported engine for jest-circus@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: jest-circus@29.7.0
npm WARN notsup Unsupported engine for @jest/test-sequencer@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @jest/test-sequencer@29.7.0
npm WARN notsup Unsupported engine for jest-environment-node@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: jest-environment-node@29.7.0
npm WARN notsup Unsupported engine for jest-get-type@29.6.3: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: jest-get-type@29.6.3
npm WARN notsup Unsupported engine for babel-preset-jest@29.6.3: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: babel-preset-jest@29.6.3
npm WARN notsup Unsupported engine for babel-plugin-jest-hoist@29.6.3: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: babel-plugin-jest-hoist@29.6.3
npm WARN notsup Unsupported engine for jest-each@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: jest-each@29.7.0
npm WARN notsup Unsupported engine for @jest/expect@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @jest/expect@29.7.0
npm WARN notsup Unsupported engine for @jest/environment@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @jest/environment@29.7.0
npm WARN notsup Unsupported engine for jest-matcher-utils@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: jest-matcher-utils@29.7.0
npm WARN notsup Unsupported engine for jest-mock@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: jest-mock@29.7.0
npm WARN notsup Unsupported engine for @jest/fake-timers@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @jest/fake-timers@29.7.0
npm WARN notsup Unsupported engine for expect@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: expect@29.7.0
npm WARN notsup Unsupported engine for @jest/expect-utils@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @jest/expect-utils@29.7.0
npm WARN notsup Unsupported engine for jest-diff@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: jest-diff@29.7.0
npm WARN notsup Unsupported engine for diff-sequences@29.6.3: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: diff-sequences@29.6.3
npm WARN notsup Unsupported engine for @jest/source-map@29.6.3: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @jest/source-map@29.6.3
npm WARN notsup Unsupported engine for @jest/globals@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @jest/globals@29.7.0
npm WARN notsup Unsupported engine for emittery@0.13.1: wanted: {"node":">=12"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: emittery@0.13.1
npm WARN notsup Unsupported engine for jest-docblock@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: jest-docblock@29.7.0
npm WARN notsup Unsupported engine for jest-leak-detector@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: jest-leak-detector@29.7.0
npm WARN notsup Unsupported engine for create-jest@29.7.0: wanted: {"node":"^14.15.0 \|\| ^16.10.0 \|\| >=18.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: create-jest@29.7.0
npm WARN notsup Unsupported engine for @jsdoc/salty@0.2.12: wanted: {"node":">=v12.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: @jsdoc/salty@0.2.12
npm WARN notsup Unsupported engine for marked@4.3.0: wanted: {"node":">= 12"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: marked@4.3.0
npm WARN notsup Unsupported engine for listr2@4.0.5: wanted: {"node":">=12"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: listr2@4.0.5
npm WARN notsup Unsupported engine for commander@9.5.0: wanted: {"node":"^12.20.0 \|\| >=14"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: commander@9.5.0
npm WARN notsup Unsupported engine for cli-truncate@3.1.0: wanted: {"node":"^12.20.0 \|\| ^14.13.1 \|\| >=16.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: cli-truncate@3.1.0
npm WARN notsup Unsupported engine for supports-color@9.4.0: wanted: {"node":">=12"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: supports-color@9.4.0
npm WARN notsup Unsupported engine for slice-ansi@5.0.0: wanted: {"node":">=12"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: slice-ansi@5.0.0
npm WARN notsup Unsupported engine for string-width@5.1.2: wanted: {"node":">=12"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: string-width@5.1.2
npm WARN notsup Unsupported engine for ansi-styles@6.2.3: wanted: {"node":">=12"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: ansi-styles@6.2.3
npm WARN notsup Unsupported engine for is-fullwidth-code-point@4.0.0: wanted: {"node":">=12"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: is-fullwidth-code-point@4.0.0
npm WARN notsup Unsupported engine for strip-ansi@7.2.0: wanted: {"node":">=12"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: strip-ansi@7.2.0
npm WARN notsup Unsupported engine for ansi-regex@6.2.2: wanted: {"node":">=12"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: ansi-regex@6.2.2
npm WARN notsup Unsupported engine for get-stdin@9.0.0: wanted: {"node":">=12"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: get-stdin@9.0.0
npm WARN notsup Unsupported engine for tinyglobby@0.2.15: wanted: {"node":">=12.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: tinyglobby@0.2.15
npm WARN notsup Unsupported engine for is-plain-obj@4.1.0: wanted: {"node":">=12"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: is-plain-obj@4.1.0
npm WARN notsup Unsupported engine for detect-indent@7.0.2: wanted: {"node":">=12.20"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: detect-indent@7.0.2
npm WARN notsup Unsupported engine for detect-newline@4.0.1: wanted: {"node":"^12.20.0 \|\| ^14.13.1 \|\| >=16.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: detect-newline@4.0.1
npm WARN notsup Unsupported engine for fdir@6.5.0: wanted: {"node":">=12.0.0"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: fdir@6.5.0
npm WARN notsup Unsupported engine for picomatch@4.0.4: wanted: {"node":">=12"} (current: {"node":"10.20.1","npm":"6.14.4"})
npm WARN notsup Not compatible with your version of node/npm: picomatch@4.0.4
 
added 840 packages from 654 contributors and audited 841 packages in 15.4s
 
180 packages are looking for funding
run `npm fund` for details
 
found 0 vulnerabilities
 
 
> @rewardops/sdk-node@2.8.0 test /rewardops-sdk-node
> jest
 
/rewardops-sdk-node/node_modules/jest/node_modules/jest-cli/build/run.js:135
if (error?.stack) {
^
 
SyntaxError: Unexpected token .
at Module._compile (internal/modules/cjs/loader.js:723:23)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
at Module.load (internal/modules/cjs/loader.js:653:32)
at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
at Function.Module._load (internal/modules/cjs/loader.js:585:3)
at Module.require (internal/modules/cjs/loader.js:692:17)
at require (internal/modules/cjs/helpers.js:25:18)
at Object.<anonymous> (/rewardops-sdk-node/node_modules/jest/node_modules/jest-cli/build/index.js:18:12)
at Module._compile (internal/modules/cjs/loader.js:778:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
npm ERR! Test failed.  See above for more details.
🚨 Error: The command exited with status 1
user command error: The plugin docker command hook exited with status 1

@DanielStevenLewis
DanielStevenLewis merged commit d96a1b6 into master Apr 13, 2026
1 of 2 checks passed
@DanielStevenLewis
DanielStevenLewis deleted the PAN-11212-fix-vulnerable-dependencies-v3 branch April 13, 2026 23:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants