MediaWiki 1.32/wmf.5/Changelog

Core changes

 * - mediawiki.page.gallery: Improve documentation
 * - Replace HTTP by HTTPS
 * - Job: Remove insert and batchInsert, deprecated since 1.21
 * - Add support for Tachawit (Latin script) (shy-latn)
 * - Use LinkRenderer instead of deprecated Linker in LogPage
 * - registration: Validate AutoloadNamespaces keys have trailing \
 * - Don't require trailing slash in PSR-4 autoloader directory
 * - mediawiki.api: Merge modules into one
 * - Reduce impact of revision day/month/year variables on edit stashing
 * - filebackend: Fix undefined 'req_params' context in FileOperation log
 * - registration: Perform extra validation for mediawiki.org URLs
 * - resourceloader: Add test case for ResourceLoader::getLessCompiler
 * - Re-enable MediaWiki.Usage.AssignmentInReturn.AssignmentInReturn sniff
 * - Re-enable MediaWiki.Usage.SuperGlobalsUsage.SuperGlobals sniff
 * - Autofix MediaWiki.Commenting.FunctionComment.SpacingDoc* errors
 * - Re-enable Generic.Files.OneObjectStructurePerFile sniff
 * - resourceloader: Apply safemode to startup module registry
 * - Document nodata for HTMLFormFields
 * - makeCollapsible: Remove animations
 * - resourceloader: Simplify mwLoadEnd hook implementation
 * - Change a.external padding from 15px to 13px to match Vector
 * - Add Special:PasswordPolicies
 * - Avoid unnecessary WaitConditionLoop delays in ChronologyProtector
 * - Remove else from UserGroupMembership
 * - Special:Preferences: Construct fake tabs to avoid FOUC
 * - Use redirect=no in whatLinksHere if the target is a redirect
 * - Remove everything related to CollationFa
 * - Add ct_tag_id field to change_tag table
 * - Special:PrefixIndex: Convert to OOUI
 * - Use .json extension for OOUI source maps
 * - Special:AllPages: Overriding the title for form submission
 * - API: Use User::getCanonicalName when validating user names
 * - Enable a bunch of disabled phan checks that are no longer failing
 * - Enable "PhanTypeInvalidRightOperand" phan checks
 * - Enable "PhanUndeclaredVariable" phan check
 * - Fix improper parameters to ReflectionMethod::invoke
 * - resourceloader: Refactor CSP $nonce passing
 * - ApiCSPReport: Fix undefined $userAgent variable
 * - makeCollapsible: Add test for nested collapsibles
 * - resourceloader: Make various CSSMin performance optimizations and cleanups
 * - mw.special.changeslist.enhanced: Remove special case handled by jquery.makeCollapsible now
 * - CSSMin: Do not escape U+FFFD as code point
 * - resourceloader: Allow style-only modules to have deprecation warnings
 * - objectcache: add BagOStuff comment additions about access scope
 * - jquery.spinner: Remove obsolete IE8 support
 * - jquery.spinner: Move files to their own src/ directory
 * - mediawiki.special.watchlist: Combine visitedstatus module
 * - mediawiki.special: Combine various tiny specialpage style modules
 * - API: Introduce "templated parameters"
 * - Names.php: Remove U+200E after autonym of language 'lki'
 * - Preferences: Fix timezone selectors
 * - parser: Don't unnecessarily add and remove a pipe
 * - Make Special:TrackingCategories sortable
 * - Deduplicate archive.ar_rev_id
 * - mw.widgets.datetime.DateTimeInputWidget: Increase width
 * - Add missing __METHOD__ to onTransactionPreCommitOrIdle caller
 * - installer: Don't shell out if it's disabled
 * - registration: Improve duplicate config setting exception
 * - Populate externallinks.el_index_60 and drop default
 * - Deprecate overriding SearchEngine::search*
 * - Special:PrefixIndex: Fix regression on prefix input value
 * - Add checkbox in Special:ListUsers to display only users in temporary user groups
 * - Minor fixes to CRH language conversion.
 * - resourceloader: avoid use of $.globalEval in mediawiki.js
 * - tablesorter: be more specific about reserving space for header cells
 * - Strip Unicode 6.3.0 directional formatting characters from title
 * - Strip soft hyphens (U+00AD) from title
 * - Make internal search methods private for db implementations
 * - tablesorter: test for data-sort-value on children
 * - Fix documentation of InfoAction::pageInfo
 * - Define pt as fallback for tet

Vendor
No vendor changes

AbuseFilter

 * - Fix AbuseFilter SQLite schema

