从上往下按发布时间排序

  • npm v1 / npm v2

不足:依赖包嵌套的问题,导致 node_modules 体积越来越大;没有cahce,没有离线功能

  • npm v3

peerDependencies不再导致隐式安装任何东西。如果缺少包 peerDependencies,npm会发出警告;

扁平化 node_modules

  • pnpm 发布(默默无名)
  • yarn 发布初始版本(kpm)

lockfiles(yarn.lock)

与 npm 和 bower 工作流程兼容

更加语义化

更加简洁,可读的cli输出

各指标超越npm

  • npm v4

npm-shrinkwrap.json确保你在其中指定的模块完全按照指定的内容安装(package-lock.json前身)

  • npm v5

package-lock.json默认生成,并兼容npm-shrinkwrap.json

重构npm-cache,提升下载速度

对离线模式及缓存安装进行了优化

  • npm v5.2

发布npx命令

  • yarn@1.0.0发布

Yarn Workspaces 更加友好。它可以让人们自动聚合来自多个 package.json 文件的所有依赖项,并一次性安装它们。

根目录使用单个 yarn.lock 文件,将它们全部锁定。

Yarn 将在碰巧相互依赖的所有工作区之间创建符号链接,以便最终在所有项目中始终使用最新的代码。

  • npm v6

发布npm init

  • pnpm@1.0.0发布

节约磁盘空间并提升安装速度,解决依赖分身(doppelgangers)的问题

创建非扁平化的 node_modules 文件夹,软连接结构,解决幽灵依赖的问题

  • pnpm@2.0.0发布
  • pnpm@3.0.0发布
  • pnpm@4.0.0发布

修复bug、优化性能、提高兼容性

  • yarn 2.0.0

可读性更高的 CLI 输出

更好的 workspaces 支持

yarn dlx(与 npx 类似)

  • pnpm@5.0.0发布
  • npm v7

支持workspaces概念

自动安装peerDependencies中的依赖

  • pnpm@6.0.0发布
  • yarn@3.0.0发布

支持 node 的exports字段

不再支持 Node 10

  • npm v8

不再支持node10, node11

不再支持require('npm')

npm yarn pnpm 发展历程相关推荐

  1. 尤雨溪推荐神器 ni ,能替代 npm/yarn/pnpm ?简单好用!源码揭秘!

    1. 前言 大家好,我是若川.最近组织了源码共读活动,感兴趣的可以加我微信 ruochuan12 想学源码,极力推荐之前我写的<学习源码整体架构系列>jQuery.underscore.l ...

  2. npm yarn pnpm命令

    命令对比 命令 npm yarn pnpm 安装 install add add 安装到dependencies –save 默认 默认 安装到devDependencies -D, --save-d ...

  3. 重学前端——npm yarn pnpm

    npm yarn pnpm npm NPM 是最初由 Node.js 项目开发的 JavaScript 包管理器.它使开发人员能够更轻松地在不同项目之间共享代码,并在自己的项目中使用其他人的代码.安装 ...

  4. npm yarn pnpm 的区别

    npm .yarn 和 pnpm 常用命令 npm init| yarn init| pnpm init: 初始化命令npm run| yarn run/yarn | pnpm: 运行脚本npm pu ...

  5. 【总结】1409- 深入浅出 npm yarn pnpm 包管理机制

    前端开发者们每天都在接触 xxx install,包管理器是必不可少的工具. 本文会以尽量简洁的语言来描述当下主流包管理工具 npm.yarn.pnpm 的管理策略以及进化史,不涉及任何晦涩的代码. ...

  6. npm yarn pnpm

    本文作者对比了当前主流的包管理工具npm.yarn.pnpm之间的区别,并提出了合适的使用建议,以下为译文: NPM npm是Node.js能够如此成功的主要原因之一.npm团队做了很多的工作,以确保 ...

  7. 深入浅出 npm yarn pnpm 包管理机制

    前端开发者们每天都在接触 xxx install,包管理器是必不可少的工具. 本文会以尽量简洁的语言来描述当下主流包管理工具 npm.yarn.pnpm 的管理策略以及进化史,不涉及任何晦涩的代码. ...

  8. grunt gulp npm yarn pnpm webpack

    Grunt 生态系统非常庞大,并且一直在增长.由于拥有数量庞大的插件可供选择,因此,你可以利用 Grunt 自动完成任何事,并且花费最少的代价.如果找不到你所需要的插件,那就自己动手创造一个 Grun ...

  9. nodejs第五天 npm yarn pnpm 包管理器

    文章目录 npm package.json 安装包 全局安装 配置镜像 yarn 安装使用 镜像配置 pnpm 使用 镜像 npm node中的包管理器叫做npm(node package manag ...

最新文章

  1. 阿里开发者招聘节 | 面试题14:如何实现两金额数据相加(最多小数点两位)...
  2. 将 Silverlight 与网页集成【转载】
  3. java sqlite mybatis_Spring boot + Mybatis + SQLite 搭建blog API
  4. Java实体映射工具MapStruct
  5. matlab多变量频域设计工具箱,10.4.3用MATLAB实现连续系统的频域分析.ppt
  6. 【蓝桥杯嵌入式】【STM32】8_USART之响应上位机指令发送实时时间
  7. 什么是python基础教程-最好的Python入门教程是?
  8. 数据库备份工具mysqldump重要参数详解
  9. 微信小程序下载文件ios无法预览问题--解决方案
  10. 【深度学习笔记】理解Bicubic,双三次插值
  11. 视频加水印的软件有哪些?这几款软件可以无痕去水印
  12. java 选股源码,珍藏多年的「高成功率」选股器分享(附源码)
  13. 项目管理知识体系指南(九)项目沟通管理
  14. 快手极速版源码 - autojs 自阅
  15. 猿圈 题库_百度传课携手猿圈 接入题库及测评服务
  16. Ubuntu16.04在4K显示器中,字体太小,进行调整
  17. vm打开虚拟机提示“未能启动虚拟机“解决方案
  18. 戴尔INSPIRON 14-7472 DDH40 DDH50 LA-F251P r1.0笔记本图纸
  19. React Native 拆分业务包 bundle拆包 分包 携程方案
  20. Android开发本地及网络Mp3音乐播放器(十四)网络音乐下载功能实现

热门文章

  1. 以抖音为例,解构数据分析三个核心原理
  2. 常用计算机键盘系列快捷键、命令行行快捷键、qq快捷键、IE浏览器快捷键
  3. 讲道理,你真的懂浏览器原理吗?
  4. CSS实现不规则图形的立体效果
  5. 第9届全国大学生 GIS 技能大赛下午试题详解(上)附练习数据
  6. 第22题:t分钟后,是几点几分
  7. Endnote X9 使用指南
  8. 计算机无纸化考试流程,中级考试的小伙伴必须关注的!!调整无纸化考试步骤...
  9. 网站加速与Linux服务器防护
  10. 转载 各种主流音频/视频编码格式介绍