MediaWiki 1.37/wmf.21/Changelog

Core changes

 * - Branch commit for wmf/1.37.0-wmf.21 by trainbranchbot
 * - logging: Cleanup LogEventsList constructor by Umherirrender
 * - Fix notice for Special:WhatLinksHere?limit=0 by Tim Starling
 * - SelectQueryBuilder: conflicting conditions should be passed through by Tim Starling
 * - mw-ui-button should be compatible with the checkbox hack by jdlrobson
 * - specials: Fix doc of SpecialUserrights::showEditUserGroupsForm by Umherirrender
 * - special: Fix doc of SpecialPageFactory::get(Usable|Regular)Pages by Umherirrender
 * - maintenance: Cleanup use of exit in Maintenance::execute implementation by Umherirrender
 * - page: Fix debug message in WikiFilePage::getForeignCategories by Umherirrender
 * - specials: Do not hard code function name as caller on Whatlinkshere by Umherirrender
 * - Test new methods in BacklinkCache by TChin
 * - Remove Title usage from BacklinkCache by Aryeh Gregor
 * - Create new UserGroupManager::addUserToMultipleGroups method by TChin
 * - mw.loader: Simplify callback in nestedAddScript by DannyS712
 * - mw.loader: simplify setAndPropagate, inline requestPropagation by DannyS712
 * - Introduce OutputPage::tailElement by Ammarpad
 * - mw.loader: simplify runScript in execute by DannyS712
 * - resourceloader: Unhoist some variables in mw.loader by DannyS712
 * - resourceloader: Define mw.loader.store after the rest of mw.loader by DannyS712
 * - Fix BlockLogFormatter::formatBlockFlag documentation for $flag by DannyS712
 * - resourceloader: Define mw.loader in its own JS file by DannyS712
 * - Set $wgIncludejQueryMigrate to false as default by Amir Sarabadani
 * - objectcache: call silenceTransactionProfiler in SqlBagOStuff::fetchBlobs by Aaron Schulz
 * - objectcache: cleanup config injection and method names in SqlBagOStuff by Aaron Schulz
 * - code style: Fix line indent on if in CoreTagHooks by Umherirrender
 * - language: mb_substr never returns false by Umherirrender
 * - api: Do not use isset to check for null on local var in ApiPageSet by Umherirrender
 * - resourceloader: Append newline to JavaScript only if missing by Fomafix
 * - resourceloader: Remove deprecated makeVersionQuery without $modules by Timo Tijhof
 * - resourceloader: Remove unused `resourceloader.splitRequest` track by Timo Tijhof
 * - Use PHP \u{xxxx} syntax by Fomafix
 * - Add mw-list-item class to all menu list items created by makeListItem by jdlrobson
 * - Fix exception in preferences when `nickname` is invalid and `fancysig` is on by Bartosz Dziewoński
 * - registration: Make it easier to set a skin's templateDirectory by jdlrobson
 * - wvui: Change the 'wvui' module back to the full WVUI bundle      by Roan Kattouw
 * - Update WVUI to v0.3.0            by Volker E
 * - docs: Use interface instead of real types in documentation by Umherirrender
 * - specials: Avoid Status/StatusValue mismatch in SpecialEmailUser by Umherirrender
 * - Avoid Status/StatusValue mismatch in syncFileBackend maintenance script by Umherirrender
 * - export: Fix false/null handling for fread in TextPassDumper by Umherirrender
 * - api: Remove redundant truthy check in ApiComparePages by Umherirrender
 * - Make ternary in ApiUsageException::__toString more readable by Umherirrender
 * - specials: Fix doc for SpecialBlock::processFormInternal by Umherirrender
 * - MWCryptHash: Avoid bool as array key by Umherirrender
 * - api: Improve class property docs in ApiContinuationManager by Umherirrender
 * - WikiFilePage: Guard against null file in loadFile by Daimona Eaytoy
 * - Change trivial use of getVal('action') to getRawVal by Timo Tijhof
 * - build: Enable phan plugin UseReturnValuePlugin by Umherirrender
 * - rdbms: Remove return from DBConnRef::setSessionOptions by Umherirrender
 * - paramvalidation: Remove unneeded coalesce operator in EnumDef by Umherirrender
 * - docs: Remove wrong null types by Umherirrender
 * - specials: Simplify handling for SpecialVersion descriptionmsg values by Umherirrender
 * - parser: Fix string replacement in post-expand error handling by Umherirrender
 * - PageStore: Pass query flags to getPageById too  by Bartosz Dziewoński
 * - Remove redundant class="" related condition from TablePager by Thiemo Kreuz
 * - TablePager: don't call getRowClass twice when the result was saved by DannyS712
 * - A few extra tests for Linker::formatComment by Tim Starling
 * - benchmarks: Remove old bench, document `perf -e instructions` by Tim Starling
 * - benchmarks: Set a default file in benchmarkJSMinPlus.php by Timo Tijhof
 * - In Rest\ResponseFactory, substitute invalid UTF-8 by Tim Starling
 * - PageStore: Pass query flags to getPageByName  by Bartosz Dziewoński
 * - Add custom tooltip messages for menu icons by Clare Ming
 * - Promote SkinMustache methods to SkinTemplate by jdlrobson
 * - Hard-deprecate Content::preSaveTransform. by Roman Stolar
 * - Add tests for the UserRightsProxy by Alexander Vorwerk
 * - Reduce Special:Contributions query count by Tim Starling
 * - Introduce concept of generateHTMLOnEdit for ContentHandler by Amir Sarabadani
 * - mediawiki.api: Move example doc from constructor to @class block by Timo Tijhof
 * - Update wikimedia/wait-condition-loop from 2.0.1 to 2.0.2  by James D. Forrester
 * - Selenium tests: Skip wikitext-specific tests if NS isn't wikitext by James D. Forrester
 * - phpcs: remove class name exclusion for invalidateUserSessions by DannyS712
 * - Add benchmark for Linker::formatComment in preparation for refactor by Tim Starling
 * - rdbms: Followup to upsert/replace parameter validation by Tim Starling
 * - Fix class name of InvalidateUserSessions by Reedy
 * - Hard-deprecate Content::preloadTransform. by Roman Stolar
 * - objectcache: make use of new `modtoken` field in SqlBagOStuff (ii) by Aaron Schulz
 * - Move more logic from WikiPage to DeletePage  by Daimona Eaytoy
 * - More cleanup for DeletePage by Daimona Eaytoy
 * - Clean up DeletePage by Daimona Eaytoy
 * - objectcache: Ignore "failed to set" warning from php-memcached by Timo Tijhof
 * - Simplify if-then-else-return statements with explicit true/false by Umherirrender
 * - Same code style and formatting for exists-style SQL queries by Thiemo Kreuz
 * - Simplify loops over array_keys by Matěj Suchánek
 * - pager: Simplify loop in AlphabeticPager by Thiemo Kreuz
 * - Inject services into Collation classes by DannyS712
 * - Deprecate passing Skin to LogEventsList constructor by Ammarpad
 * - Specify DB to query when checking if a user is blocked from a page by Thalia

