Fork me on GitHub

2021-02-02のJS: WebRTC 1.0、Firefox 85、Chrome 89 Beta

Edit on GitHub 編集履歴を見る

JSer.info #525 - WebRTC 1.0がW3C RecommendationとIETF標準となりました。

W3Cの仕様ではJavaScriptのAPIが定義されており、IETFの仕様ではプロトコルが定義されています。
すでにブラウザ上にJavaScript APIが実装されていたり、多くのWebRTCの実装が存在するため、利用できる/利用している状態です。
今回のアナウンスは、WebRTCの仕様が1.0に到達し安定したことを意味しています。

次の仕様改善については、WebRTC is now a W3C and IETF standardというGoogleのブログにも書かれていますが、WebRTC Next Version Use Casesなどでユースケースを集めながら整理していくようです。


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

Flashのサポートを終了しています。

CSSでPrefixなしの:focus-visibleをサポート、<link rel="preload">をデフォルトでサポートしています。
また、キャッシュなどをつかったトラッキングを防止するためにNetwork partitioningの導入されています。


Chrome 89ベータがリリースされました。

WebHID API、Web NFC、Web Serial APIのデフォルト有効化、デスクトップでのWeb Sharingが有効化されています。
また、Cross-origin opener policy reporting API、Manifastにdisplay_overrideが追加されています。
その他には、Top-Level awaitのサポート、performance.measureUserAgentSpecificMemory()の追加、Streams APIがByte Streamsをサポートされています。


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

JSer.info Sponsors

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


ヘッドライン


January brings us Firefox 85 - Mozilla Hacks - the Web developer blog

hacks.mozilla.org/2021/01/january-brings-us-firefox-85/

Firefox ReleaseNote

Firefox 85リリース。
Flashのサポート終了。
CSSでPrefixなしの:focus-visibleをサポート、<link rel="preload">のサポート。
また、Network partitioningの導入など


Release Notes for Safari Technology Preview 119 | WebKit

webkit.org/blog/11525/release-notes-for-safari-technology-preview-119/

safari ReleaseNote

Safari Technology Preview 119リリース。
SpeechRecognition APIの有効化、CSS aspect-ratioプロパティのサポート改善、prefers-contrast: moreのサポートなど。
WebAssemblyでmemory.copymemory.initmemory.fillをフラグ付きでサポートなど


Release v7.5.0 · npm/cli

github.com/npm/cli/releases/tag/v7.5.0

npm ReleaseNote

npm 7.5.0リリース。
npmパッケージのDiffを取得するnpm diffコマンドの追加など


Chromium Blog: Chrome 89 Beta: Advanced Hardware Interactions, Web Sharing on Desktop, and More

blog.chromium.org/2021/01/chrome-89-beta-advanced-hardware.html

Chrome ReleaseNote

Chrome 89ベータリリース。
WebHID API、Web NFC、Web Serial APIのデフォルト有効化、デスクトップでのWeb Sharingの有効化。
Cross-origin opener policy reporting API、Manifastにdisplay_overrideの追加。
performance.measureUserAgentSpecificMemory()の追加、Streams APIがByte Streamsをサポート。
その他にはTop-Level awaitのサポートなど


WebRTC 1.0 is a W3C Recommendation | W3C News

www.w3.org/blog/news/archives/8897

W3C WebRTC news

WebRTC 1.0がW3C Recommendationとなった


TOAST UI Chart 4.0 is here! | TOAST UI :: Make Your Web Delicious!

ui.toast.com/weekly-pick/en_20210126

JavaScript chart library ReleaseNote

グラフライブラリのTOAST UI Chart v4.0リリース。
依存をなくしファイルサイズの削減、レスポンシブサポート、ライブアップデートに対応したグラフの追加、テーマオプションの改善など。
v3からのマイグレーションガイドも公開している


CKEditor 5 v25.0.0 with flexible annotations, improved text blocks handling and performance fixes

ckeditor.com/blog/CKEditor-5-v25.0.0-with-flexible-annotations-improved-text-blocks-handling-and-performance-fixes/

JavaScript editor library ReleaseNote

CKEditor 5 v25.0.0リリース。
ReDoSの問題の修正、コンテンツブロックの動作改善、大量のテキストのフォーマットのパフォーマンス改善、画像管理の改善など


Release v5.3.4 · vuejs/vue-devtools

github.com/vuejs/vue-devtools/releases/tag/v5.3.4

Vue Extension ReleaseNote security browser

Vue DevTools 5.3.4リリース。
Universal XSS脆弱性の修正


Babel 8 Release Plan · Issue #10746 · babel/babel

github.com/babel/babel/issues/10746

babel issue

Babel 8のRoadmap Issue


アーティクル


When to use HTTPS for local development

web.dev/when-to-use-local-https/

HTTPS debug article

ローカル開発でもHTTPSが必要なものとlocalhostについて。
また、ローカルでの開発に使うべきTLDについて


Visitor pattern in TypeScript | Writing | Kirill Vasiltsov

www.kirillvasiltsov.com/writing/visitor-pattern-typescript/

TypeScript article

TypeScriptのinterfaceを使ったVisitor Patternの実装方法についての記事


Cypress vs Selenium vs Playwright vs Puppeteer speed comparison | Checkly blog

blog.checklyhq.com/cypress-vs-selenium-vs-playwright-vs-puppeteer-speed-comparison/

JavaScript browser E2E article testing

テストフレームワークの実行速度について比較した記事。
Puppeteer、Playwright、WebDriverIO、Selenium、Cypressをいくつかのシナリオで比較している。


`undefined` vs. `null` revisited

2ality.com/2021/01/undefined-null-revisited.html

JavaScript article opinion

undefinednullについて。
undefinednullの歴史、undefinednullが言語的に発生するケース。言語的に特別扱いされるケース、どれを値がない値として使うかについて


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


azu/express-lazy-router: Lazy loading for express router

github.com/azu/express-lazy-router

express TypeScript library node.js

expressのRouterを遅延ロードするライブラリ。
ts-node-devとか@babel/registerでruntime compileしているケースで、起動時に全コンパイルじゃなくて分散コンパイルできるようにする目的


WebReflection/linkedom: A triple-linked lists based DOM implementation.

github.com/WebReflection/linkedom

HTML DOM JavaScript node.js library

Node.js向けのHTML/DOMの実装ライブラリ。
基本的なユースケースにおけるHTML文字列のパース、DOM APIを一定のパフォーマンスで実現できるものを目指している。
DOM標準互換を目指すのではなく、basichtmlの置き換えを目的に治している。


shinyoshiaki/werift-webrtc: WebRTC Implementation for TypeScript (Node.js)

github.com/shinyoshiaki/werift-webrtc

WebRTC JavaScript library

Node.jsでのWebRTCの実装。
STUN、TURN、ICE、DataChannel、MediaChannelなどの実装


willmendesneto/perf-marks: The isomorphic, simplest, and lightweight solution for User Timing API in Javascript - 🚀 only 208B 🚀. Tree-shaking and entry points built-in. Simple as that!

github.com/willmendesneto/perf-marks

performance JavaScript library node.js browser

User Timing APIのラッパーライブラリ。
ブラウザとNode.js(perf_hooks)で利用できる。
User Timing APIのラップ、サポートしているかの判定処理、関数のプロファイル機能などを提供する


alesgenova/post-me: 📩 Use web Workers and other Windows through a simple Promise API

github.com/alesgenova/post-me

JavaScript webworker library Promises TypeScript

Worker、Window(iframe)間のメッセージングライブラリ。
PromiseベースのAPIでWindowとWorker間でメッセージのやり取りができる


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