互換性

This page is a translated version of the page Compatibility and the translation is 97% complete.

MediaWikiはバージョン間、および現行からレガシーまでの広い範囲のソフトウェアとの間で、互換性を広く保証するよう努めています。同時に、コードベースと最新のMediaWikiの開発は常に進化し続けているため、レガシーなソフトウェアとの間で互換性を無期限に保証することは不可能です。

MediaWikiのサポート対象について変更のご要望はPhabricatorコメント募集をご利用ください。

サーバーソフトウェア

これら各節に MediaWiki を走らせるサーバに積む必要のあるソフトウェアの概略を示します。

PHP

MediaWiki の最新の安定版ブランチ (1.39) は、PHP 7.4.3 以降で動作します。

今後のバージョン対応は、PHPのサポート方針 をご参照。

HHVM のサポートは MediaWiki 1.34 で廃止されました。 使用しないことを強くお勧めします。

MediaWiki は PHP 7.4.0 - 7.4.2 までと互換性がありません (上流のバグのため)。 代わりに PHP 7.4.3+ を使用してください。 詳細情報は タスク T246594 を参照してください。
MediaWiki の PHP 8.0 以降のサポートは 1.39.0 で開始されました。 MediaWiki 1.35.xのような他のリリースブランチは、PHP 8に関する小さな問題や警告があるかもしれませんが、一般的には動作します。 詳細情報は T248925 を参照してください。
1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 1.10 1.11 1.12 1.13 1.14 1.15 1.16 1.17 1.18 1.19 1.20 1.21 1.22 1.23 1.24 1.25 1.26 1.27 1.28 1.29 1.30 1.31 1.32 1.33 1.34 1.35 1.36 1.37 1.38 1.39 master
 8.1.0+
 8.0.0+
 7.4.3+
 7.3.19+ 
 7.2.x 
 7.1.x 
 7.0.x 
 5.6.x 
 5.5.9+ 
 5.5.0–5.5.8 
1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 1.10 1.11 1.12 1.13 1.14 1.15 1.16 1.17 1.18 1.19 1.20 1.21 1.22 1.23 1.24 1.25 1.26 1.27 1.28 1.29 1.30 1.31 1.32 1.33 1.34 1.35 1.36 1.37 1.38 1.39 master
 5.4.x 
 5.3.3+ 
 5.3.2 
 5.2.3+ 
 5.1.x 
 5.0.x 
1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 1.10 1.11 1.12 1.13 1.14 1.15 1.16 1.17 1.18 1.19 1.20 1.21 1.22 1.23 1.24 1.25 1.26 1.27 1.28 1.29 1.30 1.31 1.32 1.33 1.34 1.35 1.36 1.37 1.38 1.39 master

データベース

MediaWiki はさまざまな種類のデータベース サーバーと互換性があります。MySQL への対応に特に力を入れています。(MariaDB も使用できます。)

他のデータベース ソフトウェアのサポートには心もとない物から安定している物まで幅があります。 MediaWiki は PostgreSQL と SQLite 用にデータベースの抽象層を提供しており、それは一般的には良く維持管理されています。


バージョン 1.36 以降、MediaWiki は 2 つの主要な LTS リリース からのアップグレードをサポートすることのみを保証しています (phab:T259771 を参照)。 MediaWiki の古いバージョンからのアップグレードは、複数のステップで実行する必要があります。 これは、1.36 にアップグレードする場合、1.23 以前のバージョンからアップグレードする場合、最初に 1.23 のウィキを 1.27 (または 1.35) にアップグレードし、さらに 1.27 (または 1.35) から 1.36 にアップグレードする必要があることを意味します。
MediaWiki 1.34 以降、Oracle および Microsoft SQL Server の使用に対応しなくなりました。 これらを使用しないことを強くお勧めします。
1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 1.10 1.11 1.12 1.13 1.14 1.15 1.16 1.17 1.18 1.19 1.20 1.21 1.22 1.23 1.24 1.25 1.26 1.27 1.28 1.29 1.30 1.31 1.32 1.33 1.34 1.35 1.36 1.37 1.38 1.39 master
 MariaDB 10.3.0+
 MariaDB 10.1.0+ 
 MySQL 5.7.0+
 MySQL 5.5.8+ 
 MySQL 5.0.3+ 