Vendor

 * - Bump parsoid to 0.14.0-a17      by sbailey
 * - Update wikimedia/wait-condition-loop from 2.0.1 to 2.0.2  by James D. Forrester

AbuseFilter

 * - Move parser exceptions to specific namespace and rename them by Daimona Eaytoy

Babel

 * - Replace deprecated CentralIdLookup::factory for most recent version by TChin

CategoryTree

 * - Remove check for shouldForceHeaders by Fomafix
 * - Remove eslint exception rule 'no-shadow' and rename variable by Fomafix
 * - Remove @noflip workaround for T288943 by Fomafix
 * - Use CSS instead of Unicode to create triangles by Fomafix
 * - Simplify CategoryTree::capDepth by Matěj Suchánek

CentralAuth

 * - GlobalRenameBlacklist: Do not check when wgGlobalRenameBlacklist is null by Martin Urbanec
 * - Simplify user page handling in SpecialGlobalGroupMembership by Umherirrender
 * - UtilityService: drop getCentralReplicaDB by Taavi Väänänen
 * - Start to inject and use CentralAuthDatabaseManager by DannyS712
 * - Convert to UserIdentity where it is safe to use by Alexander Vorwerk
 * - Fix deleteLocalPasswords for a single user by Taavi Väänänen
 * - Drop unused property from UsersWhoWillBeRenamedPager by Matěj Suchánek
 * - Allow "0" as input on Special:GlobalUsers by Matěj Suchánek
 * - Drop unused code from GlobalUsersPager by Matěj Suchánek

