Kompatibilita
MediaWiki usiluje o zachování široké kompatibility mezi verzemi a řadou současného a staršího softwaru. Neustále se vyvíjející kódová základna a funkce nejnovějšího vývoje MediaWiki zároveň znamenají, že není možné udržovat kompatibilitu se starým softwarem na neurčito.
Pokud chcete navrhnout změnu toho, co MediaWiki podporuje, můžete na Phabricator podat žádost o komentář.
Serverový software
Tyto části poskytují přehled softwaru potřebného pro server pro spuštění MediaWiki.
PHP
Nejnovější stabilní verze MediaWiki (1.42) běží na jakékoli verzi PHP 8.1.0.
Na nové verze se podívejte na Zásady podpory pro PHP .
Produkční servery Wikimedie v současné době běží na PHP 7.4 a plánuje brzy aktualizovat na PHP 8.1. Záplaty pro jádro MediaWiki jsou testovány proti PHP 7.4 při vytvoření a PHP 7.4, 8.1, 8.2 při sloučení. MediaWiki developers are encouraged to develop using the latest supported version of PHP. The MediaWiki Docker image, primarily used by developers, uses PHP 8.3 as of December 2024.
Pokud má vaše distribuce OS nepodporovanou verzi PHP, možná budete moci použít komunitní úložiště balíčků:
- 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 | 1.43 | 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 | 1.43 | 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 | 1.43 | master |
Databáze
MediaWiki je kompatibilní s řadou databázových serverů. Doporučujeme používat MySQL nebo MariaDB.
Použití jiného databázového softwaru pro provozní účely se nedoporučuje. Podpora se liší od jedné verze MediaWiki po druhou a pohybuje se od pochybných po stabilní. MediaWiki poskytuje databázové abstrakční vrstvy pro PostgreSQL a SQLite, které jsou obecně dobře udržované.
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 | 1.43 | 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 | 1.43 | 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 | 1.43 | master |
Aktualizace
Webový server
MediaWiki je široce kompatibilní se všemi hlavními webovými servery, které mohou vyvolat kompatibilní verzi PHP. Apache je nejpoužívanější a testovaný. Nginx je také dobrá volba.
Rozšíření MediaWiki a zobrazení
Pokud jsou rozšíření nebo vzhled správně udržovány, hlavní větev rozšíření nebo vzhledu by měla být kompatibilní s hlavní větví MediaWiki. Pro určení kompatibility se staršími verzemi MediaWiki existují následující běžné zásady používané rozšířeními a zobrazeními:
- master (klíč:master): Hlavní verze rozšíření nebo vzhledu je kompatibilní s aktuální i starší verzí MediaWiki. Hacky zpětné kompatibility jsou přidány do zdrojového kódu rozšíření a vzhledů podle potřeby.
- větve vydání (klíč: rel): Pro každé vydání MediaWiki je v rozšíření nebo vzhledu odpovídající verze. Pokud tedy používáte MediaWiki 1.42 (stabilní číslo verze), měli byste použít verzi REL1_42 (stabilní číslo verze Git) rozšíření nebo vzhledu.
- větve dlouhodobé podpory (klíč: ltsrel): Pro každou uvolněnou MediaWiki existuje v rozšíření nebo vzhledu odpovídající větve vydání dlouhodobé podpory (vizExistenční cyklus verzí - pravidla pro vydání). Pokud tedy používáte MediaWiki 1.39 (stabilní číslo verze), měli byste použít verzi REL1_39 (stabilní číslo verze Git) rozšíření. Pokud používáte jinou než LTS verzi MediaWiki, musíte obvykle použít větev rozšíření nebo vzhledu pro předchozí LTS verzi. Například wikiny MediaWiki 1.34 používající rozšíření nebo vzhled ltsrel by obvykle používala větev REL1_31 tohoto rozšíření nebo vzhledu. Kompatibilita však není zaručena.
Pole zásady kompatibility v infoboxu Extension říká, která funkce je používána s danou příponou. Informace zadejte pomocí příslušných kláves uvedených výše.
Některá rozšíření mohou mít konkrétnější zásady kompatibility, například:
Prohlížeče
Obecné informace
Každá webová stránka začíná v režimu Basic, kde se zobrazuje pouze HTML. Lze předpokládat, že CSS bude u vizuálních čtenářů úspěšné a mělo by být použito pro prezentaci. Vrstva Modern (rozdělená na stupně podpory A, C a X) definuje volitelná vylepšení a interakce napsané v JavaScriptu na straně klienta. Tato vrstva se nemusí načíst, může přijít později nebo vůbec. Včetně moderních prohlížečů. To závisí na různých okolnostech. Další informace naleznete v Pokynech MediaWiki Engineering.
Požadavky JavaScriptu pro vrstvu "Modern" jsou implementovány prostřednictvím testu funkcí ve startup modulu, inspirovaném přístupem "podávání kvalitního výkonu". Moderní vrstva aktuálně vyžaduje verzi JavaScriptu ES6 (ES2015). Pro vývojáře MediaWiki to znamená, že byste neměli používat syntaxi z novějších verzí JavaScriptu. To je vynuceno prostřednictvím pravidel ESLint v eslint-config-wikimedia.
Na světě existuje stále rostoucí počet různých webových prohlížečů a zařízení podporujících prohlížeč. Mnohé se aktivně testují a vytváří se jejich podpora. Abychom vedli naše postupy týkající se podpory prohlížeče, definujeme tři stupně podpory. Každý stupeň představuje jinou kategorii prohlížečů.
V praxi je jediným rozdílem mezi stupni prohlížečů naše investice do testování a podpory. Všechny prohlížeče obdrží stejné odpovědi serveru a pokusí se načíst vrstvu Modern, pokud projde požadovanými schopnostmi JavaScriptu.
Úroveň A
Prohlížeče třídy A dostávají nejvyšší úroveň podpory. MediaWiki využívá možností moderních prohlížečů a zároveň umožňuje elegantní záložní řešení pro starší prohlížeče. Nové vyvinuté funkce musí v těchto prohlížečích fungovat (ať už v degradované formě nebo ne).
Prohlížeče v této kategorii jsou známy (níže) a jsou aktivně testovány. Problémy, které uživatelé v těchto prohlížečích vnímají, jsou řešeny s vysokou prioritou.
Prohlížeče v této kategorii jsou známé (uvedené níže), aktivně testovány a splňují požadavky pro vrstvu "Modern". Problémy, které uživatelé v těchto prohlížečích vnímají, jsou řešeny s vysokou prioritou.
Úroveň C
Prohlížeče třídy C musí obdržet základní funkce platformy MediaWiki. Naše odpovědi HTTP jsou kompatibilní s těmito prohlížeči (např. funkce HTTP, na které se spoléháme, kódování znaků a formáty obrázků používané obsahem musí v těchto prohlížečích fungovat). Na front-endu to znamená, že obsah je prezentován čitelným způsobem a lze provádět akce s obsahem a účtem, ale funkce JavaScriptu mohou nebo nemusí fungovat. Prohlížečům, které neprojdou testem funkcí zmíněným výše, není moderní JavaScript poskytován vůbec.
Prohlížeče v této kategorii jsou známé (uvedené níže) a jsou zřídka testovány. Problémy, které uživatelé v těchto prohlížečích vnímají, jsou řešeny s vysokou prioritou. Zmírnění se však může zaměřit na zajištění toho, aby dostupné funkce nebyly narušeny; je-li to přijatelné z hlediska produktu, může to vést k tomu, že dotčené vylepšení bude zakázáno (ať už dočasně nebo ne) a nikoli obnoveno v těchto prohlížečích.
Úroveň X
Všechny ostatní prohlížeče jsou označovány jako "Stupeň X".
MediaWiki zachází s těmito prohlížeči stejně jako s prohlížeči třídy A a C: Neexistuje žádný filtr uživatelských agentů a tyto prohlížeče obdrží vylepšení JavaScriptu, pokud projdou testem funkcí pro vrstvu "Modern".
Prohlížeče, které nejsou zahrnuty v žádné jiné skupině, patří do této kategorie, včetně:
- Méně oblíbené prohlížeče, které jsou založeny nebo odvozeny od známých moderních prohlížečů (např. Samsung Internet, UC Browser, Vivaldi, Opera a Iceweasel).
- Beta verze moderních prohlížečů. Jsou považovány za stupeň X, pokud ještě nebyly námi testovány. Považovat je za schopné zajišťuje optimální uživatelskou zkušenost v těchto prohlížečích a usnadňuje upstream testování.
- Prohlížeče nebo verze prohlížečů, které již nejsou vyvíjeny nebo udržovány a nejsou kompatibilní s moderními internetovými standardy. Tyto mohou získat režim "Basic" nebo se nemusí ani připojit k webovému serveru.
Tento princip mají uživatelé nových a vyvíjejících se prohlížečů šanci získat moderní zážitek.
Tyto prohlížeče nejsou dostatečně běžné, aby ospravedlnily dodatečné náklady na údržbu při vývoji softwaru a v podstatě „nikdy netestují“. Problémy, které uživatelé v těchto prohlížečích vnímají, mají nízkou prioritu.
Matice podpory prohlížeče
Počítač
Zásady a různé stupně popsané výše platí pro základ i rozšíření MediaWiki. Matice podpory níže aplikuje tyto stupně v kontextu jádra MediaWiki, infrastruktury Wikimedia Foundation a všech rozšíření MediaWiki, která se rozhodnou jej používat. Jednotlivá rozšíření mohou mít vlastní matici podpory, která distribuuje prohlížeče mezi různé úrovně podpory. Viz také Řídicí panel využití prohlížeče.
Prohlížeče | Chrome | Edge | Firefox | Safari | iOS | Android[note 1] | |||
---|---|---|---|---|---|---|---|---|---|
Moderní (Grade A) | Verze za poslední tři roky (2021) | 11.1+ (2018) | 11.3+ (2018) | 6+ (2015)[note 2] | |||||
Základní (Grade C) | 49+ (2016) | 79+ (2020) | 49+ (2016) | 10+ (2016) | 10+ (2016) | 5+ (2014)[note 3] | |||
Neuvedeno (Grade X) | Všechny ostatní prohlížeče |
Základy | Minimální OS nebo zařízení | Podporovaný moderní prohlížeč |
---|---|---|
Android | Moto G (1. generace) (2013) Google Nexus 4 (2012) |
Android 5.1, Firefox (current) |
Samsung Galaxy S5 (2014) Google Nexus 5 (2013) Moto G (2nd generation) (2014) |
Android 6.0, Chrome 106, Firefox (current) | |
iOS | iPhone 5s (2013) | iOS Mobile Safari 11.3 - 12 (2018-2023)[note 4] |
Linux | Debian 10 Buster (2019) | firefox-esr 102 |
Ubuntu 18.04 LTS (2018) | firefox (aktuální), chromium-browser (aktuální) | |
macOS | OS X 10.11 El Capitan (2015-2018) | Safari 11.1, Chrome 103 |
macOS 10.13 High Sierra (2017-2020) | Safari 13, Firefox 115 ESR, Chrome 116 | |
macOS 10.15 Catalina (2019-2022) | Safari 15, aktuální Firefox, Chrome 128 až aktuální | |
macOS 11 Big Sur (2020-2023) | Safari 16, current Firefox, current Chrome | |
Windows | Windows 7 (2009-2020) | Edge 109, Firefox 115 ESR, Chrome 109 |
Seznam změn, nejnovější je uvedena jako první:
- 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
- Od roku 2023 byly znovu stanoveny cíle podpory. Pro Chrome a prohlížeče založené na Chrome se nyní jedná o verze za poslední tři roky (pokrývající tři roky namísto tří měsíců). Pro Firefox je to nyní aktuální a předchozí verze LTS (dosahující přibližně stejného časového rozsahu). T178356
- Od MediaWiki 1.41 je podpora Modern odstraněna pro Internet Explorer 11, macOS a iOS Safari 9-10 a Firefox 39–53. T178356
- Od MediaWiki 1.39 byla odebrána základní podpora pro Internet Explorer 9-10, Firefox 27-38 a Android 4.3-4.4 T293298, T297313, T290815
- Od MediaWiki 1.36 byla odebrána základní podpora pro Firefox 3-26, Internet Explorer 8, Safari 3-8, iOS (Safari) 5-8, Android 3.0-4.2, Chrome 1-30 a Opera 15-18. T248061, T262946, T266866
- Od MediaWiki 1.36 je podpora Modern odstraněna pro Android 4.1-4.2, iOS 6.1-8 a Safari 5.1-8. T266866
- Od MediaWiki 1.35 je základní podpora odstraněna pro Internet Explorer 6-7 a Android 2. T232563, T249788
- Od MediaWiki 1.31 byl JavaScript pro Internet Explorer 10 zakázán. T187869
- Od MediaWiki 1.29 byl JavaScript pro Internet Explorer 9 zakázán spolu s ostatními prohlížeči mimo ES5. T128115
- Od MediaWiki 1.27 byl JavaScript pro Internet Explorer 8 zakázán. T118303, Zpráva ambasadorů Wikitech
- Od MediaWiki 1.24 byl JavaScript pro Internet Explorer 6 a 7 zakázán. gerrit:152072, gerrit:152128, Zpráva ambasadorů Wikitech
The Wikimedia Foundation also provides an up-to-date browserslist config reflecting the support matrix.
Mobilní
Webový tým nadace Wikimedia Foundation používá užší podpůrnou matici pro zobrazení specifické pro mobilní zařízení, například Minerva a nebo rozšíření určená pouze pro provoz na mobilních zařízeních například MobileFrontend .
Podpůrná matice je sestavena z dat poskytnutých analytickým uživatelským agentem.
Pokud použití prohlížeče přesahuje 5 %, je podporován jako moderní použití (stupeň A).
Základní podpora (stupeň C) je poskytována pro vše, co přesahuje 0,1 % během předchozích 12 měsíců.
V mobilu se snažíme poskytovat stupeň B. Uživatelé třídy B mohou nebo nemusí získat JavaScript a netestujeme na stejnou úroveň jako A, proto upřednostňujeme opravy chyb uvedené níže.
Seznam moderních podporovaných prohlížečů na MobileFrontend je definován v souboru .browserlistsrc
.
Cokoli, co v seznamu chybí nebo je starší, je považováno za základní podporovaný prohlížeč.
Související odkazy
- Existenční cyklus verzí MediaWiki
- 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)
Poznámky
- ↑ Refers to Android WebView, based on Chromium since Android 4.4(2013). In Android 5.0+(2014), Chrome WebView can be updated separately without having to update Android versions. For standalone browsers, refer to Chrome and Firefox columns.
- ↑ Chrome 96(2021), which is more than three years old, dropped support for Android 5(2014). Latest versions of Firefox as well as Wikimedia apps support Android 5+(2014).
- ↑ Všimněte si, že se jedná o standardní prohlížeč Android. Pro Chrome pro Android, za předpokladu, že používáte Chrome 49+, vyžaduje Android 4.1+(2012). Pro Firefox pro Android, za předpokladu, že používáte Firefox 49+, vyžaduje Android 4.0+(2011).
- ↑ iOS 11 vypustil podporu pro iPhone 5 a starší zařízení