米Mozillaは、12月15日(現地時間)にFirefoxの新バージョンとなる「Firefox 84」をリリースした。Firefox 83から4週間でのバージョンアップである。

Firefox 84のインストール

すでに自動アップデートが可能な状況になっているが、ここでは手動でアップデートする方法を説明したい。Firefoxメニューの[ヘルプ]→[Firefoxについて]を開くと更新が自動的に開始される。[再起動してFirefoxを更新]をクリックする(図1)。

  • Firefox 84へのアップデート

    図1 Firefox 84へのアップデート

アップデート後のFirefox 84は、図2のようになる。

  • 図2 バージョン84にアップデート直後のFirefox

新規に、Firefox 84をインストールする場合、FirefoxのWebページからインストーラをダウンロードする(図3)。

  • 図3 Firefoxのダウンロードページ

[今すぐダウンロード]をクリックし、保存したファイルをダブルクリックして、インストールを開始する(図4)。

  • 図4 Firefox 84のインストール

画面の指示に従い、インストールを進めてほしい。以下では、新機能や変更点のいくつかを具体的に見ていこう。

Firefox 84の新機能

続いて、新機能であるが、今回のリリースでは、以下の新機能の追加、変更が行われた。 - Apple Silicon CPU(Apple M1)を搭載したmacOSデバイスにネイティブに対応 - 新レンダリングエンジンのWebRenderが、MacOS Big Sur、Intel Gen 6 GPUを搭載したWindowsデバイス、Windows 7および8を実行するIntelラップトップにも対応した。さらに、Linux/GNOME/X11ユーザー向けにも高速レンダリングパイプラインを対応予定とのことである - Linuxでは共有メモリを割り当てを改善し、パフォーマンスを向上させた。Dockerとの互換性も向上させている - Firefox 84は、Adobe Flashをサポートする最終リリースとなる

以上であるが、macOS関連が多い。もっとも注目すべきは、Apple Silicon CPUへネイティブ対応したことであろう。動作の移行と確認方法であるが、Mozillaのサポートページによると、以下の通りである。

  • 図5 Apple SiliconでFirefoxの新しいバージョン(84+)へのアップグレード

Firefox 84にアップデート後、メニューバーから、Firefox 84を終了させる。これで、Apple Silicon向けのバイナリに切り替わる。その確認方法は、アドレスバーに「about:support」と入力する。「Rosetta Translated」の項目が「false」になっていればApple Silicon用のバイナリが起動している。リリースノートによれば、Rosetta 2トランスレーションで動作していた旧バージョンと比較すると、ベンチマークのSpeedometer 2.0で起動が2.5倍、Webアプリのレスポンスで2倍のパフォーマンス向上が達成されたとのことだ。

その他にも、新しいレンダリングエンジンWebRenderの対応がより広範なものになっている。Linux系でも、今後のパフォーマンス向上が期待できるであろう。

一方、これは新機能ではないが、Adobe Flash PlayerのサポートがFirefox 84が最終バージョンとなる。これは、Flashの開発元であるAdobeからも、2017年に発表済みのことであるが、いよいよ2021年1月12日以降、Flashコンテンツはブロックされる。

Firefoxに限らず、ほかのブラウザ、Microsoft(Windows OS)でもサポートが年内で終了予定である。Flashといえば、初期はインタラクティブなコンテンツの表現手段として注目を集め、普及した。その後、リッチインターネットアプリケーション向けの機能として、多くのWebサイトで採用されてきた。Webの一時代を象徴するものであった。それが最後の時を迎えようとしている。あくまで、筆者の個人的感想であるが、少し感慨深いものがある。

セキュリティアップデート

同時に行われたセキュリティアップデートであるが、修正された脆弱性はCVE番号ベース で14件である。深刻度の内訳は、4段階でもっとも高い「Critical」が1件、上から2番目の「High」が6件、上から3番目の「Moderate」が4件、もっとも低い「Low」が3件となっている。

「Critical」では、

  • BigIntでの操作により、初期化されていないメモリが公開される可能性

が修正された。「High」では、

  • WebGLのヒープバッファオーバーフロー
  • WebGLでのメモリ解放後使用
  • CSSサニタイザーによる誤ったサニタイズの実行
  • StyleGenericFlexBasisの誤ったキャストにより、ヒープのメモリ解放後使用
  • Firefox 84とFirefox ESR 78.6で修正されたメモリ安全性の問題
  • Firefox 84で修正されたメモリ安全性の問題

が修正された。最高レベルの「Critical」を含め、深刻度の高いものが多い。早めのアップデートをすべきであろう。