aboutsummaryrefslogtreecommitdiffstats
path: root/includes
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | | | | | FileBackend: PHP Deprecated: strrpos(): Passing null to parameter #1 ($haystack)Paladox2025-03-311-1/+1
|/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ``` PHP Deprecated: strrpos(): Passing null to parameter #1 ($haystack) of type string is deprecated in /srv/mediawiki/1.42/includes/libs/filebackend/FileBackend.php on line 1588 ``` Bug: T384851 Change-Id: I36c401587d94e7c1ab444d355b03ea88da8fb6e8
* | | | | | | Merge "Notifications: Minor cleanup"jenkins-bot2025-03-317-31/+8
|\ \ \ \ \ \ \
| * | | | | | | Notifications: Minor cleanupReedy2025-03-217-31/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I8f55e929543b67ed66191a9421c5c365b625aecc
* | | | | | | | Merge "TemplateParser: Add use statement for Exception"jenkins-bot2025-03-311-1/+2
|\ \ \ \ \ \ \ \
| * | | | | | | | TemplateParser: Add use statement for ExceptionReedy2025-03-201-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: Ic9cd94e8844043b87885b6c7f1768cdcd2e86837
* | | | | | | | | Localisation updates from https://translatewiki.net.Translation updater bot2025-03-3112-11/+187
| |_|/ / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | Change-Id: I2f499c75ce82bd4bb8697b6a950017f0309b2427
* | | | | | | | Consistent spelling of "username"Huji2025-03-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Almost everywhere else in MediaWiki core and extensions (at least those used by Wikimedia), it's written without a space. Follow up from I4c40a9566642fb2fbcf2006e4b7e33501b7b2575 Change-Id: I952f9552a5300eb883df1b2fc8d9276c42a2c3a6
* | | | | | | | Merge "ResourceLoader: Remove unused 'dir' parameter to load.php"jenkins-bot2025-03-281-8/+3
|\ \ \ \ \ \ \ \
| * | | | | | | | ResourceLoader: Remove unused 'dir' parameter to load.phpTimo Tijhof2025-03-251-8/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When MediaWiki creates load.php URLs, in OutputPage and via RL\Client, it sets 'lang', not 'dir'. The direction is automatically derived from the language, which makes the library easier to use for developers, and also avoids a potentially confusing scenario in which the two are different (e.g. lang=he and dir=ltr would not make sense, and would further risk poisoning LTR content in an RTL/Hebrew-related cache somewhere). Bug: T225845 Change-Id: I14905c85bb5e3bb47a681dc99668b92844d22f04
* | | | | | | | | Merge "changetags: Simplify buildTagFilterSelector without XmlSelect"jenkins-bot2025-03-281-16/+16
|\ \ \ \ \ \ \ \ \
| * | | | | | | | | changetags: Simplify buildTagFilterSelector without XmlSelectTimo Tijhof2025-03-281-16/+16
| |/ / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | XmlSelector exists primarily to create `<select>` menus, whereas this is creating `<datalist>`. This caller bypassing half the features (ctor args), overrides a half of what remains (tagname), and leaves most of the rest unused (e.g. optgroup, defaults). This in turn called Xml::option() which has more indirection, such as an optional selected, which is never set. Replace by idiomatic, simple, and diret use of Html::element() and Html::rawElement(). While at it: * Improve docs for the return value and make it clear that this is not a list to append to, the exactly two chunks have distinct identities and the callers depend on that exact [0] and [1] identity. * There was an early return with empty array for when the feature is disabled by site config. This violates the return shape but worked because all callers in core check the return value for truethy-ness. Support this by returning null instead, which is less likely to be mistaken and communicates more clearly the need for checks on the caller side, and e.g. nullable `?array` in the future. Test plan: * Edit buildTagFilterSelector() to force `if ( $ooui )` to `if ( false )`. * Open Special:Contributions locally. * Confirm visual rendering and HTML source are identical before/after. Change-Id: I6d68b1846d31d861d6f4bacff0fca38e478e00de
* | | | | | | | | Merge "Localize duration number in Watchlist editor"jenkins-bot2025-03-281-2/+2
|\ \ \ \ \ \ \ \ \
| * | | | | | | | | Localize duration number in Watchlist editorHuji2025-03-281-2/+2
| | |_|_|_|/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug: T387255 Change-Id: I3c39db9d8394254b94f0828de0df4fb57e8d49e7
* | | | | | | | | Merge "enotif: when triggering notifications, pass watchlist type"jenkins-bot2025-03-281-1/+1
|\ \ \ \ \ \ \ \ \
| * | | | | | | | | enotif: when triggering notifications, pass watchlist typePiotr Miazga2025-03-281-1/+1
| |/ / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes an issue introduced in Icccfe9548fc67a3692b488947b2648fe41c5198e when introducing the RecentChangeMailComposer. This issue caused watchlist emails not having the List-Help header. No other change in behaviour. Bug: T387987 Change-Id: I4fac2cacb6e2180d768c7cf0832a07a6ace8584e
* | | | | | | | | Merge "language: No longer support manual construction of Language objects"jenkins-bot2025-03-281-60/+9
|\ \ \ \ \ \ \ \ \ | |/ / / / / / / / |/| | | | | | | |
| * | | | | | | | language: No longer support manual construction of Language objectsUmherirrender2025-03-261-60/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug: T343771 Change-Id: I8f6d57599211eb6c8c29bde3abaccac78c6dc97e
* | | | | | | | | Merge "SkinModule: Add dark mode styles for images"jenkins-bot2025-03-281-0/+6
|\ \ \ \ \ \ \ \ \
| * | | | | | | | | SkinModule: Add dark mode styles for imagesJon Robson2025-03-271-0/+6
| | |_|_|_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is disabled by default but can be added on skins that support dark mode. This replaces existing code in Minerva and Vector 2022. Bug: T388197 Change-Id: I4302b629d42aa58073108bc75eaf857d7e55d9cf
* | | | | | | | | Add Papiamento (Aruba) (pap-aw) to Names.phptoluayo2025-03-281-0/+1
| |_|_|_|_|/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug: T387000 Change-Id: Ia45c70c331c2bb4dda066294e6a516a0652fc5a5
* | | | | | | | Localisation updates from https://translatewiki.net.Translation updater bot2025-03-287-6/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I617c9421a2991a74f1d7aa3cbe05962e36c99de2
* | | | | | | | Merge "ChangeTags: Optimize label and description parsing"jenkins-bot2025-03-281-11/+22
|\ \ \ \ \ \ \ \
| * | | | | | | | ChangeTags: Optimize label and description parsingBartosz Dziewoński2025-03-231-11/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug: T344352 Change-Id: I35ded8970d88bc3798d869e41dd16797d901007c
* | | | | | | | | Merge "ResourceLoader: Reject module names starting with "./" && "../""jenkins-bot2025-03-271-1/+3
|\ \ \ \ \ \ \ \ \
| * | | | | | | | | ResourceLoader: Reject module names starting with "./" && "../"Hannah Okwelum2025-03-271-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These already don't work in modules with packageFiles since these are invalid under CJS/require interop, but to remove any chance of ambiguity or confusing error messages client-side, let's also validate these early server-side, so that we can assume no such module can exist. Bug: T386833 Change-Id: I854079bb8c56e0b7adc899769bc365bf31226a05
* | | | | | | | | | Avoid use of OutputPage::parserOptions()C. Scott Ananian2025-03-271-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The OutputPage parser options is just the ParserOptions corresponding to the context; we can just create that directly. This will allow us to deprecate OutputPage::parserOptions. Bug: T390145 Bug: T350626 Change-Id: Ida3ed52f7b42a9a11b12e36e50caeae82149be0c
* | | | | | | | | | Merge "REST: fix extra routes module localization strings"jenkins-bot2025-03-271-2/+2
|\ \ \ \ \ \ \ \ \ \
| * | | | | | | | | | REST: fix extra routes module localization stringsbpirkle2025-03-261-2/+2
| | |_|_|_|_|_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A previous change to add localization strings for the REST extra routes module was inconsistent between the en/qqq json files and the message name in php, causing the strings to display incorrectly in the REST Sandbox. Fix so the messages display correctly. Bug: T385855 Change-Id: I6c8d825a98ee36218cd23e3945c42010c9bd5ef3
* | | | | | | | | | Merge "Make $wgUsersNotifiedOnAllChanges require confirmed emails"jenkins-bot2025-03-271-7/+0
|\ \ \ \ \ \ \ \ \ \
| * | | | | | | | | | Make $wgUsersNotifiedOnAllChanges require confirmed emailsBartosz Dziewoński2025-03-261-7/+0
| | |/ / / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug: T389608 Change-Id: I6b826d58eb756577ab8fd103175e7b6cc6571679
* | | | | | | | | | objectcache: Improve docs for BagOStuff::ATTR_DURABILITY docsTimo Tijhof2025-03-271-12/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Explain why they exist, how they're used, and what classes they effectively exist to detect. This feature was first added for T141804 to enable detection of CACHE_DB, and skip in ChronologyProtector or WANCache defaults, when constructing Rdbms/LBFactory to avoid recursion. However, that original use case has been replaced with the simpler "isDatabaseId" function. But, two new uses have shown up since then, and these are now documented to explain why the attribute is still useful. Change-Id: If39fcde689a4ea7dd396657fdc1c261d280e5e16
* | | | | | | | | | objectcache: Remove internal StorageAwareness, now unusedTimo Tijhof2025-03-276-106/+74
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update a few remnant references inside the library while at it. * WANObjectCache: Didn't use ATTR/QOS directly, and getQoS test already implemnented as BagOStuff const. Update getQoS() docs to match. * WANObjectCache: Already documented ERR_ as BagOStuff::ERR_. And Codesearch confirms no use of `WANObjectCache::(ERR|ATTR|QOS)`. * MemcachedClient: Switch from referencing one to the other. The class is not directly used outside core, only via BagOStuff. * Implicitly remove unused ATTR_EMULATION by not carrying over. Follows-up: * e8275758fe (I20fde9fa5c) Split IExpiringStore from BagOStuff, and re-use in WANObjectCache. * 74be3a0150 (I4377fc3f53) Move ERR_ from BagOStuff to IExpiringStore. * 69950da666 (Ia862c5111a) Replace IExpiringStore with StorageAwareness. * 59b002b866 (I9885f53f00) Remove StorageAwareness::QOS_LOCALITY_. * ec90b543ab (I8dec3f73fa) Remove StorageAwareness::QOS_EMULATION_SQL. * 62bdd78817 (I5649a29310) Adopt ERR_ in MemcachedClient. * e5a3e36bd1 (I836735b1fe) Mark StorageAwareness as internal. Bug: T353529 Bug: T364652 Change-Id: I1dfde995e29d5264611cf3500d61fe4d8631a7d7
* | | | | | | | | | Merge "Don't drop fragments in Skin::makeInternalOrExternalUrl()"jenkins-bot2025-03-271-1/+1
|\ \ \ \ \ \ \ \ \ \
| * | | | | | | | | | Don't drop fragments in Skin::makeInternalOrExternalUrl()Bartosz Dziewoński2025-03-261-1/+1
| |/ / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Skin::makeInternalOrExternalUrl() allowed links to fragments when the input was an external URL, but not when it was an internal page name. This problem was discovered in case of edit tags (T389314), but all callers of this method should benefit from this change. Bug: T389314 Change-Id: I388be52d4274374e5a501fd222bed95f3521e2eb
* | | | | | | | | | Localisation updates from https://translatewiki.net.Translation updater bot2025-03-272-1/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: Icbb7ac5c4484bb26e7b69f4118b39d40bef0eb68
* | | | | | | | | | LocalFileRestoreBatch: Add ->caller( __METHOD__ ) to a SQL queryBartosz Dziewoński2025-03-271-1/+1
| |_|_|/ / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: Iaca08cb1400091ee847106b0ad2b264feddf0fdb
* | | | | | | | | Merge "ResourceLoader: Add page title to user script syntax error"jenkins-bot2025-03-261-9/+12
|\ \ \ \ \ \ \ \ \ | |_|/ / / / / / / |/| | | | | | | |
| * | | | | | | | ResourceLoader: Add page title to user script syntax errorTimo Tijhof2025-03-261-9/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This follows-up Ie309e761f (53a3c8b417), in which we switched from calling JsMinPlus/JSParser (which took $fileName as argument, and throw an exception that already included "on line N in X.js") to calling Peast. That patch formatted the error as "on line N" but forgot to include "in X.js". Test plan: * Log in as admin and create "MediaWiki:Common.js" with "foo/;", which is invalid syntax. Then browse the main page and check the browser console. * Before: "Parse error: Unexpected: ; on line 1" * After: "Parse error: Unexpected: ; on line 1 in MediaWiki:Common.js" While at it, document why this cache key is not purely MD5-based, but also includes wiki and page title. Change-Id: I16c3b1dacd02ee26a254809e6a9ac60f72aba4da
* | | | | | | | | Merge "htmlform: Drop HTMLForm::*Text and FormSpecialPage::*Text functions, ↵jenkins-bot2025-03-262-206/+6
|\ \ \ \ \ \ \ \ \ | |_|_|_|/ / / / / |/| | | | | | | | | | | | | | | | | deprecated in 1.38"
| * | | | | | | | htmlform: Drop HTMLForm::*Text and FormSpecialPage::*Text functions, ↵Umherirrender2025-03-262-206/+6
| | |/ / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | deprecated in 1.38 The following functions were removed: - FormSpecialPage::preText - FormSpecialPage::postText - HTMLForm::getPreText - HTMLForm::setPreText - HTMLForm::addPreText - HTMLForm::getPostText - HTMLForm::setPostText - HTMLForm::addPostText - HTMLForm::getHeaderText - HTMLForm::setHeaderText - HTMLForm::addHeaderText - HTMLForm::getFooterText - HTMLForm::setFooterText - HTMLForm::addFooterText Bug: T325474 Change-Id: Id8a05542fc56db52f3a5141a1b2125c1a602cf3c
* | | | | | | | Merge "api: Remove deprecated ApiPageSet::get*Titles"jenkins-bot2025-03-261-67/+0
|\ \ \ \ \ \ \ \
| * | | | | | | | api: Remove deprecated ApiPageSet::get*TitlesUmherirrender2025-03-261-67/+0
| |/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The following functions were removed: - ApiPageSet::getTitles - ApiPageSet::getGoodTitles - ApiPageSet::getMissingTitles - ApiPageSet::getGoodAndMissingTitles - ApiPageSet::getRedirectTitles - ApiPageSet::getSpecialTitles Bug: T339384 Change-Id: Iba8499c2d1b4a10b918f563069534b90fed7f6f9
* / / / / / / / page: Remove deprecated PageArchive::undeleteAsUserUmherirrender2025-03-261-59/+0
|/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug: T339394 Change-Id: I4c7dd048913ee3d62982ec3bcbdb37548bd56280
* | | | | | | Merge "Chinese Conversion Table Update 2025-1"jenkins-bot2025-03-261-29/+216
|\ \ \ \ \ \ \
| * | | | | | | Chinese Conversion Table Update 2025-1BAKAHOME\chief2025-01-061-29/+216
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update the Chinese conversion table routinely to fix bugs reported at https://zh.wikipedia.org/wiki/Wikipedia:字词转换/修复请求. It is only data changes and only works for Chinese WikiProjects. Change-Id: I2c7e4818a1dcb4c7027265840732ec503ec60b1a
* | | | | | | | Merge "Migrate MediaWiki.jobqueue to statslib"jenkins-bot2025-03-265-41/+57
|\ \ \ \ \ \ \ \
| * | | | | | | | Migrate MediaWiki.jobqueue to statslibAtieno2025-03-245-41/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch migrates the `MediaWiki.jobqueue` metric to the new Prometheus format. Bug: T359472 Change-Id: Ie1d54721a1849619fe9a33b74ad1c231868b1c26
* | | | | | | | | Merge "apihelp-query+userinfo-paramvalue-prop-theoreticalratelimits: Add ↵jenkins-bot2025-03-261-1/+1
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | trailing fullstop"
| * | | | | | | | | apihelp-query+userinfo-paramvalue-prop-theoreticalratelimits: Add trailing ↵Reedy2025-03-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fullstop Change-Id: Idce3996ad564b8a0bff7036130c8a2a81076ec29
* | | | | | | | | | Replace a number of uses of class aliases with the real thingsJames D. Forrester2025-03-2644-7/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Found via disabling phan's alias support for a run (and ignoring wgLang's hard-coded state of being a \Language, alas). Change-Id: I4753bcd84d72d6de111fc7ffc5841fa417bf7333