MediaWiki 1.28/wmf.21/Changelog

Core changes

 * - Add version to LoadMonitor::getCacheKey
 * - MediaWiki core messages for Livvi-Karelian (olo)
 * - Don't use Config as an access method for global objects
 * - Add missing array_keys call to scaleLoads
 * - Improve Database::factory $driver validation
 * - Document that RequestContext::setTitle's $title can be null
 * - Move most of MWCryptRand into libs
 * - wgRateLimits: Add configuration option to ignore 'noratelimit' right
 * - Set default load monitor class in LBFactoryMulti
 * - Avoid 'message' in log context in AuthManager
 * - Implement scaleLoads in LoadMonitorMySQL
 * - Update OOjs UI to v0.17.10
 * - Restore Content-Language header change from e53ff931a
 * - Fix Database IDEA warnings about callable parameters
 * - Remove cruft from interwiki.list and interwiki.sql
 * - Special:NewPages - add for "originally created as..."
 * - Add "from" to MediaWiki:Search-redirect
 * - Update wikimedia/php-session-serializer to v1.0.4
 * - Move MWCryptHash into libs/
 * - http: Use Psr\Log instead of wfDebug*
 * - Split HttpFunctions.php into separate files
 * - Remove pre-5.5 compat from MultiHttpClient
 * - Add primary key to change_tag and tag_summary tables
 * - MWException: restore prior render logic
 * - Detect/use APCu properly
 * - Update composer/semver to 1.4.2
 * - Use wikimedia/wait-condition-loop
 * - Exception rendering fixes
 * - LegacyLogger: Be consistent about converting log levels to int
 * - Fix wfLogDBError channel redirect logic
 * - Fix SectionProfileCallback type error
 * - MWExceptionHandler: Restore delegation to MWException::report
 * - database: Rename LBFactoryMW to MWLBFactory
 * - Replace deprecated `constructive` with `progressive`
 * - mw.feedback: Use standard OOjs UI dialog error handling
 * - Pass interwiki option to SearchEngine
 * - Use MAX_LOCK_TTL in RedisLockManager to avoid premature lock expiration
 * - Cleanup MemcLockManager and move it to /libs
 * - Bidi-isolate revisions count in Special:Import
 * - Move ChronologyProtector up a directory instead of being by itself
 * - MovePage: Check ContentHandler::canBeUsedOn
 * - JpegMetadataExtractor: Allow empty segments
 * - Make multi-write backend "template" config work as expected
 * - Enable deprecation warnings for WikiPage::getText
 * - RELEASE-NOTES for wikimedia/scoped-callback
 * - Use wikimedia/scoped-callback
 * - Make WikiPage::getAutosummary emit deprecation warnings.
 * - Revert "Add the main stash, WAN, and server caches to MediaWikiServices"
 * - Move DatabaseBase to a class alias for type-hints
 * - Remove test for which fails when Extension:Math is installed
 * - Don't skip tests which lack non-tidy output
 * - Replace DatabaseBase => Database in more places
 * - Make LBFactory return type docs more specific to avoid IDEA warnings
 * - Add the main stash, WAN, and server caches to MediaWikiServices
 * - rdbms: Lazy-init DatabaseDomain::getId
 * - Parser: Allow ` ` and ` ` in table of contents
 * - Fix use of bogus $params var in FileBackend::__construct
 * - registration: Improve license-name validation
 * - resourceloader: Disable ChronologyProtector to speed up wfGetLB
 * - mediawiki.UI: Align buttons to design guidelines and OOjs UI
 * - resourceloader: Avoid needless GPC normalisation
 * - Use HTTPS instead of HTTP for ietf.org URLs
 * - Clean up use of UTSysop in TemporaryPasswordPrimaryAuthenticationProviderTest
 * - Fix display of categories
 * - Add a class to the  element of the interlanguage link
 * - Avoid DBPerformance log warnings in SpecialEditWatchlist
 * - resourceloader: Fix undefined getPrefixedText
 * - Fix "Incorrect watchlist token provided" unit test errors
 * - Add @deprecated annotations to NS_IMAGE and NS_IMAGE_TALK
 * - Use getConnectionRef in WatchedItemStore
 * - Create ChangeTagsUpdate hook
 * - Lower $wgTrxProfilerLimits for JobRunner a bit
 * - mediawiki.UI: Align further greys to improved color palette
 * - Make RecentChange::addTags accept a string
 * - Use classes to apply the 'editfont' preference
 * - Emit deprecation warnings for Article::doEdit and WikiPage::doEdit
 * - Avoid multiple writes to changetags table in recentchanges_save hook
 * - Do not run exact db match if offset is > 0
 * - Create fields & data for image/file data indexing
 * - Replace DatabaseBase:: with Database:: and update type hints
 * - EditPage: Allow language of copyright warning to be specified
 * - Clean up array syntax in docs, part VII
 * - Remove a few unused variables
 * - Remove/actualize unused imports
 * - Fix function name case
 * - AuthManager phpdoc cleanup
 * - HTMLForm: Add HTMLDateTimeField
 * - Change mid-upload 'cancel' button to 'back'
 * - Remove full form of ChangeTags::buildTagFilterSelector
 * - Add new type SearchIndexField::INDEX_TYPE_SHORT_TEXT
 * - Use @lang tags for Lua scripts
 * - Move SwiftFileBackend to /libs
 * - Fix IDEA warnings in FileBackendStore
 * - Fix IDEA warning in FSFileBackend
 * - Directly use Language::factory instead of wfGetLangObj
 * - Set ignore_user_abort( true ) during DB commit for sanity
 * - Rename getSlavePos => getReplicaPos
 * - Remove unused Database::isView/clearViewsCache methods
 * - Avoid DBPerformance warnings in ApiClearHasMsg
 * - Move RedisBagOStuff to /libs
 * - Depedencency cleanups to SwiftFileBackend
 * - Minor installer/upgrader cleanups
 * - Make LoadBalancer return docs more specific about types
 * - Remove getSearchEngine from DatabaseBase
 * - Move FSFilebackend and MemoryFileBackend to /libs
 * - Clean up misuse of wfTimestampOrNull
 * - Update wfEscapeShellArg comments
 * - Avoid DatabaseBase type errors in setupDatabaseWithTestPrefix
 * - Remove wf* function usage from FSFileBackend
 * - Move FileBackendStore and FileOp classes to /libs
 * - Remove wfDebugLog dependency from FileOp classes
 * - Add HTTPFileStreamer class
 * - Revert "resourceloader: Make cache-eval in mw.loader.work asynchronous"
 * - mediawiki.js: Refactor definition of mw.log singleton
 * - action=history should return 404 if there is no such page
 * - Move FileBackendMultiWrite to /libs
 * - Add DBO_* class constants and defines.php alias the class constants
 * - Dependency cleanups to FileBackendStore
 * - SpecialRecentChanges: Allow tagfilter=tag as "subpage"
 * - Add ILBFactory interface for completeness
 * - Avoid DB_MASTER use on password checks and defer password upgrades
 * - Add alternative DB_* class constants to ILoadBalancer
 * - ScopedCallback: Fix a typo in a comment
 * - Code comment and style cleanups to MysqlLockManager
 * - Move RedisLockManager to /libs
 * - Move RedisConnectionPool to /libs/redis
 * - Make newExternalLB public to match newMainLB
 * - Move more LockManager classes to /libs
 * - Ensure users are able to edit the page after changing the content model
 * - Add IMaintainableDatabase for non-OLTP type methods
 * - Reduce queries in CategoryViewer via addGoodLinkObjFromRow
 * - Add transaction ticket to LinksUpdateComplete hook
 * - Revert "Move wfEscapeWikiText to Parser::escapeWikitext"
 * - Remove see comment
 * - Rename includes/Services to includes/services for consistency
 * - Call setTransactionTicket on DeferredUpdates sub-queue items too
 * - mw.loader: Use native Set where possible instead of string keys
 * - Simplify and clean up FileBackend exceptions
 * - Add DBConnRef sanity check to LoadBalancer::reuseConnection
 * - Fix doc typo for wasConnectionError
 * - Generalize core schema docs in DatabasePostgres
 * - Log when Message::__toString has an unexpected format
 * - Inject schema vars into DatabaseMysql
 * - Break long lines and generalize some comments in /rdbms
 * - Correct error handling for exceptions in 'user' module
 * - IcuCollation: Update comments on $tailoringFirstLetters
 * - Add HTMLFormField class for MWRestrictions and use it for bot passwords
 * - Make Database::__clone a bit more robust using handleSessionLoss
 * - Split up DBError classes into their own files
 * - Remove MediaWiki mentions from /rdbms error strings
 * - Follow-up 764cd6a1: unbreak quiet buttons
 * - Add category name in ID property for extension row in Special:Version page
 * - tests: Fix invalid @covers value in StatusTest.php
 * - Support multiple limits and arbitrary periods in account creation throttle
 * - Actually set errorLogger in Database
 * - Use ConvertibleTimestamp::convert in a few places
 * - Rename Convert*a*bleTimestamp to Convert*i*bleTimestamp
 * - time: Implement ConvertableTimestamp::now
 * - time: Implement ConvertableTimestamp::convert
 * - Move IP class to libs/
 * - Remove MimeMagic depedency from FSFile and move it to /libs
 * - Move IP::isConfigured/TrustedProxy to ProxyLookup service
 * - Migrate callers to new MWFileProps::getPropsFromPath method
 * - Make MigrateFileRepoLayout use getErrors
 * - Split out new ObjectCache::newWANCacheFromParams method
 * - Use standard exceptions in ObjectCache and always handle CACHE_NONE/"hash"
 * - Set more FakeDatabaseMysqlBase fields in __construct
 * - Fix to incorrect calls of header breaking saving some pages and login
 * - Add deprecated comment to Article::doEdit
 * - Remove dangling $wgDBmysql5 usage from DatabaseMysqli
 * - Remove old remapping hacks from Database::indexName
 * - Cleanup method visibilites in Database
 * - API: Add generator non-continuation data
 * - Check Database::mSessionTempTables in Database::tableExists
 * - Set more fields in fake DB subclasses to avoid errors
 * - mw.api.upload: Suppress default API call timeout
 * - Fix IDEA warnings in CloneDatabase
 * - Database: Behave correctly when inserting booleans
 * - Move tagging of API deletions to RC save
 * - Remove .mw-help-field-hint and -data CSS classes from mw.legacy/shared
 * - Add sanity check to LoadBalancer::setDomainPrefix
 * - Add table prefix in new MySQL tableExists
 * - Remove screen layout references in passwordreset-email* messages
 * - Set the DatabaseDomain in some tests classes for sanity
 * - Make LBFactory::waitForReplication use "domain" instead of "wiki"
 * - Fix @return of LBFactorySimple::getExternalLB
 * - ChronologyProtector: Remove unused 'use MediaWiki\Logger\LoggerFactory'
 * - Use getConnectionRef in ExternalStoreDB to avoid connection leaks
 * - Move SamplingStatsdClient into stats/ subdirectory
 * - Add some missing reuseConnection to LoadBalancer
 * - MultiHttpClient: Don't use wfArrayToCgi
 * - Avoid Wikimedia\Assert in HashBagOStuff
 * - Fix importation of weird file names in importTextFiles.php
 * - Dependency inject $wgTmpDirectory into FileBackend classes
 * - Move XMP* classes to includes/libs
 * - XMPValidate: Use ConvertibleTimestamp instead of wfTimestamp
 * - Toolbox: Mark RecentChangesLinked link as nofollow
 * - Clean up lock name in lock messages in DatabaseMysqlBase
 * - Improve lag/flag behavior and docs in LoadBalancer
 * - jsduck: Remove custom @source tag
 * - Mention the lock name in DatabaseMysqlBase lock errors
 * - mediawiki.requestIdleCallback: Avoid native window.requestIdleCallback
 * - Remove Database clone call from DatabaseTests.php
 * - Use Status::isOK method in FileDeleteForm
 * - Only send DB query profiling to MWDebug::query
 * - Add GENDER support to email and user rights toolbox links
 * - Handle links with multiple pipes correctly in edit summaries
 * - Improve Database::__destruct and add a __clone method too
 * - Fix variable name in release notes
 * - Remove OutputPage->mDebugtext
 * - API: Remove deprecated methods
 * - Disallow css attr with url type
 * - Emit deprecation warnings from Article::fetchContent
 * - Avoid TransactionProfiler notices for TEMPORARY table writes
 * - FSFile and TempFSFile cleanups
 * - Inject "srvCache" and local DB connections into LockManagerDB
 * - Move some FileBackend related classes to /libs
 * - refreshLinks: Use vslow group for DB_REPLICA connections
 * - Move wfEscapeWikiText to Parser::escapeWikitext

