Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • 19:58
    zkochan commented #3642
  • 17:48
    foora opened #3909
  • 17:48
    foora review_requested #3909
  • 17:43
    foora opened #3908
  • 12:44
    zeusdeux edited #3907
  • 12:44
    zeusdeux edited #3907
  • 12:25
    zeusdeux labeled #3907
  • 12:25
    zeusdeux opened #3907
  • 12:24
    zkochan milestoned #3883
  • 12:21
    javier-garcia-meteologica closed #3883
  • 10:37
    zkochan commented #3458
  • 10:34

    zkochan on main

    fix: allow workspace package na… (compare)

  • 10:34
    zkochan closed #3899
  • 10:34
    zkochan milestoned #3899
  • 10:32
    zkochan synchronize #3899
  • 10:29
    zkochan commented #3899
  • 10:03
    ibezkrovnyi commented #3458
  • 09:18
    javier-garcia-meteologica synchronize #3899
  • 07:57
    javier-garcia-meteologica commented #3458
  • 06:31
    zheeeng commented #3642
Vaughan Rouesnel
@vjpr
When trying to get PRs in to fix pnpm compatibility
Zoltan Kochan
@zkochan
yeah, some people see it as a feature
Vaughan Rouesnel
@vjpr
Yep
:(
I think the main argument for it was windows file paths
Vaughan Rouesnel
@vjpr
It's good though from pnpm's perspective because pnpm will always be more reliable and correct than npm
Zoltan Kochan
@zkochan
:thumbsup:
Zoltan Kochan
@zkochan
FYI, I am less active on smaller issues because I work on optimizing the peers resolution algorithm. I managed to make it faster. I also want to avoid running peers resolution when there's a lockfile in the repo. My changes are currently on the perf/peers branch
Vaughan Rouesnel
@vjpr
cool :+1:
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.

Ivan Pukhtin
@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
Ivan Pukhtin
@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
Ivan Pukhtin
@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
Ivan Pukhtin
@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
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