MySQL 4.x 
MySQL 3.x 
 SQLite 3.8.0+
 SQLite 3.3.7+ 
 SQLite 3+ 
1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 1.10 1.11 1.12 1.13 1.14 1.15 1.16 1.17 1.18 1.19 1.20 1.21 1.22 1.23 1.24 1.25 1.26 1.27 1.28 1.29 1.30 1.31 1.32 1.33 1.34 1.35 1.36 1.37 1.38 1.39 master
 PostgreSQL 10+
 PostgreSQL 9.4+ 
 PostgreSQL 9.2+ 
 PostgreSQL 8.3+ 
 PostgreSQL 8.1 
1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 1.10 1.11 1.12 1.13 1.14 1.15 1.16 1.17 1.18 1.19 1.20 1.21 1.22 1.23 1.24 1.25 1.26 1.27 1.28 1.29 1.30 1.31 1.32 1.33 1.34 1.35 1.36 1.37 1.38 1.39 master

アップグレード

バージョン 1.36 以降、MediaWiki は 2 つの主要な LTS リリース からのアップグレードをサポートすることのみを保証しています (phab:T259771 を参照)。 MediaWiki の古いバージョンからのアップグレードは、複数のステップで実行する必要があります。 これは、1.36 にアップグレードする場合、1.23 以前のバージョンからアップグレードする場合、最初に 1.23 のウィキを 1.27 (または 1.35) にアップグレードし、さらに 1.27 (または 1.35) から 1.36 にアップグレードする必要があることを意味します。

ウェブサーバー

MediaWikiは、互換性があるバージョンのPHPを実行できる主要なウェブサーバーすべてと、広く互換性があります。 Apacheが最も多く使用されており、動作テストも最も多くされています。 Nginxも同様に良い選択です。

MediaWiki拡張機能

拡張機能が適切にメンテナンスされている限り(説明文書のページにある情報ボックス最上段で確認可能)、その拡張機能のマスターブランチはMediaWikiマスターブランチと互換性を保つ必要があります。 旧版の MediaWiki との互換性を検討するには、拡張機能に適用される以下の共通の方針があります:

  • マスター (key: master): 拡張機能のマスターブランチはMediaWiki最新版ならびに旧版と互換性を保つ。 必要に応じて、下位互換性ハックが拡張機能のソースコードに追加されます。
  • リリースブランチ (key: rel): 各MediaWiki リリース版には、必ず拡張機能のブランチが対応する。 ということは 例えば MediaWiki 1.39 を使用するときは必ず拡張機能の REL1_39 ブランチを使用します。
  • 長期間サポート リリース ブランチ (キー: ltsrel)。長期間サポート リリースであるすべての MediaWiki リリース (バージョン ライフサイクル リリース ポリシーを参照) のそれぞれに対応するブランチが、拡張機能に存在します。 ということは 例えば MediaWiki 1.39 を使用するときは必ず拡張機能の REL1_39 ブランチを使用します。 MediaWiki の非 LTS バージョンを使用している場合、通常は以前の LTS バージョン用の拡張機能のブランチを使用する必要があります。 例えば、ltsrel 拡張機能を使用する MediaWiki 1.34 ウィキは、通常はその拡張機能の REL1_31 ブランチを使用します。 ただし、互換性を保証するものではありません。

Extension 基礎情報ボックス内のcompatibility policy欄にはその拡張機能で採用する方針はどれか示しています。情報を絞り込むには、上記に示した中から適したキーを選んでください。

拡張機能のなかには互換性について独自の方針を通すものもあります。例えば:

ブラウザー

全般的な情報

世界には様々なウェブ ブラウザーがあり、その数は日々増大しています。

それぞれを能動的にテストしてサポートするには数が多すぎます。 ブラウザー サポートをめぐる慣行の基準として、3つのサポート レベルがあります。 レベルごとにブラウザーのカテゴリを表します。

モダン(グレードA)