Vendor

 * - Update OOjs UI to v0.17.10
 * - Update wikimedia/php-session-serializer to v1.0.4
 * - Update justinrainbow/json-schema from v3.0.0 to v3.0.1
 * - Update composer/semver to 1.4.2
 * - Add wikimedia/wait-condition-loop v1.0.1
 * - Add wikimedia/scoped-callback 1.0.0
 * - Run "composer update" for wikimedia/assert URL change

AbuseFilter

 * - Use newer form of getLocalServerInstance fallback
 * - Use RecentChange::addTags rather than ChangeTags::addTags
 * - Lower stash logging to debug
 * - Implement a tree-caching abuse filter parser
 * - Modify "abusefilter-log-name" to use lowercase in "filter"
 * - Avoid global state in ContributionsToolLinks if possible

ActiveAbstract

 * - Don't use NS_IMAGE

AntiSpoof

 * - Allow the special string «NUL» to replace a literal byte \x00 on equivset.in
 * - Add some equivalences based on actual bot spam
 * - Add two equivalents for 4
 * - Adding missing equivalents for I, L, O, and S.
 * - Update Makefile

ApiFeatureUsage

 * - Use core HTMLDateTimeField
 * - Add phpcs testing

Babel

 * - Populate babel database table if it exists
 * - Remove non-existing configuration option BabelPreferISO639_3
 * - Allow reading Babel information from a central API
 * - Introduce the $wgBabelCategorizeNamespaces config variable

