写点什么

npm 5.0 普遍提升了性能

  • 2017-06-01
  • 本文字数:939 字

    阅读完需:约 3 分钟

npm 公司发布了其软件包管理工具 npm 5.0 版,这为公司多年的规划和累月的编码工作划上了一个句号。npm 5 提升了性能,使其保持了对同类软件的竞争力。

Npm 公司通过博客帖子宣布新的软件包管理工具发布,并称npm 5 是“一次相当大的进步,显著地改进了几乎所有常见情况下的性能”。该发布并非仅是给出了新的主版本号,而主要是提供了一些新的特性和突破性改进。

据博客帖子介绍,npm 5 中的一个重大改进是针对缓存的性能和行为,例如对离线行为的改进。现在npm 会在机器离线时使用本地缓存,而不是去反复地尝试访问网络。开发人员可以通过设置 --prefer-offline--prefer-online等选项定制缓存的使用方式。

但是这一重大改进将会导致全部已有的缓存失效,开发人员需要重新下载软件包。因此应确保在升级 npm 时具有高速的网络连接。

npm 5 还提供了其它的一些新特性,其中最显著的改进是--save成为了默认行为。以前,要将完成安装的软件包保存在 package.json 文件中,开发人员需要发布命令:

npm install --save虽然开发人员肯定有意向去执行软件包的保存行为,但是实际在命令执行时还是需要做双向确认(Opt-in)。在 npm 5 中,即使不明确指定该标识,软件包也会保存到 package.json 中。但麻烦的一面是,如果开发人员不想保存该软件包,需要在命令中明确指定--no-save标识。

在社区中,部分开发人员倾向于使用 Yarn 软件包管理工具,它是另一个很有前途的竞争者。Yarn 的存在将促使 npm 更加努力,激发 npm 在性能上的改进。HackerNews 用户 chrisweekly 写道:“感谢 Yarn,帮助社区看到了真相(译者注:原文为“皇帝的新装”)。回想起来,很明显默认确定性构建的确是核心需求”。

npm 公司 CEO Isaac Schlueter指出,对 npm 5 的改进已经进行了很长的时间,并非是针对 Yarn:

可以说,npm 5 中的所有改进早在多年前就已做出了规划。鉴于已有大量用户依赖于 npm 工具,我们必须慎重对待重大更改。社区在 Yarn 的使用上给出了一个强烈信号,虽然这表明我们正走在正确的道路上,但从外部看上去,这一事件却仿佛是 npm 改进的“催化剂”。

无论改进是社区推动或是公司先行考虑到的,开发人员终将从中受益,能用上更快更好的工具。 GitHub 上提供了完整的 npm 5 发行说明。

查看英文原文: Npm 5.0 Boosts Common Sense Performance

2017-06-01 18:263128
用户头像

发布了 227 篇内容, 共 75.0 次阅读, 收获喜欢 28 次。

关注

评论

发布
暂无评论
发现更多内容

数据中台建设方法论

数据社

大数据 数据中台

架构师训练营 week10 summary

Nick

解决 WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED

邵俊达

Linux SSH

微服务和DDD总结

周冬辉

微服务 DDD

央行清算总中心与三家银行签署区块链福费廷交易平台合作协议

CECBC

区块链技术 人民银行

anyRTC 4.0 以心铸造,以梦相承

anyRTC开发者

anyRTC 4.0 官网升级

django-admin和manage.py用法

BigYoung

Python django django-admin manage.py

什么是死锁?如何解决死锁?

奈学教育

什么是死锁?如何解决死锁?

古月木易

死锁

微服务架构的思考

Season

华章科技好书5折优惠,满99再减10元

华章IT

Python AI 数字化转型 Java 25 周年 计算机科学丛书

聊聊数据库

数据社

数据库 大数据

CDH部署指南

数据社

大数据 CDH

Jira 和 Confluence 企业最佳部署方式

Atlassian

项目管理 敏捷开发 Atlassian Jira

报警不响,黄金万两的“稳定性成熟度”干货

滴滴普惠出行

微服务

石刻掌纹

只加两行代码,为什么用了整整两天时间?

程序员生活志

编程 bug

35岁腾讯员工被裁员感叹:北京一套房,存款700多万,失业好焦虑

程序员生活志

程序员

Flink 支持的重启策略有哪些

古月木易

flink

Django如何编写自定义manage.py 命令

BigYoung

Python django manage.py

数据库的那些事

数据社

数据库 大数据

凉了!张三同学没答好「进程间通信」,被面试官挂了....

小林coding

操作系统 计算机基础 进程

一文了解greenplum

数据社

数据库 greenplum MPP

架构师训练营 week10 homework

Nick

week10 学习总结

任小龙

Flink 支持的重启策略有哪些

奈学教育

flink

Kubernetes 网络通讯模型解析

ninetyhe

关于微服务架构的思考和认知

任小龙

架构师训练营第十周作业

一剑

一周信创舆情观察(8.3~8.9)

统小信uos

第十周作业

方堃

npm 5.0普遍提升了性能_JavaScript_David Iffland_InfoQ精选文章