ChessBrowser

 * - Mark dependency on mw-collapsible by Derk-Jan Hartman

CirrusSearch

 * - tests: Make mocked LoadBalancer return the correct types by Daimona Eaytoy
 * - UpdateWeightedTags: Fix typo by Gergő Tisza
 * - selenium: Update README.md by Željko Filipin
 * - Revert "Revert "Add support for ores drafttopic" and "Stop querying ores_articletopics"" by DCausse

ConfirmEdit

 * - Use Parser::getUserIdentity instead of ::getUser in SimpleCaptcha by Alexander Vorwerk

ContentTranslation

 * - Avoid using User::getBoolOption by Alexander Vorwerk
 * - SX Language selector: Style adjustments by Santhosh Thottingal
 * - Process validation queue for other sections on section focus by Santhosh Thottingal
 * - Update 'Uploaded media' menu link icon from logoWikimediaCommons to imageGallery by bwang
 * - purge-unpublished-drafts.php: Remove temporary migration code by Niklas Laxström
 * - SX Dashboard: Support "For later" list by NikG
 * - SX EditCompleteFeedback: Remove deprecated v-i18n-html-safe directive by NikG

DiscussionTools

 * - Fix finding topmost comment when there are 3+ highlighted  by Bartosz Dziewoński
 * - Hide top-level error when new discussion widget is open as well by David Lynch
 * - Empty states for anon/IP user talk pages  by David Lynch
 * - Hide the top-level warningbox when the new discussion widget is open by David Lynch
 * - Empty state copy changes by David Lynch
 * - EventDispatcher: Try really, really hard to read from master by Bartosz Dziewoński
 * - Improve discussiontoolssubscribe API documentation by Bartosz Dziewoński
 * - ApiDiscussionToolsSubscribe: Remove redundant checks by Bartosz Dziewoński

Echo

 * - Remove double spaces from messages by Amir Aharoni
 * - Push: Make default notification options mirror web if push is enabled by Michael Holloway

EventLogging

 * - Ignore node_modules in devserver by Martin Urbanec

FileExporter

 * - Improve test coverage of PHP code by Thiemo Kreuz

FlaggedRevs

 * - Simplify multiline wfGetDB calls by Thiemo Kreuz
 * - Drop support for checking for stable versions of files by Amir Sarabadani

Flow

 * - Remove double spaces from messages by Amir Aharoni
 * - Replace usage of deprecated CentralAuthUser::getMasterInstance by Alexander Vorwerk
 * - Fix reference to renamed abortAllApiRequests method by Kosta Harlan
 * - BoardContent: Fix deprecation warning by Martin Urbanec
 * - Replace deprecated CentralIdLookup::factory by TChin

GlobalPreferences

 * - Replace deprecated CentralIdLookup::factory by TChin

GlobalUserPage

 * - Replace deprecated CentralIdLookup::factory by TChin

GlobalWatchlist

 * - GlobalWatchlistEntryLog: fix documented property name for log id by DannyS712
 * - Storybook: use more addons by DannyS712
 * - GlobalWatchlistEntryLog: fix storing log id by DannyS712
 * - Clean up documentation output for Entry(Base|Edits|Log) by DannyS712
 * - Add initial storybook documentation by DannyS712

