50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

NPM 3 Beta 为 Windows 用户带来利好消息

  • 2015-07-05
  • 本文字数:1194 字

    阅读完需:约 4 分钟

近日,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

2015-07-05 03:192025
用户头像

发布了 88 篇内容, 共 272.6 次阅读, 收获喜欢 9 次。

关注

评论

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

电阻为什么都是4.7kΩ、5.1kΩ,而不是整数5kΩ?

元器件秋姐

科普 元器件 元器件知识 电阻 电阻值

黑龙江哈尔滨市等保测评机构有五家啦!名单看这里!

行云管家

等保 机构 等保测评 哈尔滨

墨天轮【第二届数据库掌门人论坛】圆满收官 | 含嘉宾精彩观点回顾

墨天轮

数据库 Serverless TiDB oceanbase 国产数据库

利用DUCC配置平台实现一个动态化线程池

京东科技开发者

spring 多线程 代码 动态线程池 ducc

更专业、安全、可控!政企都选择WorkPlus私有化部署

BeeWorks

国际财务系统基于ShardingSphere的数据分片和一主多从实践

京东科技开发者

数据库 数据分片 ShardingSphere 企业号 2 月 PK 榜 一主多从

QCon演讲实录(下):多云管理关键能力实现与解析-AppManager

阿里云大数据AI技术

大数据 运维 多云服务 多云管理

用Docker在本地搭建nginx静态服务器&反向代理

致知Fighting

Java Docker 后端

关系型数据库的架构演变

石臻臻的杂货铺

数据库 架构

90%企业在探索的敏捷开发怎么做?极狐GitLab总结了这些逻辑与流程

极狐GitLab

DevOps 敏捷开发 持续集成 CI/CD 持续交付

Maven Shade插件relocation修改类常量的问题

Laughing

Java 后端 Maven-Shade-Plugin RelocationClass

WorkPlus即时通讯集成工作平台,提效企业一体化管控

BeeWorks

安全可信| 首批!天翼云智算平台率先通过可信算力服务评估

天翼云开发者社区

使用自定义的初始化方法宏(OC)

刿刀

程序员超级干货书单:技术人必看

引迈信息

程序员 敏捷开发 书单

使用 Ingest Pipeline 在 Elasticsearch 中对数据进行预处理

Se7en

大模型为什么是深度学习的未来?

GPU算力

人工智能 深度学习 大模型

飞桨特色产业级模型库助力AI开发与落地更简单

飞桨PaddlePaddle

paddle 开源 模型 飞桨

飞桨框架v2.4 API新升级!全面支持稀疏计算、图学习、语音处理等任务

百度Geek说

API 框架 3D点云 企业号 2 月 PK 榜 Sparse Transformer

多款社交黑马海外霸榜,融云全球通信服务护航登顶

融云 RongCloud

基于开源IM即时通讯框架MobileIMSDK:RainbowChat v8.4版已发布

JackJiang

即时通讯 即时通讯IM

完美主义者友好!合合信息旗下扫描全能王“智能擦除”照片中的杂物

合合技术团队

人工智能 图片 文本

连续两年榜上有名!TDengine 荣获墨天轮“2022 年度时序数据库”奖项

TDengine

数据库 tdengine 时序数据库

百分点科技宣布接入百度文心一言能力 数据科学基础平台获领先AI技术加持

百分点科技技术团队

英特尔研究院探索负责任的生成式AI,让AI应用真正惠及大众

科技之家

拥有了瓴羊Quick BI,企业的数据分析变得更好

巷子

什么是网关型堡垒机?与运维审计堡垒机有什么区别?

行云管家

堡垒机 堡垒机网络安全

可靠、稳定、安全,龙蜥云原生容器镜像正式发布!

OpenAnolis小助手

开源 容器 云原生 镜像 龙蜥社区

瓴羊Quick BI可视化功能,满足企业的数据分析需求

对不起该用户已成仙‖

直播 | StarRocks 实战系列第二期--导入优化&问题排查

StarRocks

数据库 开源

炸了!3年图片都没了

艾小仙

NPM 3 Beta为Windows用户带来利好消息_JavaScript_James Chesters_InfoQ精选文章