CategoryTree

 * - Don't use NS_IMAGE

CentralAuth

 * - Keep counts of login errors by type
 * - Use mw-ui-progressive for button classes
 * - Remove pre-1.25 API compatibility code
 * - CentralAuthForeignApi: Make promises for #ajax and #getToken abortable

CheckUser

 * - Use the ProxyLookup service if possible

CirrusSearch

 * - Split request logging out of ElasticsearchIntermediary
 * - Split error handling out of ElasticsearchIntermediary
 * - Don't use class_exists to test if the PoolCounter extension is installed
 * - Workaround asciifolding issue with preserve_original
 * - Remove UserTesting logging
 * - Remove php 5.3 compatability code
 * - Move some utility functions to Util class
 * - Fix pretty explain printer with interwiki searches
 * - Use standard query cache for interwiki, and add interwiki parsing tests
 * - Add config profiles to SearcherTest
 * - Remove per-user pool counter
 * - Switch wgCirrusSearchSimiliarityProfile to string
 * - Refactor buildSearch out of Searcher::search
 * - Consolidate query caching code
 * - Move more like functionality into keyword feature
 * - File search features for CirrusSearch
 * - Remove unused InterwikiSearcher::needNsFilter method
 * - Add BaseSimpleKeywordFeatureTest to autoloads
 * - Add query parsing tests for morelike
 * - Switch query parsing tests from Searcher to CirrusSearch class
 * - Move cluster override out of more like code
 * - Move caching TTL into SearchContext
 * - Add support for SearchIndexField::INDEX_TYPE_SHORT_TEXT
 * - Count the total hits, including duplicates, in completion suggester
 * - Record server hostname in CirrusSearchRequestSet
 * - browsertests: Report where results came from when the dont match
 * - Add timing marks to completion suggester
 * - Add a language based keyword filter
 * - Fix cindy failures