GrowthExperiments

 * - Mentor dashboard: Refactor checks a bit by Martin Urbanec
 * - Mentor dashboard instrumentation: Fix stream name by Martin Urbanec
 * - updateMenteeData: Send timing to statsd by Martin Urbanec
 * - Mentee overview: Reset pagination state before performing a search by Martin Urbanec
 * - Fix Azerbaijani translation for Special:WelcomeSurvey by Martin Urbanec
 * - ImageRecommendation: Add task type and supporting infrastructure by Kosta Harlan
 * - Mentee overview: Fix positioning of info icon headline by Martin Urbanec
 * - Mentee overview: Fix h3 color by Martin Urbanec
 * - Mentor dashboard: Add space below h3 by Martin Urbanec
 * - Mentor dashboard: Add filter: Fix submit button label by Martin Urbanec
 * - Instrument Special:MentorDashboard by Martin Urbanec
 * - WikiPageConfigWriterFactory: Steal maintenance user if needed by Martin Urbanec
 * - Mentor dashboard: Set line height to 20px by Martin Urbanec
 * - Mentee overview: Registration column should not wrap by Martin Urbanec
 * - Mentor dashboard: Add subheader style by Martin Urbanec
 * - Mentee overview: Fix border-radius by Martin Urbanec
 * - Mentee overview: Fix spacing in info icon by Martin Urbanec
 * - fixLinkRecommendationData: stay under 10K search limit by Gergő Tisza
 * - fixLinkRecommendationData: Allow --db-table in dry-run mode by Gergő Tisza
 * - Mentor dashboard: Increase header font size by Martin Urbanec
 * - Add a link: Return to the first suggestion when reviewing again by MewOphaswongse
 * - Add special page aliases for three languages   by Martin Urbanec
 * - Homepage: Remove Start module and task modules by Kosta Harlan

intersection

 * - build: Updating path-parse to 1.0.7 by libraryupgrader

Math

 * - Allow rendering of $$0$$ by physikerwelt (Moritz Schubotz)
 * - build: Updating path-parse to 1.0.7 by libraryupgrader

MediaSearch

 * - Remove discrepancies between the PHP and the JS result markup by Simone This Dot
 * - Fix MediaSearch wiki i18n language error handling. by seddon
 * - Implement Unit test for Resultscomponent by Simone This Dot

MobileFrontend

 * - selenium: Update wdio-mediawiki by sahil

MultimediaViewer

 * - Err: param required cant be empty/0 ThumbnailWidth by seddon

NavigationTiming

 * - Remove RUM Speed Index. by Peter Hedenskog

Nuke

 * - build: Updating path-parse to 1.0.7 by libraryupgrader
 * - Use the new Hook system by Alexander Vorwerk

ORES

 * - Avoid using User::getBoolOption and ::getOption by Alexander Vorwerk

PageTriage

 * - First try to get the ores model id before trying to upsert in tests by Amir Sarabadani
 * - Revert "Update backbone.js and underscore.js" by Kunal Mehta

Popups

 * - Adjust previews to meet specifications by jdlrobson
 * - Handle clipped blockquote by adding blockquote fade out effect by bwang
 * - Design spec dimensions should be documented in storybook by jdlrobson
 * - selenium: Upgrade WebdriverIO to v7 by sahil

ProofreadPage

 * - Fixes exception thrown by FilePagination::getPageNumber by Tpt
 * - build: Updating path-parse to 1.0.7 by libraryupgrader
 * - Override ContentHandler::preloadTransform instead of Content::preloadTransform. by Roman Stolar

QuickSurveys

 * - build: Update 'stylelint-config-wikimedia' and lint styles by jdlrobson
 * - Use wvui checkbox inside QuickSurveys by jdlrobson

