Fork me on GitHub

2015-12-07のJS: Jasmine 2.4.0、Redux入門、Firefox Platform Status

Edit on GitHub 編集履歴を見る

JSer.info #256 - Jasmine 2.4.0がリリースされました。
テストをランダムな順番で実行する設定が追加されています。

例えば、次テストは実行順序に依存しています。そのためランダムな順番で実行するとテストが落ちます。

var count = 0;
describe("random 1", function () {
    it("should be 1?", function () {
        count++;
        expect(count).toBe(1);
    });
});
describe("random 2", function () {
    it("should be 2?", function () {
        count++;
        expect(count).toBe(2);
    });
});

CLIだと上手く動いてないですが、HTMLレポーターでrandomのオプションを有効化するとランダム実行をしてくれます。

screenshot random

実行して失敗した時にランダムのseed値を出してくれるので、これでランダムを再現することが出来るようになっています。


Redux入門【ダイジェスト版】10分で理解するReduxの基礎 - Qiitaという記事ではReduxの概要が簡潔にまとめられています。

入門用の記事をまとめたものなので、もう少し掘り下げていきたい場合は記事中で書かれている個別の記事も読んでみるといいかもしれません。


Firefoxの実装状況をまとめたFirefox Platform Statusが公開されています。

他のメジャーブラウザは既に同様のものが公開されています。

各ブラウザの実装状況や変更履歴、バグ報告の仕方などはazu/browser-javascript-resourceにまとめてあるのでこちらも参照してください。


ヘッドライン


December Security Release Summary | Node.js

nodejs.org/en/blog/vulnerability/december-2015-security-releases/

node.js セキュリティ ReleaseNote

Node.jsのセキュリティアップデートとして0.10、0.12、4.x、5.xのアップデートが公開された。


Chromium Blog: Chrome 48 Beta: Present to Cast, custom notification buttons, and network estimation

blog.chromium.org/2015/12/chrome-48-beta-present-to-cast-devices_91.html

Chrome ReleaseNote

Chrome 48 Betaリリース。
Presentation API、WebRTCがVP9をサポート、AudioNode#connectをサポート、well-known symbolsとして@@toPrimitiveのサポートなど


Release 1.0.0 · dekujs/deku

github.com/dekujs/deku/releases/tag/1.0.0

JavaScript DOM library ReleaseNote

Virtual DOMの実装を持つReactライクなComponentライブラリであるdeku 1.0.0リリース。


jsdom/Changelog.md at 7.2.0 · tmpvar/jsdom

github.com/tmpvar/jsdom/blob/7.2.0/Changelog.md

JavaScript DOM ReleaseNote

jsdom 7.2.0リリース。
<input><textarea>のselection APIがサポートされた


babel/CHANGELOG.md at master · babel/babel

github.com/babel/babel/blob/master/CHANGELOG.md#630

babel ReleaseNote

Babel 6.3.0リリース。


Flow | Version 0.19.0

flowtype.org/blog/2015/12/01/Version-0.19.0.html

flowtype ReleaseNote

FlowType 0.19.0リリース。
@noflowの追加、宣言のみを集めた.flowファイルの対応など


Release ES2016 Draft 2015-12-01 · tc39/ecma262

github.com/tc39/ecma262/releases/tag/es2016-draft-20151201

ECMAScript spec ReleaseNote

ES2016 Draft 2015-12-01リリース。
Promise.all/race@@speciesを参照しないように変更。
PromiseのUnhandled Rejectionを検知するために必要な仕様がECMAScript側にも追加された


jasmine/2.4.0.md at master · jasmine/jasmine

github.com/jasmine/jasmine/blob/master/release_notes/2.4.0.md

jasmine ReleaseNote

Jasmine 2.4.0リリース。
テストがランダムな順番で実行されるように。レポーターにもランダム実行に関する情報が表示されるように。


アーティクル


Microsoft Edge’s JavaScript engine to go open-source | Microsoft Edge Dev Blog

blogs.windows.com/msedgedev/2015/12/05/open-source-chakra-core/

MSEdge JavaScript

MSEdgeのJavaScriptエンジンであるChakraがオープンソースとして2016年1月に公開予定。
公開するのはコアであるChakraCore部分


デバッグの技術 | プログラミング | POSTD

postd.cc/the-art-of-debug/

browser debug thought 翻訳

デバッグの考え方やアプローチについて。
Chromeの開発者ツールを使ったデバッグ方法についてなど


Redux入門【ダイジェスト版】10分で理解するReduxの基礎 - Qiita

qiita.com/kiita312/items/49a1f03445b19cf407b7

JavaScript Flux

Reduxの構成要素、データフロー、Reduxの3原則について簡潔にまとまってる


Vue.jsにreduxを載せた話 | MMMブログ

blog.mmmcorp.co.jp/blog/2015/12/03/vue-with-redux/

JavaScript library

Vue.jsとReduxを組み合わせて利用する話


WHATWG版とW3C版がある仕様たち - Unreviewed

takenspc.hatenablog.com/entry/2015/12/03/235927

W3C spec

W3CとWHATWGでそれぞれにある仕様の比較。
W3C版はWHATWG版に追従できていない部分やメンテナンスされていないケースもあるという話


サイト、サービス、ドキュメント


Greenkeeper

greenkeeper.io/

npm webservice

npmで依存するライブラリのアップデートがあるなら、更新内容をPull Requestで通知してくれるウェブサービス


Firefox Platform Status

platform-status.mozilla.org/

firefox browser WebPlatformAPI まとめ

Firefoxの機能ごとの実装状況をまとめたステータスページ。
データはGitHubで管理されている


Flexbox Froggy - A game for learning CSS flexbox

flexboxfroggy.com/

CSS tutorial

CSS Flexboxについて実際の描画結果を見ながら学べるチュートリアル


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


nathancahill/Split.js

github.com/nathancahill/Split.js

JavaScript UI library

サイズが可変可能なSplit Viewを作るUIライブラリ。
要素同士を縦横に分割し、ドラッグでサイズを変更出来る


vuejs/vuex

github.com/vuejs/vuex

JavaScript Flux library

Vue.js向けのFluxライクなライブラリ


airbnb/enzyme

github.com/airbnb/enzyme

JavaScript React testing

React Componentをテストするための補助ライブラリ。
jsdomを使いレンダリングを再現した状態のテストも行える


eslint/typescript-eslint-parser

github.com/eslint/typescript-eslint-parser

TypeScript JavaScript AST

TypeScript ASTをESTree ASTに変換するパーサ。
ESLintでTypeScriptのコードをLintする目的


mozilla/oghliner

github.com/mozilla/oghliner

ServiceWorker Tools github

GitHub Pagesをオフライン対応するためのテンプレートとデプロイツール。
Service Workerを使ってリソースをオフラインでも参照出来るようにしている。


Jam3/hihat

github.com/Jam3/hihat

Electron Chrome debug testing

Electronを使ってChrome DevToolsを使ったNode REPLやテスト実行等を行えるツール。


sebmck/lerna

github.com/sebmck/lerna

npm JavaScript Tools

Babelのような一つのリポジトリに複数のパッケージがある(monorepo)を扱うためのツール。
npm installやnpm publishの補助をしてくれる


WebTorrent - Streaming browser torrent client

webtorrent.io/

WebRTC BitTorrent

torrentのストリーミングをWebRTCで行うライブラリ


書籍関係


The Pragmatic Bookshelf | Reactive Programming with RxJS

pragprog.com/book/smreactjs/reactive-programming-with-rxjs

Rx JavaScript book

RxJSについての書籍
Cycle.jsについても書かれている


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