四时宝库

程序员的知识宝库

JavaScript npm软件包管理器发布5.0版本

npm开发团队在博客中写到,这几个月来对于npm年轻的团队而言考验极大。但npm5取得了相当大的进步,性能得到了显著提升,修复了众多的bug,带来更好容错。

主要功能包括新的标准化锁文件功能;改进保存和安装功能;两个新脚本Git依赖性增强;缓存重写等。

一些突破性变化

  • 现有的npm缓存将不再使用,需要重新下载缓存的软件包。

  • npm安装./packages/subdir现在将创建一个符号链接,而不是常规安装。file://path/to/tarball.tgz不会更改,只有目录符号链接。

  • npm将默认保存。另外,除非存在npm-shrinkwrap.json,否则将自动创建package-lock.json。

  • Git依赖关系通过用户/repo#semver支持semver:^ 1.2.3

  • 使用准备脚本的Git依赖将安装其devDependencies,并且npm安装在打包之前在其目录中运行。

  • npm缓存命令已被重写。

  • --cache-min和--cache-max已被弃用。

  • 在离线时运行npm将不再需要重试网络请求。如果可能,npm将立即退回到缓存,否则失败。

  • 包锁不再排除无法构建的可选依赖关系。这意味着package-lock.json和npm-shrinkwrap.json应该是跨平台的。

  • 如果生成了针对注册表A的程序包锁定,并切换到注册表B,那么现在,npm将尝试从注册表B而不是A安装程序包。如果要对不同程序包使用不同的注册表,请使用范围特定的注册表(npm config set @myscope:registry = https://myownregist.ry/packages/)。不再支持不同的未显示包的不同注册表。

  • 收缩包装和包装锁不再警告并退出而不保存锁定文件。

  • 只有当文件扩展名为.tar,.tar.gz或.tgz时,才能安装本地tarball。

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言
    友情链接