Cite

 * - Remove legacy SpecialCite.php
 * - Convert bugzilla number to phab link

CiteThisPage

 * - Rewrite to avoid messing with global state

Citoid

 * - Decode input before sending to citoid

CodeEditor

 * - Use slice instead of substring per code conventions

Collection

 * - Remove unused 'OfflineContentGenerator' submodule.

ConfirmEdit

 * - Set valid $wgRateLimits in tests
 * - Set the stream and buffer reset methods for the default backend
 * - Remove CHANGELOG.md

ContentTranslation

 * - Replace deprecated .mw-ui-constructive with .mw-ui-progressive
 * - ext.cx.source.selector: remove unused code

ContributionTracking

 * - Use DatabaseBase::factory over Database::factory

DonationInterface

 * - Fix Class undefined: TESTS_ADAPTER_DEFAULT
 * - Fix hostname under CRM
 * - Remove pre-1.25 API compatibility code

Echo

 * - i18n: Native digits on CrossWikiNotificationItemWidget
 * - Add `box-sizing` mixin
 * - Add proper QUnit tests
 * - Dropped call to WikiPage::getText
 * - Used parsed section titles for anchors
 * - Make user rights notifications link to added/removed group
 * - Fix links to sections with links in their title
 * - UnreadNotificationCounter should always normalize the count
 * - Defer cache write in EchoSeenTime::setTime
 * - Remove unused $flags parameter for EchoSeenTime::getTime
 * - jsduck: Remove custom @source tag
 * - Convert 'seenTime' to a global property

