Fork me on GitHub

2019-10-29のJS: Node.js 13.0.0、Firefox 70.0、Electron 7.0.0

Edit on GitHub 編集履歴を見る

JSer.info #459 - Node.js 13がリリースされました。

いわゆる開発版となるメジャーバージョンで、13.xはLTS(Long Term Support)にはなりません。

V8 7.8へのアップデート、Node.js自体のビルド環境の変更などが行われています。

また、Node.js 13.xではfull-icuがデフォルトとなりました。
これによってutil.TextDecoderIntlなどが英語以外も扱えるようになりました。

Node.js 12までは、Node.jsのビルド時に--with-intlで指定するか、RunTime時にfull-icuを追加する必要がありました。

これによってNode.js自体のバイナリのファイルサイズが10-20MB程度増加します。
Node.jsのビルド時に--with-intlを指定すれば、今までと同じsmall-icuを使うことも可能です。


Firefox 70.0がリリースされました。

Third-Party Tracking CookiesをブロックするEnhanced Tracking Protection (ETP)がデフォルトで有効になりました。

開発者ツールで変更した差分を表示するChange Panelの追加やWebSocket Inspectorの改善などが含まれています。
また、ECMAScript Proposal(Stage 3)のNumeric separatorsに対応、Workerスクリプトの読み込み時にMIME typeを確認するようになり、Web Audio APIの仕様追従なども含まれています。


Electron 7.0.0がリリースされました。

今回もChrome(78)とV8(7.8)のアップデートに合わせてアップデートされています。

Windows on Arg(64bit)の対応、非同期IPCのipcRenderer.invoke()ipcMain.handle()の追加、nativeTheme APIの追加などが行われています。

またElectronは3つのStableバージョンをサポートするようになっています。
そのため、この7.xのリリースでElectron 4.xはサポート終了となります。


お知らせ

GitHub Sponsorsの募集ページを公開しました。

現在のGitHub Sponsorsは月額サブスクリプション方式でしか登録できませんが、サポートに興味がある人は見てみてください。
(おそらく)企業向けですが、JSer.info Sponsorの枠も作成してあります。


JSer.infoをサポートするには

JSer.info Sponsors

JSer.info SponsorsGitHub SponsorsとしてJSer.infoを支援してくれている方々です。


ヘッドライン


Node v13.0.0 (Current) | Node.js

nodejs.org/en/blog/release/v13.0.0/

node.js ReleaseNote

開発版となるNode.js 13リリース。
V8 7.8へのアップデート、Full ICUがデフォルト化、Node.js自体のビルド環境の変更など


Release v1.0 Final! · reduxjs/redux-starter-kit

github.com/reduxjs/redux-starter-kit/releases/tag/v1.0.0

React redux ReleaseNote library

Redux Starter Kit 1.0リリース。
Reduxのラッパーでboilerplate codeを減らしたり、簡単に利用できることを目的にしたツールセット。
作者は現在のReduxのメンテナーの一人である3markerikson。


New in Chrome 78  |  Web  |  Google Developers

developers.google.com/web/updates/2019/10/nic78

Chrome ReleaseNote

Chrome 78リリース。
CSS.registerPropertyのサポート、importScripts()でロードしたService Workerスクリプトもバイト単位で更新チェックが行われるように。
Origin TrialとしてNative File System、SMS Receiverのサポートなど。
その他としてXSS Auditorの削除など


Announcing TypeScript 3.7 RC | TypeScript

devblogs.microsoft.com/typescript/announcing-typescript-3-7-rc/

TypeScript ReleaseNote

TypeScript 3.7RCリリース。
Optional Chaining、Nullish Coalescing、Assertion Functionsのサポート。
neverを返す関数を呼び出した場合の型推論の改善、--declaration--allowJsの組み合わせのサポート、// @ts-nocheckの追加など


Release v2.0.0 · GoogleChrome/puppeteer

github.com/GoogleChrome/puppeteer/releases/tag/v2.0.0

Chrome ReleaseNote library

Puppeteer 2.0.0リリース
Chromium 79へのアップデート、Node 6以下のサポート終了、page.screenshotをViewportに合わせる変更など。
また、page.emulateTimezonepage.emulateMediaTypepage.emulateMediaFeaturesの追加など


Electron 7.0.0 | Electron Blog

electronjs.org/blog/electron-7-0

Electron ReleaseNote

Electron 7.0.0リリース。
Windows on Arg(64bit)の対応、非同期IPCのipcRenderer.invoke()ipcMain.handle()の追加、nativeTheme APIの追加など。
Electron 4.xはサポート終了となる。


Firefox 70.0, See All New Features, Updates and Fixes

www.mozilla.org/en-US/firefox/70.0/releasenotes/

Firefox ReleaseNote

Firefox 70リリース。
Enhanced Tracking Protection (ETP)の有効化、開発者ツールの改善やWebSocket Inspectorの改善など。
ES ProposalのNumeric separatorsに対応、Workerスクリプトの読み込み時にMIME typeを確認するように、Web Audio APIの仕様追従など


アーティクル


Preparing for the Future with React Prereleases – React Blog

reactjs.org/blog/2019/10/22/react-release-channels.html

React article

Reactのリリースチャンネルについて。
Latest(Stable)、Next(リポジトリのmasterと同等)、Experimental(masterに加えて実験的な機能)の3つのチャンネルがあることについて。
それぞれの利用方法や目的、またRFCとExperimentalについて


Time to First Byte: What It Is and Why It Matters – CSS Wizardry – CSS Architecture, Web Performance Optimisation, and more, by Harry Roberts

csswizardry.com/2019/08/time-to-first-byte-what-it-is-and-why-it-matters/

browser performance article

Time to First Byte (TTFB)についての解説。
TTFBに含まれるであろう処理の種類、それを明示できるServer-Timingヘッダについて


スライド、動画関係


Prototype Pollution in Kibana

slides.com/securitymb/prototype-pollution-in-kibana

JavaScript security slide

KibanaにあったPrototype pollutionの脆弱性を使ったRCEについての解説スライド。
__proto__.envで任意の環境変数を読み込ませてspawnするのを見つけ、NODE_OPTIONS/proc/self/environを使い環境変数にコードを仕込み実行させる手法の解説


WebAuthN 実際導入してどうだったか

kasecato.github.io/web-study-webauthn-nulab/

WebAuthentication slide

Web Authentication APIについてのスライド。
セキュリティデバイスの登録における設計、ChromeやmacOSのTouch IDにおけるハマりどころ(プロファイルに紐づくなど)などについて


書籍関係


Functional Design Patterns for Express.js by Jonathan Lee Martin | The Pragmatic Bookshelf

pragprog.com/book/d-jmexpress/functional-design-patterns-for-express-js

node.js book 関数型プログラミング

関数型プログラミングのパターンとExpressについての書籍


JavaScript Promiseの本 v2リリース、ES2015+に対応、Async Functionの章を追加 | Web Scratch

efcl.info/2019/10/23/promises-book-v2/

JavaScript book

JavaScript Promise本 v2リリース。
サンプルコードをES2015ベースに変更、Async Functionの章の追加、Promise#finallyの解説を追加など


JavaScript: The Definitive Guide, 7th Edition - O'Reilly Media

shop.oreilly.com/product/0636920048633.do

JavaScript book

2019年7月発売
OreillyのJavaScript本(通称サイ本)の第7版


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