yorkie-team / yorkie-js-sdk

Yorkie JavaScript SDK
https://yorkie.dev/docs/js-sdk
Apache License 2.0
137 stars 91 forks source link

Node version collision problem of dependencies #897

Open minai621 opened 1 week ago

minai621 commented 1 week ago

What happened:

While trying to clone the yorkie-js-sdk and install its dependencies, I encountered an issue with the required Node version for the dependencies "typescript-transform-paths" and "eslint-plugin-jsdoc". The specific versions of these dependencies require a Node version that causes compatibility issues.

The details are as follows

image

{workspace}/package.json

image
// in sdk
"typescript-transform-paths": "^3.3.1",

// in workspace
"eslint-plugin-jsdoc": "^39.3.3",

What you expected to happen: The dependencies should be installed without any issues regarding Node version compatibility.

How to reproduce it (as minimally and precisely as possible):

  1. Clone the yorkie-js-sdk repository.
  2. Run npm install to install dependencies.
  3. Observe the node version compatibility error related to "typescript-transform-paths" and "eslint-plugin-jsdoc".

Anything else we need to know?: Potential solutions might involve aligning the node version requirements across dependencies or updating the dependencies to versions compatible with the currently supported node version.

Environment:

minai621 commented 1 week ago

If locking the version of "typescript-transform-paths" to "3.3.1" resolves the issue, I will fix this issue.

Please confirm if removing the caret (^) from the "typescript-transform-paths" version is the appropriate solution to ensure compatibility with Node 18.

gwbaik9717 commented 1 week ago

Could you please provide the version of pnpm installed in your environment? I've confirmed that similar error occurs with pnpm version 8. It should be later than version 9.6.

Screenshot 2024-09-07 at 8 28 44 PM
minai621 commented 1 week ago

Could you please provide the version of pnpm installed in your environment? I've confirmed that similar error occurs with pnpm version 8. It should be later than version 9.6.

Screenshot 2024-09-07 at 8 28 44 PM

Currently using the 8.15.6 version. I definitely upgraded to version 9, so there's no problem. I think adding "engines" in the package.json

{
  "engines": {
    "pnpm": ">= 9.0.0"
  }
}

can solve the problem.

gwbaik9717 commented 1 week ago

I agree, it will be nice to have a safety measure in place.

su-ram commented 4 days ago
{
  "engines": {
    "pnpm": ">= 9.0.0"
  }
}

can solve the problem.

It helps the similar error for me. Thanks.

Also noticed eslint-plugin-jsdoc changed to eslint-plugin-tsdoc