github pnpm/pnpm v1.0.0

latest releases: v9.0.6, v9.0.5, v9.0.4...
6 years ago

Today we’re excited to announce the release of pnpm 1!

Why only now? The initial commit to pnpm was made by Rico Sta. Cruz on Jan 27, 2016. It was based on the ideas of ied by Alexander Gugel with initial commit on Aug 6, 2015!

Unlike Yarn, which has decided to use the same node_modules structure that npm creates, pnpm uses a completely new approach (about which you can read more in this article). It was really hard to make a symlinked node_modules structure work with most of the existing npm packages! All the different problems that we have encountered and the dozens of breaking changes we had to make, deserves a post of its own. Finally, almost 2 years since the idea of a symlinked node_modules structure has born, we can tell with confidence: it is possible and it does work.

So what does version 1 mean?

Version 1 means that:

  • The store structure that pnpm uses since version 0.70 is reliable enough and we are confident that there will be no need in breaking changes in its structure.
  • The node_modules layout that pnpm creates works with most of the ecosystem.
    pnpm@1 also ships with an experimental node_modules layout that can be turned on with the independent-leaves config. The experimental layout boosts installation speed by 8% and works almost with all projects. However, we were not confident enough to make it the default yet.
    The format of the shrinkwrap.yaml file, which is pnpm’s lockfile, is good enough for being committed to VCS.
  • When possible, pnpm@1 works the way npm@5 does.

You can rely on these things and they won’t get breaking changes in version 1.

Also posted on our blog: https://medium.com/pnpm/pnpm-version-1-is-out-935a07af914

Don't miss a new pnpm release

NewReleases is sending notifications on new releases.