News for hackers. Stuff that matters.
Re:Bun v1.0.0 by oefrha on Friday September 08, 2023 @11:37AM (#37434975)
> It reads your package.json and writes to node_modules, just like other package managers, so you can replace:

> ...

> pnpm

pnpm's flagship feature is global deduplication of packages, so sadly bun's package manager doesn't seem to be a replacement. Is there any plan or intention to support pnpm-like disk saving?

That said, I'm very impressed with the speed of `bun add` with already cached packages. Literally instant.

Re:Bun v1.0.0 by Cu3PO42 on Friday September 08, 2023 @11:55AM (#37435311)
Bun already supports that [0]. It is the default behavior on Linux, but can also be enabled on macOS.

[0] https://bun.sh/docs/install/cache#saving-disk-space

Re:Bun v1.0.0 by oefrha on Friday September 08, 2023 @12:04PM (#37435419)
Nice! I was looking at du(1) output on macOS which appears to indicate all files are duplicated. It probably just can’t tell the files are clonefile’d.
Re:Bun v1.0.0 by Jarred on Friday September 08, 2023 @12:10PM (#37435509)
There is a very obscure undocumented api in macOS for detecting if two files are equal block-by-block but yeah I don’t think most tools can tell when files are clonefile’d
Re:Bun v1.0.0 by Cu3PO42 on Friday September 08, 2023 @12:24PM (#37435726)
Just a note on your documentation: it says "this benefit does not extend to macOS" about saving disk space. I find that to be slightly misleading. Since arguably the most common FS for macOS is now APFS, it does save significant disk space unless one were to modify the node_modules files.
Re:Bun v1.0.0 by thunderbong on Friday September 08, 2023 @01:01PM (#37436240)
Any chance of this coming to Windows? Most of our developers are on Windows systems.
Re:Bun v1.0.0 by hiccuphippo on Friday September 08, 2023 @02:00PM (#37437082)
Keep track of this issue: https://github.com/oven-sh/bun/issues/43

According to that, the speed benefits will probably not be as noticeable in windows.

Re:Bun v1.0.0 by lolinder on Friday September 08, 2023 @12:09PM (#37435487)
You're jumping to conclusions: I just tried the package.json below, and bun's node_modules folder is smaller than pnpm's (3.9M with pnpm vs 3.4M with bun), and as a sibling noted, bun is also deduplicating globally.

That, coupled with the fact that bun installs twice as fast when no packages are cached (634ms compared to 1.3s) and 100x as fast when all packages are cached (6ms to 639ms), I think it's fair to say that bun can replace pnpm.

Here's the package.json I tried:

    { "dependencies": { "express": "^4.18.2" } }%
Re:Bun v1.0.0 by cobbzilla on Friday September 08, 2023 @03:34PM (#37438334)
I had difficulty using Bun with Verdaccio, a private/local npm repository.

I know it’s possible to get it to work, but I didn’t have time to fiddle all the bits.

If Bun made this easier, I’d switch from pnpm immediately.