本文来源于我在InfoQ中文站翻译的文章,原文地址是:http://www.infoq.com/cn/news/2015/06/angular-2-react-native-roadmap

近日,npm 3.0 Beta版公布了,该版本号差点儿全然重写了安装器,为在Windows上使用Node.js的用户带来了利好消息。

Rebecca Turner在公布声明中说到,npm团队“非常高兴且自豪地”公布了3.0 Beta版,而且“希望能与npm用户社区合作以便尽快公布生产版本号”。

Turner是CLI程序猿,负责差点儿全部的变更,她说此次更新花费了大约8个月的时间。

npm最重要的变更之中的一个就是依赖的更新。借助于水平依赖能够解决太多依赖导致Windows文件系统崩溃的问题,由于过深的路径会造成Explorer和其它标准工具无法处理的难题。

Turner说到:

如今,依赖将会尽可能依照水平方式进行安装,全部依赖,以及依赖的依赖都会安装到项目的node_modules文件夹中,而且不再嵌套。

假设两个或多个模块的依赖存在冲突。那么模块之间才会出现嵌套的情况。

此次更新还意味着安装“从一開始”就是去重的,Git deps是去重的,甚至命令也是“去重”的。

Turner向InfoQ表示,作为一个用户,她觉得最激动人心之处就是自己主动去重的deps,这会“极大降低安装包的大小”。

其它命令的行为也会受到依赖更新的影响。在此次更新中,当使用npm uninstall命令进行模块卸载时。系统会删除该模块中不被其它模块须要的全部依赖,而过去则是删除安装在该模块下的依赖。

值得注意的是。npm自身的依赖也是“水平、去重。且打包的”,因此npm 3.0无法由npm 2.0公布或打包。

安装器的其它一些变化还有改进了npm对于包的运行步骤。在之前的版本号中,安装器在决定处理包时会立马运行各项步骤。在3.0中,安装器会同一时候对全部包运行各项步骤。在继续之前会等待每个阶段的完毕。对于开发人员来说,这么做能够消除非常多竞态条件:让代码的编写变得更加轻松。

从实际使用的角度来看,Turner说此次更新意味着诸如生命周期脚本等将会变得更加可预測且出错的可能性更低。同一时候也能更加轻松地实现诸如新的--dry-run标志等特性。Turner说这会让开发人员在运行之前就能看到将要发生的事情。同一时候详尽的日志会展示出安装器在进行改变前后的完整树形结构。

总而言之,Turner希望npm 3.0 Beta版能够降低Bug的出现,而且为开发人员提供一个更加稳定的平台。

不出所料的是,npm 3.0 Beta版将会持续一段时间,直到团队“觉得它已足够稳定,而且评估过它对社区造成的影响”之后才会公布正式版。

Turner还指出,由于此次差点儿是全然重写,因此还会存在一些Bug,该Beta版仅仅能用于“每天使用的非关键的CI环境”。不能用于“产品维护或是持续部署”。

对于想要为npm贡献力量的InfoQ读者来说。方式有非常多:常规的pull requests、Bug报告、文档与代码变更的特性请求等,这些都是npm所欢迎的。能够在其问题追踪器上进行。除了直接的贡献之外。npm团队也非常欢迎大家编写教程与文章。形式诸如“怎样解决某个问题以及使用了哪些模块”,优秀的内容会被npm Weekly所引用。

查看英文原文:NPM 3 Beta Brings Good News for Windows Users

