Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • 20:52

    zkochan on next

    chore(deps): update eslint to v8 chore(deps): update chore(deps): update esbuild to … and 42 more (compare)

  • 19:04
    dtinth commented #720
  • 19:03
    dtinth commented #720
  • 16:24
    donferi commented #3077
  • 15:04
    larixer synchronize #3927
  • 15:04

    larixer on runtime-ts-execution

    refactor: add pnpm execution fr… (compare)

  • 14:57
    zkochan commented #3927
  • 14:46
    zkochan commented #3673
  • 14:42
    zkochan labeled #3673
  • 14:35
    Shinigami92 commented #3673
  • 14:33
    Shinigami92 commented #3673
  • 14:31
    Shinigami92 commented #3673
  • 14:22
    larixer converted_to_draft #3927
  • 14:21
    larixer commented #3927
  • 14:19
    zkochan commented #3927
  • 14:17
    zkochan commented #3927
  • 14:16
    larixer commented #3927
  • 14:12
    larixer ready_for_review #3927
  • 13:54
    larixer synchronize #3927
  • 13:54

    larixer on runtime-ts-execution

    refactor: add pnpm execution fr… (compare)

Ivan Pukhtin
@StreetStrider
I'm still using npm@2 since I'm not glad with what they do in newer versions and how they help with my troubles. So I'm definetily think your work is essential. I will try pnpm.
Zoltan Kochan
@zkochan
ha, in that case pnpm is the perfect choice for you
Ivan Pukhtin
@StreetStrider
Considering the algorythm of pnpm, I think it's nice and how it leverages hard-link is also great. However, I remember some packages has post-install hooks, have binary parts and even download binaries to their own directory. Do you do something to allow this to work or they are treated as out-of-scope for pnpm?
It's not a good practice to modify package, I understand..
Zoltan Kochan
@zkochan
so far it seems to work fine with post installs. Packages "think" they are in node_modules of the project and the lifecycle scripts are executed there. They don't modify the original files just create new folders/files
Ivan Pukhtin
@StreetStrider
Ok, got it.
Thanks for answers :thumbsup:
Zoltan Kochan
@zkochan
no problem
Amit Marcus
@marxus85
hey .. there is something i dont get
on windows 10.. i've got this folder %userprofile%.pnpm-store\1\registry.npmjs.org
which contains the extracted modules.
and when i do pnpm i -g <something>, it creates another folder which is ".registry.npmjs.org" which contains the extracted modules
and when i open another folder for a new project and do pnpm i <something> i get another ".registry.npmjs.org" folder which contains the extracted modules.
none of them are linked
so... in the end it do get 3 times of the same module
Zoltan Kochan
@zkochan
hey, if you check the ino numbers of the files inside those folders, you'll see that they are the same in all 3 folders
they are on the same location on the disk
Amit Marcus
@marxus85
1125899907199372 drwx------+ 1 0 Jun 13 11:08 registry.npmjs.org
10133099161699660 drwx------+ 1 0 Jun 13 11:54 .registry.npmjs.org
17732923532887146 drwxrwx---+ 1 0 Jun 13 11:54 .registry.npmjs.org
getting it using ls -i
Zoltan Kochan
@zkochan
check the files not the folders
folders cannot be hard links
go to one of the packages and check the package.json for instance
Amit Marcus
@marxus85
ok
Zoltan Kochan
@zkochan
but there is an easier solution
just edit the file and you'll see the changes in all 3 folders
Amit Marcus
@marxus85
ok :)
Zoltan Kochan
@zkochan
but if you edit it, it will be refetched during next installation
Amit Marcus
@marxus85
well. ! it worked.
thanks. it wasnt that clear from the docs.
i mean i did read the "why does my nodemodules folder use disk space" section
but that simple method of just editing the file and see for myself:) well that satisfied me ! :)
Zoltan Kochan
@zkochan
hm, if you know how to explain it better, you can suggest an edit. We can definitely extend the FAQ section
Amit Marcus
@marxus85
aight! i'll think about it. anyway, thanks for clearing this out for me
Zoltan Kochan
@zkochan
you're welcome
Amit Marcus
@marxus85
this is actually cool, both places point to the same file, but if i delete only one of them the other one is still there.. nice
Zoltan Kochan
@zkochan
yes, but I work on a mixed solution now because creating one symlink to the folder is faster than creating many hard links to each file
pnpm/pnpm#791
when a package is "independent" it can be symlinked
Amit Marcus
@marxus85
ok that something i didnt not understand in the first place, i mean why not just junctioning all the folders to begin with..
Zoltan Kochan
@zkochan
because packages have different sets of dependencies in different projects
Zoltan Kochan
@zkochan

@all pnpm version 0.70.0 has been released. Not as latest for now.

It has breaking changes in the store structure, so you'll have to reinstall node_modules.

However, it is the fastest pnpm so far!

Vaughan Rouesnel
@vjpr
nice work!
Zoltan Kochan
@zkochan
It would be great to have some help resolving the webpack/browserify issues: pnpm/pnpm#801
Zoltan Kochan
@zkochan
Seems like pnpm has no issues with the latest webpack! This is great! Now pnpm can be used for CRA and Angular2
Andrey Popp
@andreypopp
btw lockfiles
I like that npm5 locks the structure — I think it's more readable than yarn's approach where it maps ranges to concrete versions
The improvement, I think would be to have a flat structure like yarn but with dependent: package-name field on each record which specifies the package which depends on the record's package
Zoltan Kochan
@zkochan
Zoltan Kochan
@zkochan
I'll write a post about pnpm's shrinkwrap format. But ours doesn't need to fix layout because pnpm is not hoisting packages.
our's is also good for CR because we use YAML not JSON
and we show structure, by having dependencies and optionalDependencies in each package. So no need in dependent
Zoltan Kochan
@zkochan
Andrey Popp
@andreypopp
🎉🎉👍
kylemeier
@kylemeier
sorry if this was already asked but if one library requires lodash 1.5.4 and another lodash 2.7.9, does lodash get installed twice or just once and potentially breaks one of the libraries?