首个诞生于长期支持计划的版本Node.js 4.2 “Argon”正式发布
Node.js基金会发布首个诞生于工作组 LTS(长期支持) 计划的版本 Argon 。
Argon,也就是Node.js 4.2,为我们带来多项改进并进行了重大更新。此次发布的Node.js更新了 第56版ICU (Unicode国际化组件),在这一版中增加了 Unicode 8.0 的数据集,减少了ICU的数据尺寸并改为基于排序的字符串搜索(StringSearch)。
与此同时,在4.2中也将npm升级为 2.14.7 ,并提供一个新的npm组织 用户指南 ,这意味着 json
请求的MIME类型不再默认为 application/json
了。
新版Argon的发布固然是好事,不过也伴随着一些小 问题 ,例如:在DNS查询时调用 dns.setServers()
会导致进程崩溃并抛出fail断言;在 beforeExit
期间未引用计时器运行的bug。
核心团队成员Trevor Norris在评论未引用计时器问题时说道:“我与Jeremy Whitlock、Jeremiah Senkpiel和Fedor Indutny一起检查过这个问题,它就像是爱丽丝梦游仙境里的兔子洞一样奇幻,”他们最终决定重新定义 beforeExit
的行为使其变得更好。
在Reddit的讨论《 Node.js v4.2.0 will be first LTS release 》中,大家尚未对于“长期发布支持的意义”这一议题统一意见。
‘LTS’到底能给Node带来哪些改变呢?我只能说只有当我有时间升级或开始一个新项目的时候才会升级到最新的稳定版。大部分人是不是根本不知道Node的运行原理?或者说他们打算去使用一些老版本Node不支持的功能?
在博客文章《 Essential Steps: Long Term Support for Node.js 》中,Node.js基金会技术指导委员会主席Rod Vagg说:
你可能认为这些做法与开源领域传统格言“早发布,常发布”格格不入,并且违背了企业应用开发与运营团队的基本要求。为Node打造LTS计划的意义在于,可以在现有的稳定发布周期的基础之上,根据一个可预测的时间表来发布比新版本更新的版本,而且这个时间表需要有一个明确定义支持扩展的生命周期。
LTS的第一个版本以惰性气体命名,预示着未来的命名都将基于元素周期表中的元素进行命名,以此来与Node.js的常规发布进行区分。命名不按照气体化学反应的强烈排序,而是根据元素首字母在字母表中的顺序决定命名顺序。
查看英文原文: Node.js 4.2 "Argon" Released Under Long Term Support Plan