Compatibility/nl

Het streven van MediaWiki is om te zorgen dat er compatibiliteit is tussen versies, dit met een bereik tussen de huidige en oudere software. Maar dat de uitbreiding van de functionaliteit en groei van de mogelijkheden het ondersteunen van oudere versies maar beperkt mogelijk is, oud wordt toch echt eens verouderd.

Als u een wijziging wilt voorstellen over wat MediaWiki moet ondersteunen, laat dan een bestand met een verzoek voor commentaar achter op Phabricator.

Server software
Hier geven we een overzicht van de software die op de server nodig is om MediaWiki uit te voeren.

PHP
De meest recente stabiele versie van MediaWiki draait op PHP  of hoger.

Voor toekomstige versies, zie.

Ondersteuning van HHVM is gestopt in MediaWiki 1.34. Het gebruik ervan wordt sterk afgeraden.

Wikimedia servers currently run PHP 7.4, with plans to upgrade to PHP 8.1 soon. MediaWiki developers are encouraged to develop using PHP 8.1, and the MediaWiki Docker image uses PHP 8.1.

Database
MediaWiki ondersteunt meerdere soorten database servers. Het gebruik van MySQL of MariaDB wordt aanbevolen.

Gebruik van andere database software wordt niet aanbevolen voor productie-omgevingen. De ondersteuning verschilt per MediaWiki versie, en van dubieus tot stabiel. MediaWiki heeft abstractielagen voor PostgreSQL en SQLite, die in het algemeen goed onderhouden zijn.

Upgrade


Webserver
MediaWiki is in grote lijnen compatibel met alle grote webbrowsers die om kunnen gaan met een compatibel versie van PHP. Apache wordt het meest gebruikt en getest. Nginx is ook een goede keuze.



MediaWiki extensies
Zolang de extensie goed beheerd wordt (let op de informatie op de beschrijvingspagina van de extensie), zal de hoofdbranch van de extensie compatibel zijn met de hoofdbranch van MediaWiki. Als u moet inschatten of oudere MediaWiki versies compatibel zijn met de extensie, kunt u kijken naar de volgende gebruikelijke beleidsopties van extensies:


 * master (key: master): de master branch van de extensie is compatibel met zowel de huidige als met oudere versies van MediaWiki. Er zijn aanpassingen aan de broncode van de extensie gedaan om ook oudere versies compatibel te maken.
 * release branches (key: rel): Voor elke MediaWiki release is er een overeenkomende branch in de extensie. Dus als u bijvoorbeeld MediaWiki gebruikt, dan moet u de  branch van de extensie gebruiken.
 * lange-termijn ondersteunde release branches (key: ltsrel): Voor elke MediaWiki release die een Long Term Support release is (zie Levensduur versies) is er een overeenkomende branch in de extensie. Dus als u bijvoorbeeld MediaWiki gebruikt, dan moet u de  branch van de extensie gebruiken. Als u een niet LTS-versie van MediaWiki gebruikt, dan heeft u meestal de branch van de extensie voor de voorafgaande LTS-versie nodig. Als MediaWiki 1.34 wiki's een ltsrel extensie gebruiken dan gebruiken ze meestal de REL1_31 branch van die extensie. Dit is een vuistregel, dus geen garantie dat die versie compatibel is.

Het veld  in het gedeelte  geeft aan welk beleid er wordt gebruikt bij een bepaalde extensie. Gebruik de respectievelijke daarboven aangegeven keys om de informatie te specificeren.

Een extensie kan een meer specifiek beleid hebben voor compatibiliteit, bijvoorbeeld:
 * Achtergrond MediaWiki Language Extensie bundel

Browsers


Algemene informatie
Het aantal verschillende webbrowsers in de wereld lijkt maar te blijven groeien.

Het zijn er te veel om ze afzonderlijk te testen en te ondersteunen. Wij gebruiken drie niveaus van ondersteuning voor gebruik van webbrowsers. Elke laag staat voor een verschillende categorie van webbrowsers.



Modern (Graad A)
Deze groep krijgt het hoogste niveau van ondersteuning (ook bekend als Graad A). Functies hebben het voordeel van de mogelijkheden in moderne webbrowsers, met een goede ondersteuning voor de oudere webbrowsers. Alle functies in de software moeten (mogelijk in een beperkte vorm) ook werken in oudere webbrowsers.

Webbrowsers in deze categorie worden hieronder genoemd en worden actief getest. Als een gebruiker met een van deze webbrowsers een probleem heeft dan krijgt dat probleem een hoge prioriteit.