FlaggedRevs

 * - Pass new stable revision to review log for dis-approvals
 * - Fix I9839283c: new_text is actually a Content object
 * - Avoid a wfMessage call

Flow

 * - Exception fix to Converter
 * - Replace deprecated .mw-ui-constructive with .mw-ui-progressive
 * - Fix typo in sans-serif classname
 * - BoardMover: don't try to save a null edit
 * - Fix typo wiktext => wikitext
 * - Fix trivial doc error ('reply widget' => 'new topic widget')
 * - jsduck: Remove custom @source tag
 * - Remove deprecated API help methods
 * - Fix error-handling for handleSubmit

Gadgets

 * - Implement support for specifying type=styles

GeoData

 * - Use provided transaction ticket in onLinksUpdateComplete

GettingStarted

 * - Remove UnitTestsList hook subscriber
 * - Remove pre-1.25 API compatibility code

GlobalUsage

 * - Remove pointless getGlobalUsage singleton
 * - Use getConnectionRef to handle missing reuseConnection calls
 * - Use provided transaction ticket in onLinksUpdateComplete

GlobalUserPage

 * - Clean up remote parsing of wikitext
 * - Use &disablelimitreport=1 in API requests
 * - Remove SkinTemplateNavigationUniversal hook

Graph

 * - Added geolink protocol
 * - Display graphs as inline-blocks at first creation
 * - Fix mapsnapshot bug in mw.Uri
 * - Added mapsnapshot protocol support

ImageMap

 * - Don't use NS_IMAGE

Kartographer

 * - Add FeatureCollection tests
 * - Added geoline service support
 * - Remove unused uses
 * - Introduce map sidebar, for displaying map details and external map services.
 * - Add test that verifies ExternalData can be only top-level
 * - Reorder test files
 * - Allow readable queries for externaldata in geojson
 * - GeometryCollection is a subset of Geometry

LiquidThreads

 * - Replace Article::doEdit

MassMessage

 * - Only make our user a bot if it's not already a bot
 * - MassMessage flow mention fixed

Math

 * - Set the stream and buffer reset methods for the default backend

MobileApp

 * - Explicitly set "mobile edit" tag.
 * - Add style to hide IPAs
 * - Use RecentChange::addTags rather than ChangeTags::addTags

MobileFrontend

 * - Don't use wfHttpError in Special:MobileLanguages
 * - Align last modified bar active color to new color palette
 * - Should be possible to scroll to footer on diff page
 * - Fix content being added to v1 footer via `.hlist-separated`
 * - Language selector should inherit float rather than clear it
 * - Prepare footerV2 for stable
 * - Move positioning logic from tagline to container element
 * - Revert "Blank user pages should be editable"
 * - feature-page-action-bar-v2 class is no longer necessary
 * - Hygiene: Move media queries to end of the file
 * - Remove MinervaUsePageActionBarV2 config variable
 * - Hygiene: Use `arr.push(var)` instead `arr = arr.concat([var])`
 * - Use mw-ui-progressive on constructive buttons
 * - Move border top from last modifier bar to footer container
 * - Move mobile-frontend-editor-anon to where it is used
 * - Add messages used in sources to the modules where they are used
 * - Import mw.ForeignApi to local scope instead of directly using it
 * - Move messages in config to where they are use in the source
 * - Remove dead code CommonsCategoryOverlay
 * - Remove obsolete search bar variables
 * - Align greys to improved color palette
 * - Use RecentChange::addTags rather than ChangeTags::addTags
 * - Remove obsolete CSS rules
 * - Move mobile.browser/browser to mobile.browser/Browser#getSingleton
 * - Blank user pages should be editable
 * - Make loadModule use string literals instead of variables
 * - Avoid calling mw.msg with variables
 * - Make Nearby getDistance test diff readable
 * - Be explicit with dependency
 * - Hygiene: Remove phantom config variables
 * - Hygiene: Remove BogusMobileContext
 * - Name singleton overriding methods more clearly
 * - Remove MFPageActions/MFEnableSiteNotice vars
 * - Allow browser tests to check RL modules are ready
 * - Get height and width from style to placeholder
 * - Beta: Allow displaying Related Articles in the footer
 * - Followup I67bcc4b34: Update call to global seenTime
 * - Remove pre-1.25 API compatibility code