ReadingLists

 * - Remove double spaces from messages by Amir Aharoni

Score

 * - Use a ScopedCallback to simplify cleaning up the $factoryDirectory by Kunal Mehta
 * - build: Updating path-parse to 1.0.7 by libraryupgrader
 * - Fix score-audio-alt message showing up if preceded by colon by Kunal Mehta

Scribunto

 * - build: Updating path-parse to 1.0.7 by libraryupgrader

SecurePoll

 * - Fix filtering of users who already voted by Tim Starling
 * - sendMail.php improvements by Tim Starling
 * - build: Updating path-parse to 1.0.7 by libraryupgrader
 * - Convert inline logging on ListPage to a job by STran
 * - Write results of cli tally to the database by STran
 * - tallyPage: Redirect after submitting job by Sam Smith
 * - Manually implement array_unique by STran

SpamBlacklist

 * - build: Updating path-parse to 1.0.7 by libraryupgrader

TemplateData

 * - Make all tests use dummy language qqx instead of en by Thiemo Kreuz
 * - Dramatically improve performance of random string generator by Thiemo Kreuz
 * - Fix several type hints in JavaScript code by Thiemo Kreuz

Thanks

 * - build: Updating path-parse to 1.0.7 by libraryupgrader

TheWikipediaLibrary

 * - build: Updating path-parse to 1.0.7 by libraryupgrader

TimedMediaHandler

 * - Fix reading of ogg comment values containing = by Derk-Jan Hartman

timeline

 * - Delete temporary files by Sébastien Beyou

TocTree

 * - Remove eslint exception rule 'no-jquery/no-sizzle' and update JavsScript by Fomafix

Translate

 * - Special:PageTranslation: Require tags on the latest version for marking  by Niklas Laxström
 * - Special:PageTranslation: tpt-badtitle expects a parameter by Niklas Laxström
 * - BackportTranslationsMaintenanceScript: Add more filters and improve output by Niklas Laxström
 * - build: Updating path-parse to 1.0.7 by libraryupgrader
 * - ManageGroupSynchronizationCacheActionApi: Fix incorrect documentation by Abijeet
 * - Add NotEmptyValidator by Abijeet
 * - SpecialTranslate: Fix validation for target language code by Abijeet
 * - Mark page display title to be translatable by default by Abijeet
 * - TranslationPage: Add dir/lang attribute for outdated translation header by Abijeet

TwoColConflict

 * - Replace all hard-coded references to the User class by Thiemo Kreuz
 * - Use UserIdentity instead of User in SplitTwoColConflictHelper by Thiemo Kreuz
 * - Use UserIdentity instead of User in TwoColConflictContext by Thiemo Kreuz

UploadsLink

 * - Define an icon so the UploadsLink displays properly in Vector's user menu by bwang

UrlShortener

 * - Drop newbie RateLimit and make user more strict by Amir Sarabadani
 * - Rename the ratelimit group from user to user-global by Amir Sarabadani