このグループ(グレードA)はもっとも高水準なサポートを意味します。モダンなブラウザーの能力を利用して機能を実現し、古いブラウザーに対する互換性が多少崩れることは許容します。ソフトウェアが提供するすべての機能 (廃止予定か否かに関わらず) はこれらのブラウザーで必ず動くようにします。

ここに分類されるブラウザーは特定されており(下記参照)、積極的なテストの対象になります。これらのブラウザで起こる問題は高い優先度で対処されます。

基本(グレードC)

このグループは、MediaWiki プラットフォームのコア機能を提供します (別名 Grade C)。 私たちの HTTP レスポンスは、これらのブラウザーと互換性があります。(例: 私たちが依存する HTTP 機能、文字エンコーディング、コンテンツが使用する画像形式、はこれらのブラウザで動作する必要があります)。 フロントエンドでは、これはコンテンツが読みやすい形式で表示され、コンテンツやアカウントの操作が行えることを意味しますが、これらのブラウザーは JavaScript の機能を利用できません。

このカテゴリに属するブラウザーの中には、最新の JavaScript (ES6) と互換性がないため、JavaScript の機能が得られないものがあることが知られています。 これらは、スタートアップ モジュール内の機能試験スイートおよびユーザー エージェント フィルターで識別されます。

不明(グレードX)

このグループ(グレードX)には上記以外のすべてのブラウザーが入ります。以下のようなブラウザーが含まれます。

  • 開発または保守が終了し、現代のインターネット標準と互換性のないブラウザーまたはブラウザーのバージョンは、MediaWiki はサポートを打ち切ることがあります。
  • ソフトウェア開発のための保守コストの上乗せを正当化のに十分なほど普及していないブラウザー群は、これらのブラウザーのみで利用者が感じる問題は低優先度とします。

MediaWiki はこれらのブラウザーをモダン(グレードA)のブラウザーと同様に処遇し、機能が十分なブラウザーとみなします。この原則には様々な重要な利点があります:

  • モダンなブラウザーの新バージョンがまだ私たちのテスト対象ではない場合、一時的に「不明」とみなされる可能性があります。不明なブラウザーは十分な機能があるとすることで、それらのブラウザーでも最適なユーザー体験が保証されます。
  • 最新の進化したブラウザを利用する人にモダンな体験を与えられます。
  • 既知の最新のブラウザーに基づく、または派生したあまり人気のないブラウザーの利用者は、悪影響を受けません (「例」Samsung InternetUC BrowserVivaldi、および Iceweasel)。

実際上、不明とモダンの各グループの違いは、不明グループのブラウザーは積極的にはテストしないということです。

これらのブラウザーには完全な機能の集合体が用意されており、HTTP、HTML、CSS、JS 機能は、これらのブラウザーと互換性がある場合とない場合があり、Grade C ブラウザー向けの対策 (新しい CSS 機能に対するフォールバック CSS など) の影響を受ける場合と受けない場合があることを意味しています。 特に、JavaScript のサポートが有効かどうかは、機能テスト スイートとユーザー エージェント フィルター (上記参照) によって決定されます。

ブラウザーの対応状況マトリックス

前述の原則やグレードごとの説明はMediaWikiコアや拡張機能にも同じように適用されますが、下記のブラウザー対応状況マトリックスが適用されるのはMediaWikiコア、ウィキメディア財団のインフラ、およびそれに追従すると決めたMediaWiki拡張機能に限定されます。個々の拡張機能は、独自の対応状況マトリックスを持っているかもしれません。ブラウザー使用状況分類ダッシュボードも参照してください。

