MediaWiki 1.41/wmf.11/Changelog

Core changes

 * - Branch commit for wmf/1.41.0-wmf.11 by trainbranchbot
 * - api-testing: Fix typo in Mocha test case by Derick Alangi
 * - ParamValidator: Throw exception if there is a type to value mismatch by Derick Alangi
 * - Injecting dependencies into DeferredUpdatesManager by DannyS712
 * - Add DeferredUpdatesManager service to replace DeferredUpdates by DannyS712
 * - Special:Undelete "load more" followups by Tim Starling
 * - Add load more button to get Special:Undelete revisions by parts. by arttsymbar
 * - editpage: Change the order of hooks slightly for FlaggedRevs by Bartosz Dziewoński
 * - Revert "Rename wgPageContentLanguage to wgPageViewLanguage" partially by Func
 * - Languages: Add language crh-ro by Amir E. Aharoni
 * - Fix autonym for Choctaw by Amir E. Aharoni
 * - Update the documentation at the top of Names.php by Amir E. Aharoni
 * - wgSVGNativeRendering default should be false, not 'false' by Derk-Jan Hartman
 * - Remove uses Database::update/Database::insert return values by Aaron Schulz
 * - rdbms: make IDatabase::insertId less fragile and more consistent by Aaron Schulz
 * - tests: Add basic test for SpecialUserRights by Umherirrender
 * - Sync up core repo with Parsoid by Arlo Breault
 * - preferences search: Swap innerText → textContent for until-found compat by Bartosz Dziewoński
 * - Make magnify url match getDescLinkAttribs by Arlo Breault
 * - Filter out large-tables category lints from Parsoid REST API by sbailey
 * - rdbms: Hard-deprecate deprecated ConnectionManager methods by Lucas Werkmeister
 * - rdbms: Make ConnectionManager::getReadConnection return IReadableDatabase by Lucas Werkmeister
 * - ApiPrefixUniquenessTest: Drop wbeu hack by James D. Forrester
 * - Fix preferences search CSS overrides by Ed Sanders
 * - ExternalLinks: Add support for non-reveresed indexed URLs by Amir Sarabadani
 * - LanguageConverter: Add variants info into the cache key by Func
 * - Add 1.40 snapshot to sqlite db tests by Alexander Vorwerk
 * - language: Move cache version of language converter into cache key by Func
 * - rdbms: avoid session variable SET query for LoadMonitor connections by Aaron Schulz
 * - Manual backport of OOUI change I63293edd62 (tab dialog fix) by Bartosz Dziewoński
 * - Stop storing more than one row for proto-relative external links by Amir Sarabadani
 * - Sync up core repo with Parsoid by Arlo Breault
 * - Special:Search - Update interwiki sister icons by Simone Cuomo
 * - mediawiki.skinning: Fix `h1` heading level 1 Nepali characters cut-off by Bada Kaji
 * - Add magnify links on thumbs when not linking to file desc page by Arlo Breault
 * - Remove special casing for broken media in styling by Arlo Breault
 * - Don't restrict border to :not(figcaption) by Arlo Breault
 * - rdbms: Make UnionQueryBuilder use Query object by Amir Sarabadani
 * - rdbms: Make DatabasePostgres use Query object when calling DB::query by Amir Sarabadani
 * - Update Codex from v0.10.0 to v0.11.0               by Volker E
 * - tests: Remove unused argument to createMock by Daimona Eaytoy
 * - preferences: Improve css selectors to be compatible with extensions by Func
 * - Add option to allow SVGs to be rendered clientside by Derk-Jan Hartman
 * - Tests: add CommentParserFactory to DummyServicesTrait by DannyS712
 * - Sanitizer: Permit the `aria-level` HTML attribute in wikitext by Matt Fitzpatrick
 * - registration: Fix error when processing pre-1.35 ValidSkinNames entry by Kevin Israel
 * - Convert DeleteAction to use HTMLForm by Daimona Eaytoy
 * - RecentChanges: Remove sticky preference for "enhanced" status, make manual by Moriel Schottlender
 * - RecentChanges: Apply word-break to comments that are inside table cells by Moriel Schottlender
 * - preferences search: Add descriptive text fields as peers by Func
 * - Remove unneeded wildcard selectors  by Arlo Breault