VisualEditor

 * - Remove some stylelint rules not needed anymore by WMDE-Fisch
 * - Correct focus handling when adding undocumented parameters by Thiemo Kreuz
 * - Add/simplify assertions in transclusion outline related code by Thiemo Kreuz
 * - Add missing qqq parameters by WMDE-Fisch
 * - Add rather complex QUnit tests for transclusion outline code by Thiemo Kreuz
 * - More test cases for more complex template dialog functionality by Thiemo Kreuz
 * - More complete top-level part selection support in new sidebar   by Thiemo Kreuz
 * - Allow selecting top-level parts in the new sidebar  by Thiemo Kreuz
 * - Tests for some trivial but critical template model methods by Thiemo Kreuz
 * - ve.ce.MWHeadingNode: Fix Uncaught TypeError: this.root is null by Bartosz Dziewoński
 * - Remove wikitext buttons from the content view by Andrew Kostka
 * - Move small code snippets into …OutlineParameterSelectWidget by Thiemo Kreuz
 * - Cleanup feature flags in ve.ui.MWParameterPage by Andrew Kostka
 * - Remove unnecessary title parsing from template related code by Thiemo Kreuz
 * - Use spec label for template link generation by WMDE-Fisch
 * - Basic cursor key support in new template dialog sidebar by Thiemo Kreuz
 * - Make sure params is an array by Alexander Vorwerk
 * - Remove not needed boilerplate from QUnit tests by Thiemo Kreuz
 * - build: Updating npm dependencies by libraryupgrader
 * - Add message on multipart content by WMDE-Fisch
 * - ApiVisualEditorEdit: data-{plugin} is not multi by Kosta Harlan
 * - More test cases for MWTransclusionOutlineContainerWidget by Thiemo Kreuz
 * - Add test for ve.ui.MWParameterCheckboxInputWidget by Thiemo Kreuz
 * - More meaningful assertions for all outline part widgets by Thiemo Kreuz
 * - Add basic QUnit tests for all transclusion outline classes by Thiemo Kreuz
 * - Minor cleanups to new add parameter input widget by Thiemo Kreuz
 * - Added new input page for undocumented parameters by Svantje Lilienthal
 * - Add a first trivial PHPUnit test by Thiemo Kreuz

Wikibase

 * - tests: minor chanages to allow typehint additions in core by Daimona Eaytoy
 * - selenium: Delete webdriverio from wikibase-tainted-ref by Željko Filipin
 * - Add API integration tests for namespace default content models by Lucas Werkmeister
 * - Rename WikibaseRepo.FederatedProperties.entitytypes.php by rosalie
 * - Test that APIs return normalized data values by Lucas Werkmeister
 * - Return normalized snaks from SetClaim, SetReference by Lucas Werkmeister
 * - FP: Test saving local statements with feddy props by tzhelyazkova
 * - FP: Prefetch only federated properties in FederatedPropertiesEntityParserOutputGenerator by tzhelyazkova
 * - Use wfArrayPlus2d to merge definitions arrays by Lucas Werkmeister
 * - Set EntityHandler::generateHTMLOnEdit to false by Amir Sarabadani

WikibaseLexeme

 * - Don’t use array_merge_recursive to merge entity types by Lucas Werkmeister

WikibaseLexemeCirrusSearch

 * - Use wfArrayPlus2d to merge definitions arrays by Lucas Werkmeister

WikibaseMediaInfo

 * - selenium: Update wdio-mediawiki by sahil

WikibaseQualityConstraints

 * - Fix regex checking using preg_match  by Lucas Werkmeister
 * - Remove double spaces from messages by Amir Aharoni
 * - build: Updating path-parse to 1.0.7 by libraryupgrader

WikidataPageBanner

 * - Use $.on( 'load' ) instead of $.load by Lucas Werkmeister
 * - build: Updating path-parse to 1.0.7 by libraryupgrader

WikiLove

 * - build: Updating path-parse to 1.0.7 by libraryupgrader

WikimediaEditorTasks

 * - Replace deprecated CentralIdLookup::factory by TChin

WikimediaIncubator

 * - build: Updating path-parse to 1.0.7 by libraryupgrader

WikimediaMessages

 * - Remove double spaces from messages by Amir Aharoni
 * - build: Updating path-parse to 1.0.7 by libraryupgrader

Wikisource

 * - build: Updating path-parse to 1.0.7 by libraryupgrader

CologneBlue

 * - Omit template directory by jdlrobson

MinervaNeue

 * - Allocate space for mw-ui-button to grow by jdlrobson
 * - build: Updating npm dependencies by libraryupgrader

Modern

 * - Omit template directory by jdlrobson

MonoBook

 * - build: Updating path-parse to 1.0.7 by libraryupgrader

