Corepack and Yarn isolation in an nvm-managed environment
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 3.8k
- Forks
- 279
- Avg merge
- 1h 47m
- Merged PRs (30d)
- 2
Description
A few hours ago I opened an issue in the nvm project repository to discuss a way to install package managers — in my case, Yarn — through Corepack separately for each version of Node.js. As I was told there, this should be discussed here, so I paraphrase my issue below.
My system has only two versions of Node.js installed and managed by nvm: the default is 20, which I use for almost all of my projects; the other one is 16. There is no other version of Node.js on this system, regardless of how it is installed. Both only have Corepack and NPM installed globally, each at the latest supported version.
The issue I come to discuss is that Corepack does not activate Yarn in isolation, i.e., every time a certain version of Yarn is activated in one of the Node.js versions, it is also activated in the other version. Therefore, I cannot, for example, use the latest version of Yarn on Node.js 20, as it is not compatible with 16.
Is there a way to isolate Yarn? Otherwise, wouldn't it make sense to implement it?
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No source files, tests, or entry points are named. Reproduce the reported setup with Node.js 16 and 20 under nvm, then inspect how Corepack activates package managers across versions; the work is done when Yarn versions can be activated independently for each Node.js installation and the behavior is covered by tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- nodejs
- Domain
- tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100