MediaWiki 1.35/wmf.22/Changelog

Core changes

 * - Include wmf/1.35.0-wmf.22 submodules and Defines.php
 * - Forgot to include the deprecation version
 * - SiteConfiguration: Optimise getAll and doReplace loops
 * - Reduce usage of the Language class
 * - TemplateParser: Make cache value include metadata
 * - objectcache: make ObjectCache::newFromParams defaults more consistent
 * - Add a maintenance script to block a list of users
 * - Add unit tests for SiteConfiguration extraction with nested strings
 * - Make use of PHPUnit's assertCount feature where possible
 * - rdbms: support native batched replace in DatabaseSqlite
 * - Fix: Add title property to search form
 * - build: Remove unused 'jpeg-js' npm dev dependency
 * - skins: Soft deprecate `SkinTemplate::getNameSpaceKey` method
 * - skins: Soft & hard deprecate `SkinTemplate::makeArticleUrlDetails`
 * - skins: Remove deprecated Skin::escapeSearchLink
 * - skins: Soft & hard deprecation must have same MW version number
 * - PHPVersionCheck: Refactor triggerError to be easier to understand
 * - The PHP Group stopped supporting 7.1 in late 2019
 * - Add standard `box-shadow` to `sticky` preferences button row
 * - skins: Remove deprecated method Skin::getSkinNameMessages
 * - Remove Revision::loadFromId, deprecated and unused
 * - Remove various unused AjaxResponse methods
 * - DEVELOPERS.md: Remove reference to Docker/Recipes
 * - [docker] Set log directory by default
 * - skins: Remove incorrect comment about msgWiki deprecation
 * - rdbms: Avoid using reserved word "host" in Monolog context keys
 * - profiler: Remove support for $wgDebugLogGroups['profileoutput']
 * - Remove unused variables from closure use lists
 * - mw.Api: Add utility function for asserting the current user
 * - Hard deprecate Revision::countByTitle
 * - Hard deprecate Revision::countByPageId
 * - Hard deprecate Revision::loadFromTitle
 * - Generalise skin preferences so it can be used by Monobook
 * - Special:RecentChanges: Add `aria-label` to MenuSelectWidget
 * - Split FakeMaintenance and LoggedUpdateMaintenance to their own files
 * - Remove unreachable null checks after isset
 * - Replace weird stdClass mock with class actually expected
 * - htmlform: Fix unnecessary scrollbar for OOUI HTMLCheckMatrix
 * - [CSS] [Special:Preferences] Remove redundant OOUI override
 * - mediawiki.util: addPortletLink fires hook for Minerva UX support
 * - edit: Fix assumption #wpSummary is always there
 * - filerepo: Add and fix visibility keywords in ArchivedFile
 * - Improve documentation in editwarning script
 * - BlockErrorFormatter: Use language-specific comma separators
 * - Deprecate requiring a right in LogEventsList::typeAction
 * - Annotate hook parameters that are references for legacy reasons.
 * - Hard deprecate LogEventsList::getExcludeClause $wgUser fallback
 * - Cleanup various calls to IDatabase::upsert
 * - htmlform: Remove padding override
 * - include blob: as a default script-src
 * - MediaWiki-Docker: document how to use Vector skin
 * - Convert JobRunner into a service and use DI
 * - TemplateParser: Document and normalize exceptions
 * - SpecialWhatLinksHere: Display section anchor for redirects
 * - tests: Replace a very long string with str_repeat
 * - OutputPageBeforeHTML: Fix class of first parameter in docs
 * - Update OOUI to v0.37.0
 * - Update oojs to v3.0.1
 * - Special:Preferences: Split the unknown/neutral gender into label and help
 * - mediawiki.ui: Match button padding/line-height to inputs & OOUI
 * - editpage: Set tab index on "Cancel" button that follows the other buttons
 * - sqlite: Fix broken integration tests for SQLite db driver
 * - mediawiki.jqueryMsg: Add bi-di support
 * - rdbms: extend PRAGMA support in DatabaseSqlite to include "temp_store"
 * - sitestats: cleanup use of upsert by removing the key column from SET
 * - Remove $wgAllowTitlesInSVG, deprecated and unused
 * - Hard deprecate Title::getUserPermissionsErrors
 * - Hard deprecate RecentChange::markPatrolled
 * - apisandbox.js: fix PARAM_MAX2 handling
 * - docs: Add missing BeforeResetNotificationTimestamp hook and MediaWikiPHPUnitTest::*
 * - Add missing colons to parameter declarations
 * - Remove mediawiki.template.regexp module
 * - [doc] [JavaScript] [Special:Preferences] Clarify selector
 * - Increase PHP requirement from 7.2.9 to 7.2.22 due to segfault issue
 * - resourceloader: Convert mediawiki.Uri to package files
 * - debug: Remove $wgDebugTimestamps feature
 * - Avoid using deprecated $wgContLang
 * - stashedit: Ensure that $summary is a string
 * - resourceloader: Add more granular phan type information in various classes
 * - Use wl_id to loop through watchlist in cleanupWatchlist.php
 * - Use wl_id to loop through watchlist in cleanupWatchlist.php

