by

Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • 02:09
    eozu edited #2581
  • 02:01
    eozu edited #2581
  • 01:56
    eozu opened #2581
  • 00:19
    zkochan edited #2580
  • 00:18
    zkochan milestoned #2580
  • 00:18
    zkochan opened #2580
  • 00:18
    zkochan labeled #2580
  • 00:04

    zkochan on fix-git-fetch

    fix: installing git-hosted depe… (compare)

  • May 27 22:59

    zkochan on v5.0.0

    (compare)

  • May 27 22:59

    zkochan on master

    chore(release): 5.0.0 (compare)

  • May 27 22:28
    zkochan commented #881
  • May 27 17:23
    xialvjun commented #1360
  • May 27 17:20
    xialvjun commented #1360
  • May 27 17:20
    xialvjun commented #1210
  • May 27 17:05

    zkochan on master

    docs(README): update usage (compare)

  • May 27 17:03

    zkochan on master

    docs(README): update usage (compare)

  • May 27 17:01

    zkochan on master

    docs(README): update usage sect… (compare)

  • May 27 16:42
    xialvjun commented #1210
  • May 27 14:44
    ExE-Boss commented #1210
  • May 27 14:44
    ExE-Boss commented #1210
Zoltan Kochan
@zkochan
I am thinking about renaming shrinkwrap.yaml to node_modules_lock.yaml to avoid confusion.
There will be breaking changes in the lockfile format in pnpm@0.69 so now it would be a good time for a rename
Andrey Popp
@andreypopp
Curious if pnpm is going to support npm5 lock file format?
It looks sane to me.
Zoltan Kochan
@zkochan

I am changing pnpm's lockfile format to have all the fields that npm's lockfile has.

However, currently I don't know how can we use the same format because npm's lockfile format also specifies how the layout should look like
pnpm cannot create the same layout npm uses

Zoltan Kochan
@zkochan
Created a medium publication for pnpm https://medium.com/pnpm
Let me know if you want to write some posts
I added the two posts I have written about pnpm
Zoltan Kochan
@zkochan

Kat from npm has gave me some ideas how to make pnpm faster. It will require some breaking changes to the store structure. It is really interesting what the outcome will be

Also they are considering to use some of the things pnpm introduced. Like adding unpacked packages to the npm cache and using hard links instead of copying packages from cache.

Strider
@StreetStrider
Hello. I wanna try pnpm and I have some questions at this time:
  1. Can pnpm install from github-shortcut? (what about bitbucket and others?)
  2. Can it install from git-endpoint?
  3. What will happen when I do pnpm i and there're already installed some dependencies which contain git-repositories or linked via simlink from another local dir?
Zoltan Kochan
@zkochan
hello
  1. yes
  2. mostly yes, there are some cases that don't work yet and we have open issues for them in the repo
  3. already installed deps will be moved to node_modules/.ignored and reinstalled by pnpm. Links that point outside are preserved
Strider
@StreetStrider
@zkochan what if in case 3. there was a dependency that satisfies version already, and I do pnpm i. you mean that this would be reinstalled even if version is ok? I'm asking 2-3 because of in my workflow I often do npm i ~/some/local-dep or npm i nickname/package, for example, my own packages. npm understands this and don't touch them when I do npm i without arguments.
Zoltan Kochan
@zkochan

yes, even then it will reinstall them because pnpm guarantees that the node_modules structure will always look the same. It doesn't matter in what sequence you run commands.

the node_modules structure created by npm is not compatible with the one created by pnpm, so pnpm has to remove folder created by pnpm.

I often do npm i ~/some/local-dep or npm i nickname/package, for example, my own packages. npm understands this and don't touch them when I do npm i without arguments.

if you will just use pnpm for these actions, it will behave the same as npm

it won't override local-dep, nickname/package if they were installed by pnpm
Strider
@StreetStrider
Great. I mean, I'm not up to using npm/pnpm in mix, I was just worried can pnpm cover my cases, when I install deps in some special ways, like my own deps. If pnpm can cover it (yes, it is), it's more then enough for me. :thumbsup:
Zoltan Kochan
@zkochan
all you do with npm should work in pnpm. If it does not then feel free to file an issue in the repo
Strider
@StreetStrider
OK.
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
Strider
@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
Strider
@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