Kompatibilitas
MediaWiki ingin menjaga kompatibilitas yang luas antarversi, dan dengan berbagai perangkat lunak baik yang terkini maupun yang warisan. Pada saat yang sama, basis kode yang terus berkembang dan fitur-fitur dari pengembangan MediaWiki yang terbaru membuat tidak mungkin untuk selamanya menjaga kompatibilitas dengan perangkat lunak warisan.
Jika Anda ingin menyarankan perubahan mengenai apa yang didukung oleh MediaWiki, Anda bisa mengisi permohonan komentar di Phabricator.
Perangkat lunak peladen
Bagian-bagian berikut memberikan gambaran mengenai perangkat lunak yang diperlukan peladen agar bisa menjalankan MediaWiki.
PHP
Versi stabil terbaru dari MediaWiki (1.39) menjalankan PHP versi 7.4.3 atau versi lebih tinggi.
Untuk versi mendatang, lihat Support policy for PHP .
Dukungan untuk HHVM diberhentikan pada MediaWiki 1.34. Anda sangat disarankan untuk tidak menggunakannya.
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.
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 |
Basis data
MediaWiki kompatibel dengan berbagai peladen basis data. Disarankan untuk menggunakan MySQL atau MariaDB.
Menggunakan perangkat lunak basis data lainnya tidak disarankan untuk penggunaan produksi. Dukungannya berbeda dari versi MediaWiki ke versi MediaWiki dan beragam dari diragukan hingga stabil. MediaWiki menyediakan lapisan abstraksi basis data untuk PostgreSQL dan SQLite, yang pada umumnya dipelihara dengan baik.
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 |
Pemutakhiran
Peladen web
MediaWiki kompatibel secara luas dengan semua peladen web besar yang bisa memanggil versi PHP yang kompatibel. Apache adalah yang paling banyak digunakan dan diuji. Nginx juga merupakan pilihan yang baik.
Ekstensi MediaWiki
Selama suatu ekstensi dipelihara dengan baik (bisa Anda lihat di atas kotak info di halaman deskripsinya), cabang master dari ekstensi tersebut seharusnya kompatibel dengan cabang master MediaWiki. Untuk menentukan kompatibilitas dengan versi MediaWiki yang lebih lama, berikut adalah kebijakan-kebijakan yang biasanya digunakan oleh ekstensi:
- master (kata kunci: master): cabang master dari ekstensi bersifat kompatibel dengan versi terkini dan versi lama MediaWiki. Trik untuk menjaga kompatibilitas mundur ditambahkan ke kode sumber ekstensi apabila diperlukan.
- cabang rilis (kata kunci: rel): Untuk setiap rilis MediaWiki, terdapat cabang ekstensi yang bersesuaian. Jadi jika misalnya Anda menggunakan MediaWiki 1.39, Anda sebaiknya menggunakan cabang REL1_39 ekstensi.
- cabang rilis dukungan-jangka-panjang (kata kunci: ltsrel): Untuk setiap rilis MediaWiki yang merupakan rilis Dukungan Jangka Panjang (lihat Kebijakan rilis siklus hidup versi), terdapat cabang yang sesuai di ekstensi. Jadi jika misalnya Anda menggunakan MediaWiki 1.39, Anda sebaiknya menggunakan cabang REL1_39 ekstensi. Jika Anda menggunakan MediaWiki versi non-LTS, biasanya Anda perlu menggunakan cabang ekstensi untuk versi LTS sebelumnya. Contohnya, wiki-wiki MediaWiki 1.34 yang menggunakan ekstensi ltsrel biasanya menggunakan cabang REL1_31 dari ekstensi itu. Namun, tidak ada jaminan akan kompatibel.
Isian compatibility policy
dari kotak info Extension memberiktahukan kebijakan mana yang digunakan oleh ekstensi tersebut. Gunakan kata kunci yang disebutkan di atas untuk menjelaskan informasinya.
Beberapa ekstensi mungkin punya kebijakan kompatibilitas yang lebih spesifik, contohnya:
Peramban
Informasi umum
Terdapat beragam peramban web yang banyaknya semakin bertambah di dunia ini.
Terlalu banyak untuk secara aktif diuji dan didukung satu per satu. Untuk memandu pelaksanaan pendukungan peramban kami, kami punya tiga tingkat dukungan. Masing-masing tingkat mewakili satu kategori peramban.
Modern (Kelas A)
Kelompok ini mewakili tingkat dukungan tertinggi (juga disebut Kelas A) . Fitur-fitur memanfaatkan kemampuan peramban modern, serta membolehkan dukungan mundur untuk peramban yang lebih tua. Semua fitur yang disediakan oleh perangkat lunak (baik dalam bentuk yang direndahkan maupun tidak) harus bekerja di peramban-peramban ini.
Peramban dalam kategori ini dikenal (didaftarkan di bawah) dan MediaWiki secara aktif diuji di sini. Masalah yang didapatkan pengguna di peramban ini harus ditangani dengan prioritas tinggi.
Dasar (Kelas C)
Kelompok ini disediakan fungsionalitas inti dari platform MediaWiki (juga disebut Kelas C). Respon HTTP kami kompatibel dengan peladen-peladen ini (contoh: fitur HTTP yang kami andalkan, pengodean karakter, dan format gambar yang digunakan oleh konten; harus bekerja di peramban-peramban ini). Di ujung depan, ini berarti konten disajikan dalam bentuk yang mudah dibaca, dan tindakan konten dan akun bisa dilakukan, tetapi peramban-peramban ini tidak mendapatkan fitur-fitur JavaScript.
Beberapa penjelajah dalam kategori ini diketahui tidak kompatibel dengan JavaScript modern (ES6) sehingga mereka tidak mendapatkan fitur-fitur JavaScript. Mereka diidentifikasi melalui sebuah paket uji fitur dan sebuah filter agen pengguna di dalam modul startup.
Tidak Diketahui (Kelas X)
Kelompok ini mewakili semua peramban lainnya (juga disebut Kelas X). Ini termasuk:
- Penjelajah atau versi penjelajah yang tidak lagi dikembangkan atau dipelihara, dan tidak kompatibel dengan standar Internet modern; MediaWiki bisa memilih untuk menghentikan dukungan.
- Penjelajah yang tidak cukup populer untuk diberikan biaya pemeliharaan untuk pengembangan perangkat lunak; masalah-masalah yang pengguna rasakan di penjelajah ini hanya diberikan prioritas rendah.
MediaWiki memperlakukan peramban-peramban ini tidak jauh berbeda dengan peramban Modern (Kelas A) sehingga mereka diasumsikan mampu menjalankan MediaWiki. Prinsip ini memberikan beberapa keuntungan penting:
- Versi terbaru atau tidak didukung dari peramban modern bisa untuk sementara waktu dianggap Tidak Diketahui apabila mereka belumkami jadikan tempat uji. Menganggap peramban Tidak Diketahui mampu memastikan pengalaman pengguna optimal di peramban-peramban ini.
- Pengguna peramban yang baru dan berkembang diberikan kesempatan untuk memperoleh pengalaman modern.
- Pengguna peramban kurang populer yang didasarkan, atau diturunkan, dari peramban modern yang dikenal tidak mendapatkan pengaruh secara negatif (contohnya Samsung Internet, UC Browser, Vivaldi, dan Iceweasel).
Pada praktiknya satu-satunya perbedaan antara peramban Tidak Diketahui dan Modern adalah kami tidak secara aktif melakukan uji coba di peramban Tidak Diketahui.
Peramban-peramban ini diberikan seperangkat fitur lengkap, yang berarti fitur HTTP, HTML, CSS, dam JS yang belum tentu kompatibel dengan peramban-peramban ini, dan belum tentu dipengaruhi oleh tindakan (misalnya menggunakan CSS versi lama bukannya fitur CSS versi terbaru) yang dimaksudkan untuk peramban Kelas C. Khususnya, apakah dukungan JavaScript dinyalakan ditentukan oleh paket uji fitur dan filter agen pengguna (lihat di atas).
Matriks dukungan peramban
Prinsip-prinsip dan kelas-kelas berbeda yang dijelaskan di atas berlaku pada inti MediaWiki serta pada ekstensi. Matriks dukungan di bawah memberlakukan kelas-kelas tersebut kepada inti MediaWiki, infrastruktur Yayasan Wikimedia, dan ekstensi MediaWiki manapun yang memilih untuk mengikutinya. Masing-masing ekstensi bisa jadi punya matriks dukungan mereka sendiri yang membagi-bagi peramban ke berbagai tingkat dukungan. Lihat juga Dasbor laporan penggunaan peramban.
Peramban | Chrome | Opera | Edge | Edge Legacy | Firefox | Internet Explorer | Safari | iOS | Android |
---|---|---|---|---|---|---|---|---|---|
Modern (kelas A) | Last three years' versions (2020) | Tidak ada | Last three years' versions (2020) | None | 11.3+ (2018) | 11.3+ (2018) | 5+ (2014) | ||
Dasar (kelas C) | 31+ (2013) | 18+ (2013) | 79+ (2020) | 12+ (2015) | 39+ (2014) | 11 (2013) | 9.1+ (2015) | 9+ (2015) | 5+ (2014)[note 1] |
Tidak Diketahui (kelas X) | Semua peramban lainnya |
Platform | Minimum OS or device | Supported modern browser |
---|---|---|
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 (current), chromium-browser (current) | |
macOS | OS X 10.9 Mavericks (2013-2016) | Firefox 78 ESR (2020). The default Safari 7 is unsupported. |
macOS 10.13 High Sierra (2017-2020) | Safari 11.3, current Firefox, Chrome 83+ | |
macOS 10.15 Catalina (2019-2022) | Safari 13.1, current Firefox, Chrome 83+ | |
Windows | Windows 7 (2009-2020) | Edge 83+, current Firefox, Chrome 83+ |
List of changes, most recent first:
- 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
- Per MediaWiki 1.36, dukungan Dasar dihapus untuk Firefox 3-26, Internet Explorer 8, Safari 3-8, iOS (Safari) 5-8, Android 3.0-4.2, Chrome 1-30, dan Opera 15-18. T248061, T262946, T266866
- Per MediaWiki 1.36, dukungan Modern dihapus untuk Android 4.1-4.2, iOS 6.1-8, dan Safari 5.1-8. T266866
- Sejak MediaWiki 1.35, dukungan Dasar dihapus untuk Internet Explorer 6-7 dan Android 2. T232563, T249788
- Sejak MediaWiki 1.31, JavaScript untuk Internet Explorer 10 telah dimatikan. T187869
- Sejak MediaWiki 1.29, JavaScript untuk Internet Explorer 9 telah dimatikan beserta peramban-peramaban non-ES5 lainnya. T128115
- Sejak MediaWiki 1.27, JavaScript untuk Internet Explorer 8 telah dimatikan. T118303, Wikitech-ambassadors message
- Sejak MediaWiki 1.24, JavaScript untuk Internet Explorer 6 dan 7 telah dimatikan. gerrit:152072, gerrit:152128, Wikitech-ambassadors message
Peranti bergerak
Tim Web di Yayasan Wikimedia menerapkan matriks dukungan yang lebih sempit untuk kulit khusus peranti bergerak seperti Minerva dan/atau ekstensi yang dirancang untuk dijalankan hanya di peranti bergerak seperti MobileFrontend .
Matriks dukungannya dikumpulkan dari data yang disediakan oleh analisis dasbor laporan agen pengguna.
Jika penggunaan peramban lebih tinggi dari 5% maka akan diberikan dukungan modern (Kelas A).
Dukungan dasar (Kelas C) disediakan untuk semua peramban dengan penggunaan lebih dari 0,1% selama 12 bulan terakhir.
Dalam peranti bergerak kami ingin menyediakan sebuah Kelas B. Pengguna kelas B belum tentu mendapatkan JavaScript dan uji coba yang kami lakukan di sana tidak setingkat di kelas A, jadi prioritas pemerbaikan bug di sana lebih rendah.
Daftar peramban dengan dukungan modern di MobileFrontend didefinisikan di berkas .browserlistsrc
.
Semua yang tidak ada atau lebih tua dari yang ada di daftar dianggap sebagai peramban dengan dukungan dasar.
Lihat pula
- Siklus hidup versi dari versi-versi MediaWiki
- No-JavaScript notes
- MediaWiki - compatibility error note (example)
- wikitech:HTTPS/Browser Recommendations
Notes
- ↑ Note this refers to the stock Android browser. For Chrome for Android, provided that you're running Chrome 31+, it requires Android 4.0+(2011).