Fork me on GitHub

2019-12-10のJS: Firefox 71.0、WebAssembly W3C Recommendation、Nullish Coalescing & Optional Chaining(ES2020)

Edit on GitHub 編集履歴を見る

JSer.info #465 - Firefox 71.0がリリースされました。

Firefox 71.0では開発者ツールの改善が多く含まれています。
コンソールパネルではmulti-line modeをサポート、デバッガーパネルではInline variable previewをサポート、ネットワークパネルではRequest Blockingがサポートされています。
また、素のWebSocketsやSocket.IOなどのメッセージをデバッグできるWeb Sockets Inspectorがデフォルトで有効化されています。

その他にはMedia Session APIの実装、WindowsでPicture-in-Pictureのサポート、TLS 1.0と1.1がDeprecatedになるなどの変更が含まれます。


WebAssemblyの仕様がW3C Recommendationとなりました。

WebAssemblyの仕様はCore specificationとEmbedder specificationsからなる仕様で、それぞれの仕様の状況は次のページにまとめらています。


2019年12月にTC39のミーティングが行われ、Nullish coalescing operator(??)とOptional chaining(?.)のProposalがStage 4へと到達しました。

Stage 4となったことで、来年発行予定のECMAScript仕様であるECMAScript 2020に含まれることが決まりました。どちらのProposalもChrome 80+(現在の開発版)、TypeScript 3.7+、Babelなどに実装されています。

今回のTC39ミーティングでStageの変更があったECMAScript Proposalは次のページにまとめられています。


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

JSer.info Sponsors

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


ヘッドライン


Node v13.3.0 (Current) | Node.js

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

node ReleaseNote

Node.js 13.3.0リリース。
Experimentalなfs.rmdirのリトライオプションの変更、HTTPのヘッダサイズを指定するmaxHeaderSizehttp.Serverごとに指定できるように、WASIのサポートなど


Release v3.3.0 · facebook/create-react-app

github.com/facebook/create-react-app/releases/tag/v3.3.0

React library ReleaseNote

create-react-app 3.3.0リリース。
カスタムテンプレートを指定できる--template引数のサポート。
Optional Chaining/Nullish Coalescing Operators/Numeric Separatorsのサポートなど


Firefox 71.0, See All New Features, Updates and Fixes

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

Firefox ReleaseNote

Firefox 71.0リリース。
開発者ツールのコンソールがmulti-line modeをサポート、デバッガーがInline variable previewをサポート、ネットワークのRequest Blockingをサポート。
また、Web Sockets Inspectorがデフォルトで有効化された。
Media Session APIの実装、WindowsでPicture-in-Pictureのサポート、TLS 1.0と1.1がDeprecatedになるなど


Release 10.1.0 This suspense is killing me · preactjs/preact

github.com/preactjs/preact/releases/tag/10.1.0

React library ReleaseNote

Preact 10.1.0リリース。
Preact DevToolsのサポート、<SuspenseList>コンポーネントのサポートなど


World Wide Web Consortium (W3C) brings a new language to the Web as WebAssembly becomes a W3C Recommendation

www.w3.org/2019/12/pressrelease-wasm-rec.html.en

WebAssembly W3C news

WebAssemblyがW3C Recommendationになった。


アーティクル


What's New In DevTools (Chrome 80)  |  Web  |  Google Developers

developers.google.com/web/updates/2019/12/devtools

Chrome debiug article

Chrome 80の開発者ツールの変更点について。
コンソールでletclassの再定義が可能に、DWARFをサポートしWebAssemblyのソースデバッグに対応、ネットワークパネルの改善、デフォルトのUAリストの更新など。
また、Coverageが関数毎とブロッグ毎を選択できるようになるなど


Improved WebAssembly debugging in Chrome DevTools  |  Google Developers

developers.google.com/web/updates/2019/12/webassembly

Chrome WebAssembly article

Chrome 80でDWARFのサポートが入った。
WebAssemblyのデバッグ時に元のソースコードとの対応したブレークポイントの設定やステップ実行が可能になる。
DWARFはバイナリ向けのSource Mapのような仕様で、バイナリに対してデバッグ用の情報を埋め込むためのデータフォーマット


Web Performance Calendar » Reading a WebPageTest Waterfall Chart

calendar.perfplanet.com/2019/reading-a-webpagetest-waterfall-chart/

browser performance webservice article

WebPageTestのウォーターフォールチャートの読み方。
チャートの要素の解説、典型的な問題の解説など


Improving Tracking Prevention in Microsoft Edge - Microsoft Edge Blog

blogs.windows.com/msedgedev/2019/12/03/improving-tracking-prevention-microsoft-edge-79/

MSEdge privacy article

MSEdge on ChromiumにTracking Preventionが試験的に実装された。
FirefoxのETPと似たDisconnectのリストを使ったトラッカーのストレージアクセス、ネットワークアクセスのブロック。
ユーザーのサイトエンゲージメントスコアが 4.1 以上となっている組織ドメインは対象から除外される。
保護レベルとしてBasic、Blanced、Strictの設定ができるようになっている。


Upcoming Browser Behavior Changes: What Developers Need to Know

auth0.com/blog/browser-behavior-changes-what-developers-need-to-know/

Chrome browser security article

SameSite Cookieの仕組みの解説、対応方法について


Web Performance Calendar » The ugly truth about optimising beautiful images

calendar.perfplanet.com/2019/the-ugly-truth-about-optimising-beautiful-images/

Image performance browser

画像の最適化とパフォーマンスについて。
単純に画像サイズを削減しただけでは、体験が向上しないケースもあることについて。
Lazy Loading、別のものによって表示されるまでブロックされてるケース。
画像の最適化前に取り組むべきサイトのボトルネックとなりうる項目について


ECMAScript proposal updates @ 2019-12 | ECMAScript Daily

ecmascript-daily.github.io/ecmascript/2019/12/07/ecmascript-proposal-update

ECMAScript proposal article

2019年12月のTC39ミーティングでステータスの変更があったECMAScript Proposalのまとめ。
Optional ChainingとNullish coalescing OperatorがStag 4となりES2020に入ることが決まった。


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


alyssaxuu/flowy: The minimal javascript library to create flowcharts ✨

github.com/alyssaxuu/flowy

JavaScript library graphic

フローチャートを作成するライブラリ。
ブロッグをD&Dしてフローチャートを作成できるGUI、フローチャートをJSONとしてインポート/エクスポートできる


Release v6.0.0 · sindresorhus/meow

github.com/sindresorhus/meow/releases/v6.0.0

node console library

Node.js CLI向けのライブラリであるmeow 6.0.0リリース。
Node.js 8未満のサポート終了、TypeScriptの型定義ファイルの同梱、number型のサポート、hardRejectionオプションの追加など


mikeal/reg: Native ESM Package Manager

github.com/mikeal/reg

ECMAScript JavaScript module Tools node.js

ExperimentalなECMAScript Modulesパッケージマネージャー。
IPLDでデータを定義している。


nodejs/webcrypto: Implementation of WebCrypto API as an npm package

github.com/nodejs/webcrypto

node.js library

WebCrypto APIのNode.js向けの実装


cristianbote/goober: 🥜 goober, a less than 1KB 🎉css-in-js alternative with a familiar API

github.com/cristianbote/goober

JavaScript CSS library

ファイルサイズの小さなCSS-in-JSの実装ライブラリ


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