MultimediaViewer

 * - Shorten clickable link text in HTML credit lines
 * - Upgrade stylelint

Nuke

 * - Don't use NS_IMAGE
 * - Add Czech aliases for the special page

OATHAuth

 * - Minor documentation updates
 * - Clean up code style and docblocks
 * - Fix some comments
 * - Add composer.lock to .gitignore
 * - Suppress unserialize errors
 * - We need a master to do write actions...

OAuth

 * - Set OAuth => true in RSD API
 * - Use mw-ui-progressive CSS class for buttons
 * - Use RecentChange::addTags rather than ChangeTags::addTags
 * - Set doesWrites for special pages

ORES

 * - Use aliases with "damaging" in them so we can add other ones (e.g. "goodfaith")
 * - Refactor and simplify changeslist/contribs queries a bit
 * - Made PHPStorm happy on includes/Hooks.php
 * - Only make hidenondamaging available if damaging is enabled
 * - Clean up === false comparisons
 * - No int typehinting
 * - Add maintenance/CleanDuplicateScores.php
 * - Use STRAIGHT_JOIN to work around optimizer bug for hidenondamaging=1

OpenStackManager

 * - Drop call to WikiPage::getText

PageTriage

 * - Fixing centering of text in collapsed toolbar by adding line-height
 * - NewPagesFeed should say it does not work in browsers older than IE9

Petition

 * - Use mw-ui-progressive rather than deprecated mw-ui-primary
 * - Set doesWrites for SpecialPetition

PoolCounter

 * - daemon: clean poolcounterd binary
 * - Refresh Debian packaging
 * - Force ipv4 in tests
 * - Use cucumber without bundler

Popups

 * - Regression: correctly log the click action total interaction time
 * - Regression: Correctly log total interaction time for `dismiss` event
 * - settings: Use mw-ui-progressive instead of progressive buttons
 * - Clicking a Hovercards legible link should close popup
 * - Dismiss event should not be tied to render method
 * - Hygiene: Only allow calls to closePopup on an active link
 * - Hygiene: Add set and get methods for active link
 * - Improve documentation for render methods
 * - Minor refactor - use named function for wikipage.content hook
 * - Merge mw.popups.experiment into mw.popups.core
 * - EventLogging sampling rate should default to 0

RelatedArticles

 * - Allow blacklisting skins for showing ReadMore in footer
 * - Perf: don't load a module unless necessary

RevisionSlider

 * - Add fixed padding for scrollbar
 * - Fix pin button style

Score

 * - Set the stream and buffer reset methods for the default backend

SecurePoll

 * - Fix fatal

SemanticForms

 * - Fix for "values from category" if $wgCapitalLinks is false
 * - Set page creation edits by bot users to have a "bot" flag
 * - Fix for 508f86e4e3fa
 * - Replace deprecated Article::doEdit

SpamBlacklist

 * - Trigger Schema:ExternalLinksChange logging on page deletion
 * - Fix Schema:ExternalLinksChange logging if no links are left on page

SyntaxHighlight_GeSHi

 * - VE: Ensure ext.pygments module gets loaded when a user adds a syntax highlight node
 * - Enable live autocomplete

TextExtracts

 * - Remove use of a removed function
 * - Minor fixes
 * - CodeSniffer fixes

