News for hackers. Stuff that matters.
Re:Yarn – A new package manager for JavaScript by zamalek on Tuesday October 11, 2016 @03:21PM (#12687667)
> no problems

Absolute and utter hogwash.

I don't even need to get into versioning to make this argument but I'll exclude it for clarity's sake. Simple scenario:

    root -> A
    root -> B
    root -> C
    A -> B
    B -> C
What folder structure is created?

    root/node_modules/A/node_modules/B/node_modules/C
    root/node_modules/B/node_modules/C
    root/node_modules/C
Symlink that all you want, how is it in any way whatsoever thoughtful and elegant? It's not a real solution by any stretch of the imagination. Myriads of pre-existing systems that correctly deal with this scenario existed at the time that NPM was concoted. Ignored. Considering that node is touted as a cross-platform solution, how well does version@3 deal with filesystems that don't support symlinks? I've run into this: not at all.

NPM version@3 could not be further from the ethos of "engineering." It's an outright hack, and it quickly betrays its limitations. It could have been far simpler, far more considerate of pre-existing wisdom.

Re:Yarn – A new package manager for JavaScript by secoif on Tuesday October 11, 2016 @06:06PM (#12688908)
what you described is npm@2's behaviour. npm@3 will flatten dependencies as much as possible
Re:Yarn – A new package manager for JavaScript by zamalek on Tuesday October 11, 2016 @06:19PM (#12689001)
How does it flatten dependencies? Symlinks?
Re:Yarn – A new package manager for JavaScript by secoif on Tuesday October 11, 2016 @06:39PM (#12689106)
no, it just installs everything it can into the top level node_modules. npm@2 would do this to a degree as well, it was just less sophisticated about it.
Re:Yarn – A new package manager for JavaScript by zamalek on Wednesday October 12, 2016 @03:28AM (#12690977)
> into the top level node_modules.

Just tried using npm3 explicitly and I stand corrected.