The 2015 Node.js Overview
Events of 2015
About io.js
Appendix
Events of 2015
Events of 2015
- 2015/01:Node.jsからforkされた、io.jsのver1.0リリース
- 2015/01:TypeScriptのver1.4リリース
- 2015/02:Node.jsのver0.12リリース
- 2015/05:io.jsのver2.0リリース
- 2015/05:HTTP/2 の RFC7540 が公開
- 2015/06:ECMAScript 2015の仕様が承認された
- 2015/07:TypeScriptのver1.5リリース
- 2015/08:io.jsのver3.0リリース(Node.jsとのMerge向け)
- 2015/09:Node.jsがio.jsとMergeして、ver4.0リリース
- 2015/09:TypeScriptのver1.6リリース
- 2015/10:最初のLTSとして、Node.jsのver4.2リリース
- 2015/10:Node.jsのver5.0リリース
- 2015/11:TypeScriptのver1.7リリース
Main Events for Node.js
The timeline of Node.js
About io.js
Why fork from Node.js
Why fork from Node.js
- Node.jsのプロジェクトが、PRやIssueが放置気味で停滞気味だった
- サポートポリシー的に新しいバージョンをリリースをしづらい
- V8 Engineの更新をしたいが、新しいバージョンのリリースが必要になるため更新しづらい
それなら fork するよ
io.js 誕生!
- io.jsには、Node.jsのメインコミッタも何人か参加
- オープンガバナンスモデルでプロジェクトを運営することを明記
- 週一程度のHangoutでのミーティングの様子をyoutubeにアップして公開している
- semver(semantic versioning)準拠のバージョニング
- V8のバージョンを着実にサポートする
Merge to Node.js
- Node FoundationがLinux Foundationの協業プロジェクトとして発足し、Node.jsとio.jsがMergeされることになった
- 今まで Fulltime CommitterはJoyentから給料が出ていたが、Node Fundationが設立されてそちらから給料が払われることになった
- サポートポリシーが見直しされて、Long Term Support(LTS)とStableの各versionは別に管理されるようになった
Old version
偶数の安定バージョンを最新を含む2バージョンまでサポートする
新しい偶数の安定バージョンが出た(v0.14)場合、古い安定バージョン(v0.10)はその時点でサポートされなくなります。これが今までの Node.jsの中で痛みを伴う部分で、新しいバージョンのリリースを難しくしていた。
New version
LTSはリリースしてから2年半は確実にメンテナンスを行う
Long Term Support(LTS) version と stable version を別に管理することにしたことで、サポート期間が明確になった。
Enterprise向けとEgdeな人向けとも言える
Support Policy
Node.js LTS Release Schedule
Node.js LTS Release Schedule
Release | LTS Start | Maintenance Start | LTS End |
---|---|---|---|
v0.10 | (current) | 2015-10-01 | 2016-10-01 |
v0.12 | (current) | 2016-04-01 | 2017-04-01 |
v4.2 | 2015-10-01 | 2017-04-01 | 2018-04-01 |
v.Next | 2016-10-01 | 2018-04-01 | 2019-04-01 |
Appendix
semver(semantic versioning)
バージョンナンバーは、MAJOR.MINOR.PATCH とする。
バージョンを上げるには、以下のルールに従う。
- APIの変更に互換性のない場合は MAJOR を上げる
- 後方互換性があり機能性を追加した場合は MINOR を上げる
- 後方互換性を伴うバグ修正をした場合は PATCH を上げる
ECMAScript 2015
ES6と呼ばれていたもの
ECMAScript 2015 features
- let, const keyword
- class syntax
- Default Parameters
- Rest Parameters
- Arrow Functions
- Generator Functions
- Array Spread
- Destructing Assignment
- Template Strings
- Promise, Symbol, Reflect, Proxy, Set, WeakSet, Map, WeakMap Objects
Links
The 2015 Node.js Overview
By Hiroki Horiuchi
The 2015 Node.js Overview
- 825