在npm v5.0中还没有纱线的function?

npm v5.0带来了很多目前在纱线上的function,包括:

  • 安装 – 默认保存
  • package-lock.json会自动创build(我假设locking文件确保一致的安装)
  • 自动回退到离线模式

从我的理解,什么纱提供另外是并行下载(因此更快的下载时间)。 我没有看到在npm博客文章中提到的 。 除此之外,还有使用纱线的其他好处吗?

纱线仍然是写作,比npm稍快。 托马斯·沙夫(Thomas Schaaf)根据performance进行了比较 ,可以直接在这里查看 。 目前,纱线在每次测量时都会下降,尽pipe不会有太大的变化。 这可能来自并行下载和高级caching,尽pipe这纯粹是猜测,我还没有在源头上挖掘,以找出时间不同的原因。

然而,你失去了性能,你会获得兼容性。 有几个软件包不能和Yarn一起正确安装,比如semantic-ui ,所以你需要使用npm。

由于npm是Node环境规范包pipe理器,因此大多数包都将经过testing,可用于npm。 纱线也不能说是一个相对的局外人。

总的来说,我认为npm @ 5比其前辈要好得多,除非Yarn带来了新的function,特别是如果与所有软件包的兼容性对您都很重要的话,我认为这样做是合理的。

这是个好问题!

实际上npm被推动有所有这些functionyarn提供。 现在他们几乎是一样的:

  1. caching是完全重写,它甚至离线工作
  2. --save默认启用
  3. package-lock.jsonlocking你的版本,它不像npm shrinkwrap package-lock.json是可选的

npm@5速度也取得了很好的进展,但是yarn速度还是比较快的。 这里是简单的数字。 让我们用vue-starter进行testing,它有大约850个包可供下载。 npm的时间并不是很差,新鲜出炉的时间是42秒。 caching准备就绪后,只需要30秒即可完成安装。

yarn相比:35秒没有caching,20秒caching到位。 对我来说,这个时间差距足够重要,仍然使用yarn作为主要工具。

其实,我写了一篇涵盖所有这些主题的文章: https : //medium.com/wemake-services/is-yarn-still-a-thing-3c6886410c83