Vendor

 * - Bump parsoid to 0.18.0-a12 by Arlo Breault

AbuseFilter

 * - Improve support for read-new wikis with externallinks by Amir Sarabadani
 * - Add tests for temporary user in CheckUserHandlerTest by Thalia
 * - Update user type checks to handle temporary users by AnaïsGueyte

AntiSpoof

 * - Don't store temporary user names in AntiSpoof's spoofuser table by tsepothoabala

CampaignEvents

 * - Try to fix new selenium failures by Daimona Eaytoy
 * - Fix failing REST API tests by Daimona Eaytoy
 * - Report tracking tool commit failures to the user by Daimona Eaytoy
 * - Implement the remaining actions for the WikiEdu Dashboard by Daimona Eaytoy
 * - Start implementing logic for the WikiEdu Dashboard by Daimona Eaytoy
 * - Implement the actual execution of updates in TrackingToolEventWatcher by Daimona Eaytoy
 * - Introduce TrackingToolEventWatcher to validate tracking tool changes by Daimona Eaytoy
 * - Add new ce_tracking_tools table by Daimona Eaytoy
 * - Try to fix failing selenium tests by Daimona Eaytoy

CentralAuth

 * - Message spelling correction by Amir E. Aharoni
 * - Reword "centralauth-state-mismatch" by MarcoAurelio

CentralNotice

 * - BannerRenderer: Make sure the language variant is valid by Func
 * - Replace deprecated Hooks::runWithoutAbort by Umherirrender
 * - styles: Remove unnecessary 'mediawiki.ui/variables' import by Volker E
 * - Use IDatabase::setSessionOptions to set group_concat_max_len by Lucas Werkmeister

CheckUser

 * - Test SpecialCheckUser::tagPage and ::doMassUserBlockInternal by Dreamy Jazz
 * - Select unaliased cuc_timestamp to allow IndexPager to use it by Dreamy Jazz
 * - Check for null when using ::getCheckUserHelperFieldset by Dreamy Jazz
 * - Simplify PLURAL syntax in messages by Amir E. Aharoni
 * - Show users already tagged or blocked with same params in CU block form by dreamyjazz
 * - Use a Job to prune data instead of post send by Dreamy Jazz
 * - Show new tool links in the CIDR calculator and use classes instead of IDs by dreamyjazz

CirrusSearch

 * - Add a config flag to enable analysis chain deduplication by Erik Bernhardson

Cite

 * - Disable mw-body-content clearfix in reflist by Ed Sanders
 * - Register a HelpCompletionAction group alias for cite by David Lynch
 * - Streamline/minimize duplicate code in reference node classes by thiemowmde

Citoid

 * - vu.ui.Citoid: Add missing arg to constructor documentation by Ed Sanders
 * - build: Update linters by Ed Sanders

ConfirmEdit

 * - Improve support for read-new wikis with externallinks by Amir Sarabadani

ContentTranslation

 * - styles: Make callout use skin variables by Volker E
 * - CX: Use sitemapper current wiki language code for target language init by NikG
 * - VisualEditor.vue: Fix js error by Santhosh Thottingal
 * - SX: Restore draft translation for the selected page/section if it exists by NikG
 * - SX: Fix multiple draft translation restorations without page reload by NikG
 * - VE integration: Handle links without title attribute by Santhosh Thottingal

DiscussionTools

 * - Avoid duplicating new topic tool if there are multiple .mw-parser-output elements by Bartosz Dziewoński
 * - UsernameCompletionAction: Document constructor and pass all args by Ed Sanders
 * - build: Update devDependencies by Ed Sanders
 * - Remove Reply, NewTopic and Subscriptions tools from Beta description by Iniquity

DonationInterface

 * - Add debounce to fix duplicate Adyen transactions in short sequence by Damilare Adedoyin
 * - Add type hints to PaymentResult by Elliott Eggleston

EntitySchema

 * - EntitySchema\Tests\Unit: Fix namespaces by Marius Hoch