NPM 3 Beta为Windows用户带来利好消息相关推荐

  1. 计算机电脑Windows系统中了faust勒索病毒,phobos勒索家族介绍,Windows用户注意

    随着计算机技术的不断发展,为我们工作生活提供了更多的便利性,但同时也让网络中存在各种安全威胁,最近收到很多Windows用户的求助,称计算机Windows系统被.faust后缀的勒索病毒攻击.Faus ...

  2. 苹果还为 Windows 版 Chrome 用户带来 iCloud 密码浏览器扩展

    除了 iTunes,苹果在微软操作系统上的另一款重要产品便是 iCloud 同步客户端,用户可以用它来同步 iCloud 中的文件.照片和邮件.现在,苹果还为 Windows 版 Chrome 用户带 ...

  3. Windows用户安全小技巧

    本文适用于具有管理员用户和标准用户的所有Windows系统,如Windows 2000以上的操作系统,UAC是Windows Vista以上版本的具有功能. 新安装的Windows系统或者新购买的含有 ...

  4. 为 Windows 用户准备的简明 Linux 词汇表

    Linux 白皮书 本词汇表简明地解释了 Linux 产品常用的许多术语.首字母缩写词和缩写的意思和意义. 关于本词汇表 对于初涉 Linux 世界的 Microsoft Windows 用户而言,有 ...

  5. node php环境变量配置,关于NodeJS、NPM安装配置步骤(windows版本) 以及环境变量的介绍...

    本篇文章主要介绍了NodeJS.NPM安装配置步骤(windows版本) 以及环境变量详解,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 1.windows下的NodeJS安装是比较方便的(v0. ...

  6. 游戏厂商利好消息:吃鸡人气下滑严重 新一轮瓜分游戏用户盘子来啦

    2017年,吃鸡.王者荣耀风靡一时,但是在商业市场,爆款的出现,后面就会出现大量的同类型的产品竞争,到今年上半年,吃鸡.王者荣耀者一类游戏已经出现疲势,对于吃鸡人气下滑严重,这是游戏常规的发展趋势. ...

  7. 改变 Windows 用户文件夹默认位置

    https://social.microsoft.com/Forums/zh-CN/b6602d50-1a75-42d2-90bd-3dc6c2c82147/programdata?forum=win ...

  8. 减少认知过载可以为用户带来更佳体验

    本文讲的是减少认知过载可以为用户带来更佳体验, 最棒的用户体验是不会让用户察觉到的.它使得界面流畅易用,但成百上千的重要设计决策都是出于引导(用户),引起(用户)兴趣以及规避风险的目的. 如果用户体验 ...

  9. 苹果M1实力太强了,通过.ipa文件的方式在M1 MacBook Air上运行那些尚未在Mac App Store上架的iOS/iPadOS应用程序,Windows用户纷纷种草

    外媒The Verge进行的实测结果显示,通过.ipa文件的方式在M1 MacBook Air上确实可以运行那些尚未在Mac App Store上架的iOS/iPadOS应用程序,其在测试中成功运行了 ...

最新文章

  1. 我的java开发规范
  2. 单链表的几个基本操作
  3. ie6下padding bug
  4. 负载均衡策略_负载均衡策略
  5. python self
  6. springaop事务逻辑原理_搞懂Spring AOP,这一篇就够了
  7. C# 跨平台的支付类库ICanPay
  8. eval 函数 代替函数_eval()函数以及JavaScript中的示例
  9. [转载]舌尖上的清华 I
  10. python 解方程 sympy_Python数据处理篇之Sympy系列(五)---解方程
  11. Spring Boot学习总结(18)——Springboot 2.0选择HikariCP作为默认数据库连接池的五大理由
  12. python代码示例-Python numpy.cov()用法及代码示例
  13. django 类取消csrf_最新Django全套教程 半个月搞定Django
  14. QQ空间相册批量下载qq相册批量下载专家比骨头小林还厉害
  15. 2021年数字IC面经---平头哥
  16. OEM和ODM的区别
  17. 三做一年级算术题-吐槽挖雷
  18. Aix平台打开异步io需要fileset支持
  19. 阿里OOS的简单使用
  20. 《Linux那些事儿之我是USB》我是U盘(15)冬天来了,春天还会远吗?(一)

热门文章

  1. 漫画:什么是 “抽象工厂模式” ?
  2. 10个 Python 程序员,9个不合格?
  3. 当产品上线前出了 Bug | 每日趣闻
  4. mpvue开发小程序所遇问题及h5转化方案
  5. crontab 命令
  6. sersync 文件同步系统(一) 服务初步搭建
  7. 国外10大IT网站和博客网站
  8. Java多线程(九)—— interrupt()和线程终止方式
  9. Skype for Business Server 2015-06-持久聊天服务器-3-配置
  10. spring配置datasource三种方式