4 ms·
For what it's worth Yarn 3 implements essentially all modes. It can do standard node_modules, its own Plug'n'Play, as well as pnpm-style hardlinking to a global
by Cu3PO42 5y ago
For what it's worth Yarn 3 implements essentially all modes. It can do standard node_modules, its own Plug'n'Play, as well as pnpm-style hardlinking to a global cache.
Edit: I just learned from another comment that PNPM also supports Plug'N'Play :) Thanks steven-xu!
- zkochan 5y agopnpm as well supports all three modes. But I think it is better to use Yarn for the PnP mode and pnpm for the symlinked mode. Here is a feature comparison: https://pnpm.io/feature-comparison https://pnpm.io/feature-comparison
- xiphias2 5y agoSo it should just be backported to npm to show that the authors are serious about backwards compatibility.
- zkochan 5y agoBoth pnpm and Yarn are independent projects maintained by the community. I personally think that these are better projects than npm CLI because they can make their own decisions. Not decisions dictated by business needs of a company. I was OK to merge pnpm into npm in the past. They have never suggested me this opportunity. Instead, they decided to re-implement pnpm's algorithm into npm and call it "isolated mode".
- xiphias2 5y agoI see, I tried it now, it looks great. Most of my problems were created by the material UI libraries (I wanted to use them with SvelteKit), but I just got rid of it as those libraries were making development harder instead of helping. I still wish there would be a nice UI library for Svelte, but I guess that's the disadvantage of not going with the mainstream frontend toolkit.
- girvo 5y ago> ...material UI libraries...making development harder instead of helping. I'm glad I'm not the only one who has had that experience.
- aabbcc1241 5y agoMaterial UI (MUI for react) not just impact the DX, it also bloats the runtime impacting the UX
- sph 5y agoThat's literally xkcd #927: let's make a standard that encompasses all previous standards, what can go wrong? Now you have to maintain three different code paths, two of which depend on the behaviour of external projects, so you're always playing catch up. That's such a bad idea on so many levels.