FileImporter

 * - Make ImportPlanValidatorTest provider static by thiemowmde
 * - Migrate ImportPlanValidatorTest provider away from ImportPlan mocks by thiemowmde
 * - Migrate ImportPlanValidatorTest away from providing complex mocks by thiemowmde
 * - Remove non-static dataProviders in two tests by thiemowmde

FlaggedRevs

 * - Replace IDatabase with IReadableDatabase where possible by thiemowmde

Flow

 * - Update npm package-lock by daniel
 * - Add Mocha test for conversion API by daniel

GlobalPreferences

 * - GlobalPreferencesFactory: Use native way to add extra help message by Func

GrowthExperiments

 * - Section images: Accept more recommendation types by Gergő Tisza
 * - Section images: update to onboarding images by Sergio Gimeno
 * - Respect partial blocks for GrowthMentors.json in structured mentor list by Martin Urbanec
 * - Personalized praise: Gender support for mentor's username in message by Martin Urbanec
 * - Improve handling of missing image recommendation by Gergő Tisza
 * - Section images: add onboarding dialog by Sergio Gimeno
 * - Frontend documentation: Update documentation for OnboardingDialog by vyanez
 * - Frontend documentation: Update less variables and OnboardingDialog styles by vyanez
 * - Frontend documentation: Implement a prototype of OnboardingDialog pattern latest spec by vyanez
 * - Section images: Add a missing comment by Gergő Tisza
 * - Section images: Fix blue dot by Gergő Tisza
 * - Section images: Use image recommendation thumbnail icon by Gergő Tisza
 * - Section images: Add caption help by Gergő Tisza
 * - Section images: Make image insertion logic more robust by Gergő Tisza
 * - Section images: Make quality gate frontend code consistent by Gergő Tisza
 * - Section images: Use own minimum caption length by Gergő Tisza
 * - Section images: Do not treat unexpected kinds as production errors by Gergő Tisza
 * - Section images: Add caption by Gergő Tisza
 * - Section images: Image insertion logic by Gergő Tisza
 * - Factor mentor-removal out into MentorRemover by Martin Urbanec
 * - ReassignMentees: Drop mentor/mentee relationship when no mentor is available by Martin Urbanec
 * - MentorDashboardLogger: Exit quietly if EventLogging is unavailable by Martin Urbanec
 * - Personalized praise: Improve instrumentation by Martin Urbanec
 * - Frontend documentation: Improve MultiPane component documentation by vyanez
 * - New impact: show call to action in mobile-details mode by Sergio Gimeno
 * - Frontend documentation: Add a MultiPane component with transition and swipe logic by vyanez
 * - MultiPaneDialog: remove attribute hidden instead of class by Sergio Gimeno
 * - Make use of short PHP operators like ?: and ??= by thiemowmde
 * - Improve logging of invalid image recommendation kinds by Gergő Tisza
 * - Personalized praise: Add instrumentation by Martin Urbanec

ImageMap

 * - Sync up ImageMap repo with Parsoid by Arlo Breault
 * - Add resource for thumb magnify links by Arlo Breault
 * - Add back description links when !$wgParserEnableLegacyMediaDOM by Arlo Breault

ImageSuggestions

 * - Don't forward console logs to other providers by Matthias Mullie
 * - Change maint script to do work via jobs by Cormac Parle

InputBox

 * - Handle 'prefix' when 'action=edit', even if another extension overrides action by Bartosz Dziewoński

MassMessage

 * - tests: Remove function_exists for str_ends_with by Umherirrender

Math

 * - Add test case for MathRestbaseInterface.php by rrana-wmf

MediaModeration

 * - ModerateExistingFiles: Process single file without job queue by Kosta Harlan

MediaSearch

 * - Implement backward navigation when JS is not supported by Simone Cuomo
 * - MediaSearch - no input focus for loading empty results page by Simone Cuomo

MobileFrontend

 * - Revert "styles: Apply Codex `z-index` tokens" by Esanders
 * - styles: Apply Codex `z-index` tokens by Volker E
 * - editor: Load default content for 'MediaWiki:' namespace pages by Bartosz Dziewoński

