Google は、Chrome 拡張機能の改修計画に、Manifest v3 技術仕様に関する懸念の一部には答えるものの、すべてには答えない変更を提案しました。
昨年10月に発表された最初の変更は先月、Chromeプラグイン開発者の大半がようやくGoogleの意図を理解したことで警鐘を鳴らした。
Manifest v3 の変更は、Chrome ブラウザのユーザーにとっての実際の問題、具体的には機密データにアクセスできるサードパーティ コードのセキュリティとパフォーマンスへの影響に対処するための試みです。
しかし、Googleが当初提案した修正は広範な影響を及ぼします。Manifest v3仕様は、コンテンツブロッカーや広告ブロッカー、プライバシー拡張機能、そしてブラウザでレンダリングされる前に要求されたウェブコンテンツを傍受する機能に依存する他の多くのブラウザアドオンコードに悪影響を及ぼす可能性があります。
不安の多くは、webRequest
Chrome 拡張機能が受信ウェブ コンテンツを処理するために使用する API に対する計画的な変更から生じています。Google は API を制限し、無力化されたバージョンの API に置き換えたいと考えていますdeclarativeNetRequest
。
問題は、当初の想定通り、declarativeNetRequest
現在のユースケースに対応するには機能があまりにも限られていることです。実装された場合、uBlock Originのような既存の拡張機能は書き直す必要があり、結局同じ機能を実現することはできません。
背景ページの変更など、既存のコードに潜在的な問題をもたらすその他の技術的な変更も提案されていますが、これがdeclarativeNetRequest
大きな問題点となっています。
金曜日、Googleのソフトウェアエンジニアであるデブリン・クロニン氏はGoogleの計画に関する最新情報を公開し、現状を維持するには不正利用が多すぎると主張した。
ネットユーザーや開発者がChromeの広告ブロックに猛烈に抗議する中、Googleは「まだ確定ではない」と主張
続きを読む
「ユーザーは拡張機能がアクセスできるデータに対して、より詳細な制御権を持つ必要がある」と彼は Chromium 拡張機能ディスカッション グループに投稿したメッセージに書いた。
同時に、彼は開発者コミュニティからの意見に対する Google の関心を改めて強調し、declarativeNetRequest
API のより悪くないバージョンの概要を示すことで、Google が耳を傾けている証拠を示した。
改訂された仕様には、動的なルールのサポートが含まれます。動的なルールとは、コンテンツブロッカーが事前に宣言するのではなく、受信コンテンツに基づいてルールを策定するものです。「これは高度なコンテンツブロッキング拡張機能を作成する上で有益であることは私たちも同意しており、実行時に追加または削除できる宣言型ルールのサポートをdeclarativeNetRequest
APIに追加する予定です」とクロニン氏は述べています。
このAPIは3万以上のルールを処理できる予定ですが、その数は明らかにされていません。クロニン氏は、十分なパフォーマンスを確保するためには、ルールの数を無制限にすることはできないと主張しています。また、効果的なフィルタリングに不可欠な拡張マッチング機能や、Cookieの削除など、リクエストの変更機能も含まれる予定です。
「トップレベルドメインに基づいたマッチングなど、追加する価値がある可能性のある他の条件やアクションについても調査中です」とクロニン氏は述べた。
暗号化解除や DOM 解析などのリソースを大量に消費するバックグラウンド プロセスを処理するために、永続的なバックグラウンド ページの代わりに ServiceWorker を使用することの難しさなど、その他の潜在的な問題も評価されています。
「Manifest V3は準備が整うまでリリースしません。その間は移行期間を設け、フィードバックや問題への対応を継続します」とクロニン氏は述べた。「プラットフォームに自信が持てるようになるまで、Manifest V2のサポートを終了することはありません。」®