Fork me on GitHub

2015-01-20のJS: TypeScript 1.4、io.js 1.0、bluebird 2.7のglobal rejection events

Edit on GitHub 編集履歴を見る

JSer.info #211 - TypeScript 1.4がリリースされました。

以前TypeScript and the Road to 2.0 - TypeScript - Site Home - MSDN Blogsのロードマップで書かれていたように、Union Types、Type Aliases、Const Enumsの追加など機能が追加されています。

ES6の構文サポートの改善、ES6のコードを出力するモードも追加されていて詳しくは以下を見るといいです。

また、TypeScriptのCompiler APIについてのドキュメントが加筆されています。


Node.jsのforkであるio.jsの1.0.0がリリースされました。

io.js - FAQにも書かれていますが、semverなのでNode.jsからのメジャーアップデートという意味で1.0なので、production-readyだから1.0という意味ではないです。

JSer.info 4周年 - JSer.infoでも少し書いていましたが、オープンガバナンスモデルを元に予測可能なリリースサイクルの提供を目的としていて、これにより新しい技術(ES6への対応)などを取り入れやすくする等が主な目的としてあります。


Promiseの実装ライブラリであるbluebird v2.7.0がリリースされました。(v2.8.0まででています)

大きな機能としてGlobal rejection eventsが追加されました。

これは、グローバルにイベントを登録しておくとunhandled rejection(.catch等でエラー処理を行わない場合にエラーが握りつぶされてしまう現象)をキャッチすることができるようになっています。

process.on("unhandledRejection", function(reason, promise) {
    // See Promise.onPossiblyUnhandledRejection for parameter documentation
});

process.on("rejectionHandled", function(promise) {
    // See Promise.onUnhandledRejectionHandled for parameter documentation
});

これに類似する機能は仕様としても議論されていて、以下にまとめられています。


ヘッドライン


Socket.IO — Socket.IO 1.3.0

socket.io/blog/socket-io-1-3-0/

node.js JavaScript library ReleaseNote

Socket.IO 1.3.0リリース。


harmony:specification_drafts [ES Wiki]

wiki.ecmascript.org/doku.php?id=harmony:specificationdrafts#january152015draftrev31

ECMAScript spec ReleaseNote

ECMAScript 6のDraft Rev 31リリース。
議論検討するsuper()についての記述の変更が中心


ESLint 0.12.0 released - ESLint

eslint.org/blog/2015/01/eslint-0.12.0-released/

JavaScript ECMAScript Tools ReleaseNote

ESLint 0.12.0リリース。
ES6の一部をサポート、JSXのフルサポート。
それに併せてルールがJSXでも動くように修正等


Release 1.17.0 · jquery/qunit

github.com/jquery/qunit/releases/tag/1.17.0

JavaScript testing ReleaseNote

QUnit 1.17.0リリース。
HTMLレポータの改善。


Announcing TypeScript 1.4 - TypeScript - Site Home - MSDN Blogs

blogs.msdn.com/b/typescript/archive/2015/01/16/announcing-typescript-1-4.aspx

TypeScript ReleaseNote

TypeScript 1.4リリース。
Union Types、Type Aliases、Const Enumsの追加。
ES6の構文サポートの改善、ES6のコードを出力するモードの追加等


io.js/CHANGELOG.md at v1.x · iojs/io.js

github.com/iojs/io.js/blob/v1.x/CHANGELOG.md#2015-01-14-version-101

node.js ReleaseNote

Node.jsのforkであるio.js 1.0リリース。


Release v2.7.0 · petkaantonov/bluebird

github.com/petkaantonov/bluebird/releases/tag/v2.7.0

Promises library ReleaseNote

bluebird 2.7.0リリース。
process.on("unhandledRejection", fn)という感じでグローバルにunhandled Rejectionをキャッチ出来るイベントを登録できるように。


Release v1.10.0 · jscs-dev/node-jscs

github.com/jscs-dev/node-jscs/releases/tag/v1.10.0

JavaScript Tools ReleaseNote

JavaScriptコードスタイルチェックツールjscs 1.10.0リリース。


Release 5.0 “Pravda vítězí” · postcss/autoprefixer

github.com/postcss/autoprefixer/releases/tag/5.0.0

CSS Tools ReleaseNote

autoprefixer 5.0リリース。
PostCSS 4.0とBrowserslistを使用するように、object-fitやCSS Shapesなどの新しいプロパティに対応


アーティクル


ServiceWorker を使った XHR のモックテスト - Block Rockin’ Codes

jxck.hatenablog.com/entry/response-injection

JavaScript ServiceWorker

ServiceWorkerを使ったXHRのモック。
onfetchに登録すれば、XHR等のリクエストに対してhookができるので、事前に定義しておいたレスポンスを返すようにする。
ServiceWorkerの登録プロセスについて


What's new in CSS Selectors 4 | grack

grack.com/blog/2015/01/11/css-selectors-4/

CSS

CSS Selectors Level 4で追加された要素についての紹介


embona – ブラウザで動くBonanzaを作ってみた(その1) » nmi.jp

nmi.jp/archives/763

JavaScript

Emscriptenを使って将棋プログラムを移植するまでの流れ。
ヒープメモリ不足、ファイルの読み込み、デバッグ方法、標準入出力の扱い、Asyncifyでのメインループ処理など


サイト、サービス


VersionEye - Notification System for Software Packages

www.versioneye.com/

package webservice

npmやgem等色々な言語のライブラリの更新チェック、依存関係のチェック等が出来るサービス。
ファイルアップロードとかAPI等もある。
パッケージをフォローしてRSSで見たりできる


ソフトウェア、ツール、ライブラリ関係


Esperanto demo

esperantojs.org/

JavaScript ECMAScript library node.js Tools

ES6 modulesのコードをCommonJS、AMD、UMDに変換するコマンドラインツール。Node.jsモジュールとしても利用できる。


fdecampredon/rx-flux

github.com/fdecampredon/rx-flux

Flux library

RxJSベースのFluxアーキテクチャの実装ライブラリ


RubaXa/Sortable

github.com/RubaXa/Sortable

JavaScript library

D&Dで要素を動かせるsortableライブラリ。
jQuery等の依存がないライブラリ


ECharts · Home

ecomfe.github.io/echarts/index-en.html

JavaScript グラフ library

Baidu EFEのグラフライブラリ。
種類が豊富に用意されていて、Canvasを管理するのにZRenderというライブラリを使っている


winterbe/streamjs

github.com/winterbe/streamjs

JavaScript Java library

Java 8 Streams APIをインスパイアなStreamライブラリ


eventualbuddha/decaffeinate

github.com/eventualbuddha/decaffeinate

CoffeeScript JavaScript

CoffeeScript to ES6に変換するツール


gobblejs/gobble

github.com/gobblejs/gobble

JavaScript Tools Grunt

JavaScriptビルドツール。
Gruntはビルドツールではないため、Gruntと共存する形でも使える。
またデバッガビリティを優先して開発していて、pluginも変に複雑化しないように役割をシンプルにしてる


ForbesLindesay/sync-request

github.com/ForbesLindesay/sync-request

JavaScript node.js HTTP library

同期的なHTTPリクエストを行うライブラリ


この記事へ修正リクエストをする
記事を紹介する