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

improve node management #1153

Closed
wants to merge 6 commits into from

Conversation

ryoppippi
Copy link
Contributor

  • manage pnpm version by pnpm
  • manage node version by ci
  • install node & pnpm using pnpm itself in ci env

Copy link

socket-security bot commented Dec 13, 2024

New and removed dependencies detected. Learn more about Socket for GitHub ↗︎

Package New capabilities Transitives Size Publisher
npm/@emotion/react@11.10.6 environment Transitive: filesystem, unsafe +61 10.7 MB emotion-release-bot
npm/@emotion/styled@11.10.6 environment Transitive: filesystem, unsafe +56 10.2 MB emotion-release-bot
npm/@fastify/multipart@8.3.0 None +3 269 kB climba03003
npm/@mui/icons-material@5.15.6 None +2 18.9 MB brijeshb42
npm/@mui/material@5.15.6 environment +22 18.8 MB brijeshb42
npm/@mui/system@5.15.6 environment +20 6.15 MB brijeshb42
npm/@nestia/editor@4.2.0 network Transitive: environment, eval, filesystem, shell, unsafe +132 41.3 MB samchon
npm/@nestjs/swagger@8.1.0 None +2 3.08 MB nestjscore
npm/@trivago/prettier-plugin-sort-imports@4.3.0 Transitive: environment +8 1.88 MB behraang
npm/@types/node@18.11.10 None 0 3.56 MB types
npm/@types/react@18.0.35 None +3 1.44 MB types
npm/gh-pages@5.0.0 filesystem, shell Transitive: environment +40 1.55 MB tschaub
npm/jszip@3.10.1 Transitive: environment +12 1.79 MB stuk
npm/next-sitemap@4.2.3 Transitive: environment, filesystem +21 923 kB iamvishnusankar
npm/next@14.2.13 environment, filesystem, network, shell, unsafe +23 1.2 GB vercel-release-bot
npm/nextra-theme-docs@3.2.5 Transitive: environment, eval +24 6.12 MB quietshu
npm/nextra@3.2.5 Transitive: environment, eval, filesystem, network, shell, unsafe +424 251 MB quietshu
npm/react-dom@18.2.0 environment +3 4.62 MB gnoff
npm/react@18.2.0 environment +2 337 kB gnoff
npm/typedoc@0.27.4 Transitive: environment, filesystem +15 14.9 MB typedoc-bot

🚮 Removed packages: npm/@types/express@4.17.21, npm/@types/js-yaml@4.0.9, npm/@types/node@20.17.10, npm/@types/node@22.10.2, npm/@types/physical-cpu-count@2.0.2, npm/@types/react-dom@18.3.5, npm/@types/react@18.3.16, npm/@vitejs/plugin-react@4.3.4, npm/autocannon@7.15.0, npm/class-transformer@0.5.1, npm/class-validator@0.14.1, npm/d3@5.16.0, npm/eslint-plugin-react-hooks@5.1.0, npm/eslint-plugin-react-refresh@0.4.16, npm/eslint@9.16.0, npm/jsdom@22.1.0, npm/physical-cpu-count@2.0.0, npm/react-dom@18.3.1, npm/react@18.3.1, npm/rollup@4.28.1, npm/ts-patch@3.3.0, npm/typescript-eslint@8.18.0, npm/typia@7.3.0, npm/vite@5.4.11

View full report↗︎

Copy link
Owner

@samchon samchon left a comment

Choose a reason for hiding this comment

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

I think nestia needs matrix strategy of NodeJS versions. Others are good to see.

Copy link
Owner

@samchon samchon left a comment

Choose a reason for hiding this comment

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

Also, ignoring pnpm-lock.yaml file is inteded.

As this is a library repository, I've always test the ^ version setup startegy.

@ryoppippi ryoppippi closed this Dec 13, 2024
@ryoppippi ryoppippi reopened this Dec 13, 2024
Copy link

🚨 Potential security issues detected. Learn more about Socket for GitHub ↗︎

To accept the risk, merge this PR and you will not be notified again.

Alert Package NoteSourceCI
Possible typosquat attack npm/emoji-regex-xs@1.0.0 ⚠︎

View full report↗︎

Next steps

What is a typosquat?

Package name is similar to other popular packages and may not be the package you want.

Use care when consuming similarly named packages and ensure that you did not intend to consume a different package. Malicious packages often publish using similar names as existing popular packages.

Take a deeper look at the dependency

Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support [AT] socket [DOT] dev.

Remove the package

If you happen to install a dependency that Socket reports as Known Malware you should immediately remove it and select a different dependency. For other alert types, you may may wish to investigate alternative packages or consider if there are other ways to mitigate the specific risk posed by the dependency.

Mark a package as acceptable risk

To ignore an alert, reply with a comment starting with @SocketSecurity ignore followed by a space separated list of ecosystem/package-name@version specifiers. e.g. @SocketSecurity ignore npm/foo@1.0.0 or ignore all packages with @SocketSecurity ignore-all

  • @SocketSecurity ignore npm/emoji-regex-xs@1.0.0

@ryoppippi
Copy link
Contributor Author

ryoppippi commented Dec 13, 2024

I think including lockfile in Node project is fine, because the library version is updated by renovate every time.
Actaully, many major node library repository includes lockfiles like

We need lockfile because of development.

@ryoppippi
Copy link
Contributor Author

I'll add matrix later

@ryoppippi
Copy link
Contributor Author

So managing node version by pnpm is not good for this case?

Copy link
Owner

@samchon samchon left a comment

Choose a reason for hiding this comment

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

As nestia utilizes many NodeJS built-in functions, I think NodeJS version matrix is valid for this repo.

Also, do not change too much style please. Ignoring pnpm-lock.yaml file is required for dependencies' patch and minor updates.

Copy link
Owner

@samchon samchon left a comment

Choose a reason for hiding this comment

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

Thanks for your endless contribution.

There may be a better and more superior solution, or I may have made a wrong choice.

However, the changes must be made at a level that I can keep going the development.

pnpm-lock.yaml Outdated
Copy link
Owner

Choose a reason for hiding this comment

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

This must be removed with below commented reason.

.gitignore Outdated
Copy link
Owner

Choose a reason for hiding this comment

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

Also change please

- name: Build
working-directory: website
run: npm install && npm run build
Copy link
Owner

Choose a reason for hiding this comment

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

Also, website must use npm at now.

This may be caused by my unskilled monorepo composition, anyway, if try to use pnpm install command in the website directory, it does not install of website, but of other modules enrolled in the pnpm-workspace.yaml file.

By the way, if add the website directory to the pnpm-workspace.yaml file is impossible. It is because the website module requires other module's complete compilation and testing.

@ryoppippi
Copy link
Contributor Author

I'll create another PR based on this!

@ryoppippi ryoppippi closed this Dec 31, 2024
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.

2 participants