ORES

 * - Handle possible null statistics on SpecialORESModels by Umherirrender

PageNotice

 * - Use hook handler interfaces by Siddharth VP

PageTriage

 * - Use strict comparison by Ed Sanders
 * - build: Update eslint-config-wikimedia to 0.25.1 by Ed Sanders

Popups

 * - Prefer native JavaScript to jQuery by Jon Robson

ProofreadPage

 * - Make sure OSD always loads the latest images by Sohom
 * - EditInSequence: Introduce color coded icons for page levels by Sohom
 * - Change the 'Go to specific page' icon to 'collapse' when open by Sam Wilson
 * - EIS: Fix error on navigating past last page by Sohom
 * - Prevent API (and EIS) from erroring if image is not generated by Sohom
 * - Improve error handling for EditInSequence by Sohom
 * - Add PageSelection UI to EditInSequence by Sohom

RevisionSlider

 * - Skip user setting for unnamed users by WMDE-Fisch
 * - Fix test for scrolling over revisions by WMDE-Fisch

Scribunto

 * - Translate Scribunto namespaces into Uzbek (uz) by MarcoAurelio

SearchVue

 * - Cannot read properties of null (reading 'getAttribute') by Simone Cuomo
 * - SearchPreview: Migrate the Event store module from Vuex to Pinia by Simone Cuomo

SecureLinkFixer

 * - Updating domains.php from Mozilla by SecureLinkFixer updater bot

SpamBlacklist

 * - Grant bots the "sboverride" userright by default  by Kunal Mehta
 * - Improve support for read-new wikis with externallinks by Amir Sarabadani

TemplateData

 * - Fix broken ActionFieldLayout construction by thiemowmde
 * - Fix incomplete validation & enter key when adding new parameter by thiemowmde

TimedMediaHandler

 * - Rewrite ext.tmh.player.dialog to use es6 class by Derk-Jan Hartman
 * - Convert ext.tmh.player.element to es6 class by Derk-Jan Hartman
 * - Sync up TMH repo with Parsoid by Arlo Breault
 * - Convert TMH modules to ES6 by Derk-Jan Hartman
 * - Add resource for thumb magnify links by Arlo Breault
 * - Disable test to break circular dependency by Arlo Breault

Translate

 * - QueryMessageCollectionActionApi: Few code improvements by Abijeet
 * - QueryMessageCollectionActionApi: Check for empty filter by wangombe
 * - MessageGroupConfigurationParser: Call getExtraSchema if present by Abijeet
 * - MessageGroupConfigurationParser: Use FileFormatFactory by Abijeet
 * - Check if page has translate markup before updating tp:tag revision by Abijeet
 * - Use Title class instead of MediaWiki\Title\Title by Abijeet
 * - TranslatablePage: Remove unused tagCache variable by Abijeet

TranslationNotifications

 * - UnsubscribeInactiveUsers: Cast string to int for UserIdentityValue by Abijeet

UniversalLanguageSelector

 * - Update jquery.uls from upstream by Abijeet

VisualEditor

 * - Update VE core submodule to master (b66c8ebb5) by Bartosz Dziewoński
 * - Update VE core submodule to master (1af79a8a0) by Bartosz Dziewoński
 * - Output config var when VE disabled by hook by Ed Sanders
 * - build: Update stylelint-config-wikimedia to 0.15.0 by Ed Sanders
 * - build: Update eslint-config-wikimedia to 0.25.1 by Ed Sanders
 * - extension.json: Add missing i18n message by Ed Sanders
 * - Update VE core submodule to master (b35a89fed) by Bartosz Dziewoński
 * - Update VE core submodule to master (12333c596) by Ed Sanders
 * - .gitignore: Add .vscode directory to .gitignore by TheresNoTime

