JSer.info #444 - Firefox 68.0がリリースされました。
- Firefox 68.0, See All New Features, Updates and Fixes
- Firefox 68 for developers - Mozilla | MDN
- Firefox 68: BigInts, Contrast Checks, and the QuantumBar - Mozilla Hacks - the Web developer blog
Firefox 68で企業向けのFirefox Extended Support Release(ESR)も合わせて更新されています。
Firefox 68では開発者ツールでAccessibility Checksの追加やECMAScript 2020で入る予定のBigIntsのサポートなどが追加されています。
ウェブ互換性のためにIEのCSS#addRule()
とCSS#removeRule()
の実装、Safariの-webkit-line-clamp
CSSプロパティが実装されています。
また、CSS Scroll Snappingの仕様に追従した変更も含まれています。
React Navtive on Android向けのJavaScriptエンジンであるHermesが公開されました。
- facebook/hermes: Hermes is a small and lightweight JavaScript engine optimized for running React Native on Android.
- Hermes: A new open source JavaScript engine optimized for mobile apps
React Nativeでの利用に最適化されたJavaScriptエンジンで、React Native 0.60.2からオプトインで利用できます。
Hermesは、TTI(Time To Interact)、APKのファイルサイズ、メモリ消費の改善を目的に作成されています。
JavaScriptのコードを、AOT(ahead-of-time)でバイトコードにコンパイルし、実行時はバイトコードを元に実行することでTTI(アプリケーションが利用できるようになるまでの時間)などを改善しています。
また、一方で現時点ではHermesはJIT(just-in-time)は意図的に持っていないため、処理速度は既存のものとは傾向が異なります。
V8もJIT-lessモードを持っていますが少しコンテキストは異なり、HermesではTTIとメモリ消費を抑えるために導入していないようです。
Hermesはデバッグビルド時はAOTコンパイルをしないため、パフォーマンスの比較を行う際には注意が必要そうです。
How Google Pagespeed works: Improve Your Score and Search Engine Rankingという記事では、5月にアップデートされたPageSpeed Insightsについて書かれています。
PageSpeed InsightsのスコアはLighthouseの"Performance"のスコアになっていることや、そのスコアがどのように計算されているかを紹介しています。
- Release Notes | PageSpeed Insights | Google Developers
- [PUBLIC] PSI now with Lighthouse v5 - Google ドキュメント
JSer.infoをサポートするには
- 😘 知り合いにJSer.infoをおすすめする
- ❤️ GitHub Sponsorsで@azuのスポンサーになる
- 🐦 X(Twitter)で@jser_infoをフォローする
JSer.info Sponsors
JSer.info SponsorsはGitHub SponsorsとしてJSer.infoを支援してくれている方々です。
ヘッドライン
Firefox 68.0, See All New Features, Updates and Fixes
www.mozilla.org/en-US/firefox/68.0/releasenotes/
Firefox 68.0リリース。
Firefox ESRとなるバージョン。
開発者ツールのネットワークパネルで特定のURLをブロックできるように、Android版でVisual Viewport APIの有効化、CSS Scroll Snapの仕様追従など
- Firefox 68: BigInts, Contrast Checks, and the QuantumBar - Mozilla Hacks - the Web developer blog
- Firefox 68 for developers - Mozilla | MDN
Release Notes for Safari Technology Preview 87 | WebKit
webkit.org/blog/9414/release-notes-for-safari-technology-preview-87/
Safari Technology Preview 87リリース。
console.countReset
、console.timeLog
の実装など
Release v1.0.0 · quasarframework/quasar
github.com/quasarframework/quasar/releases/tag/v1.0.0
Vueを使ったUIフレームワークのQuasar 1.0.0リリース。
アーティクル
WebDriver is Coming to Safari in iOS 13 | WebKit
webkit.org/blog/9395/webdriver-is-coming-to-safari-in-ios-13/
iOS 13でSafariにWebDriverサポートが追加されたことについて。
iOS SafariでのWebDriver対応について
Snyk research team discovers severe prototype pollution security vulnerabilities affecting all versions of lodash | Snyk
lodash 4.17.12で修正されたPrototype Pollutionの脆弱性についての解説。
Web Components update: more time to upgrade to v1 APIs | Web | Google Developers
developers.google.com/web/updates/2019/07/web-components-time-to-upgrade
ChromeのWeb Components v0 APIの廃止のスケジュールについて。
Chrome 80で削除予定、コマンドラインフラグでのテスト方法、Polyfillについてなど
Yomguithereal's Shenanigans - Implementing an efficient LRU cache in JavaScript
yomguithereal.github.io/posts/lru-cache
JavaScriptでのLRUの実装について。
Double Linked Listの仕組み、Mapを使った実装。
LRUの更新コストの大部分は削除にあることなどについて
Normalize CSS or CSS Reset?! - Elad Shechter - Medium
medium.com/@elad/normalize-css-or-css-reset-9d75175c5d1e
CSSのアーキテクチャに関する連載記事。
CSS ResetとNormalizeのアプローチの比較、ファイル構成、複数サイト向けのレイヤー構成についてなど
lesnitsky/webgl-month: 🎓 Daily WebGL tutorials
github.com/lesnitsky/webgl-month
WebGLチュートリアル
How Google Pagespeed works: Improve Your Score and Search Engine Ranking
calibreapp.com/blog/how-pagespeed-works/
GoogleのPageSpeed Insights(PSI) 5.0について。
PSI 5.0のスコアはLighthouseと同じになったことやLighthouseのスコア計算の仕組み、TTIの影響についてなど
サイト、サービス、ドキュメント
EasyGraphQL
GraphQLツールキット。
GraphQLのパーサ、モック、テストツール、トレーシングライブラリなど。
またFirebaseやnowでGraphQLサーバを動かすツールなどを公開している。
QuickJS Javascript Engine
ES2019の仕様を実装したJavaScriptエンジン。
Cで実装されていて、外部依存を持たない。
ソフトウェア、ツール、ライブラリ関係
paulrosen/abcjs: javascript for rendering abc music notation
ブラウザで楽譜をレンダリングするライブラリ
facebook/hermes: Hermes is a small and lightweight JavaScript engine optimized for running React Native on Android.
React NativeのAndroid向けのJavaScriptエンジン。
JavaScriptをレジスターベースのバイトコードにコンパイルし、モバイルでも高速に起動することが目的。