Current configuration on the wiki
Find a file
Dreamy Jazz 294972227e Log duplicate translations of options-messages for HTMLFormField
Why:
* When using a HTMLFormField that has accepts the options-messages
  parameter, the message keys are the key and the value is either
  an array of options or the name of the value.
* However, when converting the message key to the translated text
  it is possible for two or more message keys to have the same
  translation (for example T19746 and T347314). This causes only
  one of the duplicate items to be displayed in the options list.
* As such, an logstash error should be raised when this happens
  so that, when debugging a missing option, the error can be found
  and lead to the issue being found quickly. For example, in
  T347314 it took several months for the issue to be found and
  solved.

What:
* In HTMLFormField::lookupOptionsKeys, add code to check if the
  translated text for the message key already exists in the array
  of translated text to option value. If it does, then create a
  logstash error and skip adding the item to the array (as it
  will override the already added item).
* Also do this in LogEventsList and UsersPager, where the code
  passes the options using the 'options' key and uses the
  HTMLSelectFieldand. This means that HTMLFormField
  ::lookupOptionsKeys will not be called and as such need the
  same code to handle the duplicate values.

Bug: T360326
Change-Id: Ifdeb917f7034967feed7a3b86aabec3c4d49bcc6
2024-04-01 22:04:48 +02:00
.phan build: Fix line indents 2024-03-11 00:14:16 +01:00
cache Update Apache config syntax in .htaccess files 2024-03-23 23:36:31 -04:00
docs Merge "docs: Set stable permalink on markdown files" 2024-03-25 23:53:21 +00:00
extensions docs: Don't point people to deprecated Diffusion copies of gerrit repos 2023-04-03 10:27:57 -04:00
images Set "X-Content-Type-Options: nosniff" header in images/.htaccess 2023-02-24 23:59:22 -05:00
includes Log duplicate translations of options-messages for HTMLFormField 2024-04-01 22:04:48 +02:00
languages Localisation updates from https://translatewiki.net. 2024-03-26 08:02:07 +01:00
maintenance Update Apache config syntax in .htaccess files 2024-03-23 23:36:31 -04:00
mw-config Namespace includes/context 2024-02-08 11:07:01 -05:00
resources Merge "resources: Add missing dependency for NamespacesMultiselectWidget" 2024-03-25 00:27:07 +00:00
skins docs: Don't point people to deprecated Diffusion copies of gerrit repos 2023-04-03 10:27:57 -04:00
tests Merge "Move away from DBAccessObjectUtils::getDBOptions in more places" 2024-03-25 18:25:17 +00:00
.dockerignore
.editorconfig Fix .editorconfig for tests/parser/ directory 2024-02-27 17:35:16 +01:00
.eslintignore .eslintignore: Remove jquery.tipsy reference 2024-01-16 21:11:39 +00:00
.eslintrc.json eslint: Only apply client rules to client files 2022-02-09 02:40:11 +00:00
.fresnel.yml
.gitattributes .gitattributes: Ship docker-compose.yml to the tarball 2022-11-30 09:37:13 -05:00
.gitignore Merge "maintenance: Remove dev folder" 2024-01-01 20:24:44 +00:00
.gitmessage git: Introduce .gitmessage 2023-05-21 14:20:31 +03:00
.gitreview
.mailmap CREDITS: Fix various duplicates 2024-03-14 11:53:13 -07:00
.phpcs.xml build: Fix line indents 2024-03-11 00:14:16 +01:00
.stylelintrc.json Login page: Use Codex CSS components 2023-07-06 17:20:17 -07:00
.svgo.config.js build: Update SVGO to v3.0.2 2023-06-15 12:24:22 -07:00
.vsls.json build: Upgrade eslint-config-wikimedia from 0.22.1 to 0.24.0 2023-02-07 10:17:30 -05:00
api.php Namespace includes/context 2024-02-08 11:07:01 -05:00
autoload.php Add job for upload from UploadFromUrl 2024-03-23 11:23:07 +01:00
CODE_OF_CONDUCT.md
composer.json Upgrade composer/semver from 3.3.2 to 3.4.0 2024-03-25 18:02:48 +00:00
composer.local.json-sample composer.local.json-sample: merge */composer.json 2022-02-07 16:24:23 +01:00
COPYING
CREDITS CREDITS: Fix various duplicates 2024-03-14 11:53:13 -07:00
DEVELOPERS.md DEVELOPERS.md: fix formatting in bullet list 2024-01-19 09:11:25 +01:00
docker-compose.yml docker: Update apache2 image to one with a /view rewrite rule 2023-07-20 15:32:51 -04:00
FAQ
Gruntfile.js build: Update karma-qunit to 4.2.0 and remove old __karma__ hack 2024-03-02 20:11:36 +00:00
HISTORY Fix some spelling errors 2024-03-18 20:58:11 +11:00
img_auth.php Namespace includes/context 2024-02-08 11:07:01 -05:00
index.php Namespace includes/context 2024-02-08 11:07:01 -05:00
INSTALL docs: Update old mailman references to postorius 2024-03-20 14:21:16 +00:00
jsdoc-plugin-allow-dots-in-modules.js jsdoc: Support dots in '@module <name>' and '@exports <name>' 2024-02-07 20:41:54 +00:00
jsdoc.js docs: Remove remaining jsdoc exclusions 2024-03-21 15:16:22 -07:00
load.php ResourceLoader: Follow-up creation of ResourceLoaderEntryPoint 2024-02-22 22:30:39 +00:00
opensearch_desc.php Use namespaced classes 2023-12-11 16:07:18 +01:00
package-lock.json Update eslint-plugin-vue to 9.23.0 2024-03-21 15:36:11 -07:00
package.json Update eslint-plugin-vue to 9.23.0 2024-03-21 15:36:11 -07:00
phpunit.xml.dist phpunit: Determine what extensions to load in unit tests via config 2023-09-25 23:03:48 +00:00
README.md docs: Link to "Local development quickstart" in README 2024-01-22 13:58:11 +00:00
RELEASE-NOTES-1.42 Merge "Hard-deprecate wfGetDB(), deprecated in 1.39" 2024-03-26 07:30:47 +00:00
rest.php Rest: Turn Rest\EntryPoint into a MediaWikiEntryPoint subclass 2024-03-12 14:37:18 +01:00
SECURITY
thumb.php Namespace includes/context 2024-02-08 11:07:01 -05:00
thumb_handler.php
UPGRADE Update DEVELOPERS.md and UPGRADE with new way to use update.php 2023-06-16 12:33:56 +00:00

MediaWiki

MediaWiki is a free and open-source wiki software package written in PHP. It serves as the platform for Wikipedia and the other Wikimedia projects, used by hundreds of millions of people each month. MediaWiki is localised in over 350 languages and its reliability and robust feature set have earned it a large and vibrant community of third-party users and developers.

MediaWiki is:

  • feature-rich and extensible, both on-wiki and with hundreds of extensions;
  • scalable and suitable for both small and large sites;
  • simple to install, working on most hardware/software combinations; and
  • available in your language.

For system requirements, installation, and upgrade details, see the files RELEASE-NOTES, INSTALL, and UPGRADE.

MediaWiki is the result of global collaboration and cooperation. The CREDITS file lists technical contributors to the project. The COPYING file explains MediaWiki's copyright and license (GNU General Public License, version 2 or later). Many thanks to the Wikimedia community for testing and suggestions.