Vendor

 * - Updating firebase/php-jwt (v5.0.0 => v5.1.0)
 * - Updating symfony/polyfill-php73 (v1.13.1 => v1.14.0)
 * - Updating spomky-labs/cbor-php (v1.0.7 => v1.0.8)
 * - Updating ramsey/uuid (3.9.2 => 3.9.3)
 * - Update OOUI to v0.37.0
 * - Add pear/net_url2 at 2.2.2

AbuseFilter

 * - Add a maintenance script to clean afl_var_dump
 * - Add fixOldLogEntries to update.php
 * - Start using new format for var dumps
 * - Stop using the Revision class
 * - ViewEdit: add af_id to the row
 * - Remove old number syntax
 * - Remove dependency on $wgRestrictionTypes
 * - Replace usage of deprecated Page in favor of WikiPage/Article
 * - Add string typehint to $summary in onParserOutputStashForEdit
 * - Factor out get(Local|Global)Filters methods

AdvancedSearch

 * - Improve param docs

AntiSpoof

 * - Soft deprecate AntiSpoof::checkUnicodeString and SpoofUser::getError
 * - Remove unused code, mark code as private, update type hints

Babel

 * - Use static PHP arrays instead of CDB

BetaFeatures

 * - Follow-up 56e2bbbbe: Fix this for VisualEditor, too
 * - Avoid crashing when a feature is hidden with $wgHiddenPrefs
 * - Clean up server-client transmission of blacklist

CheckUser

 * - Updating firebase/php-jwt (v5.0.0 => v5.1.0)
 * - PagerFactory: Make return types more specific
 * - Fix whitespace in CompareServiceTest
 * - Add highligting on hover to Special:Investigate results tables

Citoid

 * - Remove unnecessary local variables
 * - Don't show convert message if 'auto' mode is not available

CodeMirror

 * - CodeMirror: Add COPYING file and credit for CodeMirror authors
 * - Don't let CodeMirror set the font to monospace if it's set on an ancestor.
 * - Unify monospace font stack. Avoid potential sizing bug caused by weird browser behavior with `font-family: monospace;`
 * - Add comment to make usage of jquery.ui module discoverable

Collection

 * - Replace usage of deprecated Page in favor of WikiPage/Article

ConfirmEdit

 * - Don't use logging reserved word 'ip' as parameter

ContentTranslation

 * - CX Dashboard: New version in Vue - Framework
 * - Add `box-shadow` to `sticky` translation filter bar to emphasize scrollability
 * - Updating firebase/php-jwt (v5.0.0 => v5.1.0)
 * - Stop using deprecated AbuseFilter methods

CreditsSource

 * - Update comments, remove minor pieces of dead code

DiscussionTools

 * - Parse Parsoid document as XHTML to avoid IE 11 bugs
 * - modifier: Fix IE 11 incompatibility due to 'parentElement'
 * - Work around mw.Uri crash on fallback encoding in links
 * - ReplyWidget: Disable "Reply" button if input is empty
 * - Correct the integration for logging
 * - Replace deprecated Language class properties with constants
 * - Clean up the interface after discarding a reply
 * - Instrumentation: abort-navigate case

Echo

 * - Improve param docs

EventBus

 * - REST Api-Testing: Fix job definition to avoid PHP warnings
 * - REST endpoint for executing jobs

Flow

 * - RecentChangesListener: Remove use of deprecated save(noudp=false)
 * - Improve param docs
 * - Assert the current user during all write operations
 * - Declare missing dependency on mediawiki.storage
 * - Stop using deprecated AbuseFilter methods

FundraiserLandingPage

 * - Fix MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic
 * - Improve param docs

GlobalUsage

 * - Replace usage of deprecated Page in favor of WikiPage/Article