Standaard (Graad C)
Deze groep bevat de core functionaliteit van het MediaWiki platform (ook bekend als Graad C). Onze HTTP responses zijn compatibel met deze webbrowsers (bijv. HTTP functies waar we op vertrouwen, karakter encoding en afbeeldingsformaten die door de inhoud gebruikt worden moeten in deze webbrowsers werken). In de front-end betekent dit dat de inhoud leesbaar wordt weergegeven en dat er acties op de inhoud kunnen worden uitgevoerd, maar dat JavaScript functies wel of niet kunnen werken.

Enkele webbrowsers in deze categorie zijn incompatibel met moderne JavaScript, (ES6). Daarom hebben ze geen functies in JavaScript. Ze worden herkent via een pakket voor het testen van functies in de opstartmodule.



Onbekend (Graad X)
De groep staat voor de overige webbrowsers (bekend als Graad X). Deze groep omvat:


 * Webbrowsers en webbrowser versies die niet langer onderhouden worden en die niet compatibel zijn met de moderne Internet standaard: MediaWiki kan de ondersteuning stoppen.
 * Webbrowsers die niet populair genoeg zijn om de extra onderhoudskosten te rechtvaardigen: de problemen die gebruikers in deze webbrowser ervaren krijgen een lage prioriteit.

MediaWiki behandelt deze webbrowsers hetzelfde als de Moderne (Graad A) en de Basis (Graad C), er is geen user agent filter, de browsers krijgen de JavaScript functies als ze de test op het hebben van die functie hebben doorstaan. Dit principe geeft meerdere voordelen:


 * Nieuw of niet ondersteunde versies van moderne webbrowsers kunnen tijdelijk als onbekend worden gezien als ze nog niet door ons zijn getest. Het behandelen van onbekende webbrowsers als geschikt zorgt voor een optimale gebruikerservaring bij deze webbrowsers.
 * Gebruikers van nieuwe of zich ontwikkelde webbrowsers hebben nu een kans om een moderne ervaring te krijgen.
 * Gebruikers van minder populaire webbrowsers die gebaseerd zijn op, of afgeleid van, bekende moderne webbrowsers worden hierdoor net negatief geraakt (bijv. Samsung Internet, UC Browser, Vivaldi en Iceweasel).

In de praktijk is het enige verschil tussen Onbekende en Basis browsers dat we niet actief met Onbekende browsers testen.

Deze webbrowsers krijgen alle functies, dat betekent dat HTTP, HTML, CSS en JavaScript functies wel/niet compatibel zijn met deze webbrowsers, en dat er effecten kunnen zijn bij maatregelen (bijv. fallback CSS bij nieuwe CSS functies) bedoeld voor Basis (Graad C) webbrowsers. In het bijzonder als de JavaScript ondersteuning ingeschakeld wordt besloten door een functietest (zie hierboven).



Tabel met webbrowser ondersteuning
De principes en verschillende graden hierboven beschreven zijn van toepassing voor de MediaWiki core en extensies. De onderstaande matrix geeft per graad de ondersteuning aan voor de MediaWiki core, Wikimedia Foundation infrastructuur en veel MediaWiki extensies die dit beleid volgen. Individuele extensies kunnen andere keuzes maken voor ondersteuning per webbrowser. Bekijk ook dit overzicht van gebruik van webbrowsers.

Mobiel
Het Webteam van de Wikimedia Foundation kiest voor een beperktere ondersteuning van skins specifiek voor mobile bijv. en/ofr extensies ontworpen voor mobiele devices bijv.. Deze matrix wordt aangemaakt van de gegevens die aangeleverd worden door het analytische user agent breakdown dashboard. Indien het gebruik van een webbrowser boven de 5% is, wordt een moderne ervaring (Graad A) ondersteund. Standaard ondersteuning (Graad C) wordt aangeboden voor alle webbrowsers met een gebruik boven de 0.1% over de laatste 12 maanden. Bij mobiele webbrowsers streven we naar Graad B ondersteuning. De gebruikers kunnen wel/geen JavaScript hebben en we testen minder dan bij Graad A, aanpassingen krijgen een iets lagere prioriteit dan bij Graad A. De lijst voor moderne webbrowser ondersteuning op MobileFrontend is gedefinieerd in bestand.

Alle webbrowsers die niet in de lijst staan of ouder is krijgt een basis ondersteuning.



Zie ook

 * van MediaWiki versies
 * MediaWiki - compatibility error note (example)
 * HTTPS/Browser Recommendations
 * HTTPS/Browser Recommendations