AdvancedSearch

 * - Remove misplaced dependency on …-inlanguage-default message
 * - Remove misplaced dependency on ClassesForDropdownOptions mixin
 * - Move misplaced icon dependencies to NamespaceFilters module
 * - Remove unused oojs-ui.styles.icons-wikimedia icon set
 * - Reset box-shadow on customized
 * - Fix FOUC by explicitely specifying dependency order on .less files
 * - Fix @covers tag in SearchnamespaceTokenModuleTest
 * - Fix formatSizeConstraint function documentation
 * - Add test for uncovered SearchnamespaceTokenModule
 * - Move default namespace preset to the front
 * - Reduce visual jumps while the JavaScript is loaded

AntiSpoof

 * - Add phan-taint-check-plugin

ArticleCreationWorkflow

 * - Add phan-taint-check-plugin

CentralAuth

 * - Add PLURAL support to some messages
 * - Clarify documentation for --userlist in attachAccount.php
 * - Minor escaping fixes for phan-taint-check
 * - Make Special:GlobalAccount alias for Special:CentralAuth

CirrusSearch

 * - Utilize EmptyResultSet where appropriate
 * - Statically reference PrefixFeature from CirrusSearch

Cite

 * - Remove reference to archived InlineEditor
 * - Don't expect objects by reference in hook handlers

Cognate

 * - Introduce CognateServices and static helper methods
 * - Add more strict type hints to hook handlers
 * - Update @license tags according to SPDX version 3
 * - Add PHPUnit4And6Compat to fix tests
 * - Add @covers tags to CognateIntegrationTest

ConfirmEdit

 * - Move "can user skip captchas" check to own function

ContentTranslation

 * - Fix PHP notice: Undefined index CX_CATEGORY_METADATA
 * - CX2: Update selected MT engine status on MT failure
 * - Fix mistake in 84caceee that causes exceptions with MT card
 * - Refactor the mw.cx.visualEditor RL module to logical groups

CreditsSource

 * - Allow limit on SimpleSourceWork::newFromPageId

Echo

 * - Follow-up 8b84ed2a3: fix eslint failure that snuck in somehow
 * - Use static newFromID instead of loadFromID

EducationProgram

 * - Improve type hints on previously unspecified arrays

EventLogging

 * - ext.eventLogging.subscriber: Document randomTokenMatch as public

FileImporter

 * - Helper function to create File/TextRevision in ImportDetailsTest
 * - Replace (abandoned) ApexTheme with BlankTheme
 * - Remove redundant ImportDetails constructor argument
 * - Remove unused parameter defaults and unused method parameters
 * - Revert "Add backwards compatibility for not yet released core change"

FlaggedRevs

 * - Fix typo from returning string

Flow

 * - Translate namespaces into Ingush
 * - Replace .parent with .super
 * - Fix ConfirmEdit test
 * - Remove no-longer existing method from Flow target
 * - Fix position of inspectors/context inside dialogs
 * - option to dump by range of workflow ids b36-encoded
 * - Add required names to toolbar groups

GeoData

 * - Add phan-taint-check-plugin
 * - Fix table creation via installer

GoogleNewsSitemap

 * - Use HTTPS for mediawiki.org URL in extension.json

InterwikiSorting

 * - Add phan-taint-check-plugin

Kartographer

 * - Add PHPDoc documentation to all non-trivial public methods
 * - Add missing documentation on protected methods
 * - Update WikimediaUI Base to v0.10.0
 * - Fix padding in maps dialog
 * - Remove default "return true" from hook handlers
 * - Separate input data and write-only ParserOutput in TagHandler
 * - Heavily narrow method interfaces in TagHandler
 * - Add missing semicolon to CSS
 * - Fix missing …LangCode property declarations in TagHandler
 * - build: Extend 'svgmin' options and amend
 * - Maps-VisualEditor: Improve loading behavior in the edit dialog
 * - Leaflet buttons to follow design guidelines
 * - Adjust sidebar items' width to prevent horizontal scrollbar

LoginNotify

 * - Add phan-taint-check-plugin

MassMessage

 * - Remove deprecated dieUsage methods
 * - Simplify escaping of params for massmessage-badhtml

Math

 * - Serve png mode from mathoid
 * - Throw InvalidArgumentException when validating/formatting null
 * - Don't expect objects by reference in hook handlers

MobileFrontend

 * - VisualEditorOverlay: don't show leave-confirm dialog after saving
 * - Tweak styles for editor switcher dropdown's handle
 * - Fix layout of editor switcher dropdown

Newsletter

 * - Really remove jshint and jscs and keep only eslint
 * - Shift from jshint to eslint

Nuke

 * - Add autofocus to Special:Nuke target field

OATHAuth

 * - Use interface for typehinting

