Kompatibilitas

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

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.

MediaWiki tidak kompatibel dengan PHP 7.4.0 - 7.4.2 dikarenakan sebuah bug di PHP. Use PHP 7.4.3+ instead. Lihat task T246594 untuk informasi lebih lanjut.
MediaWiki support for PHP 8.0 and above started with 1.39.0. Other release branches like MediaWiki 1.35.x may have minor issues and warnings on PHP 8 but generally work. See T248925 for more information.
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.

Sejak versi 1.36, MediaWiki hanya melakukan commit untuk mendukung pemutakhiran dari dua rilis LTS besar (lihat phab:T259771). Pemutakhiran dari versi MediaWiki yang lebih lama harus dilakukan melalui beberapa tahap.
Since MediaWiki 1.34 , we no longer support using Oracle and Microsoft SQL Server . We strongly advise to no longer to use these.
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

Mulai MediaWiki 1.36, yang didukung hanya pemutakhiran dari dua rilis LTS terakhir. (Lihat phab:T259771.) Pemutakhiran dari versi MediaWiki yang lebih lama harus dilakukan dengan beberapa tahap. Jadi jika Anda ingin memutakhirkan ke 1.36 dari 1.23 atau sebelumnya, Anda harus memutakhirkan wiki 1.23 Anda ke 1.27 (atau 1.35) terlebih dahulu, kemudian dari 1.27 (atau 1.35) Anda bisa memutakhirkan ke 1.36.

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.

Beberapa penjelajah dalam kategori ini diketahui tidak kompatibel dengan JavaScript modern,[1] sehingga mereka tidak mendapatkan fitur-fitur JavaScript. Mereka diidentifikasi melalui sebuah paket uji fitur dan sebuah filter agen pengguna di dalam modul startup. Penjelajah lain (dicantumkan di bawah) di Kelas B tetap mendapatkan fitur JavaScript, tetapi dukungannya mungkin akan rusak atau dihentikan pada masa yang akan datang.


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 (misalnya 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).


Perlakuan khusus untuk IE11

Mulai Maret 2021, fitur JavaScript baru di proyek Wikimedia mana pun tidak akan didukung di IE11, sebagaimana yang didokumentasikan di Compatibility/IE11 . Ini merupakan awal dari penurunan peramban tersebut ke dukungan Dasar (Kelas C).

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.

Matriks dukungan peramban as of April 2022 l · b · s
Peramban Chrome Firefox Opera Edge Edge Legacy Internet Explorer Safari iOS Android
Modern (kelas A) Versi terkini dan yang sebelumnya (2023) Tidak ada 11+ (2013) 9.1+ (2015) 9+ (2015) 5+ (2014)
Dasar (kelas C) 31+ (2013) 39+ (2014) 18+ (2013) 79+ (2020) 12+ (2015) 11+ (2013) 9.1+ (2015) 9+ (2015) 5+ (2014)
Tidak Diketahui (kelas X) Semua peramban lainnya

List of changes, most recent first:

  • 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.

Catatan

  1. Saat ini, MediaWiki memerlukan penjelajah yang sepenuhnya mendukung ES5, tetapi ini bisa dinaikkan di masa mendatang; lihat phab:T178356.

Lihat pula