Wikibase

 * - REST: Use revision data step in GetItemAliases by sihe
 * - Add a section in the README about adding language codes by Noa wmde
 * - REST: Use revision data use case step in GetItem by Jakob Warkotsch
 * - REST: Use revision data use case step in AddStatement by Jakob Warkotsch
 * - ApiListEntityUsage: Remove legacy prefix by Marius Hoch
 * - REST: Extract metadata retrieval use case step by Jakob Warkotsch
 * - REST: Handle non-string JSON Patch 'value' fields by sihe
 * - REST: Trim whitespace around patched labels by Jakob Warkotsch
 * - Change submit button copy for Special:SetLabelDescriptionAliases by Noa wmde
 * - Revert "Move jquery.wikibase.wbtooltip and dependencies to Lib" by Hoo man
 * - REST: Add patched-label-invalid to OAS by Jakob Warkotsch
 * - REST: Fix patched-label-too-long context key by Jakob Warkotsch
 * - Restore targets declarations temporarily by Lucas Werkmeister
 * - Run PHPStan only if core dependencies installed by Jakob Warkotsch
 * - Disallow repo/client service usage from Lib by Lucas Werkmeister

WikibaseLexeme

 * - Bump new-lexeme after dependency updates by Lucas Werkmeister
 * - Add a section about language code support by Noa wmde
 * - Add language names for nd/nr (North/South Ndebele) by Nikki

WikibaseQualityConstraints

 * - Bump eslint-config-wikimedia from 0.25.0 to 0.25.1 by Addbot
 * - Bump stylelint-config-wikimedia from 0.14.0 to 0.15.0 by Addbot
 * - Bump grunt-banana-checker from 0.10.0 to 0.11.0 by Addbot
 * - Bump sinon from 15.0.4 to 15.1.0 by Addbot

WikiLambda

 * - Add API to wrap supported-programming-languages endpoint. by apine
 * - Fix set-value keyPaths for ZCode component by gengh
 * - tests: Make PHPUnit data providers static by Umherirrender
 * - Set About widget always to an edit=true context by gengh
 * - Update function-schemata sub-module to HEAD (fbfbade) by gengh

WikiLove

 * - styles: Apply MediaWiki skin variables by Volker E

WikimediaMessages

 * - ipInfo.hooks: Use wgRelevantUserName by TheresNoTime

MinervaNeue

 * - Revert "styles: Apply Codex `z-index` tokens" by Jdrewniak
 * - Make use of mw-file-element class by Arlo Breault
 * - Show Contribute menu item in main menu when Special:Contribute is enabled by Santhosh Thottingal
 * - styles: Apply Codex `z-index` tokens by Volker E

Timeless

 * - Copy upstream changes for magnify links by Arlo Breault
 * - Copy upstream media styling changes by Arlo Breault
 * - Remove unneeded wildcard selectors by Arlo Breault

Vector

 * - Move LimitedWidthToggle styles to skin.vector.styles by jaydenb
 * - Remove limited toggle notification on page load by bwang
 * - Increase menu tab borders to 2px by jaydenb
 * - Tipsy has been removed from MediaWiki core by Jon Robson
 * - Use document feature classes to extract A/B test state by Jon Robson
 * - Revert "Override mw.experiments.getBucket via body classes" by Jon Robson
 * - Ensure echo notifications counter is always visible by bwang
 * - Override mw.experiments.getBucket via body classes by Jan Drewniak
 * - Remove centraluserid dependency in ABRequirement.php by ksarabia
 * - styles: Remove unneeded property by Volker E

VisualEditor/VisualEditor

 * - build: Upgrade grunt-tyops to 0.1.1 by James D. Forrester
 * - Patch WindowManager fix for multiple window managers by Ed Sanders
 * - CompletionAction/Widget: Rename 'trigger' to 'sequence' by Ed Sanders
 * - HelpCompletionAction: Update getToolIndex to use new group titles by Ed Sanders
 * - HelpCompletionAction: Wait for widget to close before triggering tool by Ed Sanders
 * - Actions: Improve documentation of 'source' argument by Ed Sanders
 * - build: Update stylelint-config-wikimedia to 0.15.0 by Ed Sanders
 * - build: Update eslint-config-wikimedia to 0.25.1 by Ed Sanders
 * - rebaser: Update dependencies by Ed Sanders
 * - HelpCompletionAction: Remove unnecessary IIFE by Ed Sanders
 * - HelpCompletionAction: Remove unused insertAndOpen method by Ed Sanders
 * - CompletionWidget & Action: Add missing documentation by Ed Sanders
 * - Update surface padding when toolbar dialog is positioned 'below' by Ed Sanders
 * - Improve setting of surface padding when context opens by Ed Sanders
 * - ve.ui.Surface#scrollSelectionIntoView: Always position selection 5px from edge by Ed Sanders
 * - Fixes/updates to various JSDoc type hints by thiemowmde