GrowthExperiments

 * - TopicSelectionWidget: Do not resize dialogs when "show more" is clicked
 * - SuggestedEdits: Use different prefs for morelike vs ORES topic filters
 * - StartEditingDialog: Don't send a flurry of requests on "select all"
 * - Improve param docs
 * - SuggestedEdits: Fix JS error when displaying end of queue card
 * - Change wmbad- prefix for topic pillbox widget
 * - TopicSelectionWidget: UI changes for ORES topics
 * - Update default reading mode namespaces
 * - Fix Invocation PHPUnit version incompatibility
 * - Avoid extra URL parameter when guidance is disabled
 * - Guidance: Add pulsing blue dot on desktop and mobile
 * - StartEditing: Handle configuration errors more gracefully
 * - Make suggested edit cards link directly to articles when there is no page ID

Jade

 * - Update extension authors
 * - Changed proposalWidget-editForm-text input to textarea
 * - Changed endorsementWidget comment font style to italic
 * - Add license file
 * - Moved popup to the right
 * - Added jade-facet-editquality-desc-popup class
 * - Fix anonymous user id in DeleteEndorsement comment
 * - Aligned jade-ui-moveendorsement-button to the right
 * - Added HorizontalLayout to move endorsement dialog button
 * - Reindex endorsement arrays on move.

JsonConfig

 * - Improve param docs

LiquidThreads

 * - Fix bad type on cancel button
 * - Fix broken CI test run
 * - Add and update many PHPDoc comments
 * - More specific exceptions in .phpcs.xml
 * - Replace use of `rc_new` field with `rc_source`
 * - More specific exceptions in .phpcs.xml
 * - Replace use of `rc_new` field with `rc_source`

LoginNotify

 * - Improve param docs

MachineVision

 * - Fix slow random unreviewed image queries

MobileFrontend

 * - build: Updating dependencies
 * - Add compatibility with Extension:NearbyPages
 * - modules: Document private method & remove excluded sniff from .phpcs.xml
 * - mobilediff: Fix added/deleted content colors to not apply inside visual diffs

MultimediaViewer

 * - Maintenance: `npm -s run lint:fix` caught some missed empty lines and spaces.
 * - metadataPanel.formatDate: Account for timezoneness

Newsletter

 * - Improve param docs

Nuke

 * - Replace usage of deprecated Page in favor of WikiPage/Article

OATHAuth

 * - Improve param docs

OAuth

 * - OAuth: Add navigation links to special pages (part three)
 * - Move TestOAuthSignatureMethod_RSA_SHA1 to anon inline class
 * - Updating firebase/php-jwt (v5.0.0 => v5.1.0)
 * - Added informative message to Special:OAuth
 * - OAuth: Add navigation links to special pages (part two)

PageTriage

 * - Improve param docs

PagedTiffHandler

 * - Replace assertEquals with strict assertSame and such

Popups

 * - build: Updating dependencies

ProofreadPage

 * - Add names for special pages on Serbian

PropertySuggester

 * - Improve param docs

RelatedArticles

 * - Improve param docs

SecureLinkFixer

 * - Updating domains.php from Mozilla

SecurePoll

 * - Fix outdated call to readDbListFile with full file path

SyntaxHighlight_GeSHi

 * - Improve param docs
 * - Syntaxhighlight: Classnames for the highlighted language

TimedMediaHandler

 * - Improve param docs

TitleBlacklist

 * - Update cache key for Unicode normalization
 * - Improve param docs
 * - Use AntiSpoof::checkUnicodeStringStatus

Translate

 * - Add HtmlTagInsertablesSuggester
 * - Add NumericalParameterValidator
 * - Improve param docs

TranslationNotifications

 * - Rename TranslationNotification to TranslationNotifications in jobs

TwoColConflict

 * - Show "please select a side" on all rows, not only the first
 * - Remove leftover switch for old ui
 * - Make sure a side is selected in all browser tests
 * - Remove remaining editwarning trigger in tests
 * - Disable editwarning in browser tests
 * - Remove extra submit flag in favor of content values
 * - Dynamic labels during column selection

UniversalLanguageSelector

 * - Simplify ext.uls.preferences module

UploadWizard

 * - Made upload comment more informative
 * - Add configuration setting for the link to all categories
 * - Removing redundant call to getWikiText.

VisualEditor

 * - Fix checkbox handling in the API
 * - NWE: Don't change editor preference if visual mode not available
 * - Update VE core submodule to master (244656506)
 * - Fix dimensions of WE2017 switch to VE
 * - Fix: non descriptive announcement of version no.

WikiEditor

 * - Add z-index: 1 to menu options
 * - Improve param docs