Thanks

 * - Use mw-ui-progressive instead of constructive

TimedMediaHandler

 * - Update videojs to 5.12.2, fixes playback in iOS
 * - Don't preload entire video files in video.js mode
 * - Upgrade ogv.js to 1.2.1
 * - Fix VideoJS resolution plugin on Internet Explorer 9
 * - Update videojs to 5.12.1
 * - Update videojs-resolution-switcher to upstream master branch
 * - Fix regression that embedded video player didn't work
 * - Rewrite discovery of TimedText tracks

TorBlock

 * - Use RecentChange::addTags rather than ChangeTags::addTags

Translate

 * - Support explicitly chosen namespace constant in wfAddNamespace
 * - Avoid errors in unlock when no transaction is active
 * - Migrate away from deprecated mw-ui-constructive and mw-ui-primary classes
 * - Don't offer to hide own translations when already hidden in proofread mode
 * - Don't use NS_IMAGE
 * - Set $renderingContext in languages

UniversalLanguageSelector

 * - Replace deprecated .mw-ui-constructive with .mw-ui-progressive
 * - Localization update of jquery.uls from upstream
 * - Add hooks fired when finished processing compact language links
 * - Update jquery.i18n to dd14827

UploadWizard

 * - Fix typo
 * - Add parsererror message and debug line
 * - Disallow creating non-campaign pages in the Campaign namespace
 * - CampaignPageFormatter: Use OOUI instead of mediawiki.ui
 * - mw.UploadWizardLicenseInput: Parse license templates as if they were used on a file page
 * - Display warnings in confirmation window
 * - Fix NaN location input
 * - Verify license tags for custom licenses

UserMerge

 * - Remove old UserMerge special page class alias
 * - Remove 'UnitTestList' hook

VipsScaler

 * - Remove 'UnitTestList' hook

VisualEditor

 * - Remove commented out code
 * - Update VE core submodule to master (e8f7947)
 * - Don't try to add suggested/required parameters already set under alias names
 * - Don't call ApiBase::getResultData anymore, it's broken on core master and is deprecated anyway
 * - ce.MWTransclusionNode: Clean up href normalization
 * - Apply user preference 'editfont' to NWE
 * - Add wikitext sequences for lower heading levels
 * - Use RecentChange::addTags rather than ChangeTags::addTags
 * - Pre-load the article title in gallery dialog search
 * - Set language on copyright warning to RL default
 * - Use slice instead of substring per code conventions
 * - Revert "ve.dm.MWMediaResourceProvider: Use mw.ForeignApi rather than JSONP"
 * - MWAceEditorWidget: Configure Ace with its base path
 * - When we have multiple tabs and NWE enabled, set the edit tab's URL to NWE
 * - NWE: Don't show button to switch to VE if it isn't available
 * - ui.MWLinkAnnotationInspector: skip internal link checking if the value has changed
 * - dm.MWInternalLinkAnnotation: Fix href normalization for special characters
 * - Change mid-upload 'cancel' button to 'back'
 * - Don't re-implement EditPage::getCopyrightWarning
 * - Only show NWE beta feature if enabled in config
 * - Only unregister WT string handler in WT handler factory
 * - dm.MWInternalLinkAnnotation: Add some test cases
 * - Update VE core submodule to master (e3192e2)
 * - Temporarily override broken toolbar border colour
 * - Pass document to preview through PST
 * - Split isAvailable from visual-specific checks
 * - Education popup: Put localStorage check inside try/catch
 * - (attempt to) make NWE work with SET
 * - ve.dm.MWMediaResourceProvider: Use mw.ForeignApi rather than JSONP

WikiEditor

 * - Load module 'mediawiki.diff.styles' on show changes

WikiLove

 * - Use mw-ui-progressive instead of constructive

WikidataPageBanner

 * - Don't use NS_IMAGE

WikimediaEvents

 * - Use RecentChange::addTags rather than ChangeTags::addTags
 * - Ignore null values when sending to EventLogging
 * - Take page visibility into account for search checkins

WikimediaMaintenance

 * - Remove mentions of DatabaseBase

WikimediaMessages

 * - Change Bihari to Bhojpuri in project names

timeline

 * - Set the stream and buffer reset methods for the default backend