Kompatibilität
MediaWiki versucht eine breite Kompatibilität zwischen Versionen sowie mit einer Auswahl aktueller und älterer Software zu erhalten. Zur gleichen Zeit bedeuten der sich stets wandelnde Programmcode und die Features der neusten Entwicklungen, dass es nicht möglich ist, dauerhaft die Kompatibilität mit veralteter Software zu erhalten.
Wenn du eine Änderung dahingehend vorschlagen möchtest, was MediaWiki unterstützt, kannst du einen Request for comment auf Phabricator erstellen.
Server-Software
Diese Abschnitte geben einen Überblick darüber, welche Software auf dem Server benötigt wird, um MediaWiki zu betreiben.
PHP
Der letzte stabile Zweig von MediaWiki (1.42) läuft mit PHP 7.4.3 und höher.
Für kommende Versionen, siehe Unterstützungsrichtlinie für PHP .
Die Unterstützung für HHVM wurde in MediaWiki 1.34 entfernt. Es wird stark davon abgeraten, HHVM zu verwenden.
Wikimedia production servers currently run PHP 7.4, with plans to upgrade to PHP 8.1 soon. Patches for MediaWiki core are tested against PHP 7.4 when created, and PHP 7.4, 8.1, 8.2 when merging. MediaWiki developers are encouraged to develop using PHP 8.1, and the MediaWiki Docker image uses PHP 8.1.
If your OS distribution has an unsupported version of PHP, you may be able to use a community package repository:
- Debian (Ubuntu): Sury
- RHEL (Fedora / Rocky / Oracle): Remi / RHEL 9 stream
- SUSE: openSUSE contributors
- Arch (Manjaro): el:archphp
- macOS (Homebrew): shivammathur
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 | 1.40 | 1.41 | 1.42 | master |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
8.3.0+ | ||||||||||||||||||||||||||||||||||||||||||
8.2.0+ | ||||||||||||||||||||||||||||||||||||||||||
8.1.0+ | ||||||||||||||||||||||||||||||||||||||||||
8.0.0+ | ||||||||||||||||||||||||||||||||||||||||||
7.4.3+ | ||||||||||||||||||||||||||||||||||||||||||
7.3.19+ | ||||||||||||||||||||||||||||||||||||||||||
7.2.x | ||||||||||||||||||||||||||||||||||||||||||
7.1.x | ||||||||||||||||||||||||||||||||||||||||||
7.0.x | ||||||||||||||||||||||||||||||||||||||||||
5.6.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 | 1.40 | 1.41 | 1.42 | master |
5.5.9+ | ||||||||||||||||||||||||||||||||||||||||||
5.5.0–5.5.8 | ||||||||||||||||||||||||||||||||||||||||||
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 | 1.40 | 1.41 | 1.42 | master |
Datenbank
MediaWiki ist mit einer Vielzahl von Datenbankservern kompatibel. Es wird empfohlen, MySQL oder MariaDB zu verwenden.
Andere Datenbank-Software wird für den produktiven Einsatz nicht empfohlen. Der Support unterscheidet sich von MediaWiki-Version zu MediaWiki-Version und variiert zwischen dubios und stabil. MediaWiki stell Datenbank-Abstraktionsebenen für PostgreSQL und SQLite zur Verfüfung, die im Allgemeinen gut gewartet sind.
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 | 1.40 | 1.41 | 1.42 | 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 | 1.40 | 1.41 | 1.42 | master |
PostgreSQL 10+ | ||||||||||||||||||||||||||||||||||||||||||
Postgres 9.4+ | ||||||||||||||||||||||||||||||||||||||||||
Postgres 9.2+ | ||||||||||||||||||||||||||||||||||||||||||
Postgres 8.3+ | ||||||||||||||||||||||||||||||||||||||||||
Postgres 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 | 1.40 | 1.41 | 1.42 | master |
Upgrades
Webserver
MediaWiki ist weitgehend mit allen wichtigen Webservern kompatobel, die eine kompatible Version von PHP abrufen können. Apache wird am meisten verwendet und getestet. Nginx ist ebenfalls eine gute Wahl.
MediaWiki-Erweiterungen und -Skins
Solange eine Erweiterung oder ein Skin vernünftig gewartet wird, sollte der Master-Zweig der Erweiterung oder des Skins mit dem Master-Zweig von MediaWiki kompatibel sein. Um die Kompatibilität mit älteren MediaWiki-Versionen zu bestimmen, existieren die folgenden allgemeinen Richtlinien, die von Erweiterungen und Skins verwendet werden:
- master (Schlüssel: „master“): Der master-Zweig der Erweiterung ist sowohl mit aktuellen als auch mit älteren Versionen von MediaWiki kompatibel. Hacks, um Abwärtskompatibilität sicherzustellen, werden wenn benötigt zum Quellcode der Erweiterung hinzugefügt.
- Release-Branches (Schlüssel: „ref“): Für jeden MediaWiki-Version existiert ein entsprechender Branch in der Erweiterung oder dem Skin. Wenn du z. B. MediaWiki 1.42 verwendest, solltest du den REL1_42-Branch der Erweiterung oder des Skins verwenden.
- long-term support release branches (Schlüssel: ltsrel): Für jede MediaWiki-Veröffentlichung, die eine Langzeitunterstützungsversion ist (siehe Versionslebenszyklus-Veröffentlichungsrichtlinie), existiert ein entsprechender Zweig in der Erweiterung oder dem Skin. Wenn du z. B. MediaWiki 1.39 verwendest, solltest du den REL1_39-Branch der Erweiterung verwenden. Wenn du eine nicht-LTS-Version von MediaWiki nutzt, musst du üblicherweise die Branches der jeweiligen Erweiterungen oder Skins der vorherigen LTS-Versionen verwenden. Zum Beispiel nutzen MediaWiki 1.34 wikis, die eine ltsrel-Erweiterung verwenden, den REL1_31 Zweig dieser Erweiterung. Jedoch ist eine vollständige Kompatibilität nicht garantiert.
Das Kompatibilitätsrichtlinie-Feld der Infobox Extension gibt an, welche Richtlinie von einer bestimmten Erweiterung verwendet wird. Verwende die oben angegebenen Schlüssel, um die Informationen anzugeben.
Einige Erweiterungen haben spezifischere Kompatibilitätsrichtlinien, zum Beispiel:
Browser
Allgemeine Informationen
Every web page starts in Basic mode, where only the HTML is rendered. CSS can be assumed to succeed for visual readers and should be used for presentation. The Modern layer (subdivided into support grades A, C, and X) defines optional enhancements and interactions written in client-side JavaScript. This layer may fail to load, arrive later, or not at all; including in modern browsers. This depends on various circumstances. To learn more, refer to MediaWiki Engineering guidelines.
Die Browser werden über eine Feature-Testsuite im Startup-Modul identifiziert. The modern layer currently requires JavaScript version ES6 (ES2015). For MediaWiki developers, this means that you should not use syntax from later versions of JavaScript. This is enforced through ESLint rules in eslint-config-wikimedia.
Es existiert eine ständig wachsende Anzahl verschiedener Webbrowser. Zu viele, um jeden aktiv zu testen und zu unterstützen. Um unser Vorgehen im Bereich Browsersupport zu leiten, haben wir drei Levels von Support. Jede Gruppe stellt eine andere Kategorie von Browsern dar.
In der Praxis ist der einzige Unterschied zwischen Unbekannten und Basis-Browsern, dass wir nicht aktiv Tests mit Unbekannten Browsern vornehmen. All browsers receive the same server responses, and will try to load the Modern layer if it passes the required JavaScript capabilities.
Grad A
Diese Gruppe stellt die höchste Unterstützungsstufe dar (auch bekannt als Grad A). Features greifen auf die Fähigkeiten moderner Browser zurück, während sie elegante Ersatzfunktionalität für ältere Browser bereitstellen. Alle Features, die die Software zur Verfügung stellt (unabhängig davon, ob in verminderter Form oder nicht) müssen in diesen Browsern funktionieren.
Browser in dieser Kategorie sind bekannt (unten aufgelistet) und werden bei Änderungen aktiv gestestet. Probleme, die Benutzer in diesen Browsern wahrnehmen, werden mit hoher Priorität bearbeitet.
Grad C
Diese Gruppe (auch Grad C genannt) erhält die Kernfunktionalität von MediaWiki. Unsere HTTP-Antworten sind mit diesen Browsern kompatibel (z. B. HTTP-Features, auf die wir uns verlassen, Zeichenkodierung und Bildformate, die vom Inhalt verwendet werden, müssen in diesen Browsern funktionieren.) Im Frontend bedeutet das, dass die Inhalte lesbar dargestellt werden und Inhalts- und Kontoaktionen durchgeführt werden können, aber JavaScript-Funktionen möglicherweise nicht funktionieren. To browsers that don't pass the feature test mentioned above, modern JavaScript is not served at all.
Browsers in this category are known (listed below), and are rarely tested against. Problems users perceive in these browsers are addressed with high priority. However, mitigation may focus on ensuring that available functionality is not broken; if acceptable from a product perspective, this may result in the affected enhancement being disabled (whether or not temporarily) rather than restored in these browsers.
Grad X
Diese Gruppe (auch Grad X genannt) steht für alle anderen Browser. Dies schließt Browser ein: die nicht mehr weiterentwickelt werden sowie solche ein, die nicht populär genug sind, um die zusätzlichen Wartungskosten in der Softwareentwicklung zu rechtfertigen.
MediaWiki behandelt diese Browser genauso wie Browser mit Grad A oder C: es gibt keinen User-Agent-Filter, also erhalten diese Browser JavaScript-Verbesserungen, wenn sie den Feature-Test für die "Modern"-Schicht bestehen.
Browsers not included in any other group belong to this category, including:
- * Benutzer von weniger populären Browsern, die auf bekannten modernen Browsern basieren oder von diesen abgeleitet sind (z. B. Samsung Internet, UC Browser, Vivaldi und Iceweasel), sind nicht negativ betroffen.
- * Neue oder nicht unterstützte Versionen moderner Browser können vorübergehend als Unbekannt eingestuft werden, wenn sie noch nicht von uns getestet wurden. Die Behandlung von unbekannten Browsern als geeignet gewährleistet eine optimale Benutzererfahrung in diesen Browsern.
- die nicht mehr weiterentwickelt oder gewartet werden und nicht mit modernen Internet-Standards kompatibel sind; MediaWiki kann sich dafür entscheiden, den Support einzustellen. These might receive the "Basic" mode, or might be unable to even connect to the web server.
- Benutzer von neuen und weiterentwickelten Browsern erhalten die Möglichkeit, ein zeitgemäßes Interface zu nutzen.
die nicht populär genug sind, um die zusätzlichen Wartungskosten in der Softwareentwicklung zu rechtfertigen; Probleme, die Benutzer in diesen Browsern wahrnehmen, erhalten nur niedrige Priorität.
Browsersupport-Matrix
Desktop
Die oben beschriebenen Prinzipien und unterschiedlichen Grade gelten für den MediaWiki-Kern und die Erweiterungen gleichermaßen. Die untenstehende Support-Matrix wendet diese Stufen im Kontext des MediaWiki-Kerns, der Infrastruktur der Wikimedia Foundation und aller MediaWiki-Erweiterungen an, die sich entscheiden, ihr zu folgen. Einzelne Erweiterungen können ihre eigene Support-Matrix haben, die die Browser auf die verschiedenen Support-Stufen verteilt. Siehe auch Browser-Nutzung Aufschlüsselung-Dashboard.
Browser | Chrome | Edge | Firefox | Safari | iOS | Android | |||
---|---|---|---|---|---|---|---|---|---|
Modern (Note A) | Last three years' versions (2021) | 11.1+ (2018) | 11.3+ (2018) | 5+ (2014) | |||||
Grundlegend (Note C) | 49+ (2016) | 79+ (2020) | 49+ (2016) | 10+ (2016) | 10+ (2016) | 5+ (2014)[note 1] | |||
Unbekannt (Note X) | Alle weiteren Browser |
Platform | Minimum OS or device | Supported modern browser |
---|---|---|
Android | Moto G (1st generation) (2013) Google Nexus 4 (2012) |
Android 5.1, Chrome 91-95 |
Samsung Galaxy S5 (2014) | Android 6.0, Chrome 91-106 | |
iOS | iPhone 5s (2013) | iOS Mobile Safari 11.3 - 12 (2018-2023)[note 2] |
Linux | Debian 10 Buster (2019) | firefox-esr 102 |
Ubuntu 18.04 LTS (2018) | firefox (current), chromium-browser (current) | |
macOS | OS X 10.11 El Capitan (2015-2018) | Safari 11.1, Chrome 91-103 |
macOS 10.13 High Sierra (2017-2020) | Safari 11.1-13, Firefox 115 ESR, Chrome 91-116 | |
macOS 10.15 Catalina (2019-2022) | Safari 13-15, current Firefox, Chrome 91 to current | |
Windows | Windows 7 (2009-2020) | Edge 91-109, Firefox 115 ESR, Chrome 91-109 |
List of changes, most recent first:
- As of MediaWiki 1.43, Basic support is removed for Internet Explorer 11 (IE 11), Edge 12–18, Chrome 31–48, Firefox 39–48, Safari 9 on macOS and iOS, and Opera. Chromium versions of Opera will probably see exactly the same experience as before. T288287
- As of 2023, the support targets have been re-stated; for Chrome and Chrome-based browsers, this is now the last three years' versions (covering three years rather than three months); for Firefox, this is now the current and previous LTS versions (reaching approximately the same time range). T178356
- As of MediaWiki 1.41, Modern support is removed for Internet Explorer 11, macOS and iOS Safari 9–10, and Firefox 39–53. T178356
- As of MediaWiki 1.39, Basic support is removed for Internet Explorer 9-10, Firefox 27-38, and Android 4.3-4.4 T293298, T297313, T290815
- As of MediaWiki 1.36, Basic support is removed for Firefox 3-26, Internet Explorer 8, Safari 3-8, iOS (Safari) 5-8, Android 3.0-4.2, Chrome 1-30, and Opera 15-18. T248061, T262946, T266866
- As of MediaWiki 1.36, Modern support is removed for Android 4.1-4.2, iOS 6.1-8, and Safari 5.1-8. T266866
- As of MediaWiki 1.35, Basic support is removed for Internet Explorer 6-7 and Android 2. T232563, T249788
- As of MediaWiki 1.31, JavaScript for Internet Explorer 10 has been disabled. T187869
- As of MediaWiki 1.29, JavaScript for Internet Explorer 9 has been disabled along with other non-ES5 browsers. T128115
- As of MediaWiki 1.27, JavaScript for Internet Explorer 8 has been disabled. T118303, Wikitech-ambassadors message
- As of MediaWiki 1.24, JavaScript for Internet Explorer 6 and 7 has been disabled. gerrit:152072, gerrit:152128, Wikitech-ambassadors message
The Wikimedia Foundation also provides an up-to-date browserslist config reflecting the support matrix.
Mobil
Das Web-Team der Wikimedia Foundation wendet eine engere Unterstützungsmatrix für mobilspezifische Designs an z. B. Minerva und/oder Erweiterungen, die nur für den Betrieb auf mobilen Geräten z. B. MobileFrontend gedacht sind.
Die Support-Matrix wird aus den Daten zusammengestellt, welche die Analyse des Benutzer-Agent Ausfall-Dashboards liefert.
Bei einer Browser-Nutzung von über 5 % wird ein modernes Erscheinungsbild (Klasse A) unterstützt.
Eine Basisunterstützung (Grad C) wird für alles gewährt, was über 0,1 % während der letzten 12 Monate liegt.
Im mobilen Bereich streben wir eine Note B an. Benutzer der Note B können JavaScript erhalten oder auch nicht, und wir testen nicht auf dem gleichen Niveau wie A, daher priorisieren wir Bugfixes niedriger.
Die Liste der modernen, unterstützten Browsern auf MobileFrontend wird in der Datei .browserlistsrc
definiert.
Alles, was in der Liste fehlt oder älter ist, gilt als unterstützter Basis-Browser.
Siehe auch
- Versionszyklus von MediaWiki-Versionen
- No-JavaScript notes
- MediaWiki - compatibility error note (example)
- wikitech:HTTPS/Browser Recommendations
- Graded Browser Support by YUI (2011-2015)
- Graded Browser Support by Yahoo (2006-2012)
Anmerkungen
- ↑ Note this refers to the stock Android browser. For Chrome for Android, provided that you're running Chrome 49+, it requires Android 4.1+(2012). For Firefox for Android, provided that you're running Firefox 49+, it requires Android 4.0+(2011).
- ↑ iOS 11 dropped support for iPhone 5 and older devices