Wikibase

 * - Do not hold DB connections in class properties in new term store classes
 * - bridge: reorder EventEmittingButton sizes
 * - bridge: make EventEmittingButton sizes responsive
 * - bridge: Add UpdateMutationStrategy
 * - bridge: let guards respect strategy's knowledge
 * - bridge: escalate vue warnings in storybook to GUI
 * - bridge: Add StatementGroup getter to MainSnakPath
 * - bridge: maxlength as number in StringDataValue story
 * - bridge: set all props in EventEmittingButton stories
 * - bridge: make input field larger on mobile
 * - bridge: storybook hygiene
 * - bridge: allow interaction with Loading in storybook
 * - Fix bogus unique index parameter in IDatabase::upsert call
 * - docs: document slight changes to term storage
 * - Job queue integration tests for term store writers
 * - wbterms: Split new term storage cleaning into own transaction
 * - Remove unused MultiItemTermStoreWriter
 * - Remove unused WikibaseRepo::getItemTermStoreWriter
 * - bridge: remove side margins on mobile
 * - bridge: Increase bodyS font-sizes in mobile to bodyM
 * - Use LoginPage.loginAdmin instead of workaround
 * - bridge: Disable save(publish) button while in saving state
 * - SingleEntitySourceServices to use ByTypeDispatchingEntityRevisionLookup
 * - Update failed merge / modify error message.
 * - Use same user/password env vars as mw browser tests
 * - bridge: Disable cancel while saving
 * - bridge: Show progress bar while in saving state
 * - bridge: declare Statement ID as optional
 * - bridge: move and rename SnakActionErrors
 * - bridge: hint only relevant statement content in logic
 * - bridge: extract helper for creating API responses
 * - Add i18n key for failed item merge
 * - Get JobRunner from MediaWikiServices instead of instantiating one
 * - bridge: update to new component library version
 * - Do prefetching entity ids on batches of 20 entity per query
 * - docs: add missing "number" data-values library
 * - bridge: prepare for different statement mutations
 * - docs: make ADR 7 title conform with others
 * - docs: Remove link to gone extending-entities doc from index
 * - docs: remove term-store library that is no longer used
 * - Remove rootJobTimestamp from refreshLinks jobs in client
 * - Update data-values/value-view submodule
 * - Remove pre-entity source based federation globals
 * - EntityIdSearchHelper: Handle unknown repo in entity ids
 * - GetEntities: Handle unknown repo in entity ids
 * - bridge: remove vue cli from Dockerfile

WikibaseLexeme

 * - Fix mock response object structure
 * - Replace usage of deprecated Page in favor of WikiPage/Article

WikibaseMediaInfo

 * - Switch action button order for improved keyboard navigation
 * - Display existing somevalue and novalue top-level statements
 * - Fix server-side rendered HTML
 * - Implement support for monolingual text datavalue
 * - Implement support for time datavalue
 * - Remove left border and border radius on adjacent widgets
 * - Default to unsupported input type
 * - Remove "primary" class from input widget "Add" buttons
 * - Clean up pre-entity source based federation code

WikibaseQualityConstraints

 * - Replace usage of deprecated Page in favor of WikiPage/Article

WikimediaEditorTasks

 * - Adds Image Tag edit and revert counts
 * - Make conditional edit counting less magical

WikimediaEvents

 * - Add code comment warning to onResourceLoaderGetConfigVars hook
 * - Set wgWMEClientErrorIntakeURL in onResourceLoaderGetConfigVars
 * - Improve param docs

WikimediaIncubator

 * - Remove uses of global $wgUser

WikimediaMaintenance

 * - Enable Generic.Files.LineLength.TooLong and make pass
 * - Replace usage of deprecated Page in favor of WikiPage/Article

WikimediaMessages

 * - Add messages for future gr.wikimedia.org

Wikisource

 * - Improve param docs

MinervaNeue

 * - setAttribute takes a string not an array
 * - Menu items added via addPortletLinks should look like other menu items
 * - Hard-deprecate $wgMinervaCustomLogos being set
 * - Unify messages for skin specific CSS/JS overrides
 * - Remove unused 'warning' icon
 * - Reduce margin in icon and label combination
 * - PageActionsMenu: Reduce spacing between icons and text in tablet mode

MonoBook

 * - Extend documentation of CSS trick that sets the minimum content font-size to 11.43px
 * - Reveal Monobook "enable responsive design" option when skin selected

Vector

 * - Make sure Vector skin preferences always follows skin
 * - Instead of accessing $data property use set/get/html methods
 * - Replace Grunt tasks with npm scripts in package.json
 * - [Dev] processTemplate used in one place
 * - [Special:Preferences] [PHP] Add skin version user preference and configs
 * - Bump required MediaWiki version
 * - features: Add minimalist feature manager
 * - Add 'jsdoc-wmf-theme' to jsdoc