Kompatibilita

From mediawiki.org
This page is a translated version of the page Compatibility and the translation is 100% complete.

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.41) běží na jakékoli verzi PHP 7.4.3.

Na nové verze se podívejte na Zásady podpory pro PHP .

Podpora HHVM byla zrušena v MediaWiki 1.34. Důrazně doporučujeme NEPOUŽÍVAT!

Produkční servery Wikimedie a průběžná integrace v současné době běží na PHP 7.4 a plánuje brzy aktualizovat na PHP 8.1. Vývojářům MediaWiki se doporučuje vyvíjet pomocí PHP 8.1 a obraz MediaWiki Docker používá PHP 8.1.

Pokud má vaše distribuce OS nepodporovanou verzi PHP, možná budete moci použít komunitní úložiště balíčků:

MediaWiki není kompatibilní s PHP 7.4.0 - 7.4.2 kvůli upstreamové chybě. Místo toho použijte PHP 7.4.3+. Pro další informace viz úkol T246594.
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 master
 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 
 5.5.9+ 
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 master
 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 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é.

Od Verze 1.36 se MediaWiki zavazuje podporovat pouze aktualizace ze dvou LTS vydání před (viz phab:T259771). Aktualizace starších verzí MediaWiki budou muset být provedeny v několika krocích. To znamená, že pokud chcete aktualizovat na 1.41 z 1.34 nebo dřívější, budete muset nejprve aktualizovat svou 1.34 wiki na 1.35 (nebo 1.39) a z 1.35 (nebo 1.39) budete moci aktualizovat na 1.41.
Od 1.34 již nepodporujeme používání Příručka:Oracle a Příručka: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 1.40 1.41 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 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 master

Aktualizace

Od Verze 1.36 se MediaWiki zavazuje podporovat pouze aktualizace ze dvou LTS vydání před (viz phab:T259771). Aktualizace starších verzí MediaWiki budou muset být provedeny v několika krocích. To znamená, že pokud chcete aktualizovat na 1.41 z 1.34 nebo dřívější, budete muset nejprve aktualizovat svou 1.34 wiki na 1.35 (nebo 1.39) a z 1.35 (nebo 1.39) budete moci aktualizovat na 1.41.

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.41 (stabilní číslo verze), měli byste použít verzi REL1_41 (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 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". 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.

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č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 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 nebyly testovány. Problémy, které uživatelé vnímají pouze v těchto prohlížečích, 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.

Matice podpory prohlížeče do dubna 2023 v · d · u
Prohlížeče Chrome Opera Edge Edge Legacy Firefox Internet Explorer Safari iOS Android
Moderní (Grade A) Verze za poslední tři roky (2021) Žádné Poslední tři roky verze (2021) Žádné 11.1+ (2018) 11.3+ (2018) 5+ (2014)
Základní (Grade C) 31+ (2013) 18+ (2013) 79+ (2020) 12+ (2015) 39+ (2014) 11 (2013) 9.1+ (2015) 9+ (2015) 5+ (2014)[note 1]
Neuvedeno (Grade X) Všechny ostatní prohlížeče
Praktické důsledky do února 2024
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, Chrome 88+
Samsung Galaxy S5 (2014) Android 6.0, Chrome 88+
iOS iPhone 5s (2013) iOS Mobile Safari 11.3 - 12 (2018-2023)[note 2]
Linux Debian 10 Buster (2019) firefox-esr 102, chromium 90
Ubuntu 18.04 LTS (2018) firefox (aktuální), chromium-browser (aktuální)
macOS OS X 10.9 Mavericks (2013-2016) Firefox 78 ESR (2020). Výchozí safari 7 není podporováno.
macOS 10.13 High Sierra (2017-2020) Safari 11.1, aktuální Firefox, Chrome 88+
macOS 10.15 Catalina (2019-2022) Safari 13.1, aktuální Firefox, Chrome 88+
Windows Windows 7 (2009-2020) Edge 84+, aktuální Firefox, Chrome 88+

Seznam změn, nejnovější je uvedena jako první:

  • 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

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

Poznámky

  1. Všimněte si, že se jedná o standardní prohlížeč Android. Pro Chrome pro Android, za předpokladu, že používáte Chrome 31+, vyžaduje Android 4.0+(2011).
  2. iOS 11 vypustil podporu pro iPhone 5 a starší zařízení

Poznámky pod čarou