ORES

 * - ThresholdLookup: Make raw threshold data from cache accessible
 * - Fix typo in default goodfaith config
 * - Don't expect objects by reference in hook handlers

ParserMigration

 * - Add phan-taint-check-plugin

Popups

 * - Add missing "public" visibility in PopupsHooks.php
 * - Remove comments from json file - won't pass scap's json lint

ProofreadPage

 * - Wait for the page image loaded before initializing zoom
 * - Properly escape "proofreadpage_image_message" message
 * - Recto/verso numbering through

QuickSurveys

 * - Add Catalan translation

RevisionSlider

 * - Change title of revision slider to "Browse history interactively"
 * - Change "Comment" label to "Edit summary"

Score

 * - Fix indentation of \midi block

Thanks

 * - Add phan-taint-check-plugin

TwoColConflict

 * - Add phan-taint-check-plugin
 * - build: Extend 'svgmin' options and move to 'minify' task

UniversalLanguageSelector

 * - Updates jquery.uls to upstream
 * - build: Bring SVGO optimization to build step
 * - Update jquery.ime from upstream
 * - Update jquery.uls from upstream
 * - Avoid unnecessary closure

UploadWizard

 * - Merge most of UploadWizard's modules into one

VisualEditor

 * - Make options actually optional as documented
 * - Temporarily disable broken ref tools in CollabTarget
 * - $.isEmptyObject -> ve.isEmptyObject
 * - DesktopArticleTarget: on escape close toolbar dialogs first
 * - Update VE core submodule to master (511911451)
 * - MWSaveDialog: Display of limit behavior unified with old editor
 * - Import button for CollabPad
 * - Use same padding across skins for external links
 * - Follow-up I2a49315d0: Fix right padding of active external links
 * - MWInternalLinkAnnotation: test fragment behavior
 * - dm.MWInternalLinkAnnotation: account for ? in fragment
 * - Add commentAnnotation to CollabTarget toolbar
 * - Update VE core submodule to master (1d341ca7d)
 * - Fix position of inspectors/context inside dialogs
 * - MobileArticleTarget: fix deprecated toolbar calls
 * - Use getAuthorNames
 * - Fix ve.ce.MWTransclusionNode#filterRendering to work with non-element nodes
 * - CategoriesPage: Remove unnecessary input widget width
 * - CollabTarget: remember current name, briefly
 * - MobileArticleTarget: Show both edit modes in edit switcher, for consistency
 * - CollabTarget: set name to logged in MW user
 * - Fix typo in API call for version number help
 * - Simplify valign code with a loop
 * - Use better align change descriptions
 * - Update VE core submodule to master (ca25f72ab)
 * - Use ve.ce.nodeFactory.createFromModel
 * - Use CE rendering for invisible templates

WikiLove

 * - Add missing dependency on module 'mediawiki.util'

Wikibase

 * - repo dispatchMaxTime default to 1 hour
 * - Warn about using namespace mix in fulltext search
 * - Add owl:disjointWith to Item and Property classes
 * - Drop term_entity_id indexes
 * - API: when validating change op make sure the edited entity is also validated
 * - Correctly set element ID in statement group view
 * - Try to use specified revision for inline editing
 * - Add missing return to SpecialModifyEntity

WikibaseLexeme

 * - ChangeOpAddForm: Name test like class
 * - Lemma change: Add dedicated removal ChangeOp
 * - LexemeTermLanguages: Use existing infrastructure
 * - Add L171081 to clearBlacklistedLexemes
 * - Lexeme term languages: codes beyond MW default
 * - Handle invalid lexemeId in data when using wbeditentity new=form
 * - Lemma validation: language covered in deserializer
 * - Use the same language validation for representations and lemmas
 * - Use ChangeOps consistently throughout API
 * - Simplify and streamline theme overrides in tests
 * - Remove slow assertEquals from StorageLexemeSerializerTest
 * - FormStore: Test loading lexeme with zero-revision

WikibaseQualityConstraints

 * - Use “should” instead of “must”
 * - Add 'integer' constraint

WikimediaMessages

 * - wikidata-copyright, include the lexeme namespace
 * - Add Catalan translation for performance perception survey

MinervaNeue

 * - Intercept desktop editor links

MonoBook

 * - Make echo numbers appear on mobile
 * - Fix ?debug=1 mode for resources
 * - Mobile - reorganise and clean up p-personal js dropdown
 * - Responsive support: Echo hacks
 * - Responsive support, JS edition
 * - Responsive support, noJS version

Timeless

 * - Move copyright and credits in seperate line of footer
 * - Make Timeless aware of OOUI multiselect widgets
 * - Fix selflink styles

Vector

 * - Upgrade mediawiki/mediawiki-phan-config to 0.2.0