Vector

 * - Correct positioning of search icon before WVUI loads by Nicholas Ray
 * - Template directory is set in skin.json by jdlrobson
 * - Improve readability of anon user menu for screenreaders by bwang
 * - Remove user links feature flag by Clare Ming
 * - Do not show create account link for private wikis. by Clare Ming
 * - Add title attributes to menu icons on hover by Clare Ming
 * - Replace deprecated CentralIdLookup::factory by TChin
 * - build: Updating npm dependencies by libraryupgrader
 * - Add imageGallery icon for UploadsLink and ContentTranslation menu links by bwang
 * - Update vector menu hide dropdown class to use BEMish convention. by Clare Ming
 * - [refactor] Clean up responsive handling by jdlrobson

WikimediaApiPortal

 * - Remove call to text on string. by Cindy Cicalese

No Changes

 * GeoData
 * OATHAuth
 * ArticleCreationWorkflow
 * ContactPage
 * SandboxLink
 * ParserFunctions
 * wikihiero
 * Renameuser
 * Calendar
 * AntiSpoof
 * RSS
 * 3D
 * DoubleWiki
 * MapSources
 * ExtensionDistributor
 * Linter
 * Poem
 * GlobalBlocking
 * FileImporter
 * FundraiserLandingPage
 * RevisionSlider
 * LandingCheck
 * TemplateStyles
 * BetaFeatures
 * CharInsert
 * Collection
 * Newsletter
 * Capiunto
 * SyntaxHighlight_GeSHi
 * WebAuthn
 * UploadWizard
 * CongressLookup
 * IPInfo
 * BounceHandler
 * Kartographer
 * EntitySchema
 * ApiFeatureUsage
 * OAuth
 * WikibaseCirrusSearch
 * Nostalgia
 * InputBox
 * WikiEditor
 * Cognate
 * Graph
 * OpenStackManager
 * PoolCounter
 * InterwikiSorting
 * Wikidata.org
 * TorBlock
 * NearbyPages
 * MachineVision
 * CentralNotice
 * CreditsSource
 * TemplateWizard
 * Gadgets
 * UniversalLanguageSelector
 * Josa
 * LiquidThreads
 * Listings
 * GuidedTour
 * ActiveAbstract
 * PropertySuggester
 * ElectronPdfService
 * MassMessage
 * PageAssessments
 * EventBus
 * Insider
 * PdfHandler
 * LdapAuthentication
 * SearchExtraNS
 * SubpageSortkey
 * CodeReview
 * ExternalGuidance
 * CodeEditor
 * GeoCrumbs
 * WikimediaEvents
 * XAnalytics
 * LoginNotify
 * StopForumSpam
 * JsonConfig
 * PagedTiffHandler
 * PageImages
 * GettingStarted
 * CommonsMetadata
 * Timeless
 * TextExtracts
 * TitleBlacklist
 * GWToolset
 * WikimediaApiPortalOAuth
 * VipsScaler
 * TrustedXFF
 * CiteThisPage
 * TranslationNotifications
 * Citoid
 * PageViewInfo
 * DonationInterface
 * DynamicSidebar
 * Dashiki
 * EventStreamConfig
 * Quiz
 * LabeledSectionTransclusion
 * UserMerge
 * ArticlePlaceholder
 * Disambiguator
 * cldr
 * MobileApp
 * OAuthRateLimiter
 * DismissableSiteNotice
 * CheckUser
 * Cite
 * FeaturedFeeds
 * SecureLinkFixer
 * AdvancedSearch
 * WikimediaMaintenance
 * Campaigns
 * LocalisationUpdate
 * SubPageList3
 * GlobalUsage
 * FundraisingTranslateWorkflow
 * GlobalCssJs
 * ShortUrl
 * TemplateSandbox
 * RelatedArticles
 * Elastica
 * ImageMap
 * PageNotice
 * MediaModeration
 * CodeMirror
 * NewUserMessage
 * GoogleNewsSitemap
 * SiteMatrix
 * Interwiki
 * VisualEditor
 * WikimediaBadges

Total Changes
295 Changes in 65 repos by 60 authors