Mozilla
Thunderbirdが同じメールを何度も再ダウンロードしてストレージ容量を使い潰すトラブル事例
結城です。
先だって、当社のThunderbirdサポートにおいてお客様から以下のようなお問い合わせを頂きました。
- Thunderbird 140.5.0ESRが複数のメールフォルダーについて、ダウンロード済みであるはずのメールを、毎日再ダウンロードする。その結果、ローカルのプロファイルフォルダーのサイズが1日あたり1~2GBずつ増加し、ハードディスクの空き容量が逼迫している。
- 現象は特定のユーザーでのみ発生している。
- Thunderbirdのプロファイルを再作成して全メールを受信完了させた後でも、現象は引き続き発生する。
- メールサーバー側には特にエラーログは記録されていない。
本稿執筆時点でも完全解決には至っていませんが、お客様のご協力を頂いての調査の結果、原因の一端と回避方法は判明しました。 今回は、同様のトラブルでお悩みの方の参考になるよう、本件について現時点で分かっていることをご紹介します。
WebExtensionsでの裏技的な「スクリプトを後から注入」用法が使えなくなった件
結城です。
Firefox 149での開発者向けの変更点情報に記載されたトピックの1つに、拡張機能内のリソース(URLがmoz-extension://~となる物)を読み込んだタブへのスクリプトの動的な注入操作の廃止があります。
この変更は現在は開発版でのみ有効化されており、Firefox 152以降でリリース版でも有効化される旨が決定しています。
今のところは隠し設定を切り替えれば従来の動作に戻せます1が、いずれはこの隠し設定も廃止されて、拡張機能内のリソースに対してはスクリプトの動的な注入操作が恒久的に不可能になるはずです。
筆者が開発している拡張機能「Tree Style Tab(TST)」や、そこで使用しているライブラリーを共用している当社製の他の拡張機能でも、一部の機能が動かなくなる影響が出ていたため、この2ヵ月ほどの間に対応のための改修を行いました。 この記事では、「そもそも、それらの拡張機能ではなぜスクリプトの動的な注入を行っていたのか」「なぜスクリプトの動的な注入が禁止されるようになったのか」「変化に拡張機能側でどのように対応したのか」を解説します。
-
extensions.webextensions.allow_executeScript_in_moz_extensionをabout:configなどを用いてtrueに変更します。 ↩
Phabricatorを使ったFirefoxへのパッチ提供の手順(2026年版)
結城です。
このブログでは2018年に、Firefoxの不具合を修正したり新機能を追加したりといったコントリビューションを行う際のパッチの作り方と、Phabricatorというツールを使ってコードレビューを受ける手順を紹介しました。
2026年現在では、既定のバージョン管理システムがMercurialからGitに移行した他、Phabricatorを使うためのツールのインストール手順が簡素化され、Firefoxへパッチを提供するためのハードルが以前よりも低くなっています。 この記事では、Firefoxへの不具合報告の仕方の解説と不具合の原因調査および修正の仕方の解説に続くシリーズ完結編として、2026年の状況に基づいてFirefoxに不具合を修正するパッチを提供する手順をご紹介します。
Firefoxの不具合の原因調査と修正への取り組みの事例紹介
結城です。
このブログでは過去何度か、FirefoxやThunderbirdの不具合の原因調査や修正の事例をご紹介してきました。 ですが、原因の見つけ方や修正方針の検討の詳細な所はあまり言語化してきていなかったように思われます。
この記事では、Firefoxへの不具合報告の仕方の解説の続編として、Firefoxを使用していて遭遇した不具合の原因を特定し、経緯や事情を調査して適切な修正内容をまとめる所までの詳細な流れをご紹介します。
Firefoxの不具合の報告の手順(2026年版)
結城です。
Firefoxを開発しているMozillaプロジェクトでは、ソースコードのバージョン管理システムをMercurialからGitに移行し、GitHubでホスティングしていく方針が2023年に示されました。 その後、実際に移行が進んで、本稿執筆時点(2026年1月)ではソースコードの入手はGitHubのリポジトリーから行うのが規定となっています。 その一方で、不具合報告の受け付け・管理のためのイシュートラッカーとしては、GitHubのイシュートラッカーではなく、Mozillaプロジェクト専用のイシュートラッカーであるbugzilla.mozilla.org(以下、BMO)が依然使われています1。
このブログでは、Firefoxの不具合を修正したり新機能を追加したりといったコントリビューションを行う際のパッチの作り方を2018年に紹介しましたが、当時の記事は既に誰かによって報告された不具合へのパッチ提出が前提で、自分が見つけた不具合を報告する場面の説明は含まれていませんでした。 パッチ提出の流れには当時と比べ変化があったため、その点を紹介する記事を執筆したいのですが、まずはその前段階として、この記事では具体的な事例を参照しつつ、BMOを用いたFirefoxの不具合報告の仕方をご紹介します。
-
「Bugzilla」はイシュートラッカーのソフトウェア自体の名称です。Bugzillaはそれ自体がオープンソースのソフトウェアで、独立したプロジェクトとして開発されており、Mozilla以外のプロジェクトでも採用されている事例があります。bugzilla.mozilla.orgは、Mozilla自身が運用しているBugzillaのインスタンスの一つということになります。 ↩
WindowsでFirefoxのビルド手順(2026年版)
Thunderbird版FlexConfirmMailユーザーの皆さまへのご案内:「自動更新あり」の状態を維持するための移行ガイド
結城です。
当社のメール誤送信対策製品「FlexConfirmMail」のThunderbirdアドオン版を従来から使用している方は、自動更新によって提供された最新バージョンとして4.2.5をお使いかと思います。 現在、このFlexConfirmMailの不具合を修正し新機能を追加した新バージョンとして4.2.8が公開されていますが、従来からFlexConfirmMailをお使いの方の環境では、このバージョンは自動更新では反映されません。 今後もFlexConfirmMailをThunderbirdでお使い頂く場合は、FlexConfirmMailの再インストールと設定の引き継ぎが必要となります。
本記事では、FlexConfirmMailの再インストールおよび設定の引き継ぎが必要となっている背景事情を説明し、実際の引き継ぎ手順を説明します。
Firefox ESR140での差分更新の適用手順
結城です。
通常、Firefoxは動作中にバックグラウンドで更新用の差分ファイルを自動的にダウンロードし、再起動のタイミングで更新を適用します。 しかし企業などでの運用においては、一般ユーザーには管理者権限を与えない場合があり、そのような場面では、Firefoxの更新は管理者やシステム権限でのインストーラーの再実行、もしくは更新用の差分ファイルをローカルで適用して行うことになります。 配布ファイルのサイズが小さく済む差分ファイルのみを各端末に配布し、ログオンスクリプトなどを用いて端末上でローカルで適用するやり方は、組織内ネットワークの帯域の逼迫を防ぎたいといった事情がある場合には有用と言えます。
この差分ファイルの適用手順は長らく変化がありませんでしたが、Firefox ESR140時点(より正確に言えばFirefox 138時点)で一部の仕様が変わっており、従来の手順では差分更新を行えなくなっています。 本記事では、Windows端末上でFirefox ESR140に差分更新をローカルで適用する手順を改めて紹介します1。
-
本記事の情報はMozillaの日本コミュニティポータルに提供した法人向け技術情報を補完する物で、本記事で述べている情報を含めるための修正も提案済みとなっています。 ↩
公開のOSS開発プロジェクトの業務での開発事例:Waterfoxのツリー型タブと垂直タブの統合
結城です。
昨年、Firefoxのフォーク版の一つとして知られるWaterfoxプロジェクト主催のAlex氏からのご依頼に基づき、Firefox用アドオン「ツリー型タブ(Tree Style Tab、以下TST)」を組み込む作業を行いました。 本年8月にリリースされたWaterfox 6.6.0ではその発展として、Watarfox本体の垂直タブとの統合作業を行いました。

本記事では、今回の契約の経緯と開発の成果の技術的側面のそれぞれをご紹介します。
Thunderbirdで「マスターパスワードを使用する」設定が強制適用されない事象と、修正までの回避策
屋代です。
Mozilla Thunderbirdをお使いのお客様から、次のような問い合わせがありました。
- Thunderbirdにマスターパスワード1を強制的に適用する設定を導入したい
- インストールディレクトリ
C:\Program Files\Mozilla Thunderbird配下にdistributionディレクトリを作成しpolicies.jsonを配置した policies.jsonに"PrimaryPassword":trueと記載したが、マスターパスワードが無効化できてしまう
調査したところ、Thunderbirdの不具合と判明しました。
-
「マスターパスワード」の名称は英語版Thunderbirdでは「Primary Password」に変更されています Primary Password is replacing Master Password in Thunderbird (support.mozilla.org)。 当記事では日本語UIの文言にならい「マスターパスワード」を使用します。 ↩