Fork me on GitHub

2017-08-22のJS: Chrome 61β、TypeScript 2.5RC、Flow 0.53.0

Edit on GitHub 編集履歴を見る

JSer.info #345 - Chrome 61βがリリースされました。

<script type=module>でES modulesを扱えるようになりました。
加えてPayment Request APINetwork Information APIがデスクトップのChromeでも利用できるようになっています。
また、Web Share APIWebUSB APIVisual Viewport APIDevice Memoryのサポートが追加されています。

既存の挙動の破壊的な変更としては、MSEを使った動画はバックグラウンド時にVideo Trackが無効化されるようになっています。
セキュリティ対策として\n<をそのまま含むHTTP(S)のURLへのリクエストがブロックされるようになっています。


TypeScript 2.5 RCがリリースされました。

現在ECMAScript ProposalでStage 3のOptional catch bindingがサポートされています。

try {
   throw new Error("throw");
} catch {
   // errorを省略できる
}

また今まではTypeScriptで書かれたモジュールをnpm linkすると定義が重複するという問題がありました。
Workaroundはありますが、2.5Rではこの問題が修正されています。


Flow 0.53.0がリリースされました。

Reactに対するFlowのモデルに破壊的な変更があるため、ReactでFlowを利用している場合はマイグレーションが必要です。
flow-upgradeを使うことでマイグレーションが行えます。

また、Reactに対するutility typesが追加されています。


ヘッドライン


Node v8.4.0 (Current) | Node.js

nodejs.org/en/blog/release/v8.4.0/

node.js ReleaseNote

Node v8.4.0リリース。
フラグ付きでhttp2をサポート、util.formatがオブジェクトを扱う%o%Oをサポートなど


Release 0.22.0 · avajs/ava

github.com/avajs/ava/releases/tag/v0.22.0

JavaScript node.js testing ReleaseNote

AVA 0.22.0リリース。
デフォルトのconcurrencyをCPUコア数に合わせるように、t.logの追加など


Chromium Blog: Chrome 61 Beta: JavaScript modules, Payment Request API on desktop, Web Share API, and WebUSB

blog.chromium.org/2017/08/chrome-61-beta-javascript-modules.html

Chrome ReleaseNote

Chrom 61βリリース。
<script type=module>のサポート、Payment Request API、Web Share API、WebUSB APIのサポート。
Expect-CT HTTP headerのサポート、HTTPリクエストURLに>\nが含まれている場合にブロックするように


flow/Changelog.md at v0.53.0 · facebook/flow

github.com/facebook/flow/blob/v0.53.0/Changelog.md

flowtype React ReleaseNote

Flow 0.53.0リリース。
Reactのモデルに対する型の改善。互換性のない変更も含まれるためflow-upgradeコマンドでマイグレーションできるようになっている


Announcing TypeScript 2.5 RC | TypeScript

blogs.msdn.microsoft.com/typescript/2017/08/17/announcing-typescript-2-5-rc/

TypeScript ReleaseNote

TypeScript 2.5 RCリリース。
現在ProposalのOptional catchのサポート、npm linkなどで定義が重複した場合にコンパイルエラーとなる問題を修正、--preserveSymlinksのサポートなど


Release v6.0.0 · h5bp/html5-boilerplate

github.com/h5bp/html5-boilerplate/releases/tag/6.0.0

HTML5 ReleaseNote

html5-boilerplate 6.0.0リリース


Release DOMPurify 1.0.0 · cure53/DOMPurify

github.com/cure53/DOMPurify/releases/tag/1.0.0

DOM ReleaseNote JavaScript

XSSサニタイズライブラリのDMOPurify 1.0.0リリース。
コードベースをES2015にし、rollupしたものを配布するように。バグ修正など


アーティクル


Accessibility Testing with pa11y

bitsofco.de/pa11y/

accessibility article Tools

アクセシビリティテストツールのpa11yについての記事。
基本的な使い方について


Rethinking drag and drop – Alex Reardon – Medium

medium.com/@alexandereardon/rethinking-drag-and-drop-d9f5770b4e6b

React JavaScript library article

React向けの縦横リストのD&Dライブラリであるreact-beautiful-dndについて。
どのようにアクセシビリティやパフォーマンスに気をつけて実装しているかについて書かれている


The State of CSS in Angular – Angular Blog

blog.angular.io/the-state-of-css-in-angular-4a52d4bd2700

CSS Angular article

AngularのCSSについて。
コンポーネントのカプセルCSS、Shadow DOMを使ったnativeのカプセル化、非推奨となった/deep/:ng-deepについて


HTTP/2 Server Push with Node.js | @RisingStack

blog.risingstack.com/node-js-http-2-push/

node.js HTTP2 article

--expose-http2フラグで有効化できるNode.jsのHTTP/2でサーバプッシュを行う方法についてのサンプル


スライド、動画関係


Ava Test Runner - A Fresh Take On JavaScript Testing and Growing an Open-Source Project - Sessions by Pusher

pusher.com/sessions/meetup/the-js-roundabout/ava-test-runner-a-fresh-take-on-javascript-testing-and-growing-an-open-source-project

node.js testing video

Node.jsのテストフレームワークであるAVAについてを紹介する発表動画。


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


plouc/nivo: Make dataviz fun again

github.com/plouc/nivo

JavaScript React d3.js library グラフ

D3.jsとReactを使ったデータビジュアライズコンポーネント。 SVGの出力の対応やサーバサイドレンダリングをしてSVGを取得するHTTP APIなども用意されている。


jiayihu/pretty-algorithms: 🌊 Pretty, common and useful algorithms with modern JS and beautiful tests

github.com/jiayihu/pretty-algorithms

JavaScript アルゴリズム library TypeScript

検索、ソート、カウントなどのよくあるアルゴリズムを実装したライブラリ


GoogleChrome/puppeteer: Headless Chrome Node API

github.com/GoogleChrome/puppeteer

Chrome Tools library

Headless Chromeを扱うライブラリ。
Chromeチームが開発している。


google/songbird: Spatial Audio Encoding on the Web

github.com/google/songbird

audio JavaScript library

Web Audio APIを使ったSpatial Audio Encodingライブラリ


shellscape/mocha-chrome: Run Mocha tests using headless Google Chrome

github.com/shellscape/mocha-chrome

Chrome Tools browser testing

MochaをHeadless chromeで動かすツール


streamich/memfs: In-memory filesystem with Node's API

github.com/streamich/memfs

node.js JavaScript library

Node.jsのfsモジュール互換のメモリファイルシステムライブラリ。
ブラウザでも動作する


この記事へ修正リクエストをする
JSer.info Slackに参加する