ブラウザー対応状況マトリックス (2023年4月時点) · ·
ブラウザー Chrome Opera Edge Edge レガシ Firefox Internet Explorer Safari iOS Android
モデル (グレード A) 過去3年間のバージョン (2020) なし 過去3年間のバージョン (2020) なし 11.3+ (2018) 11.3+ (2018) 5+ (2014)
基本 (グレードC) 31+ (2013) 18+ (2013) 79+ (2020) 12+ (2015) 39+ (2014) 11 (2013) 9.1+ (2015) 9+ (2015) 5+ (2014)[note 1]
不明 (グレードX) その他すべてのブラウザー
2023年5月時点の実用的な実装
プラットフォーム 最低限の OS とデバイス 対応しているモダン ブラウザー
Android Moto G (1st generation (2013)
Google Nexus 4 (2012)
Android 5.1, Chrome 83+
Samsung Galaxy S5 (2014) Android 6.0, Chrome 83+
iOS iPhone 5s (2013) iOS Mobile Safari 11.3 - 12 (2018-2023)[1]
Linux Debian 10 Buster (2019) firefox-esr 102, chromium 90
Ubuntu 18.04 LTS (2018) firefox (現行), chromium ブラウザー (現行)
macOS OS X 10.9 Mavericks (2013-2016) Firefox 78 ESR (2020). 既定の Safari 7 には対応していません。
macOS 10.13 High Sierra (2017-2020) Safari 11.3、現行の Firefox、Chrome 83 以降
macOS 10.15 Catalina (2019-2022) Safari 13.1、現行の Firefox、Chrome 83 以降
Windows Windows 7 (2009-2020) Edge 83 以降、現行の Firefox、Chrome 83 以降

変更点の一覧 (新しい順):

  • 2023年現在、サポート対象は再確認されています。Chrome および Chromeベースのブラウザーについては、最近の3年間のバージョンが対象となっています (3か月ではなく3年を網羅)。Firefox については、現在のバージョンと前の LTS バージョンが対象となっています (ほぼ同じ期間を網羅します)。 T178356
  • MediaWiki 1.41 以降、Internet Explorer 11、macOS および iOS の Safari 9-10、Firefox 39-53 に対するモダン サポートは除去されました。 T178356
  • MediaWiki 1.39 以降、Internet Explorer 9-10、Firefox 27-38、Android 4.3-4.4 向けの基本サポートは除去されました。 T293298, T297313, T290815
  • MediaWiki 1.36 以降、Firefox 3-26、Internet Explorer 8、Safari 3-8、iOS (Safari) 5-8、Android 3.0-4.2、Chrome 1-30、Opera 15-18 向けの基本サポートは除去されました。 T248061, T262946, T266866
  • MediaWiki 1.36 以降、Android 4.1-4.2、iOS 6.1-8、Safari 5.1-8 向けのモダン サポートは除去されました。 T266866
  • MediaWiki 1.35 以降、Internet Explorer 6 および 7、Android 2 向けの基本サポートは除去されました。 T232563, T249788
  • MediaWiki 1.31 以降、Internet Explorer 10 向けの JavaScript は無効になりました。 T187869
  • MediaWiki 1.29 以降、Internet Explorer 9 およびその他の非 ES5 ブラウザー向けの JavaScript は無効になりました。 T128115
  • MediaWiki 1.27 以降、Internet Explorer 8 向けの JavaScript は無効になりました。 T118303, Wikitech-ambassadors のメール
  • MediaWiki 1.24 以降、Internet Explorer 6 および 7 向けの JavaScript は無効になりました。 gerrit:152072, gerrit:152128, Wikitech-ambassadors のメール

モバイル版

ウィキメディア財団のウェブ チームは、モバイル専用の外装 (例: Minerva ) および/またはモバイル機器 (例: MobileFrontend ) 上でのみ動作するように設計された拡張機能に対して、より狭いサポート マトリックスを適用しています。 対応状況マトリックスは analytics user agent breakdown dashboard から提供されたデータをもとに集計しています。 ブラウザーの使用率が 5% を超えると、モダンなエクスペリエンス (グレードA) がサポートされます。 過去12か月にわたり0.1%超であれば基本的サポート (グレードC) を受けられます。 携帯端末ではGrade Bの提供が目標です。Grade Bの利用者にはJavaScriptの利用ができたりできなかったり一定しませんが、Grade Aほど厳密に試験しないため、バグ修正を優先し発生頻度を低下させます。 MobileFrontend におけるモダン サポートのブラウザーのリストは .browserlistsrc ファイルで定義されています。

リストにないブラウザーか、リストに含まれるブラウザーより古いものは基本サポートのブラウザーとされます。

関連項目

Notes

  1. これは標準の Android ブラウザーを指していることに注意してください。 Android 版 Chrome では、Chrome 31 以降を実行している場合、Android 4.0 以降(2011)が必要です。

References