Replies: 11 comments 37 replies
-
My initial thought is that what is most important is how easy it is to contribute a change to the website. I'm less worried about things taking a bit longer in our CI. Are there any significant benefits to people submitting a PR in terms of the overall time that will take them? If not I think avoiding people having to do an additional install may not be worth it. |
Beta Was this translation helpful? Give feedback.
-
That is a great argument. And I'm in favour of it. If ultimately what matters is DX, adding another layer of dependency that requires another install on the userland can be discouraging and add extra debugging/issues to the contribution cycle towards this repository. And a few seconds of CI time is not a big deal. Again the idea of adopting And truth be said, npm is more than sufficient, and I see no issues with keeping it at the time of writing this. (NPM is darn great). |
Beta Was this translation helpful? Give feedback.
-
With |
Beta Was this translation helpful? Give feedback.
-
Hey, @nodejs/website, I want your opinions if we should adopt
This is a considerable enough change to speed up the deployment process, PR reviews, and all the numerous different GitHub Actions we have. I wanted to ask your opinions on adopting |
Beta Was this translation helpful? Give feedback.
This comment has been hidden.
This comment has been hidden.
-
I've found value in pnpm for dedicated app teams using the software day in and day out, switching branches, installing dependencies, etc.... but it's benefits add up the more you use it. I think what @mhdawson said is probably the overriding concern here: ease of initial contributon. Maybe corepack helps enough here, but that feels too new IMO.
https://github.com/pnpm/only-allow can help here if we choose to codify npm (or otherwise) |
Beta Was this translation helpful? Give feedback.
-
Hey, I realize this is two years old, so I’m not sure if it’s still relevant, but I wanted to flag a major concern. If we convert this repository to pnpm, it would introduce pnpm as a requirement for importing (right?). That’s a significant change because: graph TD;
A["Node Core"] --> B["api-docs-tooling"];
B --> C["This Repository"];
C -.->|Converted to pnpm| D["pnpm Required"];
|
Beta Was this translation helpful? Give feedback.
-
Two years have passed since this was first proposed: Concerns in this discussion, addressed
Does pnpm make the project harder to contribute casually to?
If you count tools as integers, this adds one. Everyone can agree with that. But I posit that the codebase is already in a state that requires acumen around a modern web development project, installing things on your local computers, etc, such that adding pnpm is not a straw that "breaks the camel's back."
Tooling like
with (or some variant we can discuss later, i know corepack itself is in flux)
this can be written better with some nicer technical writing around project setup vs running.... or even use a I didn't even touch all the benefits already cited around install speed, disk space, etc. Those stand on their own. |
Beta Was this translation helpful? Give feedback.
-
Let's vote for
|
Beta Was this translation helpful? Give feedback.
-
I chatted on slack with Brian, here's what came out: |
Beta Was this translation helpful? Give feedback.
-
I strongly recommend doing this since nearly every major version of pnpm (now at 10) changes the lockfile format. So a contributor who isn't use corepack or similar might be on an older version of pnpm and submit a PR with accidental lockfile changes. |
Beta Was this translation helpful? Give feedback.
-
Hey, you all 👋 after doing some experimentation, I wanted to ask the team (cc @nodejs/website) what you think about adopting
pnpm
as the package manager for this repository.Some of the key caveats/benefits I've noticed:
npx
node_modules
and cache footprint (making the GitHub Actions cache storage have more space) (Around 70% less footprint)Some of the disadvantages:
Corepack
pnpm
I also want the opinion of the @nodejs/build team and the TSC @nodejs/tsc as I want to ensure that this change is not controversial nor conflicting with any of our bylaws and/or creates an adverse affect on the "npm" package manager (as if this repository does any endorsement to
pnpm
overnpm
which is not the case).Beta Was this translation helpful? Give feedback.
All reactions