No changes

 * 3D
 * ActiveAbstract
 * AdvancedSearch
 * ApiFeatureUsage
 * ArticleCreationWorkflow
 * ArticlePlaceholder
 * Babel
 * BetaFeatures
 * BounceHandler
 * Calendar
 * Campaigns
 * Capiunto
 * CategoryTree
 * CharInsert
 * ChessBrowser
 * CiteThisPage
 * CodeEditor
 * CodeMirror
 * Cognate
 * Collection
 * CologneBlue
 * CommonsMetadata
 * ContactPage
 * CreditsSource
 * Dashiki
 * Disambiguator
 * DismissableSiteNotice
 * DoubleWiki
 * Echo
 * Elastica
 * ElectronPdfService
 * EventBus
 * EventLogging
 * EventStreamConfig
 * ExtensionDistributor
 * ExternalGuidance
 * FeaturedFeeds
 * FileExporter
 * FundraiserLandingPage
 * FundraisingTranslateWorkflow
 * GWToolset
 * Gadgets
 * GeoCrumbs
 * GeoData
 * GlobalBlocking
 * GlobalCssJs
 * GlobalUsage
 * GlobalUserPage
 * GlobalWatchlist
 * GoogleNewsSitemap
 * Graph
 * GuidedTour
 * IPInfo
 * Insider
 * Interwiki
 * InterwikiSorting
 * Josa
 * JsonConfig
 * Kartographer
 * LabeledSectionTransclusion
 * LandingCheck
 * LdapAuthentication
 * Linter
 * LiquidThreads
 * Listings
 * LoginNotify
 * MachineVision
 * MapSources
 * MobileApp
 * Modern
 * MonoBook
 * MultimediaViewer
 * NavigationTiming
 * NearbyPages
 * NewUserMessage
 * Newsletter
 * Nostalgia
 * Nuke
 * OATHAuth
 * OAuth
 * OAuthRateLimiter
 * OpenStackManager
 * PageAssessments
 * PageImages
 * PageViewInfo
 * PagedTiffHandler
 * ParserFunctions
 * PdfHandler
 * Phonos
 * Poem
 * PropertySuggester
 * QuickSurveys
 * Quiz
 * RSS
 * ReadingLists
 * RealMe
 * RelatedArticles
 * SandboxLink
 * Score
 * SearchExtraNS
 * SecurePoll
 * ShortUrl
 * SimilarEditors
 * SiteMatrix
 * StopForumSpam
 * SubPageList3
 * SubpageSortkey
 * SyntaxHighlight_GeSHi
 * TemplateSandbox
 * TemplateStyles
 * TemplateWizard
 * TextExtracts
 * Thanks
 * TheWikipediaLibrary
 * TitleBlacklist
 * TocTree
 * TorBlock
 * TrustedXFF
 * TwoColConflict
 * UploadWizard
 * UploadsLink
 * UrlShortener
 * VipsScaler
 * VueTest
 * WebAuthn
 * WikiEditor
 * WikibaseCirrusSearch
 * WikibaseLexemeCirrusSearch
 * WikibaseMediaInfo
 * Wikidata.org
 * WikidataPageBanner
 * WikimediaApiPortal
 * WikimediaApiPortalOAuth
 * WikimediaBadges
 * WikimediaEditorTasks
 * WikimediaEvents
 * WikimediaIncubator
 * WikimediaMaintenance
 * Wikisource
 * Wikistories
 * XAnalytics
 * cldr
 * intersection
 * timeline
 * wikihiero

Total changes
258 Changes in 55 repos by 73 authors