Current configuration on the wiki
Find a file
C. Scott Ananian 82da9cf14b Use Remex for DeduplicateStyles transform
The previous implementation was using an ad-hoc regular expression which
was matching inside the data-mw attribute of Parsoid output, eg:

 <sup about="#mwt42" [...] typeof="mw:Extension/ref mw:Error" data-mw="{&quot;name&quot;:&quot;ref&quot;,&quot;attrs&quot;:{&quot;name&quot;:&quot;infobox_stats_ref_rail&quot;},&quot;body&quot;:{&quot;html&quot;:&quot;<style data-mw-deduplicate=\&quot;TemplateStyles:r1133582631\&quot; typeof=\&quot;...">

After substitution, the <link> element inserted contained " instead of
&quot; and so broke out of the attribute.

Instead use a proper HTML tokenizer (via wikimedia/remex-html) so that
we don't allow bogus matches inside attribute values.

To fix up tests:
* Don't deduplicate styles when parsing UX messages (also helps performance)
* Don't deduplicate styles in ContentHandler integration tests
* Don't deduplicate styles by default in parser tests
  (unless explicit option is set)

Depends-On: Id9801a9ff540bd818a32bc6fa35c48a9cff12d3a
Depends-On: I5111f1fdb7140948b82113adbc774af286174ab3
Followup-To: Ic0b17e361bf6eb0e71c498abc17f5f67f82318f8
Change-Id: I32d3d1772243c3819e1e1486351d16871b6e21c4
2023-12-15 17:49:21 +01:00
.phan GlobalFunctions: Minor clean up of wfMkdirParents() 2023-10-19 19:30:42 -07:00
cache
docs Namespace remaining files in includes/site 2023-12-14 14:57:34 -05:00
extensions
images
includes Use Remex for DeduplicateStyles transform 2023-12-15 17:49:21 +01:00
languages Localisation updates from https://translatewiki.net. 2023-12-15 08:07:05 +00:00
maintenance Namespace ParserOutput 2023-12-14 14:57:34 -05:00
mw-config Redesign the installer with Codex 2023-12-13 14:25:38 +01:00
resources Merge "mw.Title: Improve documentation" 2023-12-14 22:12:19 +00:00
skins
tests Use Remex for DeduplicateStyles transform 2023-12-15 17:49:21 +01:00
.dockerignore
.editorconfig
.eslintignore CodexModule: Add unit test for code splitting 2023-12-01 00:52:23 +00:00
.eslintrc.json
.fresnel.yml
.gitattributes
.gitignore
.gitmessage git: Introduce .gitmessage 2023-05-21 14:20:31 +03:00
.gitreview
.mailmap Add secondary emails following conversion 2023-11-27 17:43:29 +00:00
.phpcs.xml Bump codesniffer to 42.0.0 2023-09-27 15:06:32 -04: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
api.php Replace some deprecated wfExpandUrl calls with UrlUtils::expand 2023-05-30 19:48:01 +00:00
autoload.php Merge "HtmlHelper: Add "legacy compatibility" mode" 2023-12-15 16:21:11 +00:00
CODE_OF_CONDUCT.md
composer.json Merge "build: Raise TestingAccessWrapper from 2.0.0 to 3.0.0" 2023-12-13 19:20:09 +00:00
composer.local.json-sample
COPYING
CREDITS Prepare active branch following REL1_41 cut, labelling as 1.42-alpha 2023-10-09 22:11:03 -04:00
DEVELOPERS.md DEVELOPERS.md: Add note on Docker Desktop Rosetta setting 2023-12-14 11:34:15 +00: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 Gruntfile: Split stylelint runs for ease of reasoning 2023-12-12 10:55:22 -05:00
HISTORY Prepare active branch following REL1_41 cut, labelling as 1.42-alpha 2023-10-09 22:11:03 -04:00
img_auth.php Reorg: Move WebRequest to includes\Request 2023-09-11 21:44:34 +01:00
index.php
INSTALL Prepare active branch following REL1_41 cut, labelling as 1.42-alpha 2023-10-09 22:11:03 -04:00
jsdoc.js mw.Title: Document in jsdoc 2023-12-14 13:28:21 -08:00
load.php Centralize logic behind building ChronologyProtector object 2023-08-30 18:44:09 +00:00
opensearch_desc.php Use namespaced classes 2023-12-11 16:07:18 +01:00
package-lock.json Update jsdoc-wmf-theme from 0.0.8 to 0.0.9 2023-12-07 16:27:08 -08:00
package.json Update jsdoc-wmf-theme from 0.0.8 to 0.0.9 2023-12-07 16:27:08 -08: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
RELEASE-NOTES-1.41 Merge "filebackend: Allow uploading files up to 32 GB with FSFileBackend" 2023-10-25 17:24:22 +00:00
RELEASE-NOTES-1.42 Merge "Namespace ParserOutput" 2023-12-15 16:17:07 +00:00
rest.php
SECURITY
thumb.php Introduce StatusFormatter 2023-10-27 14:56:51 +02: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.