JSer.info #551 - Yarn 3.0がリリースされました。
- Yarn 3.0 🚀🤖 Performances, ESBuild, Better Patches, ... - DEV Community 👩💻👨💻
- berry/CHANGELOG.md at master · yarnpkg/berry
Node.js 10のサポート終了、.pnp.cjs
にリネーム、@yarnpkg/pnpify
を3つのパッケージに分解などの変更を含んでいます。
@yarnpkg/sdks
: Editor SDKs@yarnpkg/pnpify
: PnPと互換性のないツールを実行するツール@yarnpkg/nm
:node_modules
linker
また、 exports
フィールドのサポート、pnpmライクなハードリンクのサポート、シェル構文のサポート改善、 ESBuildでのbundleをサポートする@yarnpkg/esbuild-plugin-pnp
の追加なども含まれています。
Chrome 93 betaがリリースされました。
Origin TrialとしてCOEPの導入をより手軽にするためのCross-Origin-Embedder-Policy:credentialless
、URL Handlersの追加などが含まれています。
また、 AbortSignal.abort()
メソッドのサポート、Stage 3のError causeとObject.hasOwn
のサポートも含まれています。
ダークモード対応などではCSSのprefers-color-scheme
media queryを使い、ユーザーエージェントがどのcolor schemeを優先するかを判定していました。しかし、CSSではページロード後となるため、ページロード時にその判定ができるようにClient Hint HeaderのSec-CH-Prefers-Color-Scheme
が追加されています。
また、navigator.userAgent
やUser-Agent
ヘッダの後継となる、User-Agent Client Hintsに関するAPIやヘッダの変更も含まれています。
Chrome 92では、cross originのiframe内からwindow.{alert, prompt, confirm}
が利用できなくなりました。
この問題への対処方法として、次のような方法があげられています。
Chrome 96(12月)まで有効なReverse Origin Trialを有効化する- ダイアログUIを自作する方法
- postMessageを使って親ドキュメントでダイアログを出す方法
この影響で、CodePenなどのiframeを使ってコードを実行する環境、Google Apps Scriptをウェブサイトとして公開しているケース、Salesforceの一部機能などが動かなくなるなどの影響が出ています。
いくつかのウェブサイトで影響があったため、Chromeでは2021年8月15日まで無効化されています。(Reverse Origin Trialのための猶予期間)2022年1月まで延期されています。
他のブラウザもこの仕様に追従する予定となっています。
- Remove alert(), confirm(), and prompt for cross origin iframes - Chrome Platform Status
- Proposal: Disallow cross-origin iframes usage of window.{alert, confirm, prompt} · Issue #5407 · whatwg/html
詳しくは次のページも参照してください。
JSer.infoをサポートするには
- 😘 知り合いにJSer.infoをおすすめする
- ❤️ GitHub Sponsorsで@azuのスポンサーになる
- 🐦 X(Twitter)で@jser_infoをフォローする
JSer.info Sponsors
JSer.info SponsorsはGitHub SponsorsとしてJSer.infoを支援してくれている方々です。
ヘッドライン
Headless UI v1.4: The One With Tabs – Tailwind CSS
blog.tailwindcss.com/headless-ui-v1-4
Headless UI 1.4リリース。
Tagコンポーネントの追加、Disclosures
とPopover
のPanel内にButton
を置くとPanelを閉じれるように
Yarn 3.0 🚀🤖 Performances, ESBuild, Better Patches, ... - DEV Community 👩💻👨💻
dev.to/arcanis/yarn-3-0-performances-esbuild-better-patches-e07
Yarn 3.0リリース。
Node.js 10のサポート終了、.pnp.cjs
にリネーム、@yarnpkg/pnpify
を3つのパッケージに分解など。
exports
フィールドのサポート、pnpmライクなハードリンクのサポート、シェル構文のサポート改善、 ESBuildのサポートなど
Release 3.16.0 - 2021.07.30 · zloirock/core-js
github.com/zloirock/core-js/releases/tag/v3.16.0
core.js 3.16.0リリース。
Stage 3のArray#findLast
、Stage 1のArray#filterOut
とArray#groupBy
のサポート。
Denoのサポートなど
Node v16.6.0 (Current) | Node.js
nodejs.org/en/blog/release/v16.6.0/
Node.js 16.6.0リリース。
V8 9.2へアップデート、http2
のセキュリティ修正など
Recoil 0.4 | Recoil
recoiljs.org/blog/2021/07/30/0.4.0-release/
Recoil 0.4リリース。
キャッシュポリシーをcachePolicy_UNSTABLE
で設定できるように、トランザクションをするuseRecoilTransaction_UNSTABLE
で利用できるように。
TypeScriptの型改善など
Chromium Blog: Chrome 93: Multi-Screen Window Placement, PWAs as URL Handlers, and More
blog.chromium.org/2021/07/chrome-93-multi-screen-window-placement.html
Chrome 93 betaリリース。
Origin TrialとしてCross-Origin-Embedder-Policy:credentialless
、URL Handlersの追加など。
AbortSignal.abort()
メソッドのサポート、Stage 3のError causeとObject.hasOwn
のサポート。
Client Hint HeaderのSec-CH-Prefers-Color-Scheme
の追加やUA Client Hintの更新など
1065085 - Implement window.{alert, prompt, confirm} removal from cross-origin iframes - chromium
bugs.chromium.org/p/chromium/issues/detail?id=1065085
Chrome 92でcross origin iframeからのalert/dialog/promptが無効化された。
回避方法として、Chrome 96まで有効なReverse Origin Trial、ダイアログUIを自作する方法、postMessageを使って親ドキュメントでダイアログを出す方法など。
- Remove alert(), confirm(), and prompt for cross origin iframes - Chrome Platform Status
- Proposal: Disallow cross-origin iframes usage of window.{alert, confirm, prompt} · Issue #5407 · whatwg/html
- google chrome - JavaScript dialogs alert(), confirm() and prompt() in cross origin iframe does not work any longer - Stack Overflow
- Chrome Enterprise release notes - Google Chrome Enterprise Help
- Intent to Remove: Cross origin subframe JS Dialogs
- Cross Origin iframe からの alert/confirm/prompt 呼び出しの無効化 | blog.jxck.io
Release Version 16.7.0 · jsdom/jsdom
github.com/jsdom/jsdom/releases/tag/16.7.0
jsdom 16.7.0リリース。
AbortSignal.abort()
のサポート、getBoundingClientRect()
の返り値にx
とy
を追加。
<textarea>
の改行コードのノーマライゼーションを仕様に準拠するように変更など
アーティクル
How do Chrome extensions impact browser performance?
www.debugbear.com/blog/chrome-extension-performance-2021
ブラウザ拡張がウェブサイトのパフォーマンスにどのように影響を与えているかについての記事。
CPU負荷、初回のレンダリングへの影響、バックグラウンでのCPU処理、、メモリ消費量。
またAdBlocker系とデータ量やメモリ消費量の削減について
WebView2 and Electron | Electron Blog
www.electronjs.org/blog/webview2
ElectronとWindowsのWebView2のアーキテクチャ的な違いについて。
GraphQLクライアントにurqlをおすすめしたい
zenn.dev/adwd/articles/f4c5c5120467bb
GraphQLクライアントライブラリのurqlについて。
レスポンスをキャッシュの仕組みとキャッシュを破棄する仕組みについて
ソフトウェア、ツール、ライブラリ関係
BlueBlazin/thislang: An implementation of a subset of javascript in that subset of javascript.
github.com/BlueBlazin/thislang
JavaScriptでのJavaScript subsetの実装。
arcanis/clipanion: Type-safe CLI library with no runtime dependencies
CLI向けのコマンドライン引数パーサライブラリ。
ネストされたコマンドのサポート、typanionと連携したバリデーション、ヘルプのサポートなど。
Yarnで利用されている。
crcn/sift.js: Use Mongodb queries in JavaScript
JavaScriptのオブジェクトに対してMongoDB Queryライクな構文や演算子で検索できるライブラリ