本文来源于我在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

最新文章

  1. KVC&&&KVO
  2. Java的CLASSPATH,趁还没忘赶紧写点
  3. 【NOIP2009 T3】 最佳贸易 (双向SPFA)
  4. review again and again
  5. word 批量删除书签
  6. HTML5-WebSocket技术学习(2)
  7. mysql sql技巧篇
  8. Cassandra 的压缩策略STCS,LCS 和 DTCS
  9. JDBC-ODBC桥接方法连接Excel数据库的方法
  10. python学习笔记--Django入门四 管理站点--二
  11. IOS 下雪动画
  12. 【Testin实验室】MoiMark安卓中国终端体验性能排行榜(11月报)
  13. 用户权限模块之oauth2.0
  14. springCloud系列教程01:Eureka 注册中心集群搭建
  15. 【重磅】微软开源自动机器学习工具 - NNI
  16. Windows和Office激活工具Kmsauto Net
  17. 关于vue的混入使用
  18. 【CF1042D】Petya and Array 离散化+树状数组
  19. 蓝桥杯  历届试题 幸运数  dfs
  20. element-ui 2.7.2版本使用 表格展开行 功能遇到的奇葩问题?

热门文章

  1. 悼念512汶川大地震遇难同胞——老人是真饿了 hdu 2187
  2. Elasticsearch之CURL命令的PUT和POST对比
  3. C#用Microsoft.Office.Interop.Word进行Word转PDF的问题
  4. node的api
  5. 前端开发之旅- 移动端HTML5实现文件上传
  6. Hive扩展功能(五)--HiveServer2服务高可用
  7. 文件下载之ServletOutputStream
  8. day02 python
  9. PC、h5项目接入第三方支付宝扫码登录、扫码付款
  10. 经典的GDB